module MotionRealm::ClassMethods

Public Instance Methods

count() click to toggle source
# File lib/project/motion-realm.rb, line 23
def count
  all.count
end
create(opts={}) click to toggle source
# File lib/project/motion-realm.rb, line 7
def create(opts={})
  # # Does not work correct in current version of RM or Realm:
  # self.alloc.initWithValue opts

  object = self.new
  opts.each do |key, value|
    method_name = "set" + key.to_s.capitalize
    method_name = key.to_s + "="

    object.send(method_name, value)
  end

  object

end
create_or_update(object, realm=nil) click to toggle source
# File lib/project/motion-realm.rb, line 82
def create_or_update(object, realm=nil)
  if realm.nil?
    realm = RLMRealm.default
  end

  self.createOrUpdateInRealm realm, withValue: object
end
defaultPropertyValues() click to toggle source
# File lib/project/motion-realm.rb, line 35
def defaultPropertyValues
  # set all properties to nil
  values = {}

  self.schema.properties.each do |property|
    property_name = property.name

    values[property_name] = if default_values[property_name]
      default_values[property_name]
    elsif property.bool?
      false
    elsif property.number? || property.mixed?
      0
    elsif property.array?
      []
    else
      nil
    end
  end

  values
end
default_values() click to toggle source
# File lib/project/motion-realm.rb, line 58
def default_values
  {}
end
delete_all() click to toggle source
# File lib/project/motion-realm.rb, line 90
def delete_all
  RLMRealm.write do |realm|
    self.all.each { |object| realm.delete(object) }
  end
end
first() click to toggle source
# File lib/project/motion-realm.rb, line 27
def first
  all.first
end
indexedProperties() click to toggle source
# File lib/project/motion-realm.rb, line 62
def indexedProperties
  indexes
end
indexes() click to toggle source
# File lib/project/motion-realm.rb, line 66
def indexes
  []
end
last() click to toggle source
# File lib/project/motion-realm.rb, line 31
def last
  all.last
end
primaryKey() click to toggle source
# File lib/project/motion-realm.rb, line 70
def primaryKey
  primary_key
end
primary_key() click to toggle source
# File lib/project/motion-realm.rb, line 74
def primary_key
  nil
end
where(query) click to toggle source
# File lib/project/motion-realm.rb, line 78
def where(query)
  self.objectsWhere(query)
end