internal static unsafe DeployedStatelessServiceInstance FromNative(NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM nativeObj) { var serviceManifestName = string.Empty; var servicePackageActivationId = string.Empty; long hostProcessId = 0; if (nativeObj.Reserved != IntPtr.Zero) { var extended = (NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM_EX1 *)nativeObj.Reserved; serviceManifestName = NativeTypes.FromNativeString(extended->ServiceManifestName); if (extended->Reserved != IntPtr.Zero) { var nativeResultItemEx2 = (NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM_EX2 *)extended->Reserved; servicePackageActivationId = NativeTypes.FromNativeString(nativeResultItemEx2->ServicePackageActivationId); if (nativeResultItemEx2->Reserved != IntPtr.Zero) { var extended3 = (NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM_EX3 *)nativeResultItemEx2->Reserved; hostProcessId = extended3->HostProcessId; } } } return(new DeployedStatelessServiceInstance { ServiceName = new Uri(NativeTypes.FromNativeString(nativeObj.ServiceName)), ServiceTypeName = NativeTypes.FromNativeString(nativeObj.ServiceTypeName), ServiceManifestName = serviceManifestName, ServicePackageActivationId = servicePackageActivationId, CodePackageName = NativeTypes.FromNativeString(nativeObj.CodePackageName), Partitionid = nativeObj.PartitionId, ReplicaStatus = (ServiceReplicaStatus)nativeObj.ReplicaStatus, Address = NativeTypes.FromNativeString(nativeObj.Address), InstanceId = nativeObj.InstanceId, ServiceManifestVersion_ = NativeTypes.FromNativeString(nativeObj.ServiceManifestVersion), HostProcessId = hostProcessId, }); }
#pragma warning restore 0618 internal static unsafe DeployedServiceReplica CreateFromNative( NativeTypes.FABRIC_DEPLOYED_SERVICE_REPLICA_QUERY_RESULT_ITEM nativeResultItem) { if ((ServiceKind)nativeResultItem.Kind == ServiceKind.Stateless) { NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM nativeStatelessInstanceQueryResult = *(NativeTypes.FABRIC_DEPLOYED_STATELESS_SERVICE_INSTANCE_QUERY_RESULT_ITEM *)nativeResultItem.Value; return(DeployedStatelessServiceInstance.FromNative(nativeStatelessInstanceQueryResult)); } else if ((ServiceKind)nativeResultItem.Kind == ServiceKind.Stateful) { NativeTypes.FABRIC_DEPLOYED_STATEFUL_SERVICE_REPLICA_QUERY_RESULT_ITEM nativeStatefulServiceQueryResult = *(NativeTypes.FABRIC_DEPLOYED_STATEFUL_SERVICE_REPLICA_QUERY_RESULT_ITEM *)nativeResultItem.Value; return(DeployedStatefulServiceReplica.FromNative(nativeStatefulServiceQueryResult)); } else { AppTrace.TraceSource.WriteNoise( "DeployedServiceReplica.CreateFromNative", "Ignoring the result with unsupported ServiceKind value {0}", (int)nativeResultItem.Kind); return(null); } }