// Partition does not have default constructor so need a method. private Partition CreatePartition() { if (this.random.Next() % 2 == 0) { ServicePartitionStatus partitionStatus = this.random.CreateRandom <ServicePartitionStatus>(); var quorumLossDuration = partitionStatus != ServicePartitionStatus.InQuorumLoss ? TimeSpan.FromSeconds(0) : this.random.CreateRandom <TimeSpan>(); return(new StatefulServicePartition( this.random.CreateRandom <ServicePartitionInformation>(), 7, 4, this.random.CreateRandom <HealthState>(), partitionStatus, quorumLossDuration, new Epoch())); } else { return(new StatelessServicePartition( this.random.CreateRandom <ServicePartitionInformation>(), 7, this.random.CreateRandom <HealthState>(), ServicePartitionStatus.Ready)); } }
public PartitionWrapper(PartitionWrapper partitionWrapper) { this.partitionId = partitionWrapper.PartitionInformation.Id; this.PartitionInformation = partitionWrapper.PartitionInformation; this.ServiceKind = partitionWrapper.ServiceKind; this.HealthState = partitionWrapper.HealthState; this.PartitionStatus = partitionWrapper.PartitionStatus; }
internal StatelessServicePartition( ServicePartitionInformation partitionInformation, long instanceCount, HealthState healthState, ServicePartitionStatus partitionStatus) : base(ServiceKind.Stateless, partitionInformation, healthState, partitionStatus) { this.InstanceCount = instanceCount; }
/// <summary> /// Creates a Stateful <see cref="Partition"/> with the provided values as would be returned as part of <see cref="ServicePartitionList"/> by /// from query <see cref="FabricClient.QueryClient.GetPartitionListAsync(System.Uri)"/>. /// </summary> /// <returns></returns> public static Partition CreateStatefulPartition(ServicePartitionInformation partitionInformation, long targetReplicaSetSize, long minReplicaSetSize, HealthState healthState, ServicePartitionStatus partitionStatus, TimeSpan lastQuorumLossDuration, Epoch primaryEpoch) { object[] param = { partitionInformation, targetReplicaSetSize, minReplicaSetSize, healthState, partitionStatus, lastQuorumLossDuration, primaryEpoch }; //new StatefulServicePartition(new SingletonPartitionInformation(), 3, 3, HealthState.Ok, ServicePartitionStatus.Ready, TimeSpan.Zero, new Epoch()) return((Partition)Activator.CreateInstance(typeof(StatefulServicePartition), BindingFlags.Instance | BindingFlags.NonPublic, null, param, CultureInfo.CurrentCulture)); }
/// <summary> /// Creates a Stateless <see cref="Partition"/> with the provided values as would be returned as part of <see cref="ServicePartitionList"/> by /// from query <see cref="FabricClient.QueryClient.GetPartitionListAsync(System.Uri)"/>. /// </summary> /// <returns></returns> public static Partition CreateStatelessPartition(ServicePartitionInformation partitionInformation, long instanceCount, HealthState healthState, ServicePartitionStatus partitionStatus) { object[] param = { partitionInformation, instanceCount, healthState, partitionStatus }; //new StatelessServicePartition(new SingletonPartitionInformation(), 3, 3, HealthState.Ok, ServicePartitionStatus.Ready, TimeSpan.Zero, new Epoch()) return((Partition)Activator.CreateInstance(typeof(StatelessServicePartition), BindingFlags.Instance | BindingFlags.NonPublic, null, param, CultureInfo.CurrentCulture)); }
public PartitionWrapper(Partition partition, Guid primaryPartitionId, Uri applicationName, Uri serviceName, ClusterDetails primaryCluster, ClusterDetails secondaryCluster) { this.partitionId = partition.PartitionInformation.Id; this.primaryPartitionId = primaryPartitionId; this.PartitionInformation = partition.PartitionInformation; this.ServiceKind = partition.ServiceKind; this.HealthState = partition.HealthState; this.PartitionStatus = partition.PartitionStatus; this.applicationName = applicationName; this.serviceName = serviceName; this.primaryCluster = primaryCluster; this.secondaryCluster = secondaryCluster; }
internal StatefulServicePartition( ServicePartitionInformation partitionInformation, long targetReplicaSetSize, long minReplicaSetSize, HealthState healthState, ServicePartitionStatus partitionStatus, TimeSpan lastQuorumLossDuration, Epoch primaryEpoch) : base(ServiceKind.Stateful, partitionInformation, healthState, partitionStatus) { this.TargetReplicaSetSize = targetReplicaSetSize; this.MinReplicaSetSize = minReplicaSetSize; this.LastQuorumLossDuration = lastQuorumLossDuration; this.PrimaryEpoch = primaryEpoch; }
public MockPartition(ServiceKind serviceKind, ServicePartitionInformation partitionInformation, HealthState healthState, ServicePartitionStatus partitionStatus) : base(serviceKind, partitionInformation, healthState, partitionStatus) { }
/// <summary> /// <para>Initializes a new instance of the partition</para> /// </summary> /// <param name="serviceKind"> /// <para>The type of the partition</para> /// </param> /// <param name="partitionInformation"> /// <para>The Partition Information</para> /// </param> /// <param name="healthState"> /// <para>Health State of the partition</para> /// </param> /// <param name="partitionStatus"> /// <para>Status of the partition</para> /// </param> protected Partition(ServiceKind serviceKind, ServicePartitionInformation partitionInformation, HealthState healthState, ServicePartitionStatus partitionStatus) { this.ServiceKind = serviceKind; this.PartitionInformation = partitionInformation; this.HealthState = healthState; this.PartitionStatus = partitionStatus; }