Commit b0fc6630 authored by Paul Lensing's avatar Paul Lensing
Browse files

3.0.0 API changes to blocking and nonblocking connection types.

parent f76d29e6
Loading
Loading
Loading
Loading
+20 −16
Original line number Diff line number Diff line
@@ -86,7 +86,6 @@ class BlockingKineticConnection : public BlockingKineticConnectionInterface {
            int32_t max_results,
            unique_ptr<vector<string>>& keys);


    KeyRangeIterator IterateKeyRange(const shared_ptr<const string> start_key,
            bool start_key_inclusive,
            const shared_ptr<const string> end_key,
@@ -128,31 +127,36 @@ class BlockingKineticConnection : public BlockingKineticConnectionInterface {

    KineticStatus Delete(const string& key, const string& version, WriteMode mode);

    KineticStatus InstantSecureErase(const shared_ptr<string> pin);

    KineticStatus InstantSecureErase(const string& pin);

    KineticStatus SetClusterVersion(int64_t cluster_version);

    KineticStatus GetLog(unique_ptr<DriveLog>& drive_log);

    KineticStatus GetLog(const vector<Command_GetLog_Type>& types, unique_ptr<DriveLog>& drive_log);

    KineticStatus UpdateFirmware(const shared_ptr<const string> new_firmware);

    KineticStatus SetACLs(const shared_ptr<const list<ACL>> acls);

    KineticStatus SetPin(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin = make_shared<string>());

    KineticStatus SetPin(const string& new_pin, const string& current_pin);

    KineticStatus P2PPush(const P2PPushRequest& push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses);

    KineticStatus P2PPush(const shared_ptr<const P2PPushRequest> push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses);

    KineticStatus SetClusterVersion(int64_t cluster_version);
    KineticStatus UpdateFirmware(const shared_ptr<const string> new_firmware);
    KineticStatus SetACLs(const shared_ptr<const list<ACL>> acls);

    KineticStatus SetErasePIN(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin = make_shared<string>());
    KineticStatus SetErasePIN(const string& new_pin, const string& current_pin);
    KineticStatus SetLockPIN(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin = make_shared<string>());
    KineticStatus SetLockPIN(const string& new_pin, const string& current_pin);
    KineticStatus InstantErase(const shared_ptr<string> pin);
    KineticStatus InstantErase(const string& pin);
    KineticStatus SecureErase(const shared_ptr<string> pin);
    KineticStatus SecureErase(const string& pin);
    KineticStatus LockDevice(const shared_ptr<string> pin);
    KineticStatus LockDevice(const string& pin);
    KineticStatus UnlockDevice(const shared_ptr<string> pin);
    KineticStatus UnlockDevice(const string& pin);


    private:
    KineticStatus RunOperation(shared_ptr<BlockingCallbackState> callback, HandlerKey handler_key);

+18 −38
Original line number Diff line number Diff line
@@ -48,36 +48,27 @@ class BlockingKineticConnectionInterface {
    virtual void SetClientClusterVersion(int64_t cluster_version) = 0;

    virtual KineticStatus NoOp() = 0;

    virtual KineticStatus Get(
            const shared_ptr<const string> key,
            unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus Get(const string& key, unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus GetNext(
            const shared_ptr<const string> key,
            unique_ptr<string>& actual_key,
            unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus GetNext(
            const string& key,
            unique_ptr<string>& actual_key,
            unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus GetPrevious(const shared_ptr<const string> key,
            unique_ptr<string>& actual_key,
            unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus GetPrevious(const string& key,
            unique_ptr<string>& actual_key,
            unique_ptr<KineticRecord>& record) = 0;

    virtual KineticStatus GetVersion(const shared_ptr<const string> key,
            unique_ptr<string>& version) = 0;

    virtual KineticStatus GetVersion(const string& key, unique_ptr<string>& version) = 0;

    virtual KineticStatus GetKeyRange(const shared_ptr<const string> start_key,
            bool start_key_inclusive,
            const shared_ptr<const string> end_key,
@@ -85,7 +76,6 @@ class BlockingKineticConnectionInterface {
            bool reverse_results,
            int32_t max_results,
            unique_ptr<vector<string>>& keys) = 0;

    virtual KineticStatus GetKeyRange(const string& start_key,
            bool start_key_inclusive,
            const string& end_key,
@@ -93,73 +83,63 @@ class BlockingKineticConnectionInterface {
            bool reverse_results,
            int32_t max_results,
            unique_ptr<vector<string>>& keys) = 0;


    virtual KeyRangeIterator IterateKeyRange(const shared_ptr<const string> start_key,
            bool start_key_inclusive,
            const shared_ptr<const string> end_key,
            bool end_key_inclusive,
            unsigned int frame_size) = 0;

    virtual KeyRangeIterator IterateKeyRange(const string& start_key,
            bool start_key_inclusive,
            const string& end_key,
            bool end_key_inclusive,
            unsigned int frame_size) = 0;

    virtual KineticStatus Put(const shared_ptr<const string> key,
            const shared_ptr<const string> current_version, WriteMode mode,
            const shared_ptr<const KineticRecord> record,
            PersistMode persistMode) = 0;

    virtual KineticStatus Put(const string& key,
            const string& current_version, WriteMode mode,
            const KineticRecord& record,
            PersistMode persistMode) = 0;

    virtual KineticStatus Put(const shared_ptr<const string> key,
            const shared_ptr<const string> current_version, WriteMode mode,
            const shared_ptr<const KineticRecord> record) = 0;

    virtual KineticStatus Put(const string& key,
            const string& current_version, WriteMode mode,
            const KineticRecord& record) = 0;

    virtual KineticStatus Delete(const shared_ptr<const string> key,
            const shared_ptr<const string> version, WriteMode mode, PersistMode persistMode) = 0;

    virtual KineticStatus Delete(const string& key, const string& version,
            WriteMode mode, PersistMode persistMode) = 0;

    virtual KineticStatus Delete(const shared_ptr<const string> key,
            const shared_ptr<const string> version, WriteMode mode) = 0;

    virtual KineticStatus Delete(const string& key, const string& version, WriteMode mode) = 0;

    virtual KineticStatus InstantSecureErase(const shared_ptr<string> pin) = 0;

    virtual KineticStatus InstantSecureErase(const string& pin) = 0;

    virtual KineticStatus SetClusterVersion(int64_t cluster_version) = 0;

    virtual KineticStatus GetLog(unique_ptr<DriveLog>& drive_log) = 0;

    virtual KineticStatus GetLog(const vector<Command_GetLog_Type>& types, unique_ptr<DriveLog>& drive_log) = 0;
    virtual KineticStatus P2PPush(const P2PPushRequest& push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses) = 0;
    virtual KineticStatus P2PPush(const shared_ptr<const P2PPushRequest> push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses) = 0;

    virtual KineticStatus SetClusterVersion(int64_t cluster_version) = 0;
    virtual KineticStatus UpdateFirmware(const shared_ptr<const string> new_firmware) = 0;

    virtual KineticStatus SetACLs(const shared_ptr<const list<ACL>> acls) = 0;

    virtual KineticStatus SetPin(const shared_ptr<const string> new_pin,
    virtual KineticStatus SetErasePIN(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin = make_shared<string>()) = 0;
    virtual KineticStatus SetErasePIN(const string& new_pin, const string& current_pin) = 0;
    virtual KineticStatus SetLockPIN(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin = make_shared<string>()) = 0;
    virtual KineticStatus SetLockPIN(const string& new_pin, const string& current_pin) = 0;
    virtual KineticStatus InstantErase(const shared_ptr<string> pin) = 0;
    virtual KineticStatus InstantErase(const string& pin) = 0;
    virtual KineticStatus SecureErase(const shared_ptr<string> pin) = 0;
    virtual KineticStatus SecureErase(const string& pin) = 0;
    virtual KineticStatus LockDevice(const shared_ptr<string> pin) = 0;
    virtual KineticStatus LockDevice(const string& pin) = 0;
    virtual KineticStatus UnlockDevice(const shared_ptr<string> pin) = 0;
    virtual KineticStatus UnlockDevice(const string& pin) = 0;

    virtual KineticStatus SetPin(const string& new_pin, const string& current_pin) = 0;

    virtual KineticStatus P2PPush(const P2PPushRequest& push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses) = 0;

    virtual KineticStatus P2PPush(const shared_ptr<const P2PPushRequest> push_request,
            unique_ptr<vector<KineticStatus>>& operation_statuses) = 0;
};

} // namespace kinetic
+22 −9
Original line number Diff line number Diff line
@@ -66,19 +66,32 @@ class NonblockingKineticConnection : public NonblockingKineticConnectionInterfac
            const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey Delete(const string key, const string version, WriteMode mode,
        const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey InstantSecureErase(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey InstantSecureErase(const string pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetClusterVersion(int64_t new_cluster_version, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey P2PPush(const P2PPushRequest& push_request, const shared_ptr<P2PPushCallbackInterface> callback);
    HandlerKey P2PPush(const shared_ptr<const P2PPushRequest> push_request,
            const shared_ptr<P2PPushCallbackInterface> callback);
    HandlerKey GetLog(const shared_ptr<GetLogCallbackInterface> callback);
    HandlerKey GetLog(const vector<Command_GetLog_Type>& types, const shared_ptr<GetLogCallbackInterface> callback);

    HandlerKey UpdateFirmware(const shared_ptr<const string> new_firmware, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetClusterVersion(int64_t new_cluster_version, const shared_ptr<SimpleCallbackInterface> callback);

    HandlerKey InstantErase(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey InstantErase(const string pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SecureErase(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SecureErase(const string pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey LockDevice(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey LockDevice(const string pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey UnlockDevice(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey UnlockDevice(const string pin, const shared_ptr<SimpleCallbackInterface> callback);

    HandlerKey SetACLs(const shared_ptr<const list<ACL>> acls, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetPIN(const shared_ptr<const string> new_pin, const shared_ptr<const string> current_pin,
    HandlerKey SetErasePIN(const shared_ptr<const string> new_pin, const shared_ptr<const string> current_pin,
        const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetPIN(const string new_pin, const string current_pin, const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey P2PPush(const P2PPushRequest& push_request, const shared_ptr<P2PPushCallbackInterface> callback);
    HandlerKey P2PPush(const shared_ptr<const P2PPushRequest> push_request,
            const shared_ptr<P2PPushCallbackInterface> callback);
    HandlerKey UpdateFirmware(const shared_ptr<const string> new_firmware,
    HandlerKey SetErasePIN(const string new_pin, const string current_pin,
        const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetLockPIN(const shared_ptr<const string> new_pin, const shared_ptr<const string> current_pin,
            const shared_ptr<SimpleCallbackInterface> callback);
    HandlerKey SetLockPIN(const string new_pin, const string current_pin,
        const shared_ptr<SimpleCallbackInterface> callback);


+34 −12
Original line number Diff line number Diff line
@@ -281,29 +281,51 @@ public:
            const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey Delete(const string key, const string version, WriteMode mode,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey InstantSecureErase(const shared_ptr<string> pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey InstantSecureErase(const string pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SetClusterVersion(int64_t new_cluster_version,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey P2PPush(const P2PPushRequest& push_request,
        const shared_ptr<P2PPushCallbackInterface> callback) = 0;
    virtual HandlerKey P2PPush(const shared_ptr<const P2PPushRequest> push_request,
        const shared_ptr<P2PPushCallbackInterface> callback) = 0;
    virtual HandlerKey GetLog(const shared_ptr<GetLogCallbackInterface> callback) = 0;
    virtual HandlerKey GetLog(const vector<Command_GetLog_Type>& types,
            const shared_ptr<GetLogCallbackInterface> callback) = 0;

    virtual HandlerKey UpdateFirmware(const shared_ptr<const string> new_firmware,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SetClusterVersion(int64_t new_cluster_version,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;

    virtual HandlerKey SetACLs(const shared_ptr<const list<ACL>> acls,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SetPIN(const shared_ptr<const string> new_pin,
    virtual HandlerKey SetErasePIN(const shared_ptr<const string> new_pin,
        const shared_ptr<const string> current_pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SetPIN(const string new_pin,
    virtual HandlerKey SetErasePIN(const string new_pin,
        const string current_pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey P2PPush(const P2PPushRequest& push_request,
        const shared_ptr<P2PPushCallbackInterface> callback) = 0;
    virtual HandlerKey P2PPush(const shared_ptr<const P2PPushRequest> push_request,
        const shared_ptr<P2PPushCallbackInterface> callback) = 0;
    virtual HandlerKey SetLockPIN(const shared_ptr<const string> new_pin,
            const shared_ptr<const string> current_pin,
            const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SetLockPIN(const string new_pin,
        const string current_pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;

    virtual HandlerKey InstantErase(const shared_ptr<string> pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey InstantErase(const string pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SecureErase(const shared_ptr<string> pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey SecureErase(const string pin,
        const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey LockDevice(const shared_ptr<string> pin,
            const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey LockDevice(const string pin,
            const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey UnlockDevice(const shared_ptr<string> pin,
            const shared_ptr<SimpleCallbackInterface> callback) = 0;
    virtual HandlerKey UnlockDevice(const string pin,
            const shared_ptr<SimpleCallbackInterface> callback) = 0;

};

} // namespace kinetic
+114 −109
Original line number Diff line number Diff line
@@ -86,7 +86,6 @@ class ThreadsafeBlockingKineticConnection : public BlockingKineticConnectionInte
              int32_t max_results,
              unique_ptr<vector<string>>& keys);


      KeyRangeIterator IterateKeyRange(const shared_ptr<const string> start_key,
              bool start_key_inclusive,
              const shared_ptr<const string> end_key,
@@ -128,30 +127,36 @@ class ThreadsafeBlockingKineticConnection : public BlockingKineticConnectionInte

      KineticStatus Delete(const string& key, const string& version, WriteMode mode);

     KineticStatus InstantSecureErase(const shared_ptr<string> pin);

     KineticStatus InstantSecureErase(const string& pin);

     KineticStatus SetClusterVersion(int64_t cluster_version);

      KineticStatus GetLog(unique_ptr<DriveLog>& drive_log);

      KineticStatus GetLog(const vector<Command_GetLog_Type>& types, unique_ptr<DriveLog>& drive_log);

     KineticStatus UpdateFirmware(const shared_ptr<const string> new_firmware);
      KineticStatus P2PPush(const P2PPushRequest& push_request,
              unique_ptr<vector<KineticStatus>>& operation_statuses);

      KineticStatus P2PPush(const shared_ptr<const P2PPushRequest> push_request,
              unique_ptr<vector<KineticStatus>>& operation_statuses);

      KineticStatus SetClusterVersion(int64_t cluster_version);
      KineticStatus UpdateFirmware(const shared_ptr<const string> new_firmware);
      KineticStatus SetACLs(const shared_ptr<const list<ACL>> acls);

     KineticStatus SetPin(const shared_ptr<const string> new_pin,
      KineticStatus SetErasePIN(const shared_ptr<const string> new_pin,
              const shared_ptr<const string> current_pin = make_shared<string>());
      KineticStatus SetErasePIN(const string& new_pin, const string& current_pin);
      KineticStatus SetLockPIN(const shared_ptr<const string> new_pin,
              const shared_ptr<const string> current_pin = make_shared<string>());
      KineticStatus SetLockPIN(const string& new_pin, const string& current_pin);
      KineticStatus InstantErase(const shared_ptr<string> pin);
      KineticStatus InstantErase(const string& pin);
      KineticStatus SecureErase(const shared_ptr<string> pin);
      KineticStatus SecureErase(const string& pin);
      KineticStatus LockDevice(const shared_ptr<string> pin);
      KineticStatus LockDevice(const string& pin);
      KineticStatus UnlockDevice(const shared_ptr<string> pin);
      KineticStatus UnlockDevice(const string& pin);

     KineticStatus SetPin(const string& new_pin, const string& current_pin);

     KineticStatus P2PPush(const P2PPushRequest& push_request,
             unique_ptr<vector<KineticStatus>>& operation_statuses);

     KineticStatus P2PPush(const shared_ptr<const P2PPushRequest> push_request,
             unique_ptr<vector<KineticStatus>>& operation_statuses);
    private:
    std::recursive_mutex mutex_;
    unique_ptr<BlockingKineticConnection> connection_;
Loading