Module: Phronomy::ActiveRecord::ActsAs::ClassMethods
- Defined in:
- lib/phronomy/active_record/acts_as.rb
Instance Method Summary collapse
-
#acts_as_phronomy_checkpoint(encryptor: nil) ⇒ Object
Configures this model as a Phronomy checkpoint store.
-
#acts_as_phronomy_message ⇒ Phronomy::Memory::ConversationManager
Configures this model as a Phronomy message store.
Instance Method Details
#acts_as_phronomy_checkpoint(encryptor: nil) ⇒ Object
Configures this model as a Phronomy checkpoint store. Applies validations and exposes a convenience checkpointer factory.
23 24 25 26 27 28 29 |
# File 'lib/phronomy/active_record/acts_as.rb', line 23 def acts_as_phronomy_checkpoint(encryptor: nil) include ::Phronomy::ActiveRecord::Checkpoint define_singleton_method(:phronomy_checkpointer) do |enc: encryptor| ::Phronomy::StateStore::ActiveRecord.new(model_class: self, encryptor: enc) end end |
#acts_as_phronomy_message ⇒ Phronomy::Memory::ConversationManager
Configures this model as a Phronomy message store. Applies validations and exposes a convenience factory method.
35 36 37 38 39 40 41 42 43 44 |
# File 'lib/phronomy/active_record/acts_as.rb', line 35 def include ::Phronomy::ActiveRecord::Message define_singleton_method(:phronomy_memory) do ::Phronomy::Memory::ConversationManager.new( storage: ::Phronomy::Memory::Storage::ActiveRecord.new(model_class: self), retrieval: ::Phronomy::Memory::Retrieval::Recent.new ) end end |