Module: MotionDataWrapper::Model::Persistence
- Included in:
- MotionDataWrapper::Model
- Defined in:
- lib/motion_data_wrapper/model/persistence.rb
Defined Under Namespace
Modules: ClassMethods
Class Method Summary collapse
Instance Method Summary collapse
- #destroy ⇒ Object
- #destroyed? ⇒ Boolean
- #new_record? ⇒ Boolean
- #persisted? ⇒ Boolean
- #save ⇒ Object
- #save! ⇒ Object
Class Method Details
.included(base) ⇒ Object
5 6 7 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 5 def self.included(base) base.extend(ClassMethods) end |
Instance Method Details
#destroy ⇒ Object
36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 36 def destroy if context = managedObjectContext context.deleteObject(self) error = Pointer.new(:object) context.save(error) end @destroyed = true freeze end |
#destroyed? ⇒ Boolean
48 49 50 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 48 def destroyed? @destroyed || false end |
#new_record? ⇒ Boolean
52 53 54 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 52 def new_record? @new_record || false end |
#persisted? ⇒ Boolean
56 57 58 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 56 def persisted? !(new_record? || destroyed?) end |
#save ⇒ Object
60 61 62 63 64 65 66 67 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 60 def save begin save! rescue MotionDataWrapper::RecordNotSaved return false end true end |
#save! ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/motion_data_wrapper/model/persistence.rb', line 69 def save! unless context = managedObjectContext context = App.delegate.managedObjectContext context.insertObject(self) end error = Pointer.new(:object) unless context.save(error) managedObjectContext.deleteObject(self) raise MotionDataWrapper::RecordNotSaved, self and return false end true end |