Class: DropboxApi::Metadata::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/dropbox_api/metadata/base.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(metadata) ⇒ Base

Returns a new instance of Base.



16
17
18
19
20
# File 'lib/dropbox_api/metadata/base.rb', line 16

def initialize()
  self.class.each_field do |name, field|
    instance_variable_set "@#{name}", field.cast([name.to_s])
  end
end

Class Method Details

.each_fieldObject



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