internal AddRemoveIncrementalNamedPartitionScalingMechanism(AddRemoveIncrementalNamedPartitionScalingMechanism other) : base(ScalingMechanismKind.AddRemoveIncrementalNamedPartition) { MinPartitionCount = other.MinPartitionCount; MaxPartitionCount = other.MaxPartitionCount; ScaleIncrement = other.ScaleIncrement; }
internal static unsafe ScalingMechanismDescription CreateFromNative(NativeTypes.FABRIC_SCALING_MECHANISM mechanism) { if (mechanism.ScalingMechanismKind == NativeTypes.FABRIC_SCALING_MECHANISM_KIND.FABRIC_SCALING_MECHANISM_KIND_SCALE_PARTITION_INSTANCE_COUNT) { return(PartitionInstanceCountScaleMechanism.CreateFromNative(mechanism)); } else if (mechanism.ScalingMechanismKind == NativeTypes.FABRIC_SCALING_MECHANISM_KIND.FABRIC_SCALING_MECHANISM_KIND_ADD_REMOVE_INCREMENTAL_NAMED_PARTITION) { return(AddRemoveIncrementalNamedPartitionScalingMechanism.CreateFromNative(mechanism)); } else { return(null); } }
internal new static unsafe AddRemoveIncrementalNamedPartitionScalingMechanism CreateFromNative(NativeTypes.FABRIC_SCALING_MECHANISM policy) { if (policy.ScalingMechanismDescription != IntPtr.Zero) { var AddRemoveIncrementalNamedPartition = new AddRemoveIncrementalNamedPartitionScalingMechanism(); var nativeDescription = (NativeTypes.FABRIC_SCALING_MECHANISM_ADD_REMOVE_INCREMENTAL_NAMED_PARTITION *)policy.ScalingMechanismDescription; AddRemoveIncrementalNamedPartition.ScaleIncrement = nativeDescription->ScaleIncrement; AddRemoveIncrementalNamedPartition.MinPartitionCount = nativeDescription->MinimumPartitionCount; AddRemoveIncrementalNamedPartition.MaxPartitionCount = nativeDescription->MaximumPartitionCount; return(AddRemoveIncrementalNamedPartition); } return(null); }