
io.gs2.serialKey.Gs2SerialKeyRestClient Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of gs2-java-sdk Show documentation
Show all versions of gs2-java-sdk Show documentation
Game Server Services SDK for Java
The newest version!
/*
* 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.
*/
package io.gs2.serialKey;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.StreamSupport;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.JsonNode;
import io.gs2.core.model.AsyncAction;
import io.gs2.core.model.AsyncResult;
import io.gs2.core.exception.*;
import io.gs2.core.net.*;
import io.gs2.core.util.EncodingUtil;
import io.gs2.core.AbstractGs2Client;
import io.gs2.serialKey.request.*;
import io.gs2.serialKey.result.*;
import io.gs2.serialKey.model.*;public class Gs2SerialKeyRestClient extends AbstractGs2Client {
public Gs2SerialKeyRestClient(Gs2RestSession gs2RestSession) {
super(gs2RestSession);
}
class DescribeNamespacesTask extends Gs2RestSessionTask {
private DescribeNamespacesRequest request;
public DescribeNamespacesTask(
DescribeNamespacesRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DescribeNamespacesResult parse(JsonNode data) {
return DescribeNamespacesResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/";
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
if (this.request.getPageToken() != null) {
queryStrings.add("pageToken=" + EncodingUtil.urlEncode((String.valueOf(this.request.getPageToken()))));
}
if (this.request.getLimit() != null) {
queryStrings.add("limit=" + String.valueOf(this.request.getLimit()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void describeNamespacesAsync(
DescribeNamespacesRequest request,
AsyncAction> callback
) {
DescribeNamespacesTask task = new DescribeNamespacesTask(request, callback);
session.execute(task);
}
public DescribeNamespacesResult describeNamespaces(
DescribeNamespacesRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
describeNamespacesAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CreateNamespaceTask extends Gs2RestSessionTask {
private CreateNamespaceRequest request;
public CreateNamespaceTask(
CreateNamespaceRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CreateNamespaceResult parse(JsonNode data) {
return CreateNamespaceResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/";
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("name", request.getName());
put("description", request.getDescription());
put("logSetting", request.getLogSetting() != null ? request.getLogSetting().toJson() : null);
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void createNamespaceAsync(
CreateNamespaceRequest request,
AsyncAction> callback
) {
CreateNamespaceTask task = new CreateNamespaceTask(request, callback);
session.execute(task);
}
public CreateNamespaceResult createNamespace(
CreateNamespaceRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
createNamespaceAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetNamespaceStatusTask extends Gs2RestSessionTask {
private GetNamespaceStatusRequest request;
public GetNamespaceStatusTask(
GetNamespaceStatusRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetNamespaceStatusResult parse(JsonNode data) {
return GetNamespaceStatusResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/status";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getNamespaceStatusAsync(
GetNamespaceStatusRequest request,
AsyncAction> callback
) {
GetNamespaceStatusTask task = new GetNamespaceStatusTask(request, callback);
session.execute(task);
}
public GetNamespaceStatusResult getNamespaceStatus(
GetNamespaceStatusRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getNamespaceStatusAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetNamespaceTask extends Gs2RestSessionTask {
private GetNamespaceRequest request;
public GetNamespaceTask(
GetNamespaceRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetNamespaceResult parse(JsonNode data) {
return GetNamespaceResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getNamespaceAsync(
GetNamespaceRequest request,
AsyncAction> callback
) {
GetNamespaceTask task = new GetNamespaceTask(request, callback);
session.execute(task);
}
public GetNamespaceResult getNamespace(
GetNamespaceRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getNamespaceAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UpdateNamespaceTask extends Gs2RestSessionTask {
private UpdateNamespaceRequest request;
public UpdateNamespaceTask(
UpdateNamespaceRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UpdateNamespaceResult parse(JsonNode data) {
return UpdateNamespaceResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("description", request.getDescription());
put("logSetting", request.getLogSetting() != null ? request.getLogSetting().toJson() : null);
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.PUT)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void updateNamespaceAsync(
UpdateNamespaceRequest request,
AsyncAction> callback
) {
UpdateNamespaceTask task = new UpdateNamespaceTask(request, callback);
session.execute(task);
}
public UpdateNamespaceResult updateNamespace(
UpdateNamespaceRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
updateNamespaceAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DeleteNamespaceTask extends Gs2RestSessionTask {
private DeleteNamespaceRequest request;
public DeleteNamespaceTask(
DeleteNamespaceRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DeleteNamespaceResult parse(JsonNode data) {
return DeleteNamespaceResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.DELETE)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void deleteNamespaceAsync(
DeleteNamespaceRequest request,
AsyncAction> callback
) {
DeleteNamespaceTask task = new DeleteNamespaceTask(request, callback);
session.execute(task);
}
public DeleteNamespaceResult deleteNamespace(
DeleteNamespaceRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
deleteNamespaceAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DumpUserDataByUserIdTask extends Gs2RestSessionTask {
private DumpUserDataByUserIdRequest request;
public DumpUserDataByUserIdTask(
DumpUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DumpUserDataByUserIdResult parse(JsonNode data) {
return DumpUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/dump/user/{userId}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void dumpUserDataByUserIdAsync(
DumpUserDataByUserIdRequest request,
AsyncAction> callback
) {
DumpUserDataByUserIdTask task = new DumpUserDataByUserIdTask(request, callback);
session.execute(task);
}
public DumpUserDataByUserIdResult dumpUserDataByUserId(
DumpUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
dumpUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CheckDumpUserDataByUserIdTask extends Gs2RestSessionTask {
private CheckDumpUserDataByUserIdRequest request;
public CheckDumpUserDataByUserIdTask(
CheckDumpUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CheckDumpUserDataByUserIdResult parse(JsonNode data) {
return CheckDumpUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/dump/user/{userId}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void checkDumpUserDataByUserIdAsync(
CheckDumpUserDataByUserIdRequest request,
AsyncAction> callback
) {
CheckDumpUserDataByUserIdTask task = new CheckDumpUserDataByUserIdTask(request, callback);
session.execute(task);
}
public CheckDumpUserDataByUserIdResult checkDumpUserDataByUserId(
CheckDumpUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
checkDumpUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CleanUserDataByUserIdTask extends Gs2RestSessionTask {
private CleanUserDataByUserIdRequest request;
public CleanUserDataByUserIdTask(
CleanUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CleanUserDataByUserIdResult parse(JsonNode data) {
return CleanUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/clean/user/{userId}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void cleanUserDataByUserIdAsync(
CleanUserDataByUserIdRequest request,
AsyncAction> callback
) {
CleanUserDataByUserIdTask task = new CleanUserDataByUserIdTask(request, callback);
session.execute(task);
}
public CleanUserDataByUserIdResult cleanUserDataByUserId(
CleanUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
cleanUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CheckCleanUserDataByUserIdTask extends Gs2RestSessionTask {
private CheckCleanUserDataByUserIdRequest request;
public CheckCleanUserDataByUserIdTask(
CheckCleanUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CheckCleanUserDataByUserIdResult parse(JsonNode data) {
return CheckCleanUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/clean/user/{userId}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void checkCleanUserDataByUserIdAsync(
CheckCleanUserDataByUserIdRequest request,
AsyncAction> callback
) {
CheckCleanUserDataByUserIdTask task = new CheckCleanUserDataByUserIdTask(request, callback);
session.execute(task);
}
public CheckCleanUserDataByUserIdResult checkCleanUserDataByUserId(
CheckCleanUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
checkCleanUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class PrepareImportUserDataByUserIdTask extends Gs2RestSessionTask {
private PrepareImportUserDataByUserIdRequest request;
public PrepareImportUserDataByUserIdTask(
PrepareImportUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public PrepareImportUserDataByUserIdResult parse(JsonNode data) {
return PrepareImportUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/import/user/{userId}/prepare";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void prepareImportUserDataByUserIdAsync(
PrepareImportUserDataByUserIdRequest request,
AsyncAction> callback
) {
PrepareImportUserDataByUserIdTask task = new PrepareImportUserDataByUserIdTask(request, callback);
session.execute(task);
}
public PrepareImportUserDataByUserIdResult prepareImportUserDataByUserId(
PrepareImportUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
prepareImportUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class ImportUserDataByUserIdTask extends Gs2RestSessionTask {
private ImportUserDataByUserIdRequest request;
public ImportUserDataByUserIdTask(
ImportUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public ImportUserDataByUserIdResult parse(JsonNode data) {
return ImportUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/import/user/{userId}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("uploadToken", request.getUploadToken());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void importUserDataByUserIdAsync(
ImportUserDataByUserIdRequest request,
AsyncAction> callback
) {
ImportUserDataByUserIdTask task = new ImportUserDataByUserIdTask(request, callback);
session.execute(task);
}
public ImportUserDataByUserIdResult importUserDataByUserId(
ImportUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
importUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CheckImportUserDataByUserIdTask extends Gs2RestSessionTask {
private CheckImportUserDataByUserIdRequest request;
public CheckImportUserDataByUserIdTask(
CheckImportUserDataByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CheckImportUserDataByUserIdResult parse(JsonNode data) {
return CheckImportUserDataByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/system/import/user/{userId}/{uploadToken}";
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
url = url.replace("{uploadToken}", this.request.getUploadToken() == null || this.request.getUploadToken().length() == 0 ? "null" : String.valueOf(this.request.getUploadToken()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void checkImportUserDataByUserIdAsync(
CheckImportUserDataByUserIdRequest request,
AsyncAction> callback
) {
CheckImportUserDataByUserIdTask task = new CheckImportUserDataByUserIdTask(request, callback);
session.execute(task);
}
public CheckImportUserDataByUserIdResult checkImportUserDataByUserId(
CheckImportUserDataByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
checkImportUserDataByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DescribeIssueJobsTask extends Gs2RestSessionTask {
private DescribeIssueJobsRequest request;
public DescribeIssueJobsTask(
DescribeIssueJobsRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DescribeIssueJobsResult parse(JsonNode data) {
return DescribeIssueJobsResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}/issue";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
if (this.request.getPageToken() != null) {
queryStrings.add("pageToken=" + EncodingUtil.urlEncode((String.valueOf(this.request.getPageToken()))));
}
if (this.request.getLimit() != null) {
queryStrings.add("limit=" + String.valueOf(this.request.getLimit()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void describeIssueJobsAsync(
DescribeIssueJobsRequest request,
AsyncAction> callback
) {
DescribeIssueJobsTask task = new DescribeIssueJobsTask(request, callback);
session.execute(task);
}
public DescribeIssueJobsResult describeIssueJobs(
DescribeIssueJobsRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
describeIssueJobsAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetIssueJobTask extends Gs2RestSessionTask {
private GetIssueJobRequest request;
public GetIssueJobTask(
GetIssueJobRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetIssueJobResult parse(JsonNode data) {
return GetIssueJobResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}/issue/{issueJobName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
url = url.replace("{issueJobName}", this.request.getIssueJobName() == null || this.request.getIssueJobName().length() == 0 ? "null" : String.valueOf(this.request.getIssueJobName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getIssueJobAsync(
GetIssueJobRequest request,
AsyncAction> callback
) {
GetIssueJobTask task = new GetIssueJobTask(request, callback);
session.execute(task);
}
public GetIssueJobResult getIssueJob(
GetIssueJobRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getIssueJobAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class IssueTask extends Gs2RestSessionTask {
private IssueRequest request;
public IssueTask(
IssueRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public IssueResult parse(JsonNode data) {
return IssueResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("metadata", request.getMetadata());
put("issueRequestCount", request.getIssueRequestCount());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void issueAsync(
IssueRequest request,
AsyncAction> callback
) {
IssueTask task = new IssueTask(request, callback);
session.execute(task);
}
public IssueResult issue(
IssueRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
issueAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DescribeSerialKeysTask extends Gs2RestSessionTask {
private DescribeSerialKeysRequest request;
public DescribeSerialKeysTask(
DescribeSerialKeysRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DescribeSerialKeysResult parse(JsonNode data) {
return DescribeSerialKeysResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}/issue/{issueJobName}/serialKey";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
url = url.replace("{issueJobName}", this.request.getIssueJobName() == null || this.request.getIssueJobName().length() == 0 ? "null" : String.valueOf(this.request.getIssueJobName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
if (this.request.getPageToken() != null) {
queryStrings.add("pageToken=" + EncodingUtil.urlEncode((String.valueOf(this.request.getPageToken()))));
}
if (this.request.getLimit() != null) {
queryStrings.add("limit=" + String.valueOf(this.request.getLimit()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void describeSerialKeysAsync(
DescribeSerialKeysRequest request,
AsyncAction> callback
) {
DescribeSerialKeysTask task = new DescribeSerialKeysTask(request, callback);
session.execute(task);
}
public DescribeSerialKeysResult describeSerialKeys(
DescribeSerialKeysRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
describeSerialKeysAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DownloadSerialCodesTask extends Gs2RestSessionTask {
private DownloadSerialCodesRequest request;
public DownloadSerialCodesTask(
DownloadSerialCodesRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DownloadSerialCodesResult parse(JsonNode data) {
return DownloadSerialCodesResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}/issue/{issueJobName}/serialCode/download";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
url = url.replace("{issueJobName}", this.request.getIssueJobName() == null || this.request.getIssueJobName().length() == 0 ? "null" : String.valueOf(this.request.getIssueJobName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void downloadSerialCodesAsync(
DownloadSerialCodesRequest request,
AsyncAction> callback
) {
DownloadSerialCodesTask task = new DownloadSerialCodesTask(request, callback);
session.execute(task);
}
public DownloadSerialCodesResult downloadSerialCodes(
DownloadSerialCodesRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
downloadSerialCodesAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetSerialKeyTask extends Gs2RestSessionTask {
private GetSerialKeyRequest request;
public GetSerialKeyTask(
GetSerialKeyRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetSerialKeyResult parse(JsonNode data) {
return GetSerialKeyResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/serialKey/{code}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{code}", this.request.getCode() == null || this.request.getCode().length() == 0 ? "null" : String.valueOf(this.request.getCode()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getSerialKeyAsync(
GetSerialKeyRequest request,
AsyncAction> callback
) {
GetSerialKeyTask task = new GetSerialKeyTask(request, callback);
session.execute(task);
}
public GetSerialKeyResult getSerialKey(
GetSerialKeyRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getSerialKeyAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UseTask extends Gs2RestSessionTask {
private UseRequest request;
public UseTask(
UseRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UseResult parse(JsonNode data) {
return UseResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/user/me/serialKey";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("code", request.getCode());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getAccessToken() != null) {
builder.setHeader("X-GS2-ACCESS-TOKEN", this.request.getAccessToken());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
builder
.build()
.send();
}
}
public void useAsync(
UseRequest request,
AsyncAction> callback
) {
UseTask task = new UseTask(request, callback);
session.execute(task);
}
public UseResult use(
UseRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
useAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UseByUserIdTask extends Gs2RestSessionTask {
private UseByUserIdRequest request;
public UseByUserIdTask(
UseByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UseByUserIdResult parse(JsonNode data) {
return UseByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/user/{userId}/serialKey";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("code", request.getCode());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void useByUserIdAsync(
UseByUserIdRequest request,
AsyncAction> callback
) {
UseByUserIdTask task = new UseByUserIdTask(request, callback);
session.execute(task);
}
public UseByUserIdResult useByUserId(
UseByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
useByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class RevertUseByUserIdTask extends Gs2RestSessionTask {
private RevertUseByUserIdRequest request;
public RevertUseByUserIdTask(
RevertUseByUserIdRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public RevertUseByUserIdResult parse(JsonNode data) {
return RevertUseByUserIdResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/user/{userId}/serialKey/revert";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{userId}", this.request.getUserId() == null || this.request.getUserId().length() == 0 ? "null" : String.valueOf(this.request.getUserId()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("code", request.getCode());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
if (this.request.getDuplicationAvoider() != null) {
builder.setHeader("X-GS2-DUPLICATION-AVOIDER", this.request.getDuplicationAvoider());
}
if (this.request.getTimeOffsetToken() != null) {
builder.setHeader("X-GS2-TIME-OFFSET-TOKEN", this.request.getTimeOffsetToken());
}
builder
.build()
.send();
}
}
public void revertUseByUserIdAsync(
RevertUseByUserIdRequest request,
AsyncAction> callback
) {
RevertUseByUserIdTask task = new RevertUseByUserIdTask(request, callback);
session.execute(task);
}
public RevertUseByUserIdResult revertUseByUserId(
RevertUseByUserIdRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
revertUseByUserIdAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UseByStampTaskTask extends Gs2RestSessionTask {
private UseByStampTaskRequest request;
public UseByStampTaskTask(
UseByStampTaskRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UseByStampTaskResult parse(JsonNode data) {
return UseByStampTaskResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/serialKey/use";
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("stampTask", request.getStampTask());
put("keyId", request.getKeyId());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void useByStampTaskAsync(
UseByStampTaskRequest request,
AsyncAction> callback
) {
UseByStampTaskTask task = new UseByStampTaskTask(request, callback);
session.execute(task);
}
public UseByStampTaskResult useByStampTask(
UseByStampTaskRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
useByStampTaskAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class RevertUseByStampSheetTask extends Gs2RestSessionTask {
private RevertUseByStampSheetRequest request;
public RevertUseByStampSheetTask(
RevertUseByStampSheetRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public RevertUseByStampSheetResult parse(JsonNode data) {
return RevertUseByStampSheetResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/serialKey/use";
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("stampSheet", request.getStampSheet());
put("keyId", request.getKeyId());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void revertUseByStampSheetAsync(
RevertUseByStampSheetRequest request,
AsyncAction> callback
) {
RevertUseByStampSheetTask task = new RevertUseByStampSheetTask(request, callback);
session.execute(task);
}
public RevertUseByStampSheetResult revertUseByStampSheet(
RevertUseByStampSheetRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
revertUseByStampSheetAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DescribeCampaignModelsTask extends Gs2RestSessionTask {
private DescribeCampaignModelsRequest request;
public DescribeCampaignModelsTask(
DescribeCampaignModelsRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DescribeCampaignModelsResult parse(JsonNode data) {
return DescribeCampaignModelsResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void describeCampaignModelsAsync(
DescribeCampaignModelsRequest request,
AsyncAction> callback
) {
DescribeCampaignModelsTask task = new DescribeCampaignModelsTask(request, callback);
session.execute(task);
}
public DescribeCampaignModelsResult describeCampaignModels(
DescribeCampaignModelsRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
describeCampaignModelsAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetCampaignModelTask extends Gs2RestSessionTask {
private GetCampaignModelRequest request;
public GetCampaignModelTask(
GetCampaignModelRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetCampaignModelResult parse(JsonNode data) {
return GetCampaignModelResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/campaign/{campaignModelName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getCampaignModelAsync(
GetCampaignModelRequest request,
AsyncAction> callback
) {
GetCampaignModelTask task = new GetCampaignModelTask(request, callback);
session.execute(task);
}
public GetCampaignModelResult getCampaignModel(
GetCampaignModelRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getCampaignModelAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DescribeCampaignModelMastersTask extends Gs2RestSessionTask {
private DescribeCampaignModelMastersRequest request;
public DescribeCampaignModelMastersTask(
DescribeCampaignModelMastersRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DescribeCampaignModelMastersResult parse(JsonNode data) {
return DescribeCampaignModelMastersResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/campaign";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
if (this.request.getPageToken() != null) {
queryStrings.add("pageToken=" + EncodingUtil.urlEncode((String.valueOf(this.request.getPageToken()))));
}
if (this.request.getLimit() != null) {
queryStrings.add("limit=" + String.valueOf(this.request.getLimit()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void describeCampaignModelMastersAsync(
DescribeCampaignModelMastersRequest request,
AsyncAction> callback
) {
DescribeCampaignModelMastersTask task = new DescribeCampaignModelMastersTask(request, callback);
session.execute(task);
}
public DescribeCampaignModelMastersResult describeCampaignModelMasters(
DescribeCampaignModelMastersRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
describeCampaignModelMastersAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class CreateCampaignModelMasterTask extends Gs2RestSessionTask {
private CreateCampaignModelMasterRequest request;
public CreateCampaignModelMasterTask(
CreateCampaignModelMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public CreateCampaignModelMasterResult parse(JsonNode data) {
return CreateCampaignModelMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/campaign";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("name", request.getName());
put("description", request.getDescription());
put("metadata", request.getMetadata());
put("enableCampaignCode", request.getEnableCampaignCode());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.POST)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void createCampaignModelMasterAsync(
CreateCampaignModelMasterRequest request,
AsyncAction> callback
) {
CreateCampaignModelMasterTask task = new CreateCampaignModelMasterTask(request, callback);
session.execute(task);
}
public CreateCampaignModelMasterResult createCampaignModelMaster(
CreateCampaignModelMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
createCampaignModelMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetCampaignModelMasterTask extends Gs2RestSessionTask {
private GetCampaignModelMasterRequest request;
public GetCampaignModelMasterTask(
GetCampaignModelMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetCampaignModelMasterResult parse(JsonNode data) {
return GetCampaignModelMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/campaign/{campaignModelName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getCampaignModelMasterAsync(
GetCampaignModelMasterRequest request,
AsyncAction> callback
) {
GetCampaignModelMasterTask task = new GetCampaignModelMasterTask(request, callback);
session.execute(task);
}
public GetCampaignModelMasterResult getCampaignModelMaster(
GetCampaignModelMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getCampaignModelMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UpdateCampaignModelMasterTask extends Gs2RestSessionTask {
private UpdateCampaignModelMasterRequest request;
public UpdateCampaignModelMasterTask(
UpdateCampaignModelMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UpdateCampaignModelMasterResult parse(JsonNode data) {
return UpdateCampaignModelMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/campaign/{campaignModelName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("description", request.getDescription());
put("metadata", request.getMetadata());
put("enableCampaignCode", request.getEnableCampaignCode());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.PUT)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void updateCampaignModelMasterAsync(
UpdateCampaignModelMasterRequest request,
AsyncAction> callback
) {
UpdateCampaignModelMasterTask task = new UpdateCampaignModelMasterTask(request, callback);
session.execute(task);
}
public UpdateCampaignModelMasterResult updateCampaignModelMaster(
UpdateCampaignModelMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
updateCampaignModelMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class DeleteCampaignModelMasterTask extends Gs2RestSessionTask {
private DeleteCampaignModelMasterRequest request;
public DeleteCampaignModelMasterTask(
DeleteCampaignModelMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public DeleteCampaignModelMasterResult parse(JsonNode data) {
return DeleteCampaignModelMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/campaign/{campaignModelName}";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
url = url.replace("{campaignModelName}", this.request.getCampaignModelName() == null || this.request.getCampaignModelName().length() == 0 ? "null" : String.valueOf(this.request.getCampaignModelName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.DELETE)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void deleteCampaignModelMasterAsync(
DeleteCampaignModelMasterRequest request,
AsyncAction> callback
) {
DeleteCampaignModelMasterTask task = new DeleteCampaignModelMasterTask(request, callback);
session.execute(task);
}
public DeleteCampaignModelMasterResult deleteCampaignModelMaster(
DeleteCampaignModelMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
deleteCampaignModelMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class ExportMasterTask extends Gs2RestSessionTask {
private ExportMasterRequest request;
public ExportMasterTask(
ExportMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public ExportMasterResult parse(JsonNode data) {
return ExportMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/export";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void exportMasterAsync(
ExportMasterRequest request,
AsyncAction> callback
) {
ExportMasterTask task = new ExportMasterTask(request, callback);
session.execute(task);
}
public ExportMasterResult exportMaster(
ExportMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
exportMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class GetCurrentCampaignMasterTask extends Gs2RestSessionTask {
private GetCurrentCampaignMasterRequest request;
public GetCurrentCampaignMasterTask(
GetCurrentCampaignMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public GetCurrentCampaignMasterResult parse(JsonNode data) {
return GetCurrentCampaignMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
List queryStrings = new ArrayList<> ();
if (this.request.getContextStack() != null) {
queryStrings.add("contextStack=" + EncodingUtil.urlEncode(this.request.getContextStack()));
}
url += "?" + String.join("&", queryStrings);
builder
.setMethod(HttpTask.Method.GET)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void getCurrentCampaignMasterAsync(
GetCurrentCampaignMasterRequest request,
AsyncAction> callback
) {
GetCurrentCampaignMasterTask task = new GetCurrentCampaignMasterTask(request, callback);
session.execute(task);
}
public GetCurrentCampaignMasterResult getCurrentCampaignMaster(
GetCurrentCampaignMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
getCurrentCampaignMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UpdateCurrentCampaignMasterTask extends Gs2RestSessionTask {
private UpdateCurrentCampaignMasterRequest request;
public UpdateCurrentCampaignMasterTask(
UpdateCurrentCampaignMasterRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UpdateCurrentCampaignMasterResult parse(JsonNode data) {
return UpdateCurrentCampaignMasterResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("settings", request.getSettings());
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.PUT)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void updateCurrentCampaignMasterAsync(
UpdateCurrentCampaignMasterRequest request,
AsyncAction> callback
) {
UpdateCurrentCampaignMasterTask task = new UpdateCurrentCampaignMasterTask(request, callback);
session.execute(task);
}
public UpdateCurrentCampaignMasterResult updateCurrentCampaignMaster(
UpdateCurrentCampaignMasterRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
updateCurrentCampaignMasterAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
class UpdateCurrentCampaignMasterFromGitHubTask extends Gs2RestSessionTask {
private UpdateCurrentCampaignMasterFromGitHubRequest request;
public UpdateCurrentCampaignMasterFromGitHubTask(
UpdateCurrentCampaignMasterFromGitHubRequest request,
AsyncAction> userCallback
) {
super(
(Gs2RestSession) session,
userCallback
);
this.request = request;
}
@Override
public UpdateCurrentCampaignMasterFromGitHubResult parse(JsonNode data) {
return UpdateCurrentCampaignMasterFromGitHubResult.fromJson(data);
}
@Override
protected void executeImpl() {
String url = Gs2RestSession.EndpointHost
.replace("{service}", "serial-key")
.replace("{region}", session.getRegion().getName())
+ "/{namespaceName}/master/from_git_hub";
url = url.replace("{namespaceName}", this.request.getNamespaceName() == null || this.request.getNamespaceName().length() == 0 ? "null" : String.valueOf(this.request.getNamespaceName()));
builder.setBody(new ObjectMapper().valueToTree(
new HashMap() {{
put("checkoutSetting", request.getCheckoutSetting() != null ? request.getCheckoutSetting().toJson() : null);
put("contextStack", request.getContextStack());
}}
).toString().getBytes());
builder
.setMethod(HttpTask.Method.PUT)
.setUrl(url)
.setHeader("Content-Type", "application/json")
.setHttpResponseHandler(this);
if (this.request.getRequestId() != null) {
builder.setHeader("X-GS2-REQUEST-ID", this.request.getRequestId());
}
builder
.build()
.send();
}
}
public void updateCurrentCampaignMasterFromGitHubAsync(
UpdateCurrentCampaignMasterFromGitHubRequest request,
AsyncAction> callback
) {
UpdateCurrentCampaignMasterFromGitHubTask task = new UpdateCurrentCampaignMasterFromGitHubTask(request, callback);
session.execute(task);
}
public UpdateCurrentCampaignMasterFromGitHubResult updateCurrentCampaignMasterFromGitHub(
UpdateCurrentCampaignMasterFromGitHubRequest request
) {
final AsyncResult[] resultAsyncResult = new AsyncResult[]{null};
updateCurrentCampaignMasterFromGitHubAsync(
request,
result -> resultAsyncResult[0] = result
);
while (resultAsyncResult[0] == null) {
try {
Thread.sleep(100);
} catch (InterruptedException e) {}
}
if(resultAsyncResult[0].getError() != null) {
throw resultAsyncResult[0].getError();
}
return resultAsyncResult[0].getResult();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy