Configuration.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. using System.Text.Json.Serialization;
  3. using BO.AppServer.Metadata.Enums;
  4. namespace BO.Console.Options
  5. {
  6. internal class Configuration
  7. {
  8. [JsonPropertyName("api-base-url")]
  9. public Uri ApiBaseUrl {get;set;}
  10. [JsonPropertyName("api-user")]
  11. public string ApiUser {get;set;}
  12. [JsonPropertyName("api-pwd")]
  13. public string ApiUserPwd {get;set;}
  14. [JsonPropertyName("api-magic")]
  15. public string ApiMagic {get;set;}
  16. [JsonPropertyName("api-timeout")]
  17. public string ApiTimeoutRaw {get;set;}
  18. public TimeSpan ApiTimeout => TimeSpan.Parse(ApiTimeoutRaw);
  19. [JsonPropertyName("default-page-size")]
  20. public int DefaultPageSize { get; set; }
  21. [JsonPropertyName("defaults")]
  22. public DefaultsCfg Defaults { get; set; }
  23. public class DefaultsCfg
  24. {
  25. [JsonPropertyName("workspace")]
  26. public DefaultWorkspaceCfg Workspace { get; set; }
  27. }
  28. public class DefaultWorkspaceCfg
  29. {
  30. [JsonPropertyName("api-key")]
  31. public string ApiKey { get; set; }
  32. [JsonPropertyName("api-key-password")]
  33. public string ApiKeyPassword { get; set; }
  34. }
  35. }
  36. }