internal static unsafe StatelessServicePartition FromNative(NativeTypes.FABRIC_STATELESS_SERVICE_PARTITION_QUERY_RESULT_ITEM statelessPartitionResultItem) { NativeTypes.FABRIC_SERVICE_PARTITION_INFORMATION *nativePartitionInformation = (NativeTypes.FABRIC_SERVICE_PARTITION_INFORMATION *)statelessPartitionResultItem.PartitionInformation; return(new StatelessServicePartition( ServicePartitionInformation.FromNative(*nativePartitionInformation), statelessPartitionResultItem.InstanceCount, (HealthState)statelessPartitionResultItem.HealthState, (ServicePartitionStatus)statelessPartitionResultItem.PartitionStatus)); }
internal static unsafe Partition CreateFromNative( NativeTypes.FABRIC_SERVICE_PARTITION_QUERY_RESULT_ITEM nativeResultItem) { if ((ServiceKind)nativeResultItem.Kind == ServiceKind.Stateless) { NativeTypes.FABRIC_STATELESS_SERVICE_PARTITION_QUERY_RESULT_ITEM nativeStatelessPartitionQueryResult = *(NativeTypes.FABRIC_STATELESS_SERVICE_PARTITION_QUERY_RESULT_ITEM *)nativeResultItem.Value; return(StatelessServicePartition.FromNative(nativeStatelessPartitionQueryResult)); } else if ((ServiceKind)nativeResultItem.Kind == ServiceKind.Stateful) { NativeTypes.FABRIC_STATEFUL_SERVICE_PARTITION_QUERY_RESULT_ITEM nativeStatefulServiceQueryResult = *(NativeTypes.FABRIC_STATEFUL_SERVICE_PARTITION_QUERY_RESULT_ITEM *)nativeResultItem.Value; return(StatefulServicePartition.FromNative(nativeStatefulServiceQueryResult)); } else { AppTrace.TraceSource.WriteNoise( "Partition.CreateFromNative", "Ignoring the result with unsupported ServiceKind value {0}", (int)nativeResultItem.Kind); return(null); } }