/** * Ends an existing session of a given name * * @param SessionName name of session to end * @param Delegate delegate to call at session end */ void UOnlineSessionClient::EndExistingSession(FName SessionName, FOnEndSessionCompleteDelegate& Delegate) { if (SessionInt.IsValid()) { SessionInt->AddOnEndSessionCompleteDelegate(Delegate); SessionInt->EndSession(SessionName); } else { Delegate.ExecuteIfBound(SessionName, true); } }
FDelegateHandle UOnlineSessionClient::EndExistingSession_Impl(FName SessionName, FOnEndSessionCompleteDelegate& Delegate) { FDelegateHandle Result; IOnlineSessionPtr SessionInt = GetSessionInt(); if (SessionInt.IsValid()) { Result = SessionInt->AddOnEndSessionCompleteDelegate_Handle(Delegate); SessionInt->EndSession(SessionName); } else { Delegate.ExecuteIfBound(SessionName, true); } return Result; }