diff --git a/BobClient/Qoollo.BobClient/BobClusterClient.cs b/BobClient/Qoollo.BobClient/BobClusterClient.cs index c79abd1..87f8a94 100644 --- a/BobClient/Qoollo.BobClient/BobClusterClient.cs +++ b/BobClient/Qoollo.BobClient/BobClusterClient.cs @@ -507,7 +507,7 @@ protected virtual void Dispose(bool isUserCall) /// /// Cleans-up all resources /// - void IDisposable.Dispose() + public void Dispose() { Dispose(true); GC.SuppressFinalize(this); diff --git a/BobClient/Qoollo.BobClient/BobNodeClient.cs b/BobClient/Qoollo.BobClient/BobNodeClient.cs index a4bb835..d1defd1 100644 --- a/BobClient/Qoollo.BobClient/BobNodeClient.cs +++ b/BobClient/Qoollo.BobClient/BobNodeClient.cs @@ -706,7 +706,7 @@ protected virtual void Dispose(bool isUserCall) /// /// Cleans-up all resources /// - void IDisposable.Dispose() + public void Dispose() { Dispose(true); GC.SuppressFinalize(this); diff --git a/BobClient/Qoollo.BobClient/Qoollo.BobClient.csproj b/BobClient/Qoollo.BobClient/Qoollo.BobClient.csproj index 4d2dcb1..0d2b681 100644 --- a/BobClient/Qoollo.BobClient/Qoollo.BobClient.csproj +++ b/BobClient/Qoollo.BobClient/Qoollo.BobClient.csproj @@ -1,22 +1,34 @@  - netstandard2.0 - Qoollo - Nikita Menshov - .NET client library for Bob - Bob, storage - - false - 2.1.2.0 - 2.1.2 - 2.1.2.0 + Qoollo.BobClient Qoollo.BobClient Qoollo.BobClient + 2.1.3 + 2.1.3 + 2.1.3 + + netstandard2.0 + + true - Qoollo.BobClient.xml + Qoollo.BobClient + 2.1.3 + Qoollo + Qoollo + MIT + https://github.com/qoollo/bob-client-net + https://github.com/qoollo/bob-client-net + false + .NET client library for Bob (distributed key-value stroage) + Bob, Distributed, KeyValue, Storage + v2.1.3 (05.10.2020) + - Put, Get, Exists operations supported + - Single node and cluster clients implemented + + Qoollo 2020 diff --git a/BobClient/Qoollo.BobClient/Qoollo.BobClient.xml b/BobClient/Qoollo.BobClient/Qoollo.BobClient.xml deleted file mode 100644 index f2be3b3..0000000 --- a/BobClient/Qoollo.BobClient/Qoollo.BobClient.xml +++ /dev/null @@ -1,1220 +0,0 @@ - - - - Qoollo.BobClient - - - - - Bob cluster builder - - - - - Builder constructor - - - - - Adds a node to the cluster - - Address of a node - The reference to the current builder instatnce - - - - Adds a node to the cluster - - Address of a node - The reference to the current builder instatnce - - - - Adds timeout for api calls - - Timeout value (can be ) - The reference to the current builder instatnce - - - - Adds timeout for api calls - - Timeout value in milliseconds (can be ) - The reference to the current builder instatnce - - - - Specifies a node selection policy for opertions on cluster - - Policy instatnce - The reference to the current builder instatnce - - - - Builds - - Created cluster - - - - Bob client for whole cluster (switch nodes according to the policy) - - - - - constructor - - List of clients for every bob node - Node selection policy (null for ) - - - - constructor - - List of clients for every bob node - - - - constructor - - List of nodes addresses - Operation timeout for every created node client - Node selection policy (null for ) - - - - constructor - - List of nodes addresses - - - - Explicitly opens connection to every Bob node in cluster - - Timeout - Task to await - Connection was not opened - Specified timeout reached - Client was disposed - Incorrect timeout value - - - - Explicitly opens connection to every Bob node in cluster - - Task to await - Connection was not opened - Specified timeout reached - Client was disposed - - - - Explicitly opens connection to every Bob node in cluster - - Timeout - Connection was not opened - Specified timeout reached - Client was disposed - Incorrect timeout value - - - - Explicitly opens connection to every Bob node in cluster - - Connection was not opened - Specified timeout reached - Client was disposed - - - - Closes connections to every Bob node in cluster - - Task to await - Error during connection shutdown - - - - Closes connections to every Bob node in cluster - - Error during connection shutdown - - - - Closes connections to every Bob node in cluster. Ignores exceptions - - - - - Writes data to Bob - - Key - Binary data - Cancellation token - Data is null - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - - - - Writes data to Bob - - Key - Binary data - Data is null - Client was closed - Timeout reached - Other operation errors - - - - Writes data to Bob asynchronously - - Key - Binary data - Cancellation token - Operation result - Data is null - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - - - - Writes data to Bob asynchronously - - Key - Binary data - Operation result - Data is null - Client was closed - Timeout reached - Other operation errors - - - - Reads data from Bob - - Key - Cancellation token - /// Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - /// Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - Operation result - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Cancellation token - Try read data from sup nodes - Operation result with data - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Cancellation token - Operation result with data - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Try read data from sup nodes - Operation result with data - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Operation result with data - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Checks data presented in Bob - - Keys array - Try read data from sup nodes - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Checks data presented in Bob - - Keys array - Cancellation token - Operation result - Client was closed - Timeout reached - Other operation errors - Operation was cancelled - keys is null - - - - Checks data presented in Bob - - Keys array - Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Checks data presented in Bob - - Keys array - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Try read data from sup nodes - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Cleans-up all resources - - Was called by user - - - - Cleans-up all resources - - - - - State of the - - - - - Client is idle - - - - - Client is connecting - - - - - Client is ready for work - - - - - Client has seen a failure but expects to recover - - - - - Client closed or has seen a failure that it cannot recover from - - - - - Client for a single Bob node - - - - - Default operation timeout - - - - - Calculates deadline value for GRPC - - - - - Converts GRPC ChannelState into BobNodeClientState - - - - - Checks whether the exception is a KeyNotFound exception - - - - - Checks whether the exception is a timeout - - - - - Checks whether the exception is an operation cancelled exception - - - - - constructor - - Address of a Bob node - Timeout for every operation - - - - constructor - - Address of a Bob node - Timeout for every operation - - - - constructor - - Address of a Bob node - - - - State of the client - - - - - Explicitly opens connection to the Bob node - - Timeout - Task to await - Connection was not opened - Specified timeout reached - Client was disposed - Incorrect timeout value - - - - Explicitly opens connection to the Bob node - - Task to await - Connection was not opened - Client was disposed - - - - Explicitly opens connection to the Bob node - - Timeout - Connection was not opened - Specified timeout reached - Client was disposed - Incorrect timeout value - - - - Explicitly opens connection to the Bob node - - Connection was not opened - Client was disposed - - - - Closes connection to the Bob node - - Task to await - Error during connection shutdown - - - - Closes connection to the Bob node - - Error during connection shutdown - - - - Writes data to Bob - - Key - Binary data - Cancellation token - Data is null - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - - - - Writes data to Bob - - Key - Binary data - Data is null - Client was closed - Timeout reached - Other operation errors - - - - Writes data to Bob asynchronously - - Key - Binary data - Cancellation token - Operation result - Data is null - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - - - - Writes data to Bob asynchronously - - Key - Binary data - Operation result - Data is null - Client was closed - Timeout reached - Other operation errors - - - - Reads data from Bob - - Key - Cancellation token - /// Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - /// Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob - - Key - Operation result - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Cancellation token - Try read data from sup nodes - Operation result with data - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Cancellation token - Operation result with data - Client was closed - Timeout reached - Operation was cancelled - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Try read data from sup nodes - Operation result with data - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Reads data from Bob asynchronously - - Key - Operation result with data - Client was closed - Timeout reached - Specified key was not found - Other operation errors - - - - Checks data presented in Bob - - Keys array - Try read data from sup nodes - Cancellation token - /// Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Checks data presented in Bob - - Keys array - Cancellation token - Operation result - Client was closed - Timeout reached - Other operation errors - Operation was cancelled - keys is null - - - - Checks data presented in Bob - - Keys array - Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Checks data presented in Bob - - Keys array - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Try read data from sup nodes - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Cancellation token - Operation result - Client was closed - Timeout reached - Operation was cancelled - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Try read data from sup nodes - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Asynchronously checks data presented in Bob - - Keys array - Operation result - Client was closed - Timeout reached - Other operation errors - keys is null - - - - Cleans-up all resources - - Was called by user - - - - Cleans-up all resources - - - - - Base class for node selection policy in cluster - - - - - Selects one of the node from cluster to perform operation - - List of clients (will be the same for every operation on single cluster) - Selected node (cannot be null) - - - - Selection policy that always use first node to perform operations - - - - - Singleton instance - - - - - Selects one of the node from cluster to perform operation - - List of clients (will be the same for every operation on single cluster) - Selected node (cannot be null) - - - - Selection policy that returns nodes one-by-one in round - - - - - Selects one of the node from cluster to perform operation - - List of clients (will be the same for every operation on single cluster) - Selected node (cannot be null) - - - - Selection policy that selects first working node cluster - - - - - Selects one of the node from cluster to perform operation - - List of clients (will be the same for every operation on single cluster) - Selected node (cannot be null) - - - - Common exception for operations in Bob - - - - - constructor - - - - - constructor - - Message - - - - constructor - - Message - Inner exception - - - - Exception for the case when specified key was not found in Bob cluster - - - - - constructor - - - - - constructor - - Message - - - - constructor - - Message - Inner exception - - - - Bob api - - - - - Writes data to Bob - - Key - Binary data - Cancellation token - Operation result - - - - Writes data to Bob asynchronously - - Key - binary data - Cancellation token - Operation result - - - - Reads data from Bob - - Key - Cancellation token - /// Try read data from sup nodes - Operation result - - - - Reads data from Bob asynchronously - - Key - Cancellation token - Try read data from sup nodes - Operation result with data - - - - Checks data presented in Bob - - Keys array - Cancellation token - Try read data from sup nodes - Operation result - - - - Asynchronously checks data presented in Bob - - Keys array - Cancellation token - Try read data from sup nodes - Operation result - - - - Single node describtion - - - - - Node constructor - - Node address. Format like host:port - - - - Address of node in format 'host:port' - - - - - Returns string representation of NodeAddress - - String representation of NodeAddress - - - Holder for reflection information generated from proto/bob.proto - - - File descriptor for proto/bob.proto - - - - Put operation parameters - - - - Field number for the "key" field. - - - - Blob's key - - - - Field number for the "data" field. - - - - Data - - - - Field number for the "options" field. - - - - options - - - - - Get operation parameters - - - - Field number for the "key" field. - - - - Blob's key - - - - Field number for the "options" field. - - - - options - - - - - Exist operation parameters - - - - Field number for the "keys" field. - - - - Keys to check - - - - Field number for the "options" field. - - - - Options, same as in get request - - - - - Blob id - - - - Field number for the "key" field. - - - - Inner id representation - - - - - Data blob - - - - Field number for the "data" field. - - - - Data - - - - Field number for the "meta" field. - - - - Metadata - - - - - Blob metadata - - - - Field number for the "timestamp" field. - - - - timestamp for data version - - - - - Operation status - - - - Field number for the "error" field. - - - - If all good - null - - - - Field number for the "exist" field. - - - - Put operation options - - - - Field number for the "remote_nodes" field. - - - Field number for the "force_node" field. - - - - Force operation to be served by node to which it comes - - - - Field number for the "overwrite" field. - - - - Overwrite data in case of id existens - - - - - Get operation options - - - - Field number for the "force_node" field. - - - - Force operation to be served by node to which it comes - - - - Field number for the "source" field. - - - - Set source for data reading - - - - Field number for the "code" field. - - - - Error code in case of error - - - - Field number for the "desc" field. - - - - Error desription - - - - - API - - - - Service descriptor - - - Client for BobApi - - - Creates a new client for BobApi - The channel to use to make remote calls. - - - Creates a new client for BobApi that uses a custom CallInvoker. - The callInvoker to use to make remote calls. - - - Protected parameterless constructor to allow creation of test doubles. - - - Protected constructor to allow creation of configured clients. - The client configuration. - - - Creates a new instance of client from given ClientBaseConfiguration. - - - diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt new file mode 100644 index 0000000..6a80197 --- /dev/null +++ b/ReleaseNotes.txt @@ -0,0 +1,3 @@ +v2.1.3 (05.10.2020) +- Put, Get, Exists operations supported +- Single node and cluster clients implemented \ No newline at end of file