Loading include/kinetic/blocking_kinetic_connection.h +16 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,16 @@ class BlockingKineticConnection { bool end_key_inclusive, unsigned int frame_size); 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); virtual KineticStatus Put(const string& key, const string& current_version, WriteMode mode, const KineticRecord& record, PersistMode persistMode); virtual KineticStatus Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record); Loading @@ -128,6 +138,12 @@ class BlockingKineticConnection { const string& current_version, WriteMode mode, const KineticRecord& record); virtual KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, PersistMode persistMode); virtual KineticStatus Delete(const string& key, const string& version, WriteMode mode, PersistMode persistMode); virtual KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode); Loading include/kinetic/kinetic_connection.h +12 −2 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ namespace kinetic { typedef enum { enum class WriteMode { /// If specified, PUTs will succeed even if the key already exists and has a different /// version IGNORE_VERSION, Loading @@ -31,7 +31,17 @@ typedef enum { /// Requires the existing version match the given expected value. This can be used to /// implement compare-and-swap type operations REQUIRE_SAME_VERSION } WriteMode; }; enum class PersistMode { /// This request is made persistent before returning WRITE_THROUGH, /// This request can be made persistent when the device chooses, or when a subsequent /// request with PersistMode FLUSH is issued on this connection WRITE_BACK, /// All pending information that has not been persisted will be before returning FLUSH }; } // namespace kinetic Loading include/kinetic/nonblocking_kinetic_connection.h +19 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,8 @@ using com::seagate::kinetic::client::proto::Message_MessageType; using com::seagate::kinetic::client::proto::Message_P2POperation; using com::seagate::kinetic::client::proto::Message_Synchronization; using std::shared_ptr; using std::unique_ptr; using std::string; Loading Loading @@ -261,6 +263,21 @@ class NonblockingKineticConnection { const string current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback); virtual HandlerKey Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Put(const string key, const string current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const string key, const string version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback); Loading Loading @@ -295,9 +312,11 @@ class NonblockingKineticConnection { void PopulateP2PMessage(Message_P2POperation *mutable_p2pop, const shared_ptr<const P2PPushRequest> push_request); unique_ptr<Message> NewMessage(Message_MessageType message_type); Message_Synchronization GetSynchronizationForPersistMode(PersistMode persistMode); NonblockingPacketServiceInterface *service_; const shared_ptr<const string> empty_str_; int64_t cluster_version_; DISALLOW_COPY_AND_ASSIGN(NonblockingKineticConnection); Loading include/kinetic/threadsafe_blocking_kinetic_connection.h +3 −2 Original line number Diff line number Diff line Loading @@ -92,10 +92,11 @@ class ThreadsafeBlockingKineticConnection : public BlockingKineticConnection { KineticStatus Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record); const shared_ptr<const KineticRecord> record, PersistMode persistMode); KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode); const shared_ptr<const string> version, WriteMode mode, PersistMode persistMode); KineticStatus InstantSecureErase(const shared_ptr<string> pin); Loading include/kinetic/threadsafe_nonblocking_connection.h +8 −3 Original line number Diff line number Diff line Loading @@ -70,9 +70,14 @@ class ThreadsafeNonblockingKineticConnection : public NonblockingKineticConnecti HandlerKey Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback); HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback); const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); HandlerKey Delete( const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); HandlerKey InstantSecureErase(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback); HandlerKey SetClusterVersion(int64_t new_cluster_version, Loading Loading
include/kinetic/blocking_kinetic_connection.h +16 −0 Original line number Diff line number Diff line Loading @@ -120,6 +120,16 @@ class BlockingKineticConnection { bool end_key_inclusive, unsigned int frame_size); 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); virtual KineticStatus Put(const string& key, const string& current_version, WriteMode mode, const KineticRecord& record, PersistMode persistMode); virtual KineticStatus Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record); Loading @@ -128,6 +138,12 @@ class BlockingKineticConnection { const string& current_version, WriteMode mode, const KineticRecord& record); virtual KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, PersistMode persistMode); virtual KineticStatus Delete(const string& key, const string& version, WriteMode mode, PersistMode persistMode); virtual KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode); Loading
include/kinetic/kinetic_connection.h +12 −2 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ namespace kinetic { typedef enum { enum class WriteMode { /// If specified, PUTs will succeed even if the key already exists and has a different /// version IGNORE_VERSION, Loading @@ -31,7 +31,17 @@ typedef enum { /// Requires the existing version match the given expected value. This can be used to /// implement compare-and-swap type operations REQUIRE_SAME_VERSION } WriteMode; }; enum class PersistMode { /// This request is made persistent before returning WRITE_THROUGH, /// This request can be made persistent when the device chooses, or when a subsequent /// request with PersistMode FLUSH is issued on this connection WRITE_BACK, /// All pending information that has not been persisted will be before returning FLUSH }; } // namespace kinetic Loading
include/kinetic/nonblocking_kinetic_connection.h +19 −0 Original line number Diff line number Diff line Loading @@ -43,6 +43,8 @@ using com::seagate::kinetic::client::proto::Message_MessageType; using com::seagate::kinetic::client::proto::Message_P2POperation; using com::seagate::kinetic::client::proto::Message_Synchronization; using std::shared_ptr; using std::unique_ptr; using std::string; Loading Loading @@ -261,6 +263,21 @@ class NonblockingKineticConnection { const string current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback); virtual HandlerKey Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Put(const string key, const string current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const string key, const string version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); virtual HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback); Loading Loading @@ -295,9 +312,11 @@ class NonblockingKineticConnection { void PopulateP2PMessage(Message_P2POperation *mutable_p2pop, const shared_ptr<const P2PPushRequest> push_request); unique_ptr<Message> NewMessage(Message_MessageType message_type); Message_Synchronization GetSynchronizationForPersistMode(PersistMode persistMode); NonblockingPacketServiceInterface *service_; const shared_ptr<const string> empty_str_; int64_t cluster_version_; DISALLOW_COPY_AND_ASSIGN(NonblockingKineticConnection); Loading
include/kinetic/threadsafe_blocking_kinetic_connection.h +3 −2 Original line number Diff line number Diff line Loading @@ -92,10 +92,11 @@ class ThreadsafeBlockingKineticConnection : public BlockingKineticConnection { KineticStatus Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record); const shared_ptr<const KineticRecord> record, PersistMode persistMode); KineticStatus Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode); const shared_ptr<const string> version, WriteMode mode, PersistMode persistMode); KineticStatus InstantSecureErase(const shared_ptr<string> pin); Loading
include/kinetic/threadsafe_nonblocking_connection.h +8 −3 Original line number Diff line number Diff line Loading @@ -70,9 +70,14 @@ class ThreadsafeNonblockingKineticConnection : public NonblockingKineticConnecti HandlerKey Put(const shared_ptr<const string> key, const shared_ptr<const string> current_version, WriteMode mode, const shared_ptr<const KineticRecord> record, const shared_ptr<PutCallbackInterface> callback); HandlerKey Delete(const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback); const shared_ptr<PutCallbackInterface> callback, PersistMode persistMode); HandlerKey Delete( const shared_ptr<const string> key, const shared_ptr<const string> version, WriteMode mode, const shared_ptr<SimpleCallbackInterface> callback, PersistMode persistMode); HandlerKey InstantSecureErase(const shared_ptr<string> pin, const shared_ptr<SimpleCallbackInterface> callback); HandlerKey SetClusterVersion(int64_t new_cluster_version, Loading