using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Newtonsoft.Json.Linq; using ServerCore; namespace ServerBase; public partial class DynamoDbClient { public class ConfigParam : IConfigParam { public string ServiceType { get; set; } = string.Empty; public bool IsLocalDynamoDB { get; set; } = false; public string UrlOfDynamoDb { get; set; } = string.Empty; public string AccessKeyOfAws { get; set; } = string.Empty; public string SecretKeyOfAws { get; set; } = string.Empty; public string RegionOfAws { get; set; } = string.Empty; public Result tryReadFromJsonOrDefault(JObject jObject) { var result = new Result(); var err_msg = string.Empty; try { ServiceType = jObject["ServiceType"]?.Value() ?? ServiceType; UrlOfDynamoDb = jObject["Dynamodb"]?.Value() ?? UrlOfDynamoDb; var aws = jObject["AWS"]; NullReferenceCheckHelper.throwIfNull(aws, () => $"aws is null !!!"); IsLocalDynamoDB = aws["LocalDynamoDB"]?.Value() ?? IsLocalDynamoDB; AccessKeyOfAws = aws["AccessKey"]?.Value() ?? AccessKeyOfAws; SecretKeyOfAws = aws["SecretKey"]?.Value() ?? SecretKeyOfAws; RegionOfAws = aws["Region"]?.Value() ?? RegionOfAws; return result; } catch (Exception e) { var error_code = ServerErrorCode.TryCatchException; err_msg = $"Exception !!!, Failed to perform in tryReadFromJsonOrDefault() !!! : errorCode:{error_code}, exception:{e} - {this.getTypeName()}"; result.setFail(error_code, err_msg); Log.getLogger().error(err_msg); return result; } } public string toBasicString() { return $"ConfigParam: ServiceType:{ServiceType}, UrlOfDynamoDb:{UrlOfDynamoDb}, isLocalDynamoDb:{IsLocalDynamoDB}, RegionOfAWS:{RegionOfAws}"; } }; }