/// <summary>
 /// Create deployment
 /// </summary>
 /// <param name="factory"></param>
 /// <param name="deviceId"></param>
 /// <param name="configuration"></param>
 public EdgeDeviceDeployment(EdgeDeploymentFactory factory,
                             string deviceId, ConfigurationContentModel configuration) :
     base(configuration)
 {
     _deviceId = deviceId ?? throw new ArgumentNullException(nameof(deviceId));
     _factory  = factory ?? throw new ArgumentNullException(nameof(factory));
 }
 /// <summary>
 /// Create deployment
 /// </summary>
 /// <param name="factory"></param>
 /// <param name="name"></param>
 /// <param name="condition"></param>
 /// <param name="priority"></param>
 /// <param name="configuration"></param>
 public EdgeFleetDeployment(EdgeDeploymentFactory factory, string name,
                            string condition, int priority, ConfigurationContentModel configuration) :
     base(configuration)
 {
     if (string.IsNullOrEmpty(condition))
     {
         throw new ArgumentNullException(nameof(condition));
     }
     if (string.IsNullOrEmpty(name))
     {
         throw new ArgumentNullException(nameof(name));
     }
     _factory = factory ?? throw new ArgumentNullException(nameof(factory));
     _model   = new ConfigurationModel {
         SchemaVersion   = kDefaultSchemaVersion,
         Id              = name,
         Content         = _configuration,
         TargetCondition = condition,
         Priority        = priority
     };
 }