Permalink
Browse files

stating release.

  • Loading branch information...
1 parent 966081d commit 8d931cb2533ab077afe9131bb823e0d4caa5b7a0 @okram okram committed Aug 4, 2012
Showing with 3,402 additions and 23 deletions.
  1. +1 −0 .gitignore
  2. +3 −2 CHANGELOG.textile
  3. +11 −0 doc/wiki/Acknowledgments.textile
  4. +88 −0 doc/wiki/Basic-REST-API.textile
  5. +64 −0 doc/wiki/Command-Line.textile
  6. +127 −0 doc/wiki/Creating-an-Extension.textile
  7. +113 −0 doc/wiki/Deploying-an-Extension.textile
  8. +13 −0 doc/wiki/Extension-Annotations.textile
  9. +58 −0 doc/wiki/Extension-Configuration.textile
  10. +185 −0 doc/wiki/Extension-Documentation.textile
  11. +83 −0 doc/wiki/Extension-Naming.textile
  12. +65 −0 doc/wiki/Extension-Parameters.textile
  13. +143 −0 doc/wiki/Extension-Points.textile
  14. +50 −0 doc/wiki/Extension-Response.textile
  15. +54 −0 doc/wiki/Extensions-and-Gremlin.textile
  16. +11 −0 doc/wiki/Extensions.textile
  17. +158 −0 doc/wiki/Getting-Started.textile
  18. +335 −0 doc/wiki/Gremlin-Extension.textile
  19. +78 −0 doc/wiki/Home.textile
  20. +18 −0 doc/wiki/Introduction.textile
  21. +30 −0 doc/wiki/Mapping-a-URI-to-JSON.textile
  22. +163 −0 doc/wiki/Property-Data-Types.textile
  23. +335 −0 doc/wiki/Release-Notes.textile
  24. +349 −0 doc/wiki/Rexster-Configuration.textile
  25. +132 −0 doc/wiki/Rexster-Console.textile
  26. +19 −0 doc/wiki/Rexster-Kibbles.textile
  27. +326 −0 doc/wiki/Rexster-Mime-Types.textile
  28. +61 −0 doc/wiki/Rexster-Security.textile
  29. +9 −0 doc/wiki/The-Benefits-of-Rexster.textile
  30. +101 −0 doc/wiki/The-Dog-House.textile
  31. +57 −0 doc/wiki/Troubleshooting.textile
  32. +141 −0 doc/wiki/Wrapping-as-a-Windows-Service.textile
  33. +8 −8 pom.xml
  34. +4 −4 rexster-console/pom.xml
  35. +1 −1 rexster-core/pom.xml
  36. +1 −1 rexster-core/src/main/java/com/tinkerpop/rexster/Tokens.java
  37. +1 −1 rexster-kibbles/batch-kibble/pom.xml
  38. +1 −1 rexster-kibbles/frames-kibble/pom.xml
  39. +1 −1 rexster-kibbles/pom.xml
  40. +1 −1 rexster-kibbles/sample-kibbles/pom.xml
  41. +1 −1 rexster-kibbles/sparql-kibble/pom.xml
  42. +1 −1 rexster-protocol/pom.xml
  43. +1 −1 rexster-server/pom.xml
View
@@ -3,6 +3,7 @@
/data
/rexster-server/release
/rexster-server/target
+/rexster-kibbles/target
/rexster-kibbles/*/target
/rexster-core/target
/rexster-console/target
View
@@ -5,13 +5,13 @@ h2. Rexster 0.y.z
!https://github.com/tinkerpop/rexster/raw/master/doc/images/rexster-2.png!
-h3. Version 2.1.0 (NOT OFFICIALLY RELEASED YET)
+h3. Version 2.1.0 (August 4, 2012)
```xml
<dependency>
<groupId>com.tinkerpop.rexster</groupId>
<artifactId>rexster</artifactId>
- <version>2.1.0-SNAPSHOT</version>
+ <version>2.1.0</version>
</dependency>
```
@@ -21,6 +21,7 @@ h3. Version 2.1.0 (NOT OFFICIALLY RELEASED YET)
* Vertex query API.
* Fixed issue with inconsistencies of PUT, POST, and DELETE around manual indices.
* Restructured project to introduce rexster-core, rexster-console and rexster-protocol.
+* Integration tests now run across TinkerGraph, Neo4j, OrientDB, Titan and Dex by default (Titan is disabled by default)
==<hr/>==
@@ -0,0 +1,11 @@
+<img width="100" src="https://github.com/tinkerpop/rexster/raw/master/doc/images/rexster-character-2.png"/>
+
+This section provides a list of the people that have contributed in some way to the creation of Rexster.
+
+# "Stephen Mallete":http://stephen.genoprime.com -- designed, developed, tested, and documented Rexster.
+# "Marko A. Rodriguez":http://markorodriguez.com -- designed, developed, tested, and documented Rexster.
+# "Peter Neubauer":http://www.linkedin.com/in/neubauer -- aided in the evangelizing and conceptualizing of Rexster.
+# "Pierre De Wilde":http://www.linkedin.com/in/pierredewilde -- designs and tests new features.
+# "Ketrina Yim":http://www.ketrinayim.com/ -- designed the Rexster logo.
+
+Please review Rexster's "pom.xml":http://github.com/tinkerpop/rexster/blob/master/pom.xml. Rexster would not be possible without the work done by others to create these useful packages.
@@ -0,0 +1,88 @@
+!https://github.com/tinkerpop/rexster/raw/master/doc/images/dog-reading.png!
+
+This cheat sheet provides a review of the RESTful API for Rexster. Note that beyond the query parameters provided in the table below, the standard Rexster parameters @rexster.offset.start@, @rexster.offset.end@, and @rexster.returnKeys@ also work in cases where it makes sense. The @<graph>@ is the unique name of a graph configured within Rexster. The base of the URI, when running locally, is generally @localhost:8182@.
+
+Please note that there are [[Rexster MIME Types]] that affect operations within the API.
+
+h1. GET Operations
+
+|_. returns |_. uri |_. description |
+| graphs | @/graphs@ | get all the graphs |
+| graph | @/graphs/<graph>@ | get the graph named <graph> |
+| vertices | @/graphs/<graph>/vertices@ | get all vertices |
+| vertices | @/graphs/<graph>/vertices?key=<key>&value=<value>@ | get all vertices for a key index given the specified @<key>@/@<value>@ |
+| vertex | @/graphs/<graph>/vertices/<id>@ | get vertex with id @<id>@ |
+| vertices | @/graphs/<graph>/vertices/<id>/out@ | get the adjacent out vertices of vertex @<id>@ ^4^ |
+| vertices | @/graphs/<graph>/vertices/<id>/in@ | get the adjacent in vertices of vertex @<id>@ ^4^ |
+| vertices | @/graphs/<graph>/vertices/<id>/both@ | get the both adjacent in and out vertices of vertex @<id>@ ^4^ |
+| long | @/graphs/<graph>/vertices/<id>/outCount@ | get the number of out vertices of vertex @<id>@ ^4^ |
+| long | @/graphs/<graph>/vertices/<id>/inCount@ | get the number of in vertices of vertex @<id>@ ^4^ |
+| long | @/graphs/<graph>/vertices/<id>/bothCount@ | get the number of adjacent in and out vertices of vertex @<id>@ ^4^ |
+| longs | @/graphs/<graph>/vertices/<id>/outIds@ | get the identifiers of out vertices of vertex @<id>@ ^4^ |
+| longs | @/graphs/<graph>/vertices/<id>/inIds@ | get the identifiers of in vertices of vertex @<id>@ ^4^ |
+| longs | @/graphs/<graph>/vertices/<id>/bothIds@ | get the identifiers of adjacent in and out vertices of vertex @<id>@ ^4^ |
+| edges | @/graphs/<graph>/edges@ | get all edges |
+| edges | @/graphs/<graph>/edges?key=<key>&value=<value>@ | get all edges for a key index given the specified @<key>@/@<value>@ |
+| edge | @/graphs/<graph>/edges/<id>@ | get edge with id @<id>@ |
+| edges | @/graphs/<graph>/vertices/<id>/outE@ | get the out edges of vertex @<id>@ ^4^ |
+| edges | @/graphs/<graph>/vertices/<id>/inE@ | get the in edges of vertex @<id>@ ^4^ |
+| edges | @/graphs/<graph>/vertices/<id>/bothE@ | get the both in and out edges of vertex @<id>@ ^4^ |
+| indices | @/graphs/<graph>/indices@ | get all the indices associated with the graph |
+| elements | @/graphs/<graph>/indices/index?key=<key>&value=<value>@ | get all elements with @<key>@ property equal to @<value>@ in @index@ |
+| long | @/graphs/<graph>/indices/index/count?key=<key>&value=<value>@ | get a count of all elements with @<key>@ property equal to @<value>@ in @index@ |
+| keys | @/graphs/<graph>/keyindices/@ | get the combination of vertex and edge keys |
+| keys | @/graphs/<graph>/keyindices/vertex@ | get vertex keys |
+| keys | @/graphs/<graph>/keyindices/edge@ | get edge keys |
+| prefixes ^1^ | @/graphs/<graph>/prefixes@ | get the list of SailGraph prefixes |
+| prefix ^1^ | @/graphs/<graph>/prefixes/prefix@ | get a specific prefix value |
+
+h1. POST Operations
+
+|_. returns |_. uri |_. description |
+| vertex | @/graphs/<graph>/vertices@ | create a vertex with no specified identifier |
+| vertex | @/graphs/<graph>/vertices/<id>@ | create a vertex with id @<id>@ ^2^ |
+| vertex | @/graphs/<graph>/vertices/<id>?<key>=<value>&<key'>=<value'>@ | create a vertex with id @<id>@ and the provided properties (or update vertex properties if vertex already exists). ^2^ |
+| edge | @/graphs/<graph>/edges?_outV=<id>&_label=friend&_inV=2&<key>=<key'>@ | create an out edge with no specified identifier from vertex @<id>@ to vertex @2@ labeled "friend" with provided properties. ^2^ |
+| edge | @/graphs/<graph>/edges/3?_outV=<id>&_label=friend&_inV=2&<key>=<key'>@ | create an out edge with id @3@ from vertex @<id>@ to vertex @2@ labeled "friend" with provided properties. ^2^ |
+| edge | @/graphs/<graph>/edges/3?<key>=<key'>@ | update the properties of the edge with id @3@ |
+| index ^3^ | @/graphs/<graph>/indices/index?class=vertex@ | create a new manual index named @index@ |
+| void | @/graphs/<graph>/keyindices/vertex/<key>@ | create a new key index for a vertex |
+| void | @/graphs/<graph>/keyindices/edge/<key>@ | create a new key index for an edge |
+| void ^1^ | @/graphs/<graph>/prefixes?namespace=http%3A%2F%2Fwww.ggl.com&prefix=pf@ | add a new SailGraph prefix with @namespace@ http://www.ggl.com and @prefix@ pf |
+
+h1. PUT Operations
+
+|_. returns |_. uri |_. description |
+| vertex | @/graphs/<graph>/vertices/<id>?<key>=<value>&<key'>=<value'>@ | replaces the all existing properties of the vertex @<id>@ with those specified |
+| edge | @/graphs/<graph>/edges/<id>?<key>=<value>&<key'>=<value'>@ | replaces the all existing properties of the edge @<id>@ with those specified |
+| void | @/graphs/<graph>/indices/index?key=<key>&value=<value>&id=<id>@ | put vertex with id @<id>@ into @index@ at @<key>/<value>@ |
+
+h1. DELETE Operations
+
+|_. returns |_. uri |_. description |
+| void | @/graphs/<graph>/vertices/<id>@ | remove vertex @<id>@ |
+| void | @/graphs/<graph>/vertices/<id>?<key>&<key'>@ | remove properties @<key>@ and @<key'>@ from vertex @<id>@ |
+| void | @/graphs/<graph>/edges/3@ | remove the edge with id @3@ |
+| void | @/graphs/<graph>/edges/3?<key>&<key'>@ | remove properties @<key>@ and @<key'>@ from edge @3@ |
+| void | @/graphs/<graph>/indices/index@ | drop the index named @index@ |
+| void | @/graphs/<graph>/indices/index?key=<key>&value=<value>&class=vertex&id=<id>@ | remove the vertex @<id>@ from @index@ at @<key>/<value>@ |
+| void ^1^ | @/graphs/<graph>/prefixes/prefix@ | remove the specified prefix |
+
+^1^ Only applies to @SailGraph@ configurations.
+^2^ Underlying graph database implementations must support the ability to assign the edge/vertex identifier. In cases where the graph database does not support the identifier (ie. Neo4j), the identifier supplied with be ignored and the graph assigned identifier will be returned in the JSON after successful graph element creation.
+^3^ Note that when POSTing an index you may also pass a @params@ query string argument. This argument allows configuration parameters to be passed into the index itself (support of this feature is specific to the graph implementation itself). Please read the Neo4j Blueprints implementation for an "example":https://github.com/tinkerpop/blueprints/wiki/Neo4j-Implementation on how to configure an index. The @params@ argument is [[parsed to JSON|Mapping a URI to JSON]] so a query string that looked like @params.to_lower_case=true&params.type=fulltext&params.provider=lucene@ would construct a map of three index parameters.
+^4^ Rexster utilizes "Vertex Query":https://github.com/tinkerpop/blueprints/wiki/Vertex-Query capabilities of Blueprints for these noted operations. These operations accept the following parameters: @_label@, @_properties@ and @limit@.
+
+* @_label@ filters edges by label and may be either a single value or an array of values as in @_label=[created,knows]@
+* @_limit@ limits the number of values returned.
+* @_properties@ is an array of edge properties to filter on in the following fashion: @_properties=[ [weight,>,(f,0.5)], [weight,<,(f,1.0)] ]@. Note that property values respect [[Rexster Data Typing|Property Data Types]] and the following comparators: @<=, <, <>, >, >=@.
+
+Since these REST operations are returning lists, the standard Rexster Parameters (discussed below) apply. Choosing to use @rexster.offset.end@ to limit to the top N results, is different than using @_limit@ in that @_limit@ pushes this filtering operation down to the underlying graph making it more efficient than @rexster.offset.end@ which does that filtering within Rexster itself.
+
+In all cases, parameters may be POSTed or PUTed on the [[URI|Mapping a URI to JSON]] or as JSON using one of the [[Rexster MIME Types]].
+
+h1. Rexster Parameters
+
+* @rexster.offset.start@ - Expects a numeric value that represents the start point for returning a set of records and is used in conjunction with @rexster.offset.end@ to allow for paging of results. If used without a valid @rexster.offset.end@ parameter specified, Rexster will return all remaining records in the set.
+* @rexster.offset.end@ - Expects a numeric value that represents the end point for returning a set of records and is used in conjunction with @rexster.offset.start@ to allow for paging of results. If used without a valid @rexster.offset.start@ parameter specified, Rexster will assume the start value to be zero.
+* @rexster.returnKeys@ - Expects a comma separated list of property names to return in the results. Element meta-data will always be returned even if @rexster.returnKeys@ are specified. If a valid value for this parameter is not specified, then all properties are returned.
@@ -0,0 +1,64 @@
+Rexster is started and stopped through a command line interface exposed via the @rexster.sh@. When Rexster is started, it listens on a [[configurable port|Rexster Configuration]] (port 8183 by default) for shutdown and status requests.
+
+h1. Starting Rexster
+
+When starting Rexster from the command line using:
+
+```text
+./bin/rexster.sh --start
+```
+
+or with:
+
+```text
+./bin/rexster.sh -s
+```
+
+there are several options available:
+
+* @-rp@, @--rexsterport@ - Overrides the @rexster-server-port@ configuration value in @rexster.xml@. This value is 8182 by default.
+* @-wr@, @--webroot@ - Overrides the @web-root@ configuration value in @rexster.xml@.
+* @-c@, @--configuration@ - Specify the location of a specific @rexster.xml@ file to use for configuration. If this argument is not specified, Rexster will first try to read a file called @rexster.xml@ from the root of the working directory. If it can't find that it will use the @com.tinkerpop.rexster.rexster.xml@ resource.
+* @-d@, @--debug@ - When this flag is included on the command line, log messages from Jersey are no longer suppressed. May be useful when developing Rexster itself or building [[Extensions]].
+* @-h@, @--help@ - When this flag is supplied on the command line, Rexster outputs a description of the command line options available. Rexster will not start when help is requested.
+
+The following command will start Rexster on port 7788 with a configuration file called @my-rexster.xml@:
+
+```text
+./bin/rexster.sh --start -rp 7788 -c my-rexster.xml
+```
+
+h1. Stopping Rexster
+
+When stopping Rexster from the command line using:
+
+```text
+./bin/rexster.sh --stop
+```
+
+or with the shorthand:
+
+```text
+./bin/rexster.sh -x
+```
+
+there are several options available:
+
+* @-rh@, @--rexsterhost@ - The host/IP address to which the shutdown command will be issued. Shutdown will assume @127.0.0.1@ if the parameter is not specified.
+* @-rp@, @--rexsterport@ - The port of the host to which the shutdown command will be issued. Shutdown will assume @8183@ if the parameter is not specified.
+* @-w@, @--wait@ - Wait for the server to confirm that shutdown was performed.
+* @-h@, @--help@ - When this flag is supplied on the command line, a description of the command line options is displayed. A command to stop Rexster will not be issued when help is requested.
+
+The following command would issue a stop message to a Rexster server listening on @192.168.0.123@ and port @7788@.
+
+```text
+./bin/rexster.sh --stop -rh 192.168.0.123 -rp 7788
+```
+
+h1. Other Commands
+
+Aside from starting and stopping Rexster, there are several other commands that can be executed against Rexster.
+
+* @-u@, @--status@ - Gets the status of the Rexster server (running or not). Use @-h@ with it for a list of command parameters.
+* @-v@, @--version@ - Shows the version of Rexster.
+* @-h@, @--help@ - When this flag is supplied on the command line, a description of the command options is displayed.
Oops, something went wrong.

0 comments on commit 8d931cb

Please sign in to comment.