void OnStartInfrastructureTaskComplete(AsyncOperationSPtr const & operation, bool expectedCompletedSynchronously) { if (operation->CompletedSynchronously != expectedCompletedSynchronously) { return; } ErrorCode error = impl_.EndStartInfrastructureTask(operation); this->TryComplete(operation->Parent, error.ToHResult()); }
HRESULT ComInfrastructureServiceAgentFactory::CreateFabricInfrastructureServiceAgent( /* [in] */ __RPC__in REFIID riid, /* [out, retval] */ __RPC__deref_out_opt void ** fabricInfrastructureServiceAgent) { if (riid != IID_IFabricInfrastructureServiceAgent) { return ComUtility::OnPublicApiReturn(E_NOINTERFACE); } if (fabricInfrastructureServiceAgent == NULL) { return ComUtility::OnPublicApiReturn(E_POINTER); } IInfrastructureServiceAgentPtr agentPtr; ErrorCode error = impl_->CreateInfrastructureServiceAgent(agentPtr); if (!error.IsSuccess()) { return ComUtility::OnPublicApiReturn(error.ToHResult()); } ComPointer<IFabricInfrastructureServiceAgent> agentCPtr = WrapperFactory::create_com_wrapper(agentPtr); *fabricInfrastructureServiceAgent = agentCPtr.DetachNoRelease(); return ComUtility::OnPublicApiReturn(S_OK); }