This is an automated email from the ASF dual-hosted git repository. aaronai pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/rocketmq-clients.git
commit 6c1dd65a22a246d32f1c44c4d0acd2b6da57bde4 Author: Aaron Ai <[email protected]> AuthorDate: Tue Feb 28 19:55:50 2023 +0800 Fix naming issue --- csharp/examples/ProducerBenchmark.cs | 2 +- csharp/examples/ProducerDelayMessageExample.cs | 2 +- csharp/examples/ProducerFifoMessageExample.cs | 2 +- csharp/examples/ProducerNormalMessageExample.cs | 2 +- .../examples/ProducerTransactionMessageExample.cs | 2 +- csharp/examples/SimpleConsumerExample.cs | 2 +- csharp/rocketmq-client-csharp/ClientConfig.cs | 14 ++-- .../ConfigFileCredentialsProvider.cs | 4 +- csharp/rocketmq-client-csharp/Credentials.cs | 75 ---------------------- csharp/rocketmq-client-csharp/IClientConfig.cs | 2 +- ...sProvider.cs => ISessionCredentialsProvider.cs} | 4 +- .../rocketmq-client-csharp/SessionCredentials.cs | 46 +++++++++++++ csharp/rocketmq-client-csharp/Signature.cs | 8 +-- ...ider.cs => StaticSessionCredentialsProvider.cs} | 8 +-- 14 files changed, 72 insertions(+), 101 deletions(-) diff --git a/csharp/examples/ProducerBenchmark.cs b/csharp/examples/ProducerBenchmark.cs index 59a3a0a6..50559e31 100644 --- a/csharp/examples/ProducerBenchmark.cs +++ b/csharp/examples/ProducerBenchmark.cs @@ -60,7 +60,7 @@ namespace examples const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/examples/ProducerDelayMessageExample.cs b/csharp/examples/ProducerDelayMessageExample.cs index 26c224bc..e2e362c3 100644 --- a/csharp/examples/ProducerDelayMessageExample.cs +++ b/csharp/examples/ProducerDelayMessageExample.cs @@ -32,7 +32,7 @@ namespace examples const string accessKey = "yourAccessKey"; const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/examples/ProducerFifoMessageExample.cs b/csharp/examples/ProducerFifoMessageExample.cs index 35c165f3..6a96fa0a 100644 --- a/csharp/examples/ProducerFifoMessageExample.cs +++ b/csharp/examples/ProducerFifoMessageExample.cs @@ -33,7 +33,7 @@ namespace examples const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/examples/ProducerNormalMessageExample.cs b/csharp/examples/ProducerNormalMessageExample.cs index 310defaf..aad9fc56 100644 --- a/csharp/examples/ProducerNormalMessageExample.cs +++ b/csharp/examples/ProducerNormalMessageExample.cs @@ -32,7 +32,7 @@ namespace examples const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/examples/ProducerTransactionMessageExample.cs b/csharp/examples/ProducerTransactionMessageExample.cs index b764481c..d5c05e5b 100644 --- a/csharp/examples/ProducerTransactionMessageExample.cs +++ b/csharp/examples/ProducerTransactionMessageExample.cs @@ -39,7 +39,7 @@ namespace examples const string accessKey = "yourAccessKey"; const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/examples/SimpleConsumerExample.cs b/csharp/examples/SimpleConsumerExample.cs index 51d9c32d..25fba533 100644 --- a/csharp/examples/SimpleConsumerExample.cs +++ b/csharp/examples/SimpleConsumerExample.cs @@ -33,7 +33,7 @@ namespace examples const string secretKey = "yourSecretKey"; // Credential provider is optional for client configuration. - var credentialsProvider = new StaticCredentialsProvider(accessKey, secretKey); + var credentialsProvider = new StaticSessionCredentialsProvider(accessKey, secretKey); const string endpoints = "foobar.com:8080"; var clientConfig = new ClientConfig.Builder() .SetEndpoints(endpoints) diff --git a/csharp/rocketmq-client-csharp/ClientConfig.cs b/csharp/rocketmq-client-csharp/ClientConfig.cs index f6fa4de0..dc73b2da 100644 --- a/csharp/rocketmq-client-csharp/ClientConfig.cs +++ b/csharp/rocketmq-client-csharp/ClientConfig.cs @@ -21,14 +21,14 @@ namespace Org.Apache.Rocketmq { public class ClientConfig : IClientConfig { - private ClientConfig(ICredentialsProvider credentialsProvider, TimeSpan requestTimeout, string endpoints) + private ClientConfig(ISessionCredentialsProvider sessionCredentialsProvider, TimeSpan requestTimeout, string endpoints) { - CredentialsProvider = credentialsProvider; + SessionCredentialsProvider = sessionCredentialsProvider; RequestTimeout = requestTimeout; Endpoints = endpoints; } - public ICredentialsProvider CredentialsProvider { get; } + public ISessionCredentialsProvider SessionCredentialsProvider { get; } public TimeSpan RequestTimeout { get; } @@ -36,13 +36,13 @@ namespace Org.Apache.Rocketmq public class Builder { - private ICredentialsProvider _credentialsProvider; + private ISessionCredentialsProvider _sessionCredentialsProvider; private TimeSpan _requestTimeout = TimeSpan.FromSeconds(3); private string _endpoints; - public Builder SetCredentialsProvider(ICredentialsProvider credentialsProvider) + public Builder SetCredentialsProvider(ISessionCredentialsProvider sessionCredentialsProvider) { - _credentialsProvider = credentialsProvider; + _sessionCredentialsProvider = sessionCredentialsProvider; return this; } @@ -60,7 +60,7 @@ namespace Org.Apache.Rocketmq public ClientConfig Build() { - return new ClientConfig(_credentialsProvider, _requestTimeout, _endpoints); + return new ClientConfig(_sessionCredentialsProvider, _requestTimeout, _endpoints); } } } diff --git a/csharp/rocketmq-client-csharp/ConfigFileCredentialsProvider.cs b/csharp/rocketmq-client-csharp/ConfigFileCredentialsProvider.cs index 7764dc34..b30d85d5 100644 --- a/csharp/rocketmq-client-csharp/ConfigFileCredentialsProvider.cs +++ b/csharp/rocketmq-client-csharp/ConfigFileCredentialsProvider.cs @@ -64,14 +64,14 @@ namespace Org.Apache.Rocketmq } } - public Credentials GetCredentials() + public SessionCredentials GetCredentials() { if (!_valid) { return null; } - return new Credentials(_accessKey, _accessSecret); + return new SessionCredentials(_accessKey, _accessSecret); } public static String DefaultConfigFilePath() diff --git a/csharp/rocketmq-client-csharp/Credentials.cs b/csharp/rocketmq-client-csharp/Credentials.cs deleted file mode 100644 index a73b0000..00000000 --- a/csharp/rocketmq-client-csharp/Credentials.cs +++ /dev/null @@ -1,75 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -using System; - -namespace Org.Apache.Rocketmq -{ - public class Credentials - { - - public Credentials(string accessKey, string accessSecret) - { - this.accessKey = accessKey; - this.accessSecret = accessSecret; - } - - public Credentials(string accessKey, string accessSecret, string sessionToken, DateTime expirationInstant) - { - this.accessKey = accessKey; - this.accessSecret = accessSecret; - this.sessionToken = sessionToken; - this.expirationInstant = expirationInstant; - } - - public bool empty() - { - return String.IsNullOrEmpty(accessKey) || String.IsNullOrEmpty(accessSecret); - } - - public bool expired() - { - if (DateTime.MinValue == expirationInstant) - { - return false; - } - - return DateTime.Now > expirationInstant; - } - - private string accessKey; - public string AccessKey - { - get { return accessKey; } - } - - private string accessSecret; - public string AccessSecret - { - get { return accessSecret; } - } - - private string sessionToken; - public string SessionToken - { - get { return sessionToken; } - } - - private DateTime expirationInstant = DateTime.MinValue; - - } -} \ No newline at end of file diff --git a/csharp/rocketmq-client-csharp/IClientConfig.cs b/csharp/rocketmq-client-csharp/IClientConfig.cs index d1b7ffe6..d11c2b2d 100644 --- a/csharp/rocketmq-client-csharp/IClientConfig.cs +++ b/csharp/rocketmq-client-csharp/IClientConfig.cs @@ -21,7 +21,7 @@ namespace Org.Apache.Rocketmq { public interface IClientConfig { - ICredentialsProvider CredentialsProvider { get; } + ISessionCredentialsProvider SessionCredentialsProvider { get; } TimeSpan RequestTimeout { get; } diff --git a/csharp/rocketmq-client-csharp/ICredentialsProvider.cs b/csharp/rocketmq-client-csharp/ISessionCredentialsProvider.cs similarity index 90% rename from csharp/rocketmq-client-csharp/ICredentialsProvider.cs rename to csharp/rocketmq-client-csharp/ISessionCredentialsProvider.cs index e98df14a..1477e028 100644 --- a/csharp/rocketmq-client-csharp/ICredentialsProvider.cs +++ b/csharp/rocketmq-client-csharp/ISessionCredentialsProvider.cs @@ -17,9 +17,9 @@ namespace Org.Apache.Rocketmq { - public interface ICredentialsProvider + public interface ISessionCredentialsProvider { - Credentials Credentials + SessionCredentials SessionCredentials { get; } diff --git a/csharp/rocketmq-client-csharp/SessionCredentials.cs b/csharp/rocketmq-client-csharp/SessionCredentials.cs new file mode 100644 index 00000000..bca280e1 --- /dev/null +++ b/csharp/rocketmq-client-csharp/SessionCredentials.cs @@ -0,0 +1,46 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +namespace Org.Apache.Rocketmq +{ + public class SessionCredentials + { + public SessionCredentials(string accessKey, string accessSecret) + { + Preconditions.CheckArgument(null != accessKey, "accessKey should not be null"); + Preconditions.CheckArgument(null != accessSecret, "accessSecret should not be null"); + AccessKey = accessKey; + AccessSecret = accessSecret; + } + + public SessionCredentials(string accessKey, string accessSecret, string securityToken) + { + Preconditions.CheckArgument(null != accessKey, "accessKey should not be null"); + Preconditions.CheckArgument(null != accessSecret, "accessSecret should not be null"); + Preconditions.CheckArgument(null != securityToken, "securityToken should not be null"); + AccessKey = accessKey; + AccessSecret = accessSecret; + SecurityToken = securityToken; + } + + public string AccessKey { get; } + + public string AccessSecret { get; } + + public string SecurityToken { get; } + } +} \ No newline at end of file diff --git a/csharp/rocketmq-client-csharp/Signature.cs b/csharp/rocketmq-client-csharp/Signature.cs index 140802ca..a1df5049 100644 --- a/csharp/rocketmq-client-csharp/Signature.cs +++ b/csharp/rocketmq-client-csharp/Signature.cs @@ -45,15 +45,15 @@ namespace Org.Apache.Rocketmq var time = DateTime.Now.ToString(MetadataConstants.DateTimeFormat); dictionary.Add(MetadataConstants.DateTimeKey, time); - var credentials = clientConfig.CredentialsProvider?.Credentials; - if (credentials == null || credentials.expired()) + var credentials = clientConfig.SessionCredentialsProvider?.SessionCredentials; + if (credentials == null) { return dictionary; } - if (!string.IsNullOrEmpty(credentials.SessionToken)) + if (!string.IsNullOrEmpty(credentials.SecurityToken)) { - dictionary.Add(MetadataConstants.SessionTokenKey, credentials.SessionToken); + dictionary.Add(MetadataConstants.SessionTokenKey, credentials.SecurityToken); } var secretData = Encoding.ASCII.GetBytes(credentials.AccessSecret); diff --git a/csharp/rocketmq-client-csharp/StaticCredentialsProvider.cs b/csharp/rocketmq-client-csharp/StaticSessionCredentialsProvider.cs similarity index 73% rename from csharp/rocketmq-client-csharp/StaticCredentialsProvider.cs rename to csharp/rocketmq-client-csharp/StaticSessionCredentialsProvider.cs index b76cd496..97342fd3 100644 --- a/csharp/rocketmq-client-csharp/StaticCredentialsProvider.cs +++ b/csharp/rocketmq-client-csharp/StaticSessionCredentialsProvider.cs @@ -17,13 +17,13 @@ namespace Org.Apache.Rocketmq { - public class StaticCredentialsProvider : ICredentialsProvider + public class StaticSessionCredentialsProvider : ISessionCredentialsProvider { - public StaticCredentialsProvider(string accessKey, string accessSecret) + public StaticSessionCredentialsProvider(string accessKey, string accessSecret) { - Credentials = new Credentials(accessKey, accessSecret); + SessionCredentials = new SessionCredentials(accessKey, accessSecret); } - public Credentials Credentials { get; } + public SessionCredentials SessionCredentials { get; } } } \ No newline at end of file
