Module: Neo4j::NodeMixin
- Includes:
- Core::Index, Wrapper::HasN::InstanceMethods, Wrapper::NodeMixin::Delegates, Wrapper::NodeMixin::Initialize, Wrapper::Rule::InstanceMethods
- Defined in:
- lib/neo4j/node_mixin.rb
Overview
This mixin is used to wrap Neo4j Java Nodes in Ruby objects.
Class Method Modules
Instance Method Modules
Class Method Summary collapse
Methods included from Wrapper::Rule::InstanceMethods
Methods included from Wrapper::HasN::InstanceMethods
Methods included from Wrapper::NodeMixin::Initialize
#_java_node, #init_on_create, #init_on_load, #wrapper
Methods included from Wrapper::NodeMixin::Delegates
#:==, #:[], #:[]=, #_node, #_nodes, #_rel, #_rels, #both, #del, #eql?, #equal?, #eval_paths, #exist?, #expand, #getId, #get_property, #incoming, #neo_id, #node, #nodes, #outgoing, #property?, #property_keys, #props, #rel, #rel?, #rels, #remove_property, #set_property, #unique, #update
Class Method Details
.included(klass) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/neo4j/node_mixin.rb', line 35 def self.included(klass) klass.extend Neo4j::Wrapper::ClassMethods klass.extend Neo4j::Wrapper::NodeMixin::ClassMethods klass.extend Neo4j::Wrapper::Property::ClassMethods klass.extend Neo4j::Wrapper::HasN::ClassMethods klass.extend Neo4j::Core::Index::ClassMethods klass.extend Neo4j::Wrapper::Find klass.extend Neo4j::Wrapper::Rule::ClassMethods klass.send(:include, Neo4j::Wrapper::Rule::Functions) klass.node_indexer do index_names :exact => "#{klass._index_name}_exact", :fulltext => "#{klass._index_name}_fulltext" trigger_on :_classname => klass.to_s prefix_index_name &klass.method(:index_prefix) end def klass.inherited(sub_klass) return super if sub_klass.to_s == self.to_s base_class = self # make the base class trigger on the sub class nodes base_class._indexer.config.trigger_on :_classname => sub_klass.to_s sub_klass.inherit_rules_from self sub_klass.node_indexer do inherit_from base_class index_names :exact => "#{sub_klass._index_name}_exact", :fulltext => "#{sub_klass._index_name}_fulltext" trigger_on :_classname => sub_klass.to_s prefix_index_name &sub_klass.method(:index_prefix) end super end super end |