Module: MotionRealm::ClassMethods
- Defined in:
- lib/project/motion-realm.rb
Instance Method Summary collapse
- #count ⇒ Object
- #create(opts = {}) ⇒ Object
- #create_or_update(object, realm = nil) ⇒ Object
- #default_values ⇒ Object
- #defaultPropertyValues ⇒ Object
- #delete_all ⇒ Object
- #first ⇒ Object
- #indexedProperties ⇒ Object
- #indexes ⇒ Object
- #last ⇒ Object
- #primary_key ⇒ Object
- #primaryKey ⇒ Object
- #where(query) ⇒ Object
Instance Method Details
#count ⇒ Object
23 24 25 |
# File 'lib/project/motion-realm.rb', line 23 def count all.count end |
#create(opts = {}) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
# 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) ⇒ Object
82 83 84 85 86 87 88 |
# 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 |
#default_values ⇒ Object
58 59 60 |
# File 'lib/project/motion-realm.rb', line 58 def default_values {} end |
#defaultPropertyValues ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# 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 |
#delete_all ⇒ Object
90 91 92 93 94 |
# 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 ⇒ Object
27 28 29 |
# File 'lib/project/motion-realm.rb', line 27 def first all.first end |
#indexedProperties ⇒ Object
62 63 64 |
# File 'lib/project/motion-realm.rb', line 62 def indexedProperties indexes end |
#indexes ⇒ Object
66 67 68 |
# File 'lib/project/motion-realm.rb', line 66 def indexes [] end |
#last ⇒ Object
31 32 33 |
# File 'lib/project/motion-realm.rb', line 31 def last all.last end |
#primary_key ⇒ Object
74 75 76 |
# File 'lib/project/motion-realm.rb', line 74 def primary_key nil end |
#primaryKey ⇒ Object
70 71 72 |
# File 'lib/project/motion-realm.rb', line 70 def primaryKey primary_key end |
#where(query) ⇒ Object
78 79 80 |
# File 'lib/project/motion-realm.rb', line 78 def where(query) self.objectsWhere(query) end |