Module: WebDAV
- Defined in:
- lib/fs/MiqFS/modules/WebDAV.rb
Instance Attribute Summary collapse
-
#guestOS ⇒ Object
readonly
Returns the value of attribute guestOS.
Instance Method Summary collapse
- #dirRmdir(_path) ⇒ Object
- #freeBytes ⇒ Object
- #fs_dirEntries(_path) ⇒ Object
- #fs_dirMkdir(_path) ⇒ Object
- #fs_fileAtime(_path) ⇒ Object
- #fs_fileAtime_obj(_fobj) ⇒ Object
- #fs_fileClose(fobj) ⇒ Object
- #fs_fileCtime(_path) ⇒ Object
- #fs_fileCtime_obj(_fobj) ⇒ Object
- #fs_fileDelete(_path) ⇒ Object
- #fs_fileDirectory?(path) ⇒ Boolean
- #fs_fileExists?(path) ⇒ Boolean
- #fs_fileFile?(_path) ⇒ Boolean
- #fs_fileMtime(_path) ⇒ Object
- #fs_fileMtime_obj(_fobj) ⇒ Object
- #fs_fileOpen(path, mode = "r") ⇒ Object
- #fs_fileRead(fobj, len) ⇒ Object
- #fs_fileSeek(fobj, offset, whence) ⇒ Object
- #fs_fileSize(path) ⇒ Object
- #fs_fileSize_obj(fobj) ⇒ Object
- #fs_fileWrite(_fobj, _buf, _len) ⇒ Object
- #fs_init ⇒ Object
- #fs_unmount ⇒ Object
Instance Attribute Details
#guestOS ⇒ Object (readonly)
Returns the value of attribute guestOS.
7 8 9 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 7 def guestOS @guestOS end |
Instance Method Details
#dirRmdir(_path) ⇒ Object
114 115 116 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 114 def dirRmdir(_path) raise Errno::EACCES end |
#freeBytes ⇒ Object
27 28 29 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 27 def freeBytes 0 end |
#fs_dirEntries(_path) ⇒ Object
31 32 33 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 31 def fs_dirEntries(_path) raise NotImplementedError end |
#fs_dirMkdir(_path) ⇒ Object
110 111 112 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 110 def fs_dirMkdir(_path) raise Errno::EACCES end |
#fs_fileAtime(_path) ⇒ Object
65 66 67 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 65 def fs_fileAtime(_path) raise NotImplementedError end |
#fs_fileAtime_obj(_fobj) ⇒ Object
77 78 79 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 77 def fs_fileAtime_obj(_fobj) raise NotImplementedError end |
#fs_fileClose(fobj) ⇒ Object
102 103 104 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 102 def fs_fileClose(fobj) fobj.close end |
#fs_fileCtime(_path) ⇒ Object
69 70 71 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 69 def fs_fileCtime(_path) raise NotImplementedError end |
#fs_fileCtime_obj(_fobj) ⇒ Object
81 82 83 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 81 def fs_fileCtime_obj(_fobj) raise NotImplementedError end |
#fs_fileDelete(_path) ⇒ Object
118 119 120 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 118 def fs_fileDelete(_path) raise Errno::EACCES end |
#fs_fileDirectory?(path) ⇒ Boolean
47 48 49 50 51 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 47 def fs_fileDirectory?(path) # TODO: implement proper check for being a directory path += '/' unless path.end_with?('/') fs_fileExists?(path) end |
#fs_fileExists?(path) ⇒ Boolean
35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 35 def fs_fileExists?(path) response = WebDAVFile.head_response(@connection, remote_uri(path), @headers) case response when Net::HTTPOK return true when Net::HTTPNotFound return false else raise Errno::EINVAL end end |
#fs_fileFile?(_path) ⇒ Boolean
53 54 55 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 53 def fs_fileFile?(_path) raise NotImplementedError end |
#fs_fileMtime(_path) ⇒ Object
73 74 75 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 73 def fs_fileMtime(_path) raise NotImplementedError end |
#fs_fileMtime_obj(_fobj) ⇒ Object
85 86 87 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 85 def fs_fileMtime_obj(_fobj) raise NotImplementedError end |
#fs_fileOpen(path, mode = "r") ⇒ Object
89 90 91 92 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 89 def fs_fileOpen(path, mode = "r") raise Errno::EACCES unless mode == 'r' WebDAVFile.new(remote_uri(path), @dobj., @headers) end |
#fs_fileRead(fobj, len) ⇒ Object
98 99 100 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 98 def fs_fileRead(fobj, len) fobj.read(len) end |
#fs_fileSeek(fobj, offset, whence) ⇒ Object
94 95 96 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 94 def fs_fileSeek(fobj, offset, whence) fobj.seek(offset, whence) end |
#fs_fileSize(path) ⇒ Object
57 58 59 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 57 def fs_fileSize(path) WebDAVFile.file_size(remote_uri(path)) end |
#fs_fileSize_obj(fobj) ⇒ Object
61 62 63 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 61 def fs_fileSize_obj(fobj) fobj.size end |
#fs_fileWrite(_fobj, _buf, _len) ⇒ Object
106 107 108 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 106 def fs_fileWrite(_fobj, _buf, _len) raise Errno::EACCES end |
#fs_init ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 9 def fs_init @fsType = "WebDAV" @guestOS = @dobj.guest_os @uri = URI(@dobj.uri.to_s) @headers = @dobj.headers || {} @connection = Net::HTTP.start( @uri.host, @uri.port, @dobj. ) end |
#fs_unmount ⇒ Object
23 24 25 |
# File 'lib/fs/MiqFS/modules/WebDAV.rb', line 23 def fs_unmount @connection.finish end |