Skip to content
master
Switch branches/tags
Code

Latest commit

Update dependencies on commons-io, junit and log4j-core that github
noticed.

Change-Id: Ibbb81e2ae0932a1dd7691a33c80c4c6c8e2ee6c4
Reviewed-on: https://gerrit.franz.com:9080/c/agraph-java-client/+/18506
Tested-by: Hudson <hudson@franz.com>
Reviewed-by: John Foderaro <jkf@franz.com>
1969469

Git stats

Files

Permalink
Failed to load latest commit information.

Java client for Franz AllegroGraph

This is the Java client for the Franz AllegroGraph triple store. It contains Sesame/RDF4J- and Jena-compatible APIs.

Client prerequisites

Java version 8 or higher, and any operating system should work with these jars.

Usage

Maven

The recommended way of using the client API is to create a dependency on its Maven artifact. To do this in a Maven project, add the following to your dependencies:

<dependency>
  <groupId>com.franz</groupId>
  <artifactId>agraph-java-client</artifactId>
  <version>3.0.6-SNAPSHOT</version>
  <scope>compile</scope>
</dependency>

For Gradle, use this

compile group: 'com.franz', name: 'agraph-java-client', version: '3.0.6-SNAPSHOT'

Apache Ivy syntax:

<dependency org="com.franz" name="agraph-java-client" rev="3.0.6-SNAPSHOT"/>

SBT (Scala):

libraryDependencies += "com.franz" % "agraph-java-client" % "3.0.6-SNAPSHOT"

Leiningen (Clojure):

[com.franz/agraph-java-client "3.0.6-SNAPSHOT"]

Distribution archive

Tar distributions of the AllegroGraph Java client are available from ftp://ftp.franz.com/pub/agraph/java-client/. A tar distribution includes jar files for agraph-java-client and jars on which it depends.

Programs that use the API should include all JAR files from the lib/ directory of the distribution on their classpath.

To use that local JAR file through Maven install it into your local repository:

mvn install:install-file -Dfile=lib/agraph-java-client-3.0.6-SNAPSHOT.jar -DpomFile=pom.xml

Note that when using the API through Maven all dependencies are downloaded from the central repository - JARs included in the distribution are not used.

Development

Testing

Use this command to run the default testsuite. This assumes that AllegroGraph is listening on the local machine on the default port (10035).

mvn test

To include long running tests, do

mvn test -Dtests.include=test.TestSuites\$Prepush,test.TestSuites\$Stress

Distribution

To build a distribution archive, do

mvn package

Tutorials

There are three tutorials located in tutorials/ that can be compiled and run. They are:

sesame/

Example usage of the AG Sesame/RDF4J interface

jena/

Example usage of the AG Jena interface

attributes/

Example usage of AG Triple Attributes

Prerequisites

An AllegroGraph server must be up and running in order to run the tutorials.

The class for each tutorial declares a number of variables near the top of its respective class definition, which provide the information necessary to communicate with AllegroGraph. If necessary, modify these variables to match the settings for your server before compiling each tutorial.

By default, each tutorial looks for AllegroGraph on localhost at port 10035. Each will create a repository named after the respective tutorial in the "java-catalog" catalog.

In order for the tutorial to run successfully, you must ensure that the "java-catalog" catalog has been defined in your agraph.cfg prior to starting AG, or change the value of CATALOG_ID to name a catalog that exists on your server. Use the empty string ("") or null to indicate the root catalog. All other variables must be updated to correspond to your server configuration as well.

Compiling Tutorials

Each tutorial is a separate Maven project. To compile the tutorials first install the AllegroGraph Java client into your local repository. This process is described in the 'Usage' section. Then run the following command in the directory containing the tutorial:

mvn compile

Running Tutorials

To run one of the tutorials, use the following command line:

mvn exec:java

in the directory containing the tutorial you wish to run.

Sesame and Jena tutorials contain multiple, numbered examples. It is possible to run just the specified examples by passing their numbers as arguments in the following way:

mvn exec:java -Dexec.args="1 2 3 5 8 13 21"

The argument 'all' indicates that all examples should be run.

License

Copyright (c) 2008-2017 Franz Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html