private void UpdateCatchUpReplicaSetConfigurationHelper(ReplicaSetConfiguration current, ReplicaSetConfiguration previous) { using (var pin = new PinCollection()) { NativeTypes.FABRIC_REPLICA_SET_CONFIGURATION nativeCurrentConfiguration; current.ToNative(pin, out nativeCurrentConfiguration); NativeTypes.FABRIC_REPLICA_SET_CONFIGURATION nativePreviousConfiguration; if (previous != null) { previous.ToNative(pin, out nativePreviousConfiguration); } IntPtr cc = IntPtr.Zero; IntPtr pc = IntPtr.Zero; unsafe { cc = (IntPtr)(&nativeCurrentConfiguration); if (previous != null) { pc = (IntPtr)(&nativePreviousConfiguration); } } this.PrimaryReplicator.UpdateCatchUpReplicaSetConfiguration(cc, pc); } }
private void UpdateCatchUpReplicaSetConfigurationHelper(IntPtr nativeCurrentConfiguration, IntPtr nativePreviousConfiguration) { ReplicaSetConfiguration currentConfiguration = ReplicaSetConfiguration.FromNative(nativeCurrentConfiguration); ReplicaSetConfiguration previousConfiguration = ReplicaSetConfiguration.FromNative(nativePreviousConfiguration); this.replicator.UpdateCatchUpReplicaSetConfiguration(currentConfiguration, previousConfiguration); }
private void UpdateCurrentReplicaSetConfigurationHelper(ReplicaSetConfiguration current) { using (var pin = new PinCollection()) { NativeTypes.FABRIC_REPLICA_SET_CONFIGURATION nativeCurrentConfiguration; current.ToNative(pin, out nativeCurrentConfiguration); IntPtr cc = IntPtr.Zero; unsafe { cc = (IntPtr)(&nativeCurrentConfiguration); } this.PrimaryReplicator.UpdateCurrentReplicaSetConfiguration(cc); } }
internal static unsafe ReplicaSetConfiguration FromNative(IntPtr replicaSetIntPtr) { var nativeConfiguration = (NativeTypes.FABRIC_REPLICA_SET_CONFIGURATION *)replicaSetIntPtr; if (nativeConfiguration == null) { return(null); } var configuration = new ReplicaSetConfiguration(); configuration.WriteQuorum = (long)nativeConfiguration->WriteQuorum; configuration.Replicas = new List <ReplicaInformation>(); IntPtr replicas = nativeConfiguration->Replicas; var nativeInfos = (NativeTypes.FABRIC_REPLICA_INFORMATION *)replicas; for (int i = 0; i < nativeConfiguration->ReplicaCount; i++) { configuration.Replicas.Add(ReplicaInformation.FromNative((IntPtr)(&nativeInfos[i]))); } return(configuration); }
private void UpdateCurrentReplicaSetConfigurationHelper(IntPtr nativeCurrentConfiguration) { ReplicaSetConfiguration currentConfiguration = ReplicaSetConfiguration.FromNative(nativeCurrentConfiguration); this.replicator.UpdateCurrentReplicaSetConfiguration(currentConfiguration); }
void IPrimaryReplicator.UpdateCurrentReplicaSetConfiguration(ReplicaSetConfiguration currentConfiguration) { Utility.WrapNativeSyncInvoke(() => this.UpdateCurrentReplicaSetConfigurationHelper(currentConfiguration), "FabricReplicator.UpdateCurrentReplicaSetConfiguration"); }
/// <summary>This supports the Service Fabric infrastructure and is not meant to be used directly from your code.</summary> /// <param name="currentConfiguration"> /// <para>This supports the Service Fabric infrastructure and is not meant to be used directly from your code.</para> /// </param> /// <remarks> /// <para>This supports the Service Fabric infrastructure and is not meant to be used directly from your code.</para> /// </remarks> void IPrimaryReplicator.UpdateCurrentReplicaSetConfiguration(ReplicaSetConfiguration currentConfiguration) { this.internalReplicator.UpdateCurrentReplicaSetConfiguration(currentConfiguration); }
/// <summary>This supports the Service Fabric infrastructure and is not meant to be used directly from your code.</summary> /// <param name="currentConfiguration"> /// <para>For Internal Use Only.</para> /// </param> /// <param name="previousConfiguration"> /// <para>For Internal Use Only.</para> /// </param> void IPrimaryReplicator.UpdateCatchUpReplicaSetConfiguration(ReplicaSetConfiguration currentConfiguration, ReplicaSetConfiguration previousConfiguration) { this.internalReplicator.UpdateCatchUpReplicaSetConfiguration(currentConfiguration, previousConfiguration); }