neo4j-core 0.0.1-java
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.
- data/Gemfile +27 -0
- data/README.rdoc +27 -0
- data/config/neo4j/config.yml +102 -0
- data/lib/db/active_tx_log +1 -0
- data/lib/db/index/lucene-store.db +0 -0
- data/lib/db/index/lucene.log.1 +0 -0
- data/lib/db/index/lucene.log.active +0 -0
- data/lib/db/lock +0 -0
- data/lib/db/messages.log +530 -0
- data/lib/db/neostore +0 -0
- data/lib/db/neostore.id +0 -0
- data/lib/db/neostore.nodestore.db +0 -0
- data/lib/db/neostore.nodestore.db.id +0 -0
- data/lib/db/neostore.propertystore.db +0 -0
- data/lib/db/neostore.propertystore.db.arrays +0 -0
- data/lib/db/neostore.propertystore.db.arrays.id +0 -0
- data/lib/db/neostore.propertystore.db.id +0 -0
- data/lib/db/neostore.propertystore.db.index +0 -0
- data/lib/db/neostore.propertystore.db.index.id +0 -0
- data/lib/db/neostore.propertystore.db.index.keys +0 -0
- data/lib/db/neostore.propertystore.db.index.keys.id +0 -0
- data/lib/db/neostore.propertystore.db.strings +0 -0
- data/lib/db/neostore.propertystore.db.strings.id +0 -0
- data/lib/db/neostore.relationshipstore.db +0 -0
- data/lib/db/neostore.relationshipstore.db.id +0 -0
- data/lib/db/neostore.relationshiptypestore.db +0 -0
- data/lib/db/neostore.relationshiptypestore.db.id +0 -0
- data/lib/db/neostore.relationshiptypestore.db.names +0 -0
- data/lib/db/neostore.relationshiptypestore.db.names.id +0 -0
- data/lib/db/nioneo_logical.log.2 +0 -0
- data/lib/db/nioneo_logical.log.active +0 -0
- data/lib/db/tm_tx_log.1 +0 -0
- data/lib/neo4j/config.rb +139 -0
- data/lib/neo4j/cypher.rb +156 -0
- data/lib/neo4j/neo4j.rb +244 -0
- data/lib/neo4j/neo4j.rb~ +214 -0
- data/lib/neo4j/node.rb +39 -0
- data/lib/neo4j/relationship.rb +61 -0
- data/lib/neo4j/transaction.rb +86 -0
- data/lib/neo4j/type_converters/type_converters.rb +287 -0
- data/lib/neo4j-core/cypher/cypher.rb +867 -0
- data/lib/neo4j-core/cypher/result_wrapper.rb +39 -0
- data/lib/neo4j-core/database.rb +191 -0
- data/lib/neo4j-core/equal/equal.rb +23 -0
- data/lib/neo4j-core/event_handler.rb +265 -0
- data/lib/neo4j-core/index/class_methods.rb +117 -0
- data/lib/neo4j-core/index/index.rb +36 -0
- data/lib/neo4j-core/index/index_config.rb +112 -0
- data/lib/neo4j-core/index/indexer.rb +243 -0
- data/lib/neo4j-core/index/indexer_registry.rb +55 -0
- data/lib/neo4j-core/index/lucene_query.rb +264 -0
- data/lib/neo4j-core/lazy_map.rb +21 -0
- data/lib/neo4j-core/node/class_methods.rb +77 -0
- data/lib/neo4j-core/node/node.rb +47 -0
- data/lib/neo4j-core/property/property.rb +94 -0
- data/lib/neo4j-core/relationship/class_methods.rb +80 -0
- data/lib/neo4j-core/relationship/relationship.rb +97 -0
- data/lib/neo4j-core/relationship_set.rb +61 -0
- data/lib/neo4j-core/rels/rels.rb +147 -0
- data/lib/neo4j-core/rels/traverser.rb +99 -0
- data/lib/neo4j-core/to_java.rb +51 -0
- data/lib/neo4j-core/traversal/evaluator.rb +36 -0
- data/lib/neo4j-core/traversal/filter_predicate.rb +30 -0
- data/lib/neo4j-core/traversal/prune_evaluator.rb +20 -0
- data/lib/neo4j-core/traversal/rel_expander.rb +35 -0
- data/lib/neo4j-core/traversal/traversal.rb +130 -0
- data/lib/neo4j-core/traversal/traverser.rb +295 -0
- data/lib/neo4j-core/version.rb +5 -0
- data/lib/neo4j-core.rb +64 -0
- data/neo4j-core.gemspec +31 -0
- metadata +145 -0
data/Gemfile
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
source :gemcutter
|
2
|
+
|
3
|
+
gemspec
|
4
|
+
|
5
|
+
gem 'neo4j-advanced', "1.7.0.alpha.1", :require => false
|
6
|
+
gem 'neo4j-enterprise', "1.7.0.alpha.1", :require => false
|
7
|
+
|
8
|
+
group 'development' do
|
9
|
+
gem 'guard'
|
10
|
+
gem 'rcov', '0.9.11'
|
11
|
+
gem 'ruby_gntp', :require => false # GrowlNotify for Mac
|
12
|
+
gem 'rb-inotify', :require => false
|
13
|
+
gem 'rb-fsevent', :require => false
|
14
|
+
gem 'rb-fchange', :require => false
|
15
|
+
gem "guard-rspec"
|
16
|
+
gem "horo", ">= 1.0.2" # TODO: Why horo, YARD seems to be much better option?
|
17
|
+
#gem 'ruby-debug-base19' if RUBY_VERSION.include? "1.9"
|
18
|
+
#gem 'ruby-debug-base' if RUBY_VERSION.include? "1.8"
|
19
|
+
#gem "ruby-debug-ide"
|
20
|
+
end
|
21
|
+
|
22
|
+
group 'test' do
|
23
|
+
gem "rake", ">= 0.8.7"
|
24
|
+
gem "rspec", "~> 2.8"
|
25
|
+
gem "its" # its(:with, :arguments) { should be_possible }
|
26
|
+
end
|
27
|
+
|
data/README.rdoc
ADDED
@@ -0,0 +1,27 @@
|
|
1
|
+
== Neo4j-core {<img src="https://secure.travis-ci.org/andreasronge/neo4j.png" />}[http://travis-ci.org/andreasronge/neo4j]
|
2
|
+
|
3
|
+
This gem only contains the JRuby mapping of the Neo4j graph database.
|
4
|
+
The neo4j.rb gem will be split up into two gems, neo4j-core and neo4j.
|
5
|
+
This gem will be included by neo4j 2.0.0 gem.
|
6
|
+
|
7
|
+
Changes from the neo4j.rb
|
8
|
+
* Use of YARD instead of RDoc
|
9
|
+
* Some tidy up of the API and code (e.g. Neo4j::Node#rels methods)
|
10
|
+
* Change of Ruby module structure.
|
11
|
+
* More RSpecs and more use of mocking combined with real testing of the Java layer
|
12
|
+
* Make sure that we retrieve relationships and nodes lazy if possible.
|
13
|
+
* Cypher Query DSL
|
14
|
+
|
15
|
+
This gem contains two modules: Neo4j and Neo4j::Core
|
16
|
+
The Neo4j module is public and the Neo4j::Core(::*) are private modules.
|
17
|
+
|
18
|
+
== The public API
|
19
|
+
|
20
|
+
{Neo4j::Node} The Java Neo4j Node
|
21
|
+
|
22
|
+
{Neo4j::Relationship} The Java Relationship
|
23
|
+
|
24
|
+
{Neo4j} The Database
|
25
|
+
|
26
|
+
{Neo4j::Cypher} Cypher Query Generator, see RSpec spec/neo4j/cypher_spec
|
27
|
+
|
@@ -0,0 +1,102 @@
|
|
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 migrations should be run in a new thread
|
28
|
+
# If set to true it you can use the database while it is migrating.
|
29
|
+
migration_thread: false
|
30
|
+
|
31
|
+
# If online backup should be available, if it is the Online JAR file will be loaded,
|
32
|
+
# Notice it must be either 'true' or 'false' as string
|
33
|
+
enable_online_backup: 'false'
|
34
|
+
|
35
|
+
#use the clustered Neo4j GraphDatabase (org.neo4j.kernel.HighlyAvailableGraphDatabase)
|
36
|
+
ha.db: false
|
37
|
+
|
38
|
+
# Example of HA Configuration, see http://wiki.neo4j.org/content/High_Availability_Cluster
|
39
|
+
# This is only used when ha.db is set to true
|
40
|
+
ha.server_id: 2
|
41
|
+
ha.server: 'localhost:6002'
|
42
|
+
ha.coordinators: 'localhost:2181,localhost:2182,localhost:2183'
|
43
|
+
|
44
|
+
# if enabled you can use the bin/neo4j-shell command to access the database
|
45
|
+
enable_remote_shell: "port=9332"
|
46
|
+
|
47
|
+
#===Memory mapped I/O settings===
|
48
|
+
|
49
|
+
#Each file in the Neo store can use memory mapped I/O for reading/writing.
|
50
|
+
#Best performance is achived if the full file can be memory mapped but if
|
51
|
+
#there isn't enough memory for that Neo will try and make the best use of
|
52
|
+
#the memory it gets (regions of the file that get accessed often will more
|
53
|
+
#likley be memory mapped).
|
54
|
+
|
55
|
+
#For high traversal speed it is important to have the nodestore.db and
|
56
|
+
#relationshipstore.db files.
|
57
|
+
|
58
|
+
neostore.nodestore.db.mapped_memory: 25M
|
59
|
+
neostore.relationshipstore.db.mapped_memory: 50M
|
60
|
+
neostore.propertystore.db.mapped_memory: 90M
|
61
|
+
neostore.propertystore.db.index.mapped_memory: 1M
|
62
|
+
neostore.propertystore.db.index.keys.mapped_memory: 1M
|
63
|
+
neostore.propertystore.db.strings.mapped_memory: 130M
|
64
|
+
neostore.propertystore.db.arrays.mapped_memory: 130M
|
65
|
+
|
66
|
+
|
67
|
+
#: ": ": "Cache settings: ": ": "
|
68
|
+
|
69
|
+
#use adaptive caches YES|NO. Let Neo try make best use of available heap.
|
70
|
+
use_adaptive_cache: YES
|
71
|
+
|
72
|
+
#heap usage/max heap size ratio. Neo will increase caches while ratio
|
73
|
+
#is less and decrease if greater. Default 0.77 seems to be a good over
|
74
|
+
#all ratio of heap usage to avoid GC trashing. Larger heaps may allow for
|
75
|
+
#a higher ratio while tiny heaps may need even less.
|
76
|
+
adaptive_cache_heap_ratio: 0.77
|
77
|
+
|
78
|
+
#how aggressive Neo will decrease caches once heap ratio reached
|
79
|
+
adaptive_cache_manager_decrease_ratio: 1.15
|
80
|
+
|
81
|
+
#how aggresive Neo will increase caches if ratio isn't yet reached
|
82
|
+
adaptive_cache_manager_increase_ratio: 1.1
|
83
|
+
|
84
|
+
#if no requests are made to Neo this is the amount of time in ms Neo will wait
|
85
|
+
#before it checks the heap usage and adapts the caches if needed
|
86
|
+
adaptive_cache_worker_sleep_time: 3000
|
87
|
+
|
88
|
+
#minimum size (number of nodes) of node cache. If adaptive cache is in use
|
89
|
+
#node cache will not be decreased under this value
|
90
|
+
min_node_cache_size: 0
|
91
|
+
|
92
|
+
#minimum size (number of relationships) of relationship cache. If adaptive
|
93
|
+
#cache is in use relationship cache will not be decreased under this value
|
94
|
+
min_relationship_cache_size: 0
|
95
|
+
|
96
|
+
#maximum size (number of nodes) of node cache. If adaptive cache is not in
|
97
|
+
#use the node cache will not be increased above this value
|
98
|
+
max_node_cache_size: 1500
|
99
|
+
|
100
|
+
#maximum size (number of relationship) of node cache. If adaptive cache is
|
101
|
+
#not in use the relationship cache will not be increased above this value
|
102
|
+
max_relationship_cache_size: 3500
|
@@ -0,0 +1 @@
|
|
1
|
+
tm_tx_log.1
|
Binary file
|
Binary file
|
Binary file
|
data/lib/db/lock
ADDED
File without changes
|