Commit 942c5471 authored by plensing's avatar plensing
Browse files

Merge pull request #31 from plensing/master

Examples for 3.0.0 cpp-client
parents 83eb785f 6a4323a0
Loading
Loading
Loading
Loading
+1 −2
Original line number Diff line number Diff line
@@ -13,12 +13,11 @@ option(USE_LOCAL_KINETIC_CLIENT "Uses the kinetic client at the KINETIC_CLIENT_P
if(USE_LOCAL_KINETIC_CLIENT)
else(USE_LOCAL_KINETIC_CLIENT)
    set(KINETIC_CLIENT_PATH "${CMAKE_BINARY_DIR}/vendor/src/kinetic_cpp_client")

    ExternalProject_add(
        kinetic_cpp_client
        PREFIX "vendor"
        GIT_REPOSITORY "https://github.com/Seagate/kinetic-cpp-client.git"
        GIT_TAG "0.0.9"
        GIT_TAG "0.1.1"
        BUILD_IN_SOURCE 1
        INSTALL_COMMAND ""
    )
+2 −4
Original line number Diff line number Diff line
@@ -45,14 +45,12 @@ bool parse_flags(int *argc,
    options.hmac_key = FLAGS_hmac_key;

    kinetic::KineticConnectionFactory kinetic_connection_factory = kinetic::NewKineticConnectionFactory();

    if (!kinetic_connection_factory.NewNonblockingConnection(options, nonblocking_connection).ok()) {
    if (!kinetic_connection_factory.NewNonblockingConnection(options, nonblocking_connection).ok() ||
        !kinetic_connection_factory.NewBlockingConnection(options, blocking_connection, FLAGS_timeout).ok() ){
        printf("Unable to connect\n");
        return false;
    }
    blocking_connection = std::make_shared<kinetic::BlockingKineticConnection>(nonblocking_connection, FLAGS_timeout);
    blocking_connection->SetClientClusterVersion(FLAGS_cluster_version);

    return true;
}

+3 −2
Original line number Diff line number Diff line
@@ -29,6 +29,7 @@ static const int kP2PBatchSize = 10;
using kinetic::KineticConnectionFactory;
using kinetic::Status;
using kinetic::KineticRecord;
using kinetic::P2PPushRequest;

using std::shared_ptr;
using std::make_shared;
@@ -48,7 +49,7 @@ kinetic::P2PPushRequest prepare_request(const vector<kinetic::P2PPushOperation>&

    if (currentDestination < destinations.size() - 1) {
        // Add the pipleline request onto this request's first operation
        request.operations[request.operations.size() - 1].request = make_shared<::kinetic::P2PPushRequest>(
        request.operations[request.operations.size() - 1].request = make_shared< P2PPushRequest >(
                prepare_request(operations, destinations, currentDestination + 1));
    }

@@ -129,7 +130,7 @@ int main(int argc, char* argv[]) {
        op.newKey = *it;
        operations.push_back(op);

        if (operations.size() > kP2PBatchSize) {
        if (operations.size() > (size_t)kP2PBatchSize) {
            dispatch_request(blocking_connection, operations, destinations);
            operations.clear();
        }
+3 −3
Original line number Diff line number Diff line
@@ -75,12 +75,12 @@ int main(int argc, char* argv[]) {
    KineticConnectionFactory kinetic_connection_factory = kinetic::NewKineticConnectionFactory();

    shared_ptr<kinetic::NonblockingKineticConnection> nonblocking_connection;
    if (!kinetic_connection_factory.NewNonblockingConnection(options, nonblocking_connection).ok()) {
    shared_ptr<kinetic::BlockingKineticConnection> blocking_connection;
    if (!kinetic_connection_factory.NewNonblockingConnection(options, nonblocking_connection).ok() ||
        !kinetic_connection_factory.NewBlockingConnection(options, blocking_connection, 10).ok() ){
        printf("Unable to connect\n");
        return 1;
    }
    shared_ptr<kinetic::BlockingKineticConnection> blocking_connection =
            make_shared<kinetic::BlockingKineticConnection>(nonblocking_connection, 5);

    std::unique_ptr<KineticRecord> record;
    if(!blocking_connection->Get(string(kinetic_key), record).ok()) {
+10 −2
Original line number Diff line number Diff line
@@ -41,11 +41,19 @@ int example_main(
        char** argv) {
    shared_ptr<string> pin(new string(FLAGS_pin));

    KineticStatus status = blocking_connection->InstantSecureErase(pin);
    KineticStatus status = blocking_connection->InstantErase(pin);
    bool success = status.ok();

    if (!success) {
        printf("Unable to execute ISE: %d %s\n", static_cast<int>(status.statusCode()), status.message().c_str());
        printf("Unable to execute InstantErase: %d %s\n", static_cast<int>(status.statusCode()), status.message().c_str());
        return 1;
    }

    status = blocking_connection->SecureErase(pin);
    success = status.ok();

    if (!success) {
        printf("Unable to execute SecureErase: %d %s\n", static_cast<int>(status.statusCode()), status.message().c_str());
        return 1;
    }

Loading