Skip to content

C++ bindings to Exosite One Platform API (JSON RPC) over HTTP

License

Notifications You must be signed in to change notification settings

Letsch22/cpponep

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 

Repository files navigation

======================================== About cpponep

cpponep is C++ binding for Exosite One-Platform API. The API is exposed over HTTP in a JSON RPC style interface. It is designed to run on *nix operating systems (such as Linux).

Tested on Ubuntu 14.04 with g++ 4.8.4

License is BSD, Copyright 2015, Exosite LLC (see LICENSE file)

======================================== Dependencies

cpponep depends on the following libraries, which need to be installed before cpponep can be compiled:

--) cURLpp (version 0.7.3 or newer): http://curlpp.org/
--) jsoncpp (version 1.6.4 or newer): https://github.com/open-source-parsers/jsoncpp/

======================================== Quick Start

  1. Build jsoncpp
    $ cd [DIR_OF_JSONCPP]
    $ scons platform=linux-gcc check
    $ python amalgamate.py

NOTE: 'scons' and 'python' are required to build jsoncpp.

  1. Copy source file and two header files to 'onepv1/src' and 'onepv1/include/json' respectively
    $ cp dist/jsoncpp.cpp [DIR_OF_CPPONEP]/onepv1/src
    $ cp dist/json/json.h [DIR_OF_CPPONEP]/onepv1/include/json
    $ cp dist/json/json-forwards.h [DIR_OF_CPPONEP]/onepv1/include/json

  2. Build cURLpp
    $ cd [DIR_OF_CURLPP]
    $ ./configure
    $ make
    $ sudo make install

NOTE: 'libboost' and 'libcurl' are required to build cURLpp. Add /usr/local/lib to /etc/ld.so.conf and run ldconfig if necessary.

  1. Build cpponep
    $ cd [DIR_OF_CPPONEP]/onepv1
    $ make

  2. Run example
    $ ./example

======================================== User Application

To add cpponep library to your own application:

  1. Copy all items in 'include' to the include directory of application.
  2. Copy *.a in 'lib' to the library directory of application.

======================================== Release Info


Release 0.2.2

--) default examples to HTTPS


Release 0.2.1

--) update listing RPC method to use RIDs, keep backwards compatibility


Release 0.2

--) now depends on jsoncpp 1.6.4 rather than 0.6.0-rc2
--) add writegroup, usage, and recordbatch
--) remove comment
--) add writegroup example
--) add provisioning and example


Release 0.1

--) initial version

About

C++ bindings to Exosite One Platform API (JSON RPC) over HTTP

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 97.0%
  • Makefile 2.1%
  • C 0.9%