internal void WriteErrorCallbackInternal( CimOperationCallbackProcessingContext callbackProcessingContext, MI_Operation operationHandle, MI_Instance instanceHandle, out MI_OperationCallback_ResponseType response) { response = MI_OperationCallback_ResponseType.Yes; if (_writeErrorCallback != null) { Debug.Assert(instanceHandle != null, "Caller should verify instance != null"); CimInstance cimInstance = null; try { if (!instanceHandle.IsNull) { cimInstance = new CimInstance(instanceHandle.Clone()); var callbacksReceiverBase = (CimAsyncCallbacksReceiverBase)callbackProcessingContext.ManagedOperationContext; CimResponseType userResponse = CimResponseType.None; callbacksReceiverBase.CallIntoUserCallback( callbackProcessingContext, delegate { userResponse = _writeErrorCallback(cimInstance); }); response = (MI_OperationCallback_ResponseType)userResponse; } } finally { if (cimInstance != null) { cimInstance.Dispose(); } } } }
internal void PromptUserCallbackInternal( CimOperationCallbackProcessingContext callbackProcessingContext, MI_Operation operationHandle, string message, MI_PromptType promptType, out MI_OperationCallback_ResponseType response) { response = MI_OperationCallback_ResponseType.Yes; if (_promptUserCallback != null) { var callbacksReceiverBase = (CimAsyncCallbacksReceiverBase)callbackProcessingContext.ManagedOperationContext; CimResponseType userResponse = CimResponseType.None; callbacksReceiverBase.CallIntoUserCallback( callbackProcessingContext, delegate { userResponse = _promptUserCallback(message, (CimPromptType)promptType); }); response = (MI_OperationCallback_ResponseType)userResponse; } }