Commit c4807aee authored by Marshall Pierce's avatar Marshall Pierce
Browse files

Update examples to use new client api

parent 0cafb3f6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -18,7 +18,7 @@ else(USE_LOCAL_KINETIC_CLIENT)
        kinetic_cpp_client
        PREFIX "vendor"
        GIT_REPOSITORY "git@github.com:Seagate/Kinetic-C-Client.git"
        GIT_TAG "580b8715eaf037b737fbfded246c22a0158073d6"
        GIT_TAG "5782474cae5df043fbc57bb95dd00916500278ed"
        BUILD_IN_SOURCE 1
        INSTALL_COMMAND ""
    )
+2 −2
Original line number Diff line number Diff line
@@ -39,12 +39,12 @@ int main(int argc, char* argv[]) {
    }

    std::unique_ptr<KineticRecord> record;
    if(!connection->blocking().Get(kinetic_key, &record).ok()) {
    if(!connection->blocking().Get(kinetic_key, record).ok()) {
        printf("Unable to get metadata\n");
        return 1;
    }

    long long file_size = std::stoll(record->value());
    long long file_size = std::stoll(*(record->value()));
    printf("Deleting file of size %llu\n", file_size);

    char key_buffer[100];
+9 −5
Original line number Diff line number Diff line
// This deletes a file written using write_file_(non)blocking

#include <stdio.h>
#include <string>

#include "kinetic/kinetic.h"
#include "glog/logging.h"
@@ -11,6 +12,9 @@ using kinetic::NonblockingError;
using kinetic::SimpleCallbackInterface;
using kinetic::Status;

using std::make_shared;
using std::string;

class DeleteCallback : public SimpleCallbackInterface {
public:
    DeleteCallback(int* remaining) : remaining_(remaining) {};
@@ -55,17 +59,17 @@ int main(int argc, char* argv[]) {
    }

    std::unique_ptr<KineticRecord> record;
    if(!connection->blocking().Get(kinetic_key, &record).ok()) {
    if(!connection->blocking().Get(string(kinetic_key), record).ok()) {
        printf("Unable to get metadata\n");
        return 1;
    }

    long long file_size = std::stoll(record->value());
    long long file_size = std::stoll(*(record->value()));
    printf("Deleting file of size %llu\n", file_size);

    char key_buffer[100];
    int remaining = 0;
    DeleteCallback callback(&remaining);
    auto callback = make_shared<DeleteCallback>(&remaining);
    for (int64_t i = 0; i < file_size; i += 1024*1024) {
        unsigned int block_length = 1024*1024;
        if (i + block_length > file_size) {
@@ -75,11 +79,11 @@ int main(int argc, char* argv[]) {
        sprintf(key_buffer, "%s-%10" PRId64, kinetic_key, i);
        remaining++;
        std::string key(key_buffer);
        connection->nonblocking().Delete(key, "", kinetic::IGNORE_VERSION, &callback);
        connection->nonblocking().Delete(key, "", kinetic::IGNORE_VERSION, callback);
    }

    remaining++;
    connection->nonblocking().Delete(kinetic_key, "", kinetic::IGNORE_VERSION, &callback);
    connection->nonblocking().Delete(kinetic_key, "", kinetic::IGNORE_VERSION, callback);


    fd_set read_fds, write_fds;
+5 −1
Original line number Diff line number Diff line
@@ -9,6 +9,9 @@ using kinetic::KineticConnectionFactory;
using kinetic::Status;
using kinetic::KineticRecord;

using std::make_shared;
using std::string;

int main(int argc, char* argv[]) {

    if (argc != 3) {
@@ -42,7 +45,8 @@ int main(int argc, char* argv[]) {
        contents << in.rdbuf();
    }

    if (!connection->blocking().UpdateFirmware(contents.str()).ok()) {
    auto value = make_shared<string>(contents.str());
    if (!connection->blocking().UpdateFirmware(value).ok()) {
        printf("Unable to send firmware\n");
        return 1;
    }
+5 −6
Original line number Diff line number Diff line
@@ -8,6 +8,9 @@ using kinetic::KineticConnectionFactory;
using kinetic::Status;
using kinetic::KineticRecord;

using std::shared_ptr;
using std::string;

int main(int argc, char* argv[]) {
    if (argc != 3 && argc != 4) {
        printf("%s: <host> <port>\n", argv[0]);
@@ -32,21 +35,17 @@ int main(int argc, char* argv[]) {
        return 1;
    }

    std::string* pin = NULL;
    shared_ptr<string> pin;

    if (argc == 3) {
        printf("Performing ISE on %s:%d\n", host, port);
    } else {
        pin = new std::string(argv[3]);
        pin.reset(new std::string(argv[3]));
        printf("Performing ISE on %s:%d with pin %s\n", host, port, argv[3]);
    }

    bool success = connection->blocking().InstantSecureErase(pin).ok();

    if (pin) {
        delete pin;
    }

    if (!success) {
        printf("Unable to execute ISE\n");
        return 1;
Loading