public void CreateGameSessionMarshallTest() { var request = InstantiateClassGenerator.Execute <CreateGameSessionRequest>(); var marshaller = new CreateGameSessionRequestMarshaller(); var internalRequest = marshaller.Marshall(request); var jsonRequest = UTF8Encoding.UTF8.GetString(internalRequest.Content); Comparer.CompareObjectToJson <CreateGameSessionRequest>(request, jsonRequest); var webResponse = new WebResponseData { Headers = { { "x-amzn-RequestId", Guid.NewGuid().ToString() }, { "x-amz-crc32", "0" } } }; var jsonResponse = new JsonSampleGenerator(service_model, service_model.FindOperation("CreateGameSession").ResponseStructure).Execute(); webResponse.Headers.Add("Content-Length", UTF8Encoding.UTF8.GetBytes(jsonResponse).Length.ToString()); UnmarshallerContext context = new JsonUnmarshallerContext(Utils.CreateStreamFromString(jsonResponse), false, webResponse); var response = CreateGameSessionResponseUnmarshaller.Instance.Unmarshall(context) as CreateGameSessionResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }
public void CreateGameSessionMarshallTest() { var request = InstantiateClassGenerator.Execute<CreateGameSessionRequest>(); var marshaller = new CreateGameSessionRequestMarshaller(); var internalRequest = marshaller.Marshall(request); var jsonRequest = UTF8Encoding.UTF8.GetString(internalRequest.Content); Comparer.CompareObjectToJson<CreateGameSessionRequest>(request,jsonRequest); var webResponse = new WebResponseData { Headers = { {"x-amzn-RequestId", Guid.NewGuid().ToString()}, {"x-amz-crc32","0"} } }; var jsonResponse = new JsonSampleGenerator(service_model, service_model.FindOperation("CreateGameSession").ResponseStructure).Execute(); webResponse.Headers.Add("Content-Length", UTF8Encoding.UTF8.GetBytes(jsonResponse).Length.ToString()); UnmarshallerContext context = new JsonUnmarshallerContext(Utils.CreateStreamFromString(jsonResponse), false, webResponse); var response = CreateGameSessionResponseUnmarshaller.Instance.Unmarshall(context) as CreateGameSessionResponse; InstantiateClassGenerator.ValidateObjectFullyInstantiated(response); }
/// <summary> /// Initiates the asynchronous execution of the CreateGameSession operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateGameSession operation on AmazonGameLiftClient.</param> /// <param name="callback">An AsyncCallback delegate that is invoked when the operation completes.</param> /// <param name="state">A user-defined state object that is passed to the callback procedure. Retrieve this object from within the callback /// procedure using the AsyncState property.</param> /// /// <returns>An IAsyncResult that can be used to poll or wait for results, or both; this value is also needed when invoking EndCreateGameSession /// operation.</returns> public IAsyncResult BeginCreateGameSession(CreateGameSessionRequest request, AsyncCallback callback, object state) { var marshaller = new CreateGameSessionRequestMarshaller(); var unmarshaller = CreateGameSessionResponseUnmarshaller.Instance; return BeginInvoke<CreateGameSessionRequest>(request, marshaller, unmarshaller, callback, state); }
/// <summary> /// Creates a multiplayer game session for players. This action creates a game session /// record and assigns the new session to an instance in the specified fleet, which activates /// the server initialization process in your game server. A fleet must be in an ACTIVE /// state before a game session can be created for it. /// /// /// <para> /// To create a game session, specify either a fleet ID or an alias ID and indicate the /// maximum number of players the game session allows. You can also provide a name and /// a set of properties for your game (optional). If successful, a <a>GameSession</a> /// object is returned containing session properties, including an IP address. By default, /// newly created game sessions are set to accept adding any new players to the game session. /// Use <a>UpdateGameSession</a> to change the creation policy. /// </para> /// </summary> /// <param name="request">Container for the necessary parameters to execute the CreateGameSession service method.</param> /// /// <returns>The response from the CreateGameSession service method, as returned by GameLift.</returns> /// <exception cref="Amazon.GameLift.Model.ConflictException"> /// The requested operation would cause a conflict with the current state of a service /// resource associated with the request. Please resolve the conflict before retrying /// this request. /// </exception> /// <exception cref="Amazon.GameLift.Model.FleetCapacityExceededException"> /// The specified fleet has no available instances to fulfill a request to create a new /// game session. Such requests should only be retried once the fleet capacity has been /// increased. /// </exception> /// <exception cref="Amazon.GameLift.Model.InternalServiceException"> /// The service encountered an unrecoverable internal failure while processing the request. /// Such requests can be retried by clients, either immediately or after a back-off period. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidFleetStatusException"> /// The requested operation would cause a conflict with the current state of a resource /// associated with the request and/or the fleet. Please resolve the conflict before retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.InvalidRequestException"> /// One or more parameters specified as part of the request are invalid. Please correct /// the invalid parameters before retrying. /// </exception> /// <exception cref="Amazon.GameLift.Model.NotFoundException"> /// A service resource associated with the request could not be found. Such requests should /// not be retried by clients. /// </exception> /// <exception cref="Amazon.GameLift.Model.TerminalRoutingStrategyException"> /// The service is unable to resolve the routing for a particular alias because it has /// a terminal <a>RoutingStrategy</a> associated with it. The message returned in this /// exception is the message defined in the TerminalRoutingStrategy itself. Such requests /// should only be retried if the routing strategy for the specified alias is modified. /// </exception> /// <exception cref="Amazon.GameLift.Model.UnauthorizedException"> /// The client failed authentication. Such requests should not be retried without valid /// authentication credentials. /// </exception> public CreateGameSessionResponse CreateGameSession(CreateGameSessionRequest request) { var marshaller = new CreateGameSessionRequestMarshaller(); var unmarshaller = CreateGameSessionResponseUnmarshaller.Instance; return Invoke<CreateGameSessionRequest,CreateGameSessionResponse>(request, marshaller, unmarshaller); }
/// <summary> /// Initiates the asynchronous execution of the CreateGameSession operation. /// </summary> /// /// <param name="request">Container for the necessary parameters to execute the CreateGameSession operation.</param> /// <param name="cancellationToken"> /// A cancellation token that can be used by other objects or threads to receive notice of cancellation. /// </param> /// <returns>The task object representing the asynchronous operation.</returns> public Task<CreateGameSessionResponse> CreateGameSessionAsync(CreateGameSessionRequest request, System.Threading.CancellationToken cancellationToken = default(CancellationToken)) { var marshaller = new CreateGameSessionRequestMarshaller(); var unmarshaller = CreateGameSessionResponseUnmarshaller.Instance; return InvokeAsync<CreateGameSessionRequest,CreateGameSessionResponse>(request, marshaller, unmarshaller, cancellationToken); }