Пример #1
0
 private static unsafe ReplicaHealth FromNative(NativeTypes.FABRIC_REPLICA_HEALTH *nativeHealth)
 {
     if (nativeHealth->Kind == NativeTypes.FABRIC_SERVICE_KIND.FABRIC_SERVICE_KIND_STATELESS)
     {
         return(StatelessServiceInstanceHealth.FromNative((NativeTypes.FABRIC_STATELESS_SERVICE_INSTANCE_HEALTH *)nativeHealth->Value));
     }
     else if (nativeHealth->Kind == NativeTypes.FABRIC_SERVICE_KIND.FABRIC_SERVICE_KIND_STATEFUL)
     {
         return(StatefulServiceReplicaHealth.FromNative((NativeTypes.FABRIC_STATEFUL_SERVICE_REPLICA_HEALTH *)nativeHealth->Value));
     }
     else
     {
         AppTrace.TraceSource.WriteError("ReplicaHealth.FromNative", "Unknown service kind: {0}", nativeHealth->Kind);
         ReleaseAssert.Failfast(string.Format(CultureInfo.CurrentCulture, StringResources.Error_ServiceKindInvalid_Formatted, nativeHealth->Kind));
         return(null);
     }
 }