/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A set of instructions for launching server processes on fleet computes.
* Server processes run either an executable in a custom game build or a Realtime
* Servers script. Server process configurations are part of a fleet's runtime
* configuration.See Also:
AWS
* API Reference
The location of a game build executable or Realtime script. Game builds and * Realtime scripts are installed on instances at the root:
Windows (custom game builds only): C:\game. Example:
* "C:\game\MyGame\server.exe"
Linux:
* /local/game. Examples: "/local/game/MyGame/server.exe"
* or "/local/game/MyRealtimeScript.js"
Amazon GameLift doesn't support the use of setup scripts that launch the game
* executable. For custom game builds, this parameter must indicate the executable
* that calls the server SDK operations initSDK() and
* ProcessReady().
An optional list of parameters to pass to the server executable or Realtime * script on launch.
*/ inline const Aws::String& GetParameters() const{ return m_parameters; } inline bool ParametersHasBeenSet() const { return m_parametersHasBeenSet; } inline void SetParameters(const Aws::String& value) { m_parametersHasBeenSet = true; m_parameters = value; } inline void SetParameters(Aws::String&& value) { m_parametersHasBeenSet = true; m_parameters = std::move(value); } inline void SetParameters(const char* value) { m_parametersHasBeenSet = true; m_parameters.assign(value); } inline ServerProcess& WithParameters(const Aws::String& value) { SetParameters(value); return *this;} inline ServerProcess& WithParameters(Aws::String&& value) { SetParameters(std::move(value)); return *this;} inline ServerProcess& WithParameters(const char* value) { SetParameters(value); return *this;} ///@} ///@{ /** *The number of server processes using this configuration that run concurrently * on each instance or compute.
*/ inline int GetConcurrentExecutions() const{ return m_concurrentExecutions; } inline bool ConcurrentExecutionsHasBeenSet() const { return m_concurrentExecutionsHasBeenSet; } inline void SetConcurrentExecutions(int value) { m_concurrentExecutionsHasBeenSet = true; m_concurrentExecutions = value; } inline ServerProcess& WithConcurrentExecutions(int value) { SetConcurrentExecutions(value); return *this;} ///@} private: Aws::String m_launchPath; bool m_launchPathHasBeenSet = false; Aws::String m_parameters; bool m_parametersHasBeenSet = false; int m_concurrentExecutions; bool m_concurrentExecutionsHasBeenSet = false; }; } // namespace Model } // namespace GameLift } // namespace Aws