public override void UpdateFromModel(AddAssetRepoBaseModel addModel) { var nfsModel = addModel as AddNfsFileServerModel; if (nfsModel == null) { throw new ArgumentException("View model was not of type: AddNfsFileServerModel"); } Name = nfsModel.RepositoryName; SubscriptionId = nfsModel.SubscriptionId.Value; ResourceGroupName = nfsModel.NewResourceGroupName; Subnet = new Subnet { ResourceId = nfsModel.SubnetResourceIdLocationAndAddressPrefix.Split(";")[0], Location = nfsModel.SubnetResourceIdLocationAndAddressPrefix.Split(";")[1], AddressPrefix = nfsModel.SubnetResourceIdLocationAndAddressPrefix.Split(";")[2], }; VmSize = nfsModel.VmSize; VmName = nfsModel.VmName; Username = nfsModel.UserName; Password = nfsModel.Password; AllowedNetworks = nfsModel.AllowedNetworks?.Split(",").ToList(); FileShares = new List <NfsFileShare>(new[] { new NfsFileShare { Name = nfsModel.FileShareName.StartsWith("/") ? nfsModel.FileShareName : $"/{nfsModel.FileShareName}", Type = nfsModel.FileShareType, } }); }
public AssetRepository CreateRepository(AddAssetRepoBaseModel model) { switch (model.RepositoryType) { case AssetRepositoryType.AvereCluster: return(new AvereCluster { Name = model.RepositoryName, InProgress = true }); case AssetRepositoryType.NfsFileServer: return(new NfsFileServer { Name = model.RepositoryName, InProgress = true }); default: throw new NotSupportedException("Unknown type of repository selected"); } }
public override void UpdateFromModel(AddAssetRepoBaseModel genericModel) { var model = genericModel as AddAvereClusterModel; if (model == null) { throw new ArgumentException("View model was not of type: AddNfsFileServerModel"); } ResourceGroupName = model.NewResourceGroupName; UseControllerPasswordCredential = model.UseControllerPasswordCredential; ControllerPasswordOrSshKey = model.UseControllerPasswordCredential ? model.ControllerPassword : model.ControllerSshKey; ManagementAdminPassword = model.AdminPassword; ClusterName = model.ClusterName; VmSize = model.VMSize; NodeCount = model.NodeCount; AvereCacheSizeGB = model.CacheSizeInGB; }
public override void UpdateFromModel(AddAssetRepoBaseModel avereModel) { }
/// <summary> /// TODO: Don't really like the domain model knowing about the view model, so /// we can create another way of translating these things. Maybe implement an /// injectable IMapper to translate entities /// </summary> /// <param name="model"></param> public abstract void UpdateFromModel(AddAssetRepoBaseModel model);