Skip to content

afel-project/entity-centric-api

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MK:Smart entity-centric API

This is a standalone server of a RESTful API for exposing integrated linked data.

This implementation is in Java and entirely Maven-based. There are no external dependency files bundled with the project, but you need to be online for Maven to download them and assemble the API.

Requirements

To build the API you will need JDK 1.7 and Maven 3. Java 8 is currently under test.

To run the API you will need a JRE 1.7 and a running instance of CouchDB 1.6.x.

Instructions

Building the API

From the root source directory, it's just

$ mvn install

Since there are still some unit tests that rely upon the availability of online resources (yes I know... sorry, I'll get rid of them eventually), it may sometimes be convenient to skip tests. To do so, use

$ mvn install -Dmaven.test.skip=true

Running the API

There is a standalone JAR distribution with an embedded Jetty server. After building the project, go to the output directory

$ cd standalone/target

There you will find a file called ecapi.launcher-[version].jar. You can run this JAR on the desired HTTP port (mandatory, as there is no default port).

$ java -jar ecapi.launcher-[version].jar -c [config_file] -p [port]

config_file is a Java properties file. Supplying this is mandatory. A sample file can be found in the src/main/resources directory of the standalone project.

Debugging the API

To use a custom log configuration, set VM parameter -Dlog4j.configuration=file:log4j.properties

To debug in Eclipse:

$ java -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8453,server=y,suspend=n -Dlog4j.configuration=file:log4j.properties -jar ecapi.launcher-[version].jar -c [config_file] -p [port]

License

The Entity-Centric API is licensed under the Apache License, Version 2.0 (the "License"), see http://www.apache.org/licenses/LICENSE-2.0

Releases

No releases published

Packages

No packages published

Languages

  • Java 99.0%
  • Other 1.0%