using Newtonsoft.Json; using PepperDash.Essentials.Core; namespace PepperDash.Essentials.WebSocketServer { internal class WebSocketServerSecretProvider : CrestronLocalSecretsProvider { public WebSocketServerSecretProvider(string key) : base(key) { Key = key; } } /// /// Stores a secret value using the provided secret store provider /// public class WebSocketServerSecret : ISecret { /// /// Gets the Secret Provider associated with this secret /// public ISecretProvider Provider { get; private set; } /// /// Gets the Key associated with this secret /// public string Key { get; private set; } /// /// Gets the Value associated with this secret /// public object Value { get; private set; } /// /// Initialize and instance of the class /// public WebSocketServerSecret(string key, object value, ISecretProvider provider) { Key = key; Value = JsonConvert.SerializeObject(value); Provider = provider; } /// /// DeserializeSecret method /// public ServerTokenSecrets DeserializeSecret() { return JsonConvert.DeserializeObject(Value.ToString()); } } }