/// <summary> /// Unmarshaller the response from the service to the response class. /// </summary> /// <param name="context"></param> /// <returns></returns> public override AmazonWebServiceResponse Unmarshall(JsonUnmarshallerContext context) { CreateGameSessionResponse response = new CreateGameSessionResponse(); context.Read(); int targetDepth = context.CurrentDepth; while (context.ReadAtDepth(targetDepth)) { if (context.TestExpression("GameSession", targetDepth)) { var unmarshaller = GameSessionUnmarshaller.Instance; response.GameSession = unmarshaller.Unmarshall(context); continue; } } return response; }
public Amazon.GameLift.Model.GameSession CreateGameSession() { try { var cgsreq = new Amazon.GameLift.Model.CreateGameSessionRequest(); cgsreq.AliasId = aliasId; cgsreq.CreatorId = playerId; cgsreq.MaximumPlayerSessionCount = 100; Amazon.GameLift.Model.CreateGameSessionResponse cgsres = aglc.CreateGameSession(cgsreq); string gsid = cgsres.GameSession != null ? cgsres.GameSession.GameSessionId : "N/A"; Debug.Log((int)cgsres.HttpStatusCode + " GAME SESSION CREATED: " + gsid); return(cgsres.GameSession); } catch (Amazon.GameLift.Model.FleetCapacityExceededException e) { Debug.Log(e.StatusCode.ToString() + " FleetCapacityExceededException: " + e.Message); return(null); } catch (Amazon.GameLift.Model.InvalidRequestException e) { Debug.Log(e.StatusCode.ToString() + " InvalidRequestException: " + e.Message); return(null); } }