public IStatefulServiceReplica CreateReplica(string serviceTypeName, Uri serviceName, byte[] initializationData, Guid partitionId, long replicaId) { StatefulServiceParameters parameters = new StatefulServiceParameters( FabricRuntime.GetActivationContext(), initializationData, partitionId, serviceName, serviceTypeName, replicaId); IReliableStateManager stateManager = new ReliableStateManager(); return new ClusterService( #if LOCAL new FakeClusterOperator(stateManager), new FakeMailer(), #else new ArmClusterOperator(parameters), new SendGridMailer(parameters), #endif ServiceProxy.Create<IApplicationDeployService>(0, new ServiceUriBuilder("ApplicationDeployService").ToUri()), stateManager, parameters, new ClusterConfig()); }
/// <summary> /// Creates a new service class instance with the given state manager and service parameters. /// </summary> /// <param name="stateManager"></param> /// <param name="serviceParameters"></param> public ApplicationDeployService( IReliableStateManager stateManager, IApplicationOperator applicationOperator, StatefulServiceParameters serviceParameters) { this.StateManager = stateManager; this.serviceParameters = serviceParameters; this.applicationOperator = applicationOperator; this.ConfigureService(); }
public SendGridMailer(StatefulServiceParameters serviceParameters) { ConfigurationPackage configPackage = serviceParameters.CodePackageActivationContext.GetConfigurationPackageObject("Config"); DataPackage dataPackage = serviceParameters.CodePackageActivationContext.GetDataPackageObject("Data"); this.UpdateSendMailSettings(configPackage.Settings); this.UpdateJoinMailTemplateContent(dataPackage.Path); serviceParameters.CodePackageActivationContext.ConfigurationPackageModifiedEvent += this.CodePackageActivationContext_ConfigurationPackageModifiedEvent; serviceParameters.CodePackageActivationContext.DataPackageModifiedEvent += this.CodePackageActivationContext_DataPackageModifiedEvent; }
public IStatefulServiceReplica CreateReplica(string serviceTypeName, Uri serviceName, byte[] initializationData, Guid partitionId, long replicaId) { StatefulServiceParameters parameters = new StatefulServiceParameters( FabricRuntime.GetActivationContext(), initializationData, partitionId, serviceName, serviceTypeName, replicaId); IReliableStateManager stateManager = new ReliableStateManager(); return new ApplicationDeployService(stateManager, new FabricClientApplicationOperator(parameters), parameters); }
public ArmClusterOperator(StatefulServiceParameters serviceParameters) { ConfigurationPackage configPackage = serviceParameters.CodePackageActivationContext.GetConfigurationPackageObject("Config"); DataPackage dataPackage = serviceParameters.CodePackageActivationContext.GetDataPackageObject("Data"); this.UpdateClusterOperatorSettings(configPackage.Settings); this.UpdateArmTemplateContent(dataPackage.Path); this.UpdateArmParameterContent(dataPackage.Path); serviceParameters.CodePackageActivationContext.ConfigurationPackageModifiedEvent += this.CodePackageActivationContext_ConfigurationPackageModifiedEvent; serviceParameters.CodePackageActivationContext.DataPackageModifiedEvent += this.CodePackageActivationContext_DataPackageModifiedEvent; }
/// <summary> /// Creates a new instance of the service class. /// </summary> /// <param name="clusterOperator"></param> /// <param name="mailer"></param> /// <param name="stateManager"></param> /// <param name="serviceParameters"></param> /// <param name="config"></param> public ClusterService( IClusterOperator clusterOperator, ISendMail mailer, IApplicationDeployService applicationDeployService, IReliableStateManager stateManager, StatefulServiceParameters serviceParameters, ClusterConfig config) { this.config = config; this.clusterOperator = clusterOperator; this.applicationDeployService = applicationDeployService; this.mailer = mailer; this.StateManager = stateManager; this.serviceParameters = serviceParameters; this.ConfigureService(); }
public FabricClientApplicationOperator(StatefulServiceParameters serviceParameters) { this.serviceParameters = serviceParameters; }