Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.playfab.PlayFabCloudScriptAPI Maven / Gradle / Ivy
Go to download
PlayFab is the unified backend platform for games — everything you need to build and operate your game, all in one place, so you can focus on creating and delivering a great player experience.
package com.playfab;
import com.playfab.internal.*;
import com.playfab.PlayFabCloudScriptModels.*;
import com.playfab.PlayFabErrors.*;
import com.playfab.PlayFabSettings;
import java.util.concurrent.*;
import java.util.*;
import com.google.gson.*;
import com.google.gson.reflect.*;
/** API methods for executing CloudScript using an Entity Profile */
public class PlayFabCloudScriptAPI {
private static Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'").create();
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
* @param request ExecuteEntityCloudScriptRequest
* @return Async Task will return ExecuteCloudScriptResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> ExecuteEntityCloudScriptAsync(final ExecuteEntityCloudScriptRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateExecuteEntityCloudScriptAsync(request);
}
});
}
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
* @param request ExecuteEntityCloudScriptRequest
* @return ExecuteCloudScriptResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult ExecuteEntityCloudScript(final ExecuteEntityCloudScriptRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateExecuteEntityCloudScriptAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
*/
@SuppressWarnings("unchecked")
private static PlayFabResult privateExecuteEntityCloudScriptAsync(final ExecuteEntityCloudScriptRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/ExecuteEntityCloudScript"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
ExecuteCloudScriptResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
* @param request ExecuteFunctionRequest
* @return Async Task will return ExecuteFunctionResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> ExecuteFunctionAsync(final ExecuteFunctionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateExecuteFunctionAsync(request);
}
});
}
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
* @param request ExecuteFunctionRequest
* @return ExecuteFunctionResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult ExecuteFunction(final ExecuteFunctionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateExecuteFunctionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/**
* Cloud Script is one of PlayFab's most versatile features. It allows client code to request execution of any kind of
* custom server-side functionality you can implement, and it can be used in conjunction with virtually anything.
*/
@SuppressWarnings("unchecked")
private static PlayFabResult privateExecuteFunctionAsync(final ExecuteFunctionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/ExecuteFunction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
ExecuteFunctionResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Lists all currently registered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return Async Task will return ListFunctionsResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> ListFunctionsAsync(final ListFunctionsRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListFunctionsAsync(request);
}
});
}
/**
* Lists all currently registered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return ListFunctionsResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult ListFunctions(final ListFunctionsRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListFunctionsAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Lists all currently registered Azure Functions for a given title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateListFunctionsAsync(final ListFunctionsRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/ListFunctions"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
ListFunctionsResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Lists all currently registered HTTP triggered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return Async Task will return ListHttpFunctionsResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> ListHttpFunctionsAsync(final ListFunctionsRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListHttpFunctionsAsync(request);
}
});
}
/**
* Lists all currently registered HTTP triggered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return ListHttpFunctionsResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult ListHttpFunctions(final ListFunctionsRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListHttpFunctionsAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Lists all currently registered HTTP triggered Azure Functions for a given title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateListHttpFunctionsAsync(final ListFunctionsRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/ListHttpFunctions"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
ListHttpFunctionsResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Lists all currently registered Queue triggered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return Async Task will return ListQueuedFunctionsResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> ListQueuedFunctionsAsync(final ListFunctionsRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListQueuedFunctionsAsync(request);
}
});
}
/**
* Lists all currently registered Queue triggered Azure Functions for a given title.
* @param request ListFunctionsRequest
* @return ListQueuedFunctionsResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult ListQueuedFunctions(final ListFunctionsRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateListQueuedFunctionsAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Lists all currently registered Queue triggered Azure Functions for a given title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateListQueuedFunctionsAsync(final ListFunctionsRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/ListQueuedFunctions"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
ListQueuedFunctionsResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Generate an entity PlayStream event for the provided function result.
* @param request PostFunctionResultForEntityTriggeredActionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> PostFunctionResultForEntityTriggeredActionAsync(final PostFunctionResultForEntityTriggeredActionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForEntityTriggeredActionAsync(request);
}
});
}
/**
* Generate an entity PlayStream event for the provided function result.
* @param request PostFunctionResultForEntityTriggeredActionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult PostFunctionResultForEntityTriggeredAction(final PostFunctionResultForEntityTriggeredActionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForEntityTriggeredActionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Generate an entity PlayStream event for the provided function result. */
@SuppressWarnings("unchecked")
private static PlayFabResult privatePostFunctionResultForEntityTriggeredActionAsync(final PostFunctionResultForEntityTriggeredActionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/PostFunctionResultForEntityTriggeredAction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Generate an entity PlayStream event for the provided function result.
* @param request PostFunctionResultForFunctionExecutionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> PostFunctionResultForFunctionExecutionAsync(final PostFunctionResultForFunctionExecutionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForFunctionExecutionAsync(request);
}
});
}
/**
* Generate an entity PlayStream event for the provided function result.
* @param request PostFunctionResultForFunctionExecutionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult PostFunctionResultForFunctionExecution(final PostFunctionResultForFunctionExecutionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForFunctionExecutionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Generate an entity PlayStream event for the provided function result. */
@SuppressWarnings("unchecked")
private static PlayFabResult privatePostFunctionResultForFunctionExecutionAsync(final PostFunctionResultForFunctionExecutionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/PostFunctionResultForFunctionExecution"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Generate a player PlayStream event for the provided function result.
* @param request PostFunctionResultForPlayerTriggeredActionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> PostFunctionResultForPlayerTriggeredActionAsync(final PostFunctionResultForPlayerTriggeredActionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForPlayerTriggeredActionAsync(request);
}
});
}
/**
* Generate a player PlayStream event for the provided function result.
* @param request PostFunctionResultForPlayerTriggeredActionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult PostFunctionResultForPlayerTriggeredAction(final PostFunctionResultForPlayerTriggeredActionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForPlayerTriggeredActionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Generate a player PlayStream event for the provided function result. */
@SuppressWarnings("unchecked")
private static PlayFabResult privatePostFunctionResultForPlayerTriggeredActionAsync(final PostFunctionResultForPlayerTriggeredActionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/PostFunctionResultForPlayerTriggeredAction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Generate a PlayStream event for the provided function result.
* @param request PostFunctionResultForScheduledTaskRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> PostFunctionResultForScheduledTaskAsync(final PostFunctionResultForScheduledTaskRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForScheduledTaskAsync(request);
}
});
}
/**
* Generate a PlayStream event for the provided function result.
* @param request PostFunctionResultForScheduledTaskRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult PostFunctionResultForScheduledTask(final PostFunctionResultForScheduledTaskRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privatePostFunctionResultForScheduledTaskAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Generate a PlayStream event for the provided function result. */
@SuppressWarnings("unchecked")
private static PlayFabResult privatePostFunctionResultForScheduledTaskAsync(final PostFunctionResultForScheduledTaskRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/PostFunctionResultForScheduledTask"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Registers an HTTP triggered Azure function with a title.
* @param request RegisterHttpFunctionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> RegisterHttpFunctionAsync(final RegisterHttpFunctionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateRegisterHttpFunctionAsync(request);
}
});
}
/**
* Registers an HTTP triggered Azure function with a title.
* @param request RegisterHttpFunctionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult RegisterHttpFunction(final RegisterHttpFunctionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateRegisterHttpFunctionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Registers an HTTP triggered Azure function with a title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateRegisterHttpFunctionAsync(final RegisterHttpFunctionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/RegisterHttpFunction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Registers a queue triggered Azure Function with a title.
* @param request RegisterQueuedFunctionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> RegisterQueuedFunctionAsync(final RegisterQueuedFunctionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateRegisterQueuedFunctionAsync(request);
}
});
}
/**
* Registers a queue triggered Azure Function with a title.
* @param request RegisterQueuedFunctionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult RegisterQueuedFunction(final RegisterQueuedFunctionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateRegisterQueuedFunctionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Registers a queue triggered Azure Function with a title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateRegisterQueuedFunctionAsync(final RegisterQueuedFunctionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/RegisterQueuedFunction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
/**
* Unregisters an Azure Function with a title.
* @param request UnregisterFunctionRequest
* @return Async Task will return EmptyResult
*/
@SuppressWarnings("unchecked")
public static FutureTask> UnregisterFunctionAsync(final UnregisterFunctionRequest request) {
return new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateUnregisterFunctionAsync(request);
}
});
}
/**
* Unregisters an Azure Function with a title.
* @param request UnregisterFunctionRequest
* @return EmptyResult
*/
@SuppressWarnings("unchecked")
public static PlayFabResult UnregisterFunction(final UnregisterFunctionRequest request) {
FutureTask> task = new FutureTask(new Callable>() {
public PlayFabResult call() throws Exception {
return privateUnregisterFunctionAsync(request);
}
});
try {
task.run();
return task.get();
} catch(Exception e) {
PlayFabResult exceptionResult = new PlayFabResult();
exceptionResult.Error = PlayFabHTTP.GeneratePfError(-1, PlayFabErrorCode.Unknown, e.getMessage(), null);
return exceptionResult;
}
}
/** Unregisters an Azure Function with a title. */
@SuppressWarnings("unchecked")
private static PlayFabResult privateUnregisterFunctionAsync(final UnregisterFunctionRequest request) throws Exception {
if (PlayFabSettings.EntityToken == null) throw new Exception ("Must call GetEntityToken before you can use the Entity API");
FutureTask task = PlayFabHTTP.doPost(PlayFabSettings.GetURL("/CloudScript/UnregisterFunction"), request, "X-EntityToken", PlayFabSettings.EntityToken);
task.run();
Object httpResult = task.get();
if (httpResult instanceof PlayFabError) {
PlayFabError error = (PlayFabError)httpResult;
if (PlayFabSettings.GlobalErrorHandler != null)
PlayFabSettings.GlobalErrorHandler.callback(error);
PlayFabResult result = new PlayFabResult();
result.Error = error;
return result;
}
String resultRawJson = (String) httpResult;
PlayFabJsonSuccess resultData = gson.fromJson(resultRawJson, new TypeToken>(){}.getType());
EmptyResult result = resultData.data;
PlayFabResult pfResult = new PlayFabResult();
pfResult.Result = result;
return pfResult;
}
}