class OData::ActiveRecordSchema::Property

Attributes

column_adapter[R]

Public Class Methods

name_for(column_adapter) click to toggle source
# File lib/o_data/active_record_schema/property.rb, line 23
def self.name_for(column_adapter)
  column_adapter.name.to_s
end
new(schema, entity_type, column_adapter) click to toggle source
Calls superclass method OData::AbstractSchema::Property::new
# File lib/o_data/active_record_schema/property.rb, line 33
def initialize(schema, entity_type, column_adapter)
  super(schema, entity_type, self.class.name_for(column_adapter), self.class.return_type_for(column_adapter), self.class.nullable?(column_adapter))
  
  @column_adapter = column_adapter
end
nullable?(column_adapter) click to toggle source
# File lib/o_data/active_record_schema/property.rb, line 27
def self.nullable?(column_adapter)
  column_adapter.null
end
return_type_for(column_adapter) click to toggle source
# File lib/o_data/active_record_schema/property.rb, line 19
def self.return_type_for(column_adapter)
  @@column_adapter_return_types[column_adapter.type]
end

Public Instance Methods

value_for(one) click to toggle source
# File lib/o_data/active_record_schema/property.rb, line 39
def value_for(one)
  v = one.send(@column_adapter.name.to_sym)
  v.respond_to?(:iso8601) ? v.send(:iso8601) : v
end