neo4j 1.0.0.beta.20 → 3.0.0.alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG +243 -0
  3. data/CONTRIBUTORS +12 -0
  4. data/Gemfile +10 -11
  5. data/README.md +23 -0
  6. data/bin/neo4j-jars +33 -0
  7. data/config/locales/en.yml +5 -0
  8. data/config/neo4j/config.yml +98 -0
  9. data/lib/neo4j.rb +28 -68
  10. data/lib/neo4j/active_node.rb +60 -0
  11. data/lib/neo4j/active_node/callbacks.rb +41 -0
  12. data/lib/neo4j/active_node/has_n.rb +138 -0
  13. data/lib/neo4j/active_node/has_n/decl_rel.rb +236 -0
  14. data/lib/neo4j/active_node/has_n/nodes.rb +82 -0
  15. data/lib/neo4j/active_node/identity.rb +28 -0
  16. data/lib/neo4j/active_node/initialize.rb +24 -0
  17. data/lib/neo4j/active_node/labels.rb +142 -0
  18. data/lib/neo4j/active_node/persistence.rb +193 -0
  19. data/lib/neo4j/active_node/property.rb +41 -0
  20. data/lib/neo4j/active_node/rels.rb +11 -0
  21. data/lib/neo4j/active_node/validations.rb +51 -0
  22. data/lib/neo4j/railtie.rb +40 -0
  23. data/lib/neo4j/version.rb +1 -1
  24. data/lib/neo4j/wrapper.rb +25 -0
  25. data/neo4j.gemspec +25 -15
  26. metadata +136 -149
  27. data/README.rdoc +0 -135
  28. data/lib/generators/neo4j.rb +0 -65
  29. data/lib/generators/neo4j/model/model_generator.rb +0 -39
  30. data/lib/generators/neo4j/model/templates/model.erb +0 -7
  31. data/lib/neo4j/config.rb +0 -153
  32. data/lib/neo4j/database.rb +0 -56
  33. data/lib/neo4j/equal.rb +0 -21
  34. data/lib/neo4j/event_handler.rb +0 -116
  35. data/lib/neo4j/index/class_methods.rb +0 -62
  36. data/lib/neo4j/index/index.rb +0 -33
  37. data/lib/neo4j/index/indexer.rb +0 -312
  38. data/lib/neo4j/index/indexer_registry.rb +0 -68
  39. data/lib/neo4j/index/lucene_query.rb +0 -191
  40. data/lib/neo4j/jars/geronimo-jta_1.1_spec-1.1.1.jar +0 -0
  41. data/lib/neo4j/jars/lucene-core-3.0.2.jar +0 -0
  42. data/lib/neo4j/jars/neo4j-index-1.2-1.2.M03.jar +0 -0
  43. data/lib/neo4j/jars/neo4j-kernel-1.2-1.2.M03.jar +0 -0
  44. data/lib/neo4j/jars/neo4j-lucene-index-0.2-1.2.M03.jar +0 -0
  45. data/lib/neo4j/load.rb +0 -21
  46. data/lib/neo4j/mapping/class_methods/init_node.rb +0 -50
  47. data/lib/neo4j/mapping/class_methods/init_rel.rb +0 -35
  48. data/lib/neo4j/mapping/class_methods/property.rb +0 -80
  49. data/lib/neo4j/mapping/class_methods/relationship.rb +0 -90
  50. data/lib/neo4j/mapping/class_methods/root.rb +0 -31
  51. data/lib/neo4j/mapping/class_methods/rule.rb +0 -295
  52. data/lib/neo4j/mapping/decl_relationship_dsl.rb +0 -214
  53. data/lib/neo4j/mapping/has_n.rb +0 -83
  54. data/lib/neo4j/mapping/node_mixin.rb +0 -97
  55. data/lib/neo4j/mapping/relationship_mixin.rb +0 -117
  56. data/lib/neo4j/model.rb +0 -4
  57. data/lib/neo4j/neo4j.rb +0 -95
  58. data/lib/neo4j/node.rb +0 -131
  59. data/lib/neo4j/node_mixin.rb +0 -4
  60. data/lib/neo4j/node_relationship.rb +0 -149
  61. data/lib/neo4j/node_traverser.rb +0 -157
  62. data/lib/neo4j/property.rb +0 -111
  63. data/lib/neo4j/rails/finders.rb +0 -121
  64. data/lib/neo4j/rails/lucene_connection_closer.rb +0 -19
  65. data/lib/neo4j/rails/mapping/property.rb +0 -35
  66. data/lib/neo4j/rails/model.rb +0 -324
  67. data/lib/neo4j/rails/railtie.rb +0 -16
  68. data/lib/neo4j/rails/transaction.rb +0 -67
  69. data/lib/neo4j/rails/tx_methods.rb +0 -15
  70. data/lib/neo4j/rails/validations/non_nil.rb +0 -11
  71. data/lib/neo4j/rails/validations/uniqueness.rb +0 -31
  72. data/lib/neo4j/rails/value.rb +0 -124
  73. data/lib/neo4j/rails/value_properties.rb +0 -29
  74. data/lib/neo4j/relationship.rb +0 -169
  75. data/lib/neo4j/relationship_mixin.rb +0 -4
  76. data/lib/neo4j/relationship_traverser.rb +0 -92
  77. data/lib/neo4j/to_java.rb +0 -31
  78. data/lib/neo4j/transaction.rb +0 -68
  79. data/lib/neo4j/type_converters.rb +0 -98
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 3106c4da4e5d9b64e6532db51a5c8f9952ac5021
4
+ data.tar.gz: 90d7e176d183c6a4cbcb0599af69da46b828610c
5
+ SHA512:
6
+ metadata.gz: 1dcb5b39e8e3d4298224c6cb2a7915724bf3844e52dba70796429394525abdffde42fcf0331ebadddb27154293640ee570cc3c85e8adef0b9f6cd20f11dda28c
7
+ data.tar.gz: ff3c1edf2057a71eadcfa0ada92dd38de54a07c7d66d6bfa62453cb25afae551da6faec8c52a6c24d4c3923a821013dd6d28afb323a6ac159a6650c8e888c785
data/CHANGELOG CHANGED
@@ -1,3 +1,246 @@
1
+ == 3.0.0.alpha.2
2
+ * Support for both embedded (only JRuby) and server API (runs on MRI Ruby !)
3
+ * Simple Rails app now work
4
+ * Support for has_n and has_one method
5
+ * ActiveModel support, callback, validation
6
+ * Declared properties (via active_attr gem)
7
+
8
+ == 2.3.0 / 2013-07-18
9
+ * Fix Issue with HA console when ruby-debug is loaded (#261, thekendalmiller)
10
+ * Use 1.9 Neo4j
11
+
12
+ == 2.2.4 / 2013-05-19
13
+ * get_or_create should return wrapped ruby nodes, alex-klepa, #241, #246
14
+ * Make sure freeze does not have side effects, #235
15
+ * Fix for carrierwave-neo4j (attribute_defaults), #235
16
+
17
+ == 2.2.3 / 2012-12-28
18
+ * Support for HA cluster with neo4j 1.9.X, #228, #99, #223
19
+ * Make sure the Identity map is cleared after an exception, #214
20
+ * Relationship other_node should return wrapped node, #226
21
+ * Automatically convert DateTimes to UTC, (neo4j-wrapper #7)
22
+ * get_or_create should return a wrapped node (neo4j-wrapper #8)
23
+ * Make it work with Neo4j 1.7.1 (neo4j-core, #19)
24
+
25
+ == 2.2.2 - skipped
26
+
27
+ == 2.2.1 / 2012-12-18
28
+ * Fix for JRuby 1.7.1 and Equal #225
29
+ * Fix for create nodes and relationship using Cypher (neo4j-core #17)
30
+
31
+ == 2.2.0 / 2012-10-02
32
+ * Using neo4j-cypher gem (1.0.0)
33
+ * Fix of neo4j-core configuration issue using boolean values #218
34
+ * Fixed RSpec issue on JRuby 1.7.x #217
35
+ * Aliased has_many to has_n, #183
36
+
37
+ == 2.2.0.rc1 / 2012-09-21
38
+ * Use neo4j-core and neo4j-wrapper version 2.2.0.rc1
39
+ * Use the neo4j-cypher gem
40
+ * Better support for Orm Adapter, #212
41
+ * Use Cypher query when finder method does not have a lucene index, #210
42
+
43
+ == 2.0.1 / 2012-06-06
44
+ * Use neo4j-core and neo4j-wrapper version 2.0.1
45
+
46
+ == 2.0.0 / 2012-05-07
47
+ (same as rc2)
48
+
49
+ == 2.0.0.rc2 / 2012-05-04
50
+ * Enable Identity Map by default
51
+ * Added versioning for Neo4j::Core
52
+
53
+ == 2.0.0.rc1 / 2012-05-03
54
+ * Fix of rake task to upgrade to 2.0
55
+ * Various Cypher DSL improvements, core(#3,#4,#5), #196
56
+ * Added Neo4j::VERSION
57
+
58
+ == 2.0.0.alpha.9 / 2012-04-27
59
+ * Fix for rails scaffold generator
60
+
61
+ == 2.0.0.alpha.8 / 2012-04-27
62
+ * Fix for "relationship to :all assigned twice for single instance" #178
63
+ * Fix for callback fire more then once (=> performance increase) #172
64
+ * Support for lucene search on array properties, #118
65
+ * Support for creating unique entities (get_or_create) #143
66
+ * Support for specifying has_n/has_one relationship with Strings instead of Class #160
67
+ * Support for serializer of hash and arrays on properties #185
68
+ * Fix for Neo4j::Rails::Relationship default property, #195
69
+ * Added support for pagination, see the neo4j-will_paginate gem
70
+ * Fixed Rails generators
71
+ * Added Cypher DSL support for is_a?
72
+ * Fix for "write_attribute persistes, contrary to AR convention" closes #182
73
+
74
+ == 2.0.0.alpha.7 / 2012-04-19
75
+ * fix for Neo4j::Config bug - did not work from rails to set the db location, closes #191
76
+ * has_n and has_one method generate class method returning the name of the relationship as a Symbol, closes #170
77
+ * Raise exception if trying to index boolean property, closes #180
78
+ * Made start_node= and end_node= protected closes 186
79
+ * Support for things like @dungeon.monsters.dangerous { |m| m[:weapon?] == 'sword' } closes #181
80
+
81
+ == 2.0.0.alpha.6 / 2012-04-15
82
+ * Complete rewrite and smaller change of API + lots of refactoring and better RSpecs
83
+ * Moved code to the neo4j-core and neo4j-wrapper gems
84
+ * Changed API - index properties using the Neo4j::Rails::Model (property :name, :index => :exact)
85
+ * Changed API - rel_type always returns a Symbol
86
+ * Changed API - #rels and #rel first parameter is always :outgoing, :incoming or :both
87
+ * Cypher DSL support, see neo4j-core
88
+ * Made the Lucene indexing more flexible
89
+ * Renamed size methods to count since it does simply count all the relationships (e.g. Person.all.count)
90
+ * Modularization - e.g. make it possible to create your own wrapper
91
+ * Added builder method for has_one relationships (just like ActiveRecord build_best_friend)
92
+
93
+ == 2.0.0.alpha.5 / 2012-03-27
94
+ * Fix for HA/cluster bug [#173]
95
+ * Upgrade to neo4j-community jars 1.7.0.alpha.1
96
+ * Fix for rails 3.2 [#131]
97
+ * Fix for BatchInserter bug, [#139]
98
+ * Added rake task for upgrading [#116]
99
+ * Added scripts for upgrading database [#116]
100
+
101
+ == 2.0.0.alpha.4 / 2012-01-17
102
+ * Fix node and rel enumerable for JRuby 1.9, Dmytrii Nagirniak
103
+ * Remove the will_paginate and move it to a separate gem Dmytrii Nagirniak, [#129][#132]
104
+ * Use type converter to determine how to handle multi-param attributes, Dmyitrii Nagirniak [#97]
105
+ * Set default storage_path in Rails to db [#96]
106
+ * Fix numeric Converter with nils and Float converter, Dmytrii Nagirniak
107
+ * Fix Neo4j::Rails::Model.find incorrect behavior with negative numbers, Dmytrii Nagirniak [#101]
108
+ * Allow to use symbols in batch inserter [#104]
109
+ * Split neo4j-jars gem into three jars, community,advanced&enterprise
110
+
111
+ == 2.0.0.alpha.1 / 2012-01-11
112
+ * Split JARS into a separate gem (neo4j-jars) [#115]
113
+ * Changed prefix of relationships so that it allows having incoming relationships from different classes with different relationship names. Migration is needed to update an already existing database - see issue #116. [#117]
114
+ * Fix for undefined method 'add_unpersited_outgoing_rel' [#111]
115
+ * Fix for Rails models named Property [#108] (Vivek Prahlad)
116
+
117
+
118
+ == 1.3.1 / 2011-12-14
119
+ * Make all relationships visible in Rails callback (rspecs #87, Dmytrii Nagirniak) [#211]
120
+ * Enable travis to build JRuby 1.9 (pull #87, Dmytrii Nagirniak) [#214]
121
+ * Support for composite lucene queries with OR and NOT (pull #89, Deepak N)
122
+ * Enforce the correct converter on a property type when the type is given (pull #86, Dmytrii Nagirniak)
123
+ * Development: make it easier to run RSpecs and guard (pull #85, Dmytrii Nagirniak)
124
+ * Added ability to disable observer (pull #84, Dmytrii Nagirniak)
125
+ * Fixing multiple assignment of has_one assocaition (pull #83 Deepak N)
126
+ * Accept association_id for has_one assocations (pull #82, Deepak N)
127
+ * Upgrade to 1.6.M01 Neo4j java jars [#209]
128
+ * Defer warning message 'Unknown outgoing relationship' (pull #81, Vivek Prahlad)
129
+ * Added string converter, e.g. property :name, :type => String (pull #80, Dmytrii Nagirniak)
130
+ * Added symbol converter e.g. property :status, :type => Symbol (pull #79, Dmytrii Nagirniak) [#205]
131
+
132
+ == 1.3.0 / 2011-12-06
133
+ * Added neo4j-upgrade script to rename lucene index files and upgrade to 1.5 [#197]
134
+ * Expose Neo4j::NodeMixin#index_types returning available indices (useful for Cypher queries) [#194]
135
+ * The to_other method is now available also in the Neo4j::Rails API [#193]
136
+ * Expose rel_type method for Neo4j::Rails::Relationship [#196]
137
+ * Support for breadth and depth first traversals [#198]
138
+ * Support for cypher query [#197]
139
+ * Fix for rule node concurrency issue (pull #78, Vivek Prahlad)
140
+ * Bugfix for the uniqueness validation for properties with quotes (pull #76, Vivek Prahlad)
141
+ * More performance tweaks (pull #75, #77, Vivek Prahlad)
142
+ * Fixing add_index for properties other than type string (pull #74, Deepak N)
143
+ * Significant performance boost for creating large numbers of models in a transaction (pull #73, Vivek Prahlad)
144
+ * Upgrade to neo4j 1.5 jars (pull #72, Vivek Prahlad)
145
+ * Fix for assigning nil values to incoming has_one relation (pull #70, Deepak N)
146
+ * Support for revert and fixes for Neo4j::Rails::Versioning (pull #71, Vivek Prahlad)
147
+
148
+ == 1.2.6 / 2011-11-02
149
+ * Generators can now generate relationships as well [#195]
150
+ * Better will_paginate support for Neo4j::Rails::Model [#194]
151
+ * Fixing updated_at to be set only if model has changed (pull #68, Deepak N)
152
+ * Bringing back changes removed during identiy map to fix bug [#190] (Deepak N)
153
+ * Fixing updated_at to be set only if model has changed, using callbacks instead of overriding method for stamping time (Deepak N)
154
+ * Added versioning support (pull #67) (Vivek Prahlad)
155
+
156
+ == 1.2.5 / 2011-10-21
157
+ * Faster traversals by avoiding loading Ruby wrappers (new method 'raw' on traversals) [#189]
158
+ * Support for IdentityMap [#188]
159
+ * Improved performance in event handler (Vivek Prahlad)
160
+ * Fixing issue with validates_presence_of validation (Vivek Prahlad)
161
+ * Implemented compositions support on Neo4j::Rails::Relationship (Kalyan Akella)
162
+ * Added after_initialize callback (Deepak N)
163
+ * Fixed performance issues on node deleted (Vivek Prahlad)
164
+ * Fixed a performance issue in the index_registry (Vivek Prahlad)
165
+ * Fixed uniqueness validation for :case_sensitive => false (Vivek Prahlad)
166
+ * Fixed update_attributes deleting relations when model is invalid (Deepak N)
167
+ * Fixed timestamp rails generator (Marcio Toshio)
168
+
169
+ == 1.2.4 / 2011-10-07
170
+ * Support for traversing with Neo4j::Node#eval_paths and setting uniqueness on traversals [#187]
171
+ * Removed unnecessary node creation on database start up (class nodes attached to reference node) (Vivek Prahlad)
172
+ * Safer multitenancy - automatically reset the reference node in thread local context after each request using rack middleware
173
+ * Bugfixes for multitenancy (Deepak N and Vivek Prahlad)
174
+
175
+ == 1.2.3 / 2011-10-01
176
+ * Multitenancy support by namespaced-indices & changeable reference node (Vivek Prahlad, pull 41)
177
+ * Added a Neo4j::Rails::Model#columns which returns all defined properties [#186]
178
+ * Fixed validation associated entities, parent model should be invalid if its nested model(s) is invalid (Vivek Prahlad)
179
+ * Fixed property validation to read value before conversion as per active model conventions (Deepak N)
180
+ * Fixed property_before_type_cast for loaded models (Deepak N)
181
+ * Better support for nested models via ActionView field_for [#185]
182
+ * BUG: fix for null pointer issue after delete_all on Neo4j::Rails::Model#has_n relationships (Vivek Prahlad)
183
+ * BUG: init_on_create was not called when creating a new relationship via the << operator [#183]
184
+
185
+ == 1.2.2 / 2011-09-15
186
+ * Added compositions support for rails mode (Deepak N)
187
+ * Added support for nested transactions at the Rails model level (Vivek Prahlad)
188
+ * Fixing issue where save for invalid entities puts them into an inconsistent state (Vivek Prahlad)
189
+ * Fix for issue with save when validation fails (Vivek Prahlad)
190
+ * Fix for accepts_nested_attributes_for when the associated entities are created before a new node (Vivek Prahlad)
191
+ * Fix to allow has_one relationships to handle nil assignments in models (Vivek Prahlad)
192
+ * Observers support for neo4j rails model using active model (Deepak N)
193
+ * Override ActiveModel i18n_scope for neo4j (Deepak N)
194
+ * Added finders similar to active record and mongoid (Deepak N)
195
+ * Added find!, find_or_create_by and find_or_initialize_by methods, similar to active record finders (Deepak N)
196
+
197
+ == 1.2.1 / 2011-08-29
198
+ * Fixed failing RSpecs for devise-neo4j gem - column_names method on neo4j orm adapter throws NoMethodError (thanks Deepak N)
199
+
200
+ == 1.2.0 / 2011-08-16
201
+ * Upgrade to java library neo4j 1.4.1, see http://neo4j.rubyforge.org/guides/configuration.html
202
+
203
+ == 1.1.4 / 2011-08-10
204
+ * Fixed dependency to will_paginate, locked to 3.0.pre4 (newly released 3.0.0 does not work yet with neo4j.rb)
205
+
206
+ == 1.1.3 / 2011-08-09
207
+ * real recursive rule to the top class, subclasses with rules did not work (Frédéric Vanclef)
208
+ * BUG: not able to create array properties on relationships (Pere Urbon)
209
+ * BUG: lucene did not work if starting up neo4j in read only mode (like rails console when the rails is already running)
210
+
211
+ == 1.1.2 / 2011-06-08
212
+ * Added configuration option 'enable_rules' to disable the _all relationships and custom rules [#176]
213
+ * Added a #node method on the Neo4j::Node and Neo4j::NodeMixin. Works like the #rel method but returns the node instead. [#174]
214
+ * Simplify creating relationship between two existing nodes [#175]
215
+
216
+ == 1.1.1 / 2011-05-26
217
+ * Made neo4j compatible with rails 3.1.0.rc1 [#170]
218
+ * Fix for neo4j-devise [#171]
219
+ * BUG: Neo4j::GraphAlgo shortest path does raise exception if two nodes are not connected [#172]
220
+
221
+ == 1.1.0 / 2011-05-13
222
+ * Support for embedding neo4j.rb by providing an already running db instance (#168)
223
+ * Neo4j::Rails::Relationships should be ActiveModel compliant (#156)
224
+ * Support for incoming relationships in Neo4j::Rails::Model (#157)
225
+ * to_json method for models no tags √ resolved (#154)
226
+ * Implement hash so that it will work with Sets (#160)
227
+ * Modified the traverser to allow iterating over paths not just over end_nodes (#161)
228
+ * Create method should take a block to initialize itself (#162)
229
+ * Upgrade to 1.3 neo4j java library (#164)
230
+ * Default `nodes' invocation for Algo path finders (#165)
231
+ * Property and index class methods modified to take arbitrary number of symbols optionally followed by options hash (#166)
232
+ * BUG: Setting property :system on Neo4j::Rails::Model should work (#163)
233
+ * BUG: update_attributes should convert values according to Type (#155)
234
+ * BUG: Neo4j::RelationshipMixin#relationship_type broken #(169)
235
+ * BUG: Relationship.load(nil) == Relationship.load(0) (#167)
236
+ * BUG: Full text search returns nil in rails model (#153)
237
+
238
+ == 1.0.0 / 2011-03-02
239
+ * Complete rewrite of everything.
240
+ * Replaced the lucene module with using the java neo4j-lucene integration instead
241
+ * Lots of improvements of the API
242
+ * Better ActiveModel/Rails integration
243
+
1
244
  == 0.4.4 / 2010-08-01
2
245
  * Fixed bug on traversing when using the RelationshipMixin (#121)
3
246
  * BatchInserter and JRuby 1.6 - Fix iteration error with trying to modify in-place hash
data/CONTRIBUTORS CHANGED
@@ -2,6 +2,18 @@ Maintainer:
2
2
  Andreas Ronge <andreas dot ronge at gmail dot com>
3
3
 
4
4
  Contributors:
5
+ * Dmytrii Nagirniak
6
+ * Marcio Toshio
7
+ * Kalyan Akella
8
+ * Vivek Prahlad
9
+ * Deepak N
10
+ * Frédéric Vanclef
11
+ * Pere Urbon
12
+ * Joe Leaver
13
+ * Junegunn Choi
14
+ * Jay Adkisson
15
+ * Stephan Hagemann
16
+ * Bobby Calderwood
5
17
  * Ben Jackson
6
18
  * Dwight van Tuyl
7
19
  * Martin Kleppmann
data/Gemfile CHANGED
@@ -1,16 +1,15 @@
1
- source :gemcutter
1
+ source 'http://rubygems.org'
2
2
 
3
3
  gemspec
4
4
 
5
- group 'test' do
6
- gem "rake", ">= 0.8.7"
7
- gem "rdoc", ">= 2.5.10"
8
- gem "horo", ">= 1.0.2"
9
- gem "rspec", ">= 2.0.0"
10
- gem "rspec-rails-matchers", ">= 0.2.1"
11
- gem "test-unit"
5
+ # gem 'neo4j-core', :path => '../neo4j-core'
6
+
7
+ group 'development' do
8
+ gem 'os' # for neo4j-server rake task
9
+ gem 'rake'
10
+ gem 'yard'
12
11
  end
13
12
 
14
- #gem 'ruby-debug-base19' if RUBY_VERSION.include? "1.9"
15
- #gem 'ruby-debug-base' if RUBY_VERSION.include? "1.8"
16
- #gem "ruby-debug-ide"
13
+ group 'test' do
14
+ gem "rspec"
15
+ end
data/README.md ADDED
@@ -0,0 +1,23 @@
1
+ # Welcome to Neo4j.rb [![Build Status](https://secure.travis-ci.org/andreasronge/neo4j.png?branch=master)](http://travis-ci.org/andreasronge/neo4j) [![Dependency Status](https://gemnasium.com/andreasronge/neo4j.png)](https://gemnasium.com/andreasronge/neo4j)
2
+ /Users/andreasronge/projects/neo4j-core/lib/neo4j-wrapper/delegates.rb
3
+ Neo4j.rb is a graph database for Ruby (and JRuby)
4
+
5
+ ## Version 3.0
6
+
7
+ * Wiki: https://github.com/andreasronge/neo4j/wiki/Neo4j-v3
8
+ * Example: https://github.com/andreasronge/neo4j/tree/3.0/example/blog
9
+
10
+
11
+ ## Contributing
12
+
13
+ * Have you found a bug, need help or have a patch ?
14
+ * Just clone neo4j.rb and send me a pull request or email me.
15
+ * Do you need help - send me an email (andreas.ronge at gmail dot com).
16
+
17
+ ## License
18
+
19
+ * Neo4j.rb - MIT, see the [LICENSE](http://github.com/andreasronge/neo4j/tree/master/LICENSE).
20
+ * Lucene - Apache, see the [Lucene Documentation](http://lucene.apache.org/java/docs/features.html).
21
+ * Neo4j - Dual free software/commercial license, see [Lisencing Guide](http://www.neo4j.org/learn/licensing).
22
+
23
+ **Notice:** there are different license for the `neo4j-community`, `neo4j-advanced`, and `neo4j-enterprise` jar gems. Only the `neo4j-community` gem is by default required.
data/bin/neo4j-jars ADDED
@@ -0,0 +1,33 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'neo4j'
4
+
5
+ if ARGV.length == 0
6
+ puts <<TEXT
7
+ A tool for copying jar files needed by the application server, like trinidad
8
+ It copies all jar files which has been required (neo4j-community, neo4j-advanced or neo4j-enterprise) to the lib folder of the current directory
9
+
10
+ Usage: neo4j-jars <community|advanced|enterprise>
11
+
12
+ TEXT
13
+ exit
14
+ end
15
+
16
+ if ARGV.include?('community')
17
+ require 'neo4j-community' # not really needed
18
+ elsif ARGV.include?('advanced')
19
+ require 'neo4j-advanced' # not really needed
20
+ elsif ARGV.include?('enterprise')
21
+ require 'neo4j-enterprise' # not really needed
22
+ else
23
+ puts "Expected community, advanced, enterprise"
24
+ exit -1
25
+ end
26
+
27
+ lib_dir = File.join(Dir.pwd, 'lib')
28
+ raise "Expected a lib folder where to copy the jars file, mkdir #{lib_dir}? " unless File.exist?(lib_dir)
29
+
30
+ files = $CLASSPATH.find_all{|x| x =~ /\.jar$/}.collect{|y| y.sub('file:', '')}
31
+ files.each {|file| FileUtils.cp(file, lib_dir)}
32
+
33
+ puts "copied #{files.size} files to #{lib_dir}"
@@ -0,0 +1,5 @@
1
+ en:
2
+ errors:
3
+ messages:
4
+ nil: "can't be nil"
5
+ taken: "has already been taken"
@@ -0,0 +1,98 @@
1
+ #=== Neo4j.rb configuration settings
2
+
3
+ # The folder location of the neo4j and lucene database
4
+ storage_path: db
5
+
6
+ # If enable neo4j.rb will create _all relationship to all instances inheriting from Neo4j::Rails::Model
7
+ # If disabled all custom rules will also be unavailable.
8
+ enable_rules: true
9
+
10
+ # if identity map should be on or not
11
+ # It may impact the performance. Using the identity map will keep all loaded wrapper node/relationship
12
+ # object in memory for each thread and transaction - which may speed up or slow down operations.
13
+ identity_map: false
14
+
15
+ # When using the Neo4j::Model you can let neo4j automatically set timestamps when updating/creating nodes.
16
+ # If set to true neo4j.rb automatically timestamps create and update operations if the model has properties named created_at/created_on or updated_at/updated_on
17
+ # (similar to ActiveRecord).
18
+ timestamps: true
19
+
20
+ # Configuration for lucene
21
+ lucene: { fulltext: { provider: lucene,
22
+ type: fulltext },
23
+ exact: { provider: lucene,
24
+ type: exact}
25
+ }
26
+
27
+ ## If online backup should be available, if it is the Online JAR file will be loaded,
28
+ ## Notice it must be either 'true' or 'false' as string
29
+ #enable_online_backup: 'false'
30
+ #
31
+ ##use the clustered Neo4j GraphDatabase (org.neo4j.kernel.HighlyAvailableGraphDatabase)
32
+ #ha.db: false
33
+ #
34
+ ## Example of HA Configuration, see http://wiki.neo4j.org/content/High_Availability_Cluster
35
+ ## This is only used when ha.db is set to true
36
+ #ha.server_id: 2
37
+ #ha.server: 'localhost:6002'
38
+ #ha.coordinators: 'localhost:2181,localhost:2182,localhost:2183'
39
+ #
40
+ ## if enabled you can use the bin/neo4j-shell command to access the database
41
+ #enable_remote_shell: "port=9332"
42
+ #
43
+ ##===Memory mapped I/O settings===
44
+ #
45
+ ##Each file in the Neo store can use memory mapped I/O for reading/writing.
46
+ ##Best performance is achived if the full file can be memory mapped but if
47
+ ##there isn't enough memory for that Neo will try and make the best use of
48
+ ##the memory it gets (regions of the file that get accessed often will more
49
+ ##likley be memory mapped).
50
+ #
51
+ ##For high traversal speed it is important to have the nodestore.db and
52
+ ##relationshipstore.db files.
53
+ #
54
+ #neostore.nodestore.db.mapped_memory: 25M
55
+ #neostore.relationshipstore.db.mapped_memory: 50M
56
+ #neostore.propertystore.db.mapped_memory: 90M
57
+ #neostore.propertystore.db.index.mapped_memory: 1M
58
+ #neostore.propertystore.db.index.keys.mapped_memory: 1M
59
+ #neostore.propertystore.db.strings.mapped_memory: 130M
60
+ #neostore.propertystore.db.arrays.mapped_memory: 130M
61
+ #
62
+ #
63
+ ##: ": ": "Cache settings: ": ": "
64
+ #
65
+ ##use adaptive caches YES|NO. Let Neo try make best use of available heap.
66
+ #use_adaptive_cache: YES
67
+ #
68
+ ##heap usage/max heap size ratio. Neo will increase caches while ratio
69
+ ##is less and decrease if greater. Default 0.77 seems to be a good over
70
+ ##all ratio of heap usage to avoid GC trashing. Larger heaps may allow for
71
+ ##a higher ratio while tiny heaps may need even less.
72
+ #adaptive_cache_heap_ratio: 0.77
73
+ #
74
+ ##how aggressive Neo will decrease caches once heap ratio reached
75
+ #adaptive_cache_manager_decrease_ratio: 1.15
76
+ #
77
+ ##how aggresive Neo will increase caches if ratio isn't yet reached
78
+ #adaptive_cache_manager_increase_ratio: 1.1
79
+ #
80
+ ##if no requests are made to Neo this is the amount of time in ms Neo will wait
81
+ ##before it checks the heap usage and adapts the caches if needed
82
+ #adaptive_cache_worker_sleep_time: 3000
83
+ #
84
+ ##minimum size (number of nodes) of node cache. If adaptive cache is in use
85
+ ##node cache will not be decreased under this value
86
+ #min_node_cache_size: 0
87
+ #
88
+ ##minimum size (number of relationships) of relationship cache. If adaptive
89
+ ##cache is in use relationship cache will not be decreased under this value
90
+ #min_relationship_cache_size: 0
91
+ #
92
+ ##maximum size (number of nodes) of node cache. If adaptive cache is not in
93
+ ##use the node cache will not be increased above this value
94
+ #max_node_cache_size: 1500
95
+ #
96
+ ##maximum size (number of relationship) of node cache. If adaptive cache is
97
+ ##not in use the relationship cache will not be increased above this value
98
+ #max_relationship_cache_size: 3500