Commit 3a80c9d9 authored by Greg Williams's avatar Greg Williams
Browse files

More README updates for more/better references and less clutter.

parent 802787a5
Loading
Loading
Loading
Loading
+29 −15
Original line number Diff line number Diff line
@@ -3,11 +3,7 @@
Kinetic C Client Library
========================

This repo contains code for producing Kinetic C clients which use the Seagate Kinetic protocol. Code examples are included for reference as part of a utility (`kinetic-c-client-utility`) that builds and links against an installed Kinetic C static library.

The project Makefile can be used as a reference for developing a Makefile for building for a new custom Kinetic C client.

[Kinetic-C build status](http://travis-ci.org/atomicobject/kinetic-c) is provided via [Travis CI](http://travis-ci.org)
This repo contains code for producing Kinetic C clients which use the Seagate Kinetic protocol.

Prerequisites
-------------
@@ -25,7 +21,7 @@ Getting Started

    > git clone --recursive https://github.com/atomicobject/kinetic-c.git
    > cd kinetic-c
    > bundle install # Ensure you have all RubyGems at the proper versions
    > bundle install # ensure you have all RubyGems at the proper versions

**Update to the latest version (previously cloned)**

@@ -47,28 +43,46 @@ Getting Started

    > make run

**Uninstall, perform a full clean build with test, and validate with utility**

    > make all # this is what Travis CI does

API Documentation
=================
[Kinetic-C API](http://seagate.github.io/kinetic-c/kinetic__api_8h.html) (generated with Doxygen)

Examples
========
[Kinetic-C API Documentation](http://seagate.github.io/kinetic-c) (generated with Doxygen)
* [Kinetic-C API](http://seagate.github.io/kinetic-c/kinetic__api_8h.html)
* [Kinetic-C types](http://seagate.github.io/kinetic-c/kinetic__api_8h.html)

Example Client/Test Utility
===========================

Code examples are included for reference as part of a test utility. The source code for the utility is used to build both a static and dynamically linked verion of the kinetic-c-client library.

* 'kinetic-c-util' builds/links against installed Kinetic C static library (.a)
* 'kinetic-c-util.x.y.z' builds/links against installed Kinetic C dynamic library (.so)

The project Makefile can be used as a reference for developing a Makefile for building for a new custom Kinetic C client.

The following examples are provided for development reference and as utilities to aid development. In order to execute a given example, you must first do:
In order to execute a given example, after building it, you must first do:

    > cd build/artifacts/release
    > cd bin

You can then execute `kinetic-c-client-util` with a valid example name, optionally preceeded with any of the optional arguments.

**Options**
Options
-------
* `--host [HostName/IP]` or `-h [HostName/IP]` - Set the Kinetic Device host
* `--tls` - Use the TLS port to execute the specified operation(s)

**Operations**
Operations
----------
* `kinetic-c-client [--host|-h hostname|123.253.253.23] noop put get`
    * `kinetic-c-client-util noop`
        * Execute a NoOp (ping) operation to verify the Kinetic Device is ready
    * `kinetic-c-client-util put`
        * Execute a Put operation to store a key/value
        * Execute a Put operation to store a key/value entry
    * `kinetic-c-client-util get`
        * Execute a Get operation to retrieve a key/value
        * Execute a Get operation to retrieve a key/value entry
    * `kinetic-c-client-util delete`
        * Execute a Delete operation to destroy a key/value entry