internal ConfigurationAction(string containerName, string serverName, float?utility, string SLAId = null, ConfigurationActionSource source = ConfigurationActionSource.NonConstraint, int numberOfReads = 0, int numberOfWrites = 0) { this.Configuration = ClientRegistry.GetConfiguration(containerName, false); this.ModifyingContainer = ClientRegistry.GetCloudBlobContainer(serverName, containerName); this.GainedUtility = utility ?? 0; OriginatingSLAs = new HashSet <string>(); Clients = new HashSet <string>(); if (SLAId != null) { OriginatingSLAs.Add(SLAId); } this.Source = source; this.numberOfReads = numberOfReads; this.numberOfWrites = numberOfWrites; this.ServerName = serverName; if (numberOfBlobs == 0) { CloudBlobContainer primaryContainer = ClientRegistry.GetCloudBlobContainer(Configuration.PrimaryServers.First(), containerName); numberOfBlobs = primaryContainer.ListBlobs().Count(); } Cost = ComputeCost(); }
public AddSecondaryServer(string containerName, string serverName, float?utility, string slaId = null, ConfigurationActionSource source = ConfigurationActionSource.Constraint, int numberOfReads = 0, int numberOfWrites = 0) : base(containerName, serverName, utility, slaId, source, numberOfReads, numberOfWrites) { }