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

Sign up to get free protection for your applications and to get access to all the features.
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