Repository URL to install this package:
|
Version:
2022.5.6 ▾
|
/*
* Copyright 2016 Game Server Services, Inc. or its affiliates. All Rights
* Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
using System;
using System.Collections.Generic;
using System.Text;
using System.Linq;
using Gs2.Core;
using Gs2.Core.Model;
using Gs2.Core.Net;
using Gs2.Util.LitJson;
#if UNITY_2017_1_OR_NEWER
using System.Collections;
using UnityEngine.Events;
using UnityEngine.Networking;
#if GS2_ENABLE_UNITASK
using Cysharp.Threading.Tasks;
#endif
#else
using System.Threading.Tasks;
using System.Threading;
#endif
namespace Gs2.Gs2Account
{
public class Gs2AccountWebSocketClient : AbstractGs2Client
{
public static string Endpoint = "account";
protected Gs2WebSocketSession Gs2WebSocketSession => (Gs2WebSocketSession) Gs2Session;
public Gs2AccountWebSocketClient(Gs2WebSocketSession Gs2WebSocketSession) : base(Gs2WebSocketSession)
{
}
public class CreateNamespaceTask : Gs2WebSocketSessionTask<Request.CreateNamespaceRequest, Result.CreateNamespaceResult>
{
public CreateNamespaceTask(IGs2Session session, Request.CreateNamespaceRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.CreateNamespaceRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.Name != null)
{
jsonWriter.WritePropertyName("name");
jsonWriter.Write(request.Name.ToString());
}
if (request.Description != null)
{
jsonWriter.WritePropertyName("description");
jsonWriter.Write(request.Description.ToString());
}
if (request.ChangePasswordIfTakeOver != null)
{
jsonWriter.WritePropertyName("changePasswordIfTakeOver");
jsonWriter.Write(request.ChangePasswordIfTakeOver.ToString());
}
if (request.CreateAccountScript != null)
{
jsonWriter.WritePropertyName("createAccountScript");
request.CreateAccountScript.WriteJson(jsonWriter);
}
if (request.AuthenticationScript != null)
{
jsonWriter.WritePropertyName("authenticationScript");
request.AuthenticationScript.WriteJson(jsonWriter);
}
if (request.CreateTakeOverScript != null)
{
jsonWriter.WritePropertyName("createTakeOverScript");
request.CreateTakeOverScript.WriteJson(jsonWriter);
}
if (request.DoTakeOverScript != null)
{
jsonWriter.WritePropertyName("doTakeOverScript");
request.DoTakeOverScript.WriteJson(jsonWriter);
}
if (request.LogSetting != null)
{
jsonWriter.WritePropertyName("logSetting");
request.LogSetting.WriteJson(jsonWriter);
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"namespace",
"createNamespace",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator CreateNamespace(
Request.CreateNamespaceRequest request,
UnityAction<AsyncResult<Result.CreateNamespaceResult>> callback
)
{
var task = new CreateNamespaceTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.CreateNamespaceResult>(task.Result, task.Error));
}
public IFuture<Result.CreateNamespaceResult> CreateNamespaceFuture(
Request.CreateNamespaceRequest request
)
{
return new CreateNamespaceTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.CreateNamespaceResult> CreateNamespaceAsync(
Request.CreateNamespaceRequest request
)
{
var task = new CreateNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public CreateNamespaceTask CreateNamespaceAsync(
Request.CreateNamespaceRequest request
)
{
return new CreateNamespaceTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.CreateNamespaceResult> CreateNamespaceAsync(
Request.CreateNamespaceRequest request
)
{
var task = new CreateNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class GetNamespaceTask : Gs2WebSocketSessionTask<Request.GetNamespaceRequest, Result.GetNamespaceResult>
{
public GetNamespaceTask(IGs2Session session, Request.GetNamespaceRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.GetNamespaceRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"namespace",
"getNamespace",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator GetNamespace(
Request.GetNamespaceRequest request,
UnityAction<AsyncResult<Result.GetNamespaceResult>> callback
)
{
var task = new GetNamespaceTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.GetNamespaceResult>(task.Result, task.Error));
}
public IFuture<Result.GetNamespaceResult> GetNamespaceFuture(
Request.GetNamespaceRequest request
)
{
return new GetNamespaceTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.GetNamespaceResult> GetNamespaceAsync(
Request.GetNamespaceRequest request
)
{
var task = new GetNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public GetNamespaceTask GetNamespaceAsync(
Request.GetNamespaceRequest request
)
{
return new GetNamespaceTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.GetNamespaceResult> GetNamespaceAsync(
Request.GetNamespaceRequest request
)
{
var task = new GetNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class UpdateNamespaceTask : Gs2WebSocketSessionTask<Request.UpdateNamespaceRequest, Result.UpdateNamespaceResult>
{
public UpdateNamespaceTask(IGs2Session session, Request.UpdateNamespaceRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.UpdateNamespaceRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.Description != null)
{
jsonWriter.WritePropertyName("description");
jsonWriter.Write(request.Description.ToString());
}
if (request.ChangePasswordIfTakeOver != null)
{
jsonWriter.WritePropertyName("changePasswordIfTakeOver");
jsonWriter.Write(request.ChangePasswordIfTakeOver.ToString());
}
if (request.CreateAccountScript != null)
{
jsonWriter.WritePropertyName("createAccountScript");
request.CreateAccountScript.WriteJson(jsonWriter);
}
if (request.AuthenticationScript != null)
{
jsonWriter.WritePropertyName("authenticationScript");
request.AuthenticationScript.WriteJson(jsonWriter);
}
if (request.CreateTakeOverScript != null)
{
jsonWriter.WritePropertyName("createTakeOverScript");
request.CreateTakeOverScript.WriteJson(jsonWriter);
}
if (request.DoTakeOverScript != null)
{
jsonWriter.WritePropertyName("doTakeOverScript");
request.DoTakeOverScript.WriteJson(jsonWriter);
}
if (request.LogSetting != null)
{
jsonWriter.WritePropertyName("logSetting");
request.LogSetting.WriteJson(jsonWriter);
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"namespace",
"updateNamespace",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator UpdateNamespace(
Request.UpdateNamespaceRequest request,
UnityAction<AsyncResult<Result.UpdateNamespaceResult>> callback
)
{
var task = new UpdateNamespaceTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.UpdateNamespaceResult>(task.Result, task.Error));
}
public IFuture<Result.UpdateNamespaceResult> UpdateNamespaceFuture(
Request.UpdateNamespaceRequest request
)
{
return new UpdateNamespaceTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.UpdateNamespaceResult> UpdateNamespaceAsync(
Request.UpdateNamespaceRequest request
)
{
var task = new UpdateNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public UpdateNamespaceTask UpdateNamespaceAsync(
Request.UpdateNamespaceRequest request
)
{
return new UpdateNamespaceTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.UpdateNamespaceResult> UpdateNamespaceAsync(
Request.UpdateNamespaceRequest request
)
{
var task = new UpdateNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class DeleteNamespaceTask : Gs2WebSocketSessionTask<Request.DeleteNamespaceRequest, Result.DeleteNamespaceResult>
{
public DeleteNamespaceTask(IGs2Session session, Request.DeleteNamespaceRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.DeleteNamespaceRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"namespace",
"deleteNamespace",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator DeleteNamespace(
Request.DeleteNamespaceRequest request,
UnityAction<AsyncResult<Result.DeleteNamespaceResult>> callback
)
{
var task = new DeleteNamespaceTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.DeleteNamespaceResult>(task.Result, task.Error));
}
public IFuture<Result.DeleteNamespaceResult> DeleteNamespaceFuture(
Request.DeleteNamespaceRequest request
)
{
return new DeleteNamespaceTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.DeleteNamespaceResult> DeleteNamespaceAsync(
Request.DeleteNamespaceRequest request
)
{
var task = new DeleteNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public DeleteNamespaceTask DeleteNamespaceAsync(
Request.DeleteNamespaceRequest request
)
{
return new DeleteNamespaceTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.DeleteNamespaceResult> DeleteNamespaceAsync(
Request.DeleteNamespaceRequest request
)
{
var task = new DeleteNamespaceTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class CreateAccountTask : Gs2WebSocketSessionTask<Request.CreateAccountRequest, Result.CreateAccountResult>
{
public CreateAccountTask(IGs2Session session, Request.CreateAccountRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.CreateAccountRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"account",
"createAccount",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator CreateAccount(
Request.CreateAccountRequest request,
UnityAction<AsyncResult<Result.CreateAccountResult>> callback
)
{
var task = new CreateAccountTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.CreateAccountResult>(task.Result, task.Error));
}
public IFuture<Result.CreateAccountResult> CreateAccountFuture(
Request.CreateAccountRequest request
)
{
return new CreateAccountTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.CreateAccountResult> CreateAccountAsync(
Request.CreateAccountRequest request
)
{
var task = new CreateAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public CreateAccountTask CreateAccountAsync(
Request.CreateAccountRequest request
)
{
return new CreateAccountTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.CreateAccountResult> CreateAccountAsync(
Request.CreateAccountRequest request
)
{
var task = new CreateAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class UpdateTimeOffsetTask : Gs2WebSocketSessionTask<Request.UpdateTimeOffsetRequest, Result.UpdateTimeOffsetResult>
{
public UpdateTimeOffsetTask(IGs2Session session, Request.UpdateTimeOffsetRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.UpdateTimeOffsetRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.TimeOffset != null)
{
jsonWriter.WritePropertyName("timeOffset");
jsonWriter.Write(request.TimeOffset.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.DuplicationAvoider != null)
{
jsonWriter.WritePropertyName("xGs2DuplicationAvoider");
jsonWriter.Write(request.DuplicationAvoider);
}
AddHeader(
Session.Credential,
"account",
"account",
"updateTimeOffset",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator UpdateTimeOffset(
Request.UpdateTimeOffsetRequest request,
UnityAction<AsyncResult<Result.UpdateTimeOffsetResult>> callback
)
{
var task = new UpdateTimeOffsetTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.UpdateTimeOffsetResult>(task.Result, task.Error));
}
public IFuture<Result.UpdateTimeOffsetResult> UpdateTimeOffsetFuture(
Request.UpdateTimeOffsetRequest request
)
{
return new UpdateTimeOffsetTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.UpdateTimeOffsetResult> UpdateTimeOffsetAsync(
Request.UpdateTimeOffsetRequest request
)
{
var task = new UpdateTimeOffsetTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public UpdateTimeOffsetTask UpdateTimeOffsetAsync(
Request.UpdateTimeOffsetRequest request
)
{
return new UpdateTimeOffsetTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.UpdateTimeOffsetResult> UpdateTimeOffsetAsync(
Request.UpdateTimeOffsetRequest request
)
{
var task = new UpdateTimeOffsetTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class GetAccountTask : Gs2WebSocketSessionTask<Request.GetAccountRequest, Result.GetAccountResult>
{
public GetAccountTask(IGs2Session session, Request.GetAccountRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.GetAccountRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"account",
"getAccount",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator GetAccount(
Request.GetAccountRequest request,
UnityAction<AsyncResult<Result.GetAccountResult>> callback
)
{
var task = new GetAccountTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.GetAccountResult>(task.Result, task.Error));
}
public IFuture<Result.GetAccountResult> GetAccountFuture(
Request.GetAccountRequest request
)
{
return new GetAccountTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.GetAccountResult> GetAccountAsync(
Request.GetAccountRequest request
)
{
var task = new GetAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public GetAccountTask GetAccountAsync(
Request.GetAccountRequest request
)
{
return new GetAccountTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.GetAccountResult> GetAccountAsync(
Request.GetAccountRequest request
)
{
var task = new GetAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class DeleteAccountTask : Gs2WebSocketSessionTask<Request.DeleteAccountRequest, Result.DeleteAccountResult>
{
public DeleteAccountTask(IGs2Session session, Request.DeleteAccountRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.DeleteAccountRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"account",
"deleteAccount",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator DeleteAccount(
Request.DeleteAccountRequest request,
UnityAction<AsyncResult<Result.DeleteAccountResult>> callback
)
{
var task = new DeleteAccountTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.DeleteAccountResult>(task.Result, task.Error));
}
public IFuture<Result.DeleteAccountResult> DeleteAccountFuture(
Request.DeleteAccountRequest request
)
{
return new DeleteAccountTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.DeleteAccountResult> DeleteAccountAsync(
Request.DeleteAccountRequest request
)
{
var task = new DeleteAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public DeleteAccountTask DeleteAccountAsync(
Request.DeleteAccountRequest request
)
{
return new DeleteAccountTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.DeleteAccountResult> DeleteAccountAsync(
Request.DeleteAccountRequest request
)
{
var task = new DeleteAccountTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class CreateTakeOverTask : Gs2WebSocketSessionTask<Request.CreateTakeOverRequest, Result.CreateTakeOverResult>
{
public CreateTakeOverTask(IGs2Session session, Request.CreateTakeOverRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.CreateTakeOverRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("accessToken");
jsonWriter.Write(request.AccessToken.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.UserIdentifier != null)
{
jsonWriter.WritePropertyName("userIdentifier");
jsonWriter.Write(request.UserIdentifier.ToString());
}
if (request.Password != null)
{
jsonWriter.WritePropertyName("password");
jsonWriter.Write(request.Password.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("xGs2AccessToken");
jsonWriter.Write(request.AccessToken);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"createTakeOver",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator CreateTakeOver(
Request.CreateTakeOverRequest request,
UnityAction<AsyncResult<Result.CreateTakeOverResult>> callback
)
{
var task = new CreateTakeOverTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.CreateTakeOverResult>(task.Result, task.Error));
}
public IFuture<Result.CreateTakeOverResult> CreateTakeOverFuture(
Request.CreateTakeOverRequest request
)
{
return new CreateTakeOverTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.CreateTakeOverResult> CreateTakeOverAsync(
Request.CreateTakeOverRequest request
)
{
var task = new CreateTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public CreateTakeOverTask CreateTakeOverAsync(
Request.CreateTakeOverRequest request
)
{
return new CreateTakeOverTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.CreateTakeOverResult> CreateTakeOverAsync(
Request.CreateTakeOverRequest request
)
{
var task = new CreateTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class CreateTakeOverByUserIdTask : Gs2WebSocketSessionTask<Request.CreateTakeOverByUserIdRequest, Result.CreateTakeOverByUserIdResult>
{
public CreateTakeOverByUserIdTask(IGs2Session session, Request.CreateTakeOverByUserIdRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.CreateTakeOverByUserIdRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.UserIdentifier != null)
{
jsonWriter.WritePropertyName("userIdentifier");
jsonWriter.Write(request.UserIdentifier.ToString());
}
if (request.Password != null)
{
jsonWriter.WritePropertyName("password");
jsonWriter.Write(request.Password.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.DuplicationAvoider != null)
{
jsonWriter.WritePropertyName("xGs2DuplicationAvoider");
jsonWriter.Write(request.DuplicationAvoider);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"createTakeOverByUserId",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator CreateTakeOverByUserId(
Request.CreateTakeOverByUserIdRequest request,
UnityAction<AsyncResult<Result.CreateTakeOverByUserIdResult>> callback
)
{
var task = new CreateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.CreateTakeOverByUserIdResult>(task.Result, task.Error));
}
public IFuture<Result.CreateTakeOverByUserIdResult> CreateTakeOverByUserIdFuture(
Request.CreateTakeOverByUserIdRequest request
)
{
return new CreateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.CreateTakeOverByUserIdResult> CreateTakeOverByUserIdAsync(
Request.CreateTakeOverByUserIdRequest request
)
{
var task = new CreateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public CreateTakeOverByUserIdTask CreateTakeOverByUserIdAsync(
Request.CreateTakeOverByUserIdRequest request
)
{
return new CreateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.CreateTakeOverByUserIdResult> CreateTakeOverByUserIdAsync(
Request.CreateTakeOverByUserIdRequest request
)
{
var task = new CreateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class GetTakeOverTask : Gs2WebSocketSessionTask<Request.GetTakeOverRequest, Result.GetTakeOverResult>
{
public GetTakeOverTask(IGs2Session session, Request.GetTakeOverRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.GetTakeOverRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("accessToken");
jsonWriter.Write(request.AccessToken.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("xGs2AccessToken");
jsonWriter.Write(request.AccessToken);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"getTakeOver",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator GetTakeOver(
Request.GetTakeOverRequest request,
UnityAction<AsyncResult<Result.GetTakeOverResult>> callback
)
{
var task = new GetTakeOverTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.GetTakeOverResult>(task.Result, task.Error));
}
public IFuture<Result.GetTakeOverResult> GetTakeOverFuture(
Request.GetTakeOverRequest request
)
{
return new GetTakeOverTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.GetTakeOverResult> GetTakeOverAsync(
Request.GetTakeOverRequest request
)
{
var task = new GetTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public GetTakeOverTask GetTakeOverAsync(
Request.GetTakeOverRequest request
)
{
return new GetTakeOverTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.GetTakeOverResult> GetTakeOverAsync(
Request.GetTakeOverRequest request
)
{
var task = new GetTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class GetTakeOverByUserIdTask : Gs2WebSocketSessionTask<Request.GetTakeOverByUserIdRequest, Result.GetTakeOverByUserIdResult>
{
public GetTakeOverByUserIdTask(IGs2Session session, Request.GetTakeOverByUserIdRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.GetTakeOverByUserIdRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"getTakeOverByUserId",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator GetTakeOverByUserId(
Request.GetTakeOverByUserIdRequest request,
UnityAction<AsyncResult<Result.GetTakeOverByUserIdResult>> callback
)
{
var task = new GetTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.GetTakeOverByUserIdResult>(task.Result, task.Error));
}
public IFuture<Result.GetTakeOverByUserIdResult> GetTakeOverByUserIdFuture(
Request.GetTakeOverByUserIdRequest request
)
{
return new GetTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.GetTakeOverByUserIdResult> GetTakeOverByUserIdAsync(
Request.GetTakeOverByUserIdRequest request
)
{
var task = new GetTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public GetTakeOverByUserIdTask GetTakeOverByUserIdAsync(
Request.GetTakeOverByUserIdRequest request
)
{
return new GetTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.GetTakeOverByUserIdResult> GetTakeOverByUserIdAsync(
Request.GetTakeOverByUserIdRequest request
)
{
var task = new GetTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class UpdateTakeOverTask : Gs2WebSocketSessionTask<Request.UpdateTakeOverRequest, Result.UpdateTakeOverResult>
{
public UpdateTakeOverTask(IGs2Session session, Request.UpdateTakeOverRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.UpdateTakeOverRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("accessToken");
jsonWriter.Write(request.AccessToken.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.OldPassword != null)
{
jsonWriter.WritePropertyName("oldPassword");
jsonWriter.Write(request.OldPassword.ToString());
}
if (request.Password != null)
{
jsonWriter.WritePropertyName("password");
jsonWriter.Write(request.Password.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("xGs2AccessToken");
jsonWriter.Write(request.AccessToken);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"updateTakeOver",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator UpdateTakeOver(
Request.UpdateTakeOverRequest request,
UnityAction<AsyncResult<Result.UpdateTakeOverResult>> callback
)
{
var task = new UpdateTakeOverTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.UpdateTakeOverResult>(task.Result, task.Error));
}
public IFuture<Result.UpdateTakeOverResult> UpdateTakeOverFuture(
Request.UpdateTakeOverRequest request
)
{
return new UpdateTakeOverTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.UpdateTakeOverResult> UpdateTakeOverAsync(
Request.UpdateTakeOverRequest request
)
{
var task = new UpdateTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public UpdateTakeOverTask UpdateTakeOverAsync(
Request.UpdateTakeOverRequest request
)
{
return new UpdateTakeOverTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.UpdateTakeOverResult> UpdateTakeOverAsync(
Request.UpdateTakeOverRequest request
)
{
var task = new UpdateTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class UpdateTakeOverByUserIdTask : Gs2WebSocketSessionTask<Request.UpdateTakeOverByUserIdRequest, Result.UpdateTakeOverByUserIdResult>
{
public UpdateTakeOverByUserIdTask(IGs2Session session, Request.UpdateTakeOverByUserIdRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.UpdateTakeOverByUserIdRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.UserId != null)
{
jsonWriter.WritePropertyName("userId");
jsonWriter.Write(request.UserId.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.OldPassword != null)
{
jsonWriter.WritePropertyName("oldPassword");
jsonWriter.Write(request.OldPassword.ToString());
}
if (request.Password != null)
{
jsonWriter.WritePropertyName("password");
jsonWriter.Write(request.Password.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.DuplicationAvoider != null)
{
jsonWriter.WritePropertyName("xGs2DuplicationAvoider");
jsonWriter.Write(request.DuplicationAvoider);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"updateTakeOverByUserId",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator UpdateTakeOverByUserId(
Request.UpdateTakeOverByUserIdRequest request,
UnityAction<AsyncResult<Result.UpdateTakeOverByUserIdResult>> callback
)
{
var task = new UpdateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.UpdateTakeOverByUserIdResult>(task.Result, task.Error));
}
public IFuture<Result.UpdateTakeOverByUserIdResult> UpdateTakeOverByUserIdFuture(
Request.UpdateTakeOverByUserIdRequest request
)
{
return new UpdateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.UpdateTakeOverByUserIdResult> UpdateTakeOverByUserIdAsync(
Request.UpdateTakeOverByUserIdRequest request
)
{
var task = new UpdateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public UpdateTakeOverByUserIdTask UpdateTakeOverByUserIdAsync(
Request.UpdateTakeOverByUserIdRequest request
)
{
return new UpdateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.UpdateTakeOverByUserIdResult> UpdateTakeOverByUserIdAsync(
Request.UpdateTakeOverByUserIdRequest request
)
{
var task = new UpdateTakeOverByUserIdTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class DeleteTakeOverTask : Gs2WebSocketSessionTask<Request.DeleteTakeOverRequest, Result.DeleteTakeOverResult>
{
public DeleteTakeOverTask(IGs2Session session, Request.DeleteTakeOverRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.DeleteTakeOverRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("accessToken");
jsonWriter.Write(request.AccessToken.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.UserIdentifier != null)
{
jsonWriter.WritePropertyName("userIdentifier");
jsonWriter.Write(request.UserIdentifier.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.AccessToken != null)
{
jsonWriter.WritePropertyName("xGs2AccessToken");
jsonWriter.Write(request.AccessToken);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"deleteTakeOver",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator DeleteTakeOver(
Request.DeleteTakeOverRequest request,
UnityAction<AsyncResult<Result.DeleteTakeOverResult>> callback
)
{
var task = new DeleteTakeOverTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.DeleteTakeOverResult>(task.Result, task.Error));
}
public IFuture<Result.DeleteTakeOverResult> DeleteTakeOverFuture(
Request.DeleteTakeOverRequest request
)
{
return new DeleteTakeOverTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.DeleteTakeOverResult> DeleteTakeOverAsync(
Request.DeleteTakeOverRequest request
)
{
var task = new DeleteTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public DeleteTakeOverTask DeleteTakeOverAsync(
Request.DeleteTakeOverRequest request
)
{
return new DeleteTakeOverTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.DeleteTakeOverResult> DeleteTakeOverAsync(
Request.DeleteTakeOverRequest request
)
{
var task = new DeleteTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class DeleteTakeOverByUserIdentifierTask : Gs2WebSocketSessionTask<Request.DeleteTakeOverByUserIdentifierRequest, Result.DeleteTakeOverByUserIdentifierResult>
{
public DeleteTakeOverByUserIdentifierTask(IGs2Session session, Request.DeleteTakeOverByUserIdentifierRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.DeleteTakeOverByUserIdentifierRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.UserIdentifier != null)
{
jsonWriter.WritePropertyName("userIdentifier");
jsonWriter.Write(request.UserIdentifier.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
if (request.DuplicationAvoider != null)
{
jsonWriter.WritePropertyName("xGs2DuplicationAvoider");
jsonWriter.Write(request.DuplicationAvoider);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"deleteTakeOverByUserIdentifier",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator DeleteTakeOverByUserIdentifier(
Request.DeleteTakeOverByUserIdentifierRequest request,
UnityAction<AsyncResult<Result.DeleteTakeOverByUserIdentifierResult>> callback
)
{
var task = new DeleteTakeOverByUserIdentifierTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.DeleteTakeOverByUserIdentifierResult>(task.Result, task.Error));
}
public IFuture<Result.DeleteTakeOverByUserIdentifierResult> DeleteTakeOverByUserIdentifierFuture(
Request.DeleteTakeOverByUserIdentifierRequest request
)
{
return new DeleteTakeOverByUserIdentifierTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.DeleteTakeOverByUserIdentifierResult> DeleteTakeOverByUserIdentifierAsync(
Request.DeleteTakeOverByUserIdentifierRequest request
)
{
var task = new DeleteTakeOverByUserIdentifierTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public DeleteTakeOverByUserIdentifierTask DeleteTakeOverByUserIdentifierAsync(
Request.DeleteTakeOverByUserIdentifierRequest request
)
{
return new DeleteTakeOverByUserIdentifierTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.DeleteTakeOverByUserIdentifierResult> DeleteTakeOverByUserIdentifierAsync(
Request.DeleteTakeOverByUserIdentifierRequest request
)
{
var task = new DeleteTakeOverByUserIdentifierTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
public class DoTakeOverTask : Gs2WebSocketSessionTask<Request.DoTakeOverRequest, Result.DoTakeOverResult>
{
public DoTakeOverTask(IGs2Session session, Request.DoTakeOverRequest request) : base(session, request)
{
}
protected override IGs2SessionRequest CreateRequest(Request.DoTakeOverRequest request)
{
var stringBuilder = new StringBuilder();
var jsonWriter = new JsonWriter(stringBuilder);
jsonWriter.WriteObjectStart();
if (request.NamespaceName != null)
{
jsonWriter.WritePropertyName("namespaceName");
jsonWriter.Write(request.NamespaceName.ToString());
}
if (request.Type != null)
{
jsonWriter.WritePropertyName("type");
jsonWriter.Write(request.Type.ToString());
}
if (request.UserIdentifier != null)
{
jsonWriter.WritePropertyName("userIdentifier");
jsonWriter.Write(request.UserIdentifier.ToString());
}
if (request.Password != null)
{
jsonWriter.WritePropertyName("password");
jsonWriter.Write(request.Password.ToString());
}
if (request.ContextStack != null)
{
jsonWriter.WritePropertyName("contextStack");
jsonWriter.Write(request.ContextStack.ToString());
}
if (request.RequestId != null)
{
jsonWriter.WritePropertyName("xGs2RequestId");
jsonWriter.Write(request.RequestId);
}
AddHeader(
Session.Credential,
"account",
"takeOver",
"doTakeOver",
jsonWriter
);
jsonWriter.WriteObjectEnd();
return WebSocketSessionRequestFactory.New<WebSocketSessionRequest>(stringBuilder.ToString());
}
}
#if UNITY_2017_1_OR_NEWER
public IEnumerator DoTakeOver(
Request.DoTakeOverRequest request,
UnityAction<AsyncResult<Result.DoTakeOverResult>> callback
)
{
var task = new DoTakeOverTask(
Gs2WebSocketSession,
request
);
yield return task;
callback.Invoke(new AsyncResult<Result.DoTakeOverResult>(task.Result, task.Error));
}
public IFuture<Result.DoTakeOverResult> DoTakeOverFuture(
Request.DoTakeOverRequest request
)
{
return new DoTakeOverTask(
Gs2WebSocketSession,
request
);
}
#if GS2_ENABLE_UNITASK
public async UniTask<Result.DoTakeOverResult> DoTakeOverAsync(
Request.DoTakeOverRequest request
)
{
var task = new DoTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#else
public DoTakeOverTask DoTakeOverAsync(
Request.DoTakeOverRequest request
)
{
return new DoTakeOverTask(
Gs2WebSocketSession,
request
);
}
#endif
#else
public async Task<Result.DoTakeOverResult> DoTakeOverAsync(
Request.DoTakeOverRequest request
)
{
var task = new DoTakeOverTask(
Gs2WebSocketSession,
request
);
return await task.Invoke();
}
#endif
}
}