Class: DropboxApi::Metadata::Base
- Inherits:
-
Object
- Object
- DropboxApi::Metadata::Base
show all
- Defined in:
- lib/dropbox_api/metadata/base.rb
Direct Known Subclasses
BasicAccount, Deleted, File, FileLink, Folder, FolderLink, FolderSharingInfo, LinkPermissions, Name, SharedFolder, SharedFolderPolicy, Team, TeamMemberInfo
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(metadata) ⇒ Base
16
17
18
19
20
|
# File 'lib/dropbox_api/metadata/base.rb', line 16
def initialize(metadata)
self.class.each_field do |name, field|
instance_variable_set "@#{name}", field.cast(metadata[name.to_s])
end
end
|
Class Method Details
.each_field ⇒ Object
10
11
12
13
14
|
# File 'lib/dropbox_api/metadata/base.rb', line 10
def self.each_field
@fields.each do |name, field|
yield name, field
end
end
|
.field(name, type, *options) ⇒ Object
3
4
5
6
7
8
|
# File 'lib/dropbox_api/metadata/base.rb', line 3
def self.field(name, type, *options)
@fields ||= {}
@fields[name] = DropboxApi::Metadata::Field.new(type, options)
attr_reader name
end
|