internal static unsafe ServicePlacementPolicyDescription CreateFromNative(IntPtr nativePtr) { ReleaseAssert.AssertIfNot(nativePtr != IntPtr.Zero, StringResources.Error_NullNativePointer); NativeTypes.FABRIC_SERVICE_PLACEMENT_POLICY_DESCRIPTION *casted = (NativeTypes.FABRIC_SERVICE_PLACEMENT_POLICY_DESCRIPTION *)nativePtr; switch (casted->Type) { case NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE.FABRIC_PLACEMENT_POLICY_INVALID_DOMAIN: return(ServicePlacementInvalidDomainPolicyDescription.CreateFromNative(casted->Value)); case NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE.FABRIC_PLACEMENT_POLICY_REQUIRED_DOMAIN: return(ServicePlacementRequiredDomainPolicyDescription.CreateFromNative(casted->Value)); case NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE.FABRIC_PLACEMENT_POLICY_PREFERRED_PRIMARY_DOMAIN: return(ServicePlacementPreferPrimaryDomainPolicyDescription.CreateFromNative(casted->Value)); case NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE.FABRIC_PLACEMENT_POLICY_REQUIRED_DOMAIN_DISTRIBUTION: return(ServicePlacementRequireDomainDistributionPolicyDescription.CreateFromNative(casted->Value)); case NativeTypes.FABRIC_PLACEMENT_POLICY_TYPE.FABRIC_PLACEMENT_POLICY_NONPARTIALLY_PLACE_SERVICE: return(ServicePlacementNonPartiallyPlaceServicePolicyDescription.CreateFromNative(casted->Value)); default: AppTrace.TraceSource.WriteError("ServicePlacementPolicyDescription.CreateFromNative", "Invalid placement policy type {0}", casted->Type); break; } return(null); }
internal ServicePlacementPolicyDescription GetCopy() { ServicePlacementPolicyDescription copy; if (this is ServicePlacementInvalidDomainPolicyDescription) { copy = new ServicePlacementInvalidDomainPolicyDescription(this as ServicePlacementInvalidDomainPolicyDescription); } else if (this is ServicePlacementRequiredDomainPolicyDescription) { copy = new ServicePlacementRequiredDomainPolicyDescription(this as ServicePlacementRequiredDomainPolicyDescription); } else if (this is ServicePlacementPreferPrimaryDomainPolicyDescription) { copy = new ServicePlacementPreferPrimaryDomainPolicyDescription(this as ServicePlacementPreferPrimaryDomainPolicyDescription); } else if (this is ServicePlacementRequireDomainDistributionPolicyDescription) { copy = new ServicePlacementRequireDomainDistributionPolicyDescription(this as ServicePlacementRequireDomainDistributionPolicyDescription); } else { copy = new ServicePlacementNonPartiallyPlaceServicePolicyDescription(this as ServicePlacementNonPartiallyPlaceServicePolicyDescription); } return(copy); }
internal static new unsafe ServicePlacementNonPartiallyPlaceServicePolicyDescription CreateFromNative(IntPtr nativePtr) { ReleaseAssert.AssertIfNot(nativePtr != IntPtr.Zero, StringResources.Error_NullNativePointer); NativeTypes.FABRIC_PLACEMENT_POLICY_NONPARTIALLY_PLACE_SERVICE_DESCRIPTION *CASTED = (NativeTypes.FABRIC_PLACEMENT_POLICY_NONPARTIALLY_PLACE_SERVICE_DESCRIPTION *)nativePtr; var policy = new ServicePlacementNonPartiallyPlaceServicePolicyDescription(); return(policy); }
// Copy ctor internal ServicePlacementNonPartiallyPlaceServicePolicyDescription(ServicePlacementNonPartiallyPlaceServicePolicyDescription other) : base(other) { }