1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/lambda/Lambda_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSVector.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Json 17 { 18 class JsonValue; 19 class JsonView; 20 } // namespace Json 21 } // namespace Utils 22 namespace Lambda 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>Configuration values that override the container image Dockerfile settings. 29 * See <a 30 * href="https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms">Container 31 * settings</a>. </p><p><h3>See Also:</h3> <a 32 * href="http://docs.aws.amazon.com/goto/WebAPI/lambda-2015-03-31/ImageConfig">AWS 33 * API Reference</a></p> 34 */ 35 class AWS_LAMBDA_API ImageConfig 36 { 37 public: 38 ImageConfig(); 39 ImageConfig(Aws::Utils::Json::JsonView jsonValue); 40 ImageConfig& operator=(Aws::Utils::Json::JsonView jsonValue); 41 Aws::Utils::Json::JsonValue Jsonize() const; 42 43 44 /** 45 * <p>Specifies the entry point to their application, which is typically the 46 * location of the runtime executable.</p> 47 */ GetEntryPoint()48 inline const Aws::Vector<Aws::String>& GetEntryPoint() const{ return m_entryPoint; } 49 50 /** 51 * <p>Specifies the entry point to their application, which is typically the 52 * location of the runtime executable.</p> 53 */ EntryPointHasBeenSet()54 inline bool EntryPointHasBeenSet() const { return m_entryPointHasBeenSet; } 55 56 /** 57 * <p>Specifies the entry point to their application, which is typically the 58 * location of the runtime executable.</p> 59 */ SetEntryPoint(const Aws::Vector<Aws::String> & value)60 inline void SetEntryPoint(const Aws::Vector<Aws::String>& value) { m_entryPointHasBeenSet = true; m_entryPoint = value; } 61 62 /** 63 * <p>Specifies the entry point to their application, which is typically the 64 * location of the runtime executable.</p> 65 */ SetEntryPoint(Aws::Vector<Aws::String> && value)66 inline void SetEntryPoint(Aws::Vector<Aws::String>&& value) { m_entryPointHasBeenSet = true; m_entryPoint = std::move(value); } 67 68 /** 69 * <p>Specifies the entry point to their application, which is typically the 70 * location of the runtime executable.</p> 71 */ WithEntryPoint(const Aws::Vector<Aws::String> & value)72 inline ImageConfig& WithEntryPoint(const Aws::Vector<Aws::String>& value) { SetEntryPoint(value); return *this;} 73 74 /** 75 * <p>Specifies the entry point to their application, which is typically the 76 * location of the runtime executable.</p> 77 */ WithEntryPoint(Aws::Vector<Aws::String> && value)78 inline ImageConfig& WithEntryPoint(Aws::Vector<Aws::String>&& value) { SetEntryPoint(std::move(value)); return *this;} 79 80 /** 81 * <p>Specifies the entry point to their application, which is typically the 82 * location of the runtime executable.</p> 83 */ AddEntryPoint(const Aws::String & value)84 inline ImageConfig& AddEntryPoint(const Aws::String& value) { m_entryPointHasBeenSet = true; m_entryPoint.push_back(value); return *this; } 85 86 /** 87 * <p>Specifies the entry point to their application, which is typically the 88 * location of the runtime executable.</p> 89 */ AddEntryPoint(Aws::String && value)90 inline ImageConfig& AddEntryPoint(Aws::String&& value) { m_entryPointHasBeenSet = true; m_entryPoint.push_back(std::move(value)); return *this; } 91 92 /** 93 * <p>Specifies the entry point to their application, which is typically the 94 * location of the runtime executable.</p> 95 */ AddEntryPoint(const char * value)96 inline ImageConfig& AddEntryPoint(const char* value) { m_entryPointHasBeenSet = true; m_entryPoint.push_back(value); return *this; } 97 98 99 /** 100 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 101 */ GetCommand()102 inline const Aws::Vector<Aws::String>& GetCommand() const{ return m_command; } 103 104 /** 105 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 106 */ CommandHasBeenSet()107 inline bool CommandHasBeenSet() const { return m_commandHasBeenSet; } 108 109 /** 110 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 111 */ SetCommand(const Aws::Vector<Aws::String> & value)112 inline void SetCommand(const Aws::Vector<Aws::String>& value) { m_commandHasBeenSet = true; m_command = value; } 113 114 /** 115 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 116 */ SetCommand(Aws::Vector<Aws::String> && value)117 inline void SetCommand(Aws::Vector<Aws::String>&& value) { m_commandHasBeenSet = true; m_command = std::move(value); } 118 119 /** 120 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 121 */ WithCommand(const Aws::Vector<Aws::String> & value)122 inline ImageConfig& WithCommand(const Aws::Vector<Aws::String>& value) { SetCommand(value); return *this;} 123 124 /** 125 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 126 */ WithCommand(Aws::Vector<Aws::String> && value)127 inline ImageConfig& WithCommand(Aws::Vector<Aws::String>&& value) { SetCommand(std::move(value)); return *this;} 128 129 /** 130 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 131 */ AddCommand(const Aws::String & value)132 inline ImageConfig& AddCommand(const Aws::String& value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } 133 134 /** 135 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 136 */ AddCommand(Aws::String && value)137 inline ImageConfig& AddCommand(Aws::String&& value) { m_commandHasBeenSet = true; m_command.push_back(std::move(value)); return *this; } 138 139 /** 140 * <p>Specifies parameters that you want to pass in with ENTRYPOINT. </p> 141 */ AddCommand(const char * value)142 inline ImageConfig& AddCommand(const char* value) { m_commandHasBeenSet = true; m_command.push_back(value); return *this; } 143 144 145 /** 146 * <p>Specifies the working directory.</p> 147 */ GetWorkingDirectory()148 inline const Aws::String& GetWorkingDirectory() const{ return m_workingDirectory; } 149 150 /** 151 * <p>Specifies the working directory.</p> 152 */ WorkingDirectoryHasBeenSet()153 inline bool WorkingDirectoryHasBeenSet() const { return m_workingDirectoryHasBeenSet; } 154 155 /** 156 * <p>Specifies the working directory.</p> 157 */ SetWorkingDirectory(const Aws::String & value)158 inline void SetWorkingDirectory(const Aws::String& value) { m_workingDirectoryHasBeenSet = true; m_workingDirectory = value; } 159 160 /** 161 * <p>Specifies the working directory.</p> 162 */ SetWorkingDirectory(Aws::String && value)163 inline void SetWorkingDirectory(Aws::String&& value) { m_workingDirectoryHasBeenSet = true; m_workingDirectory = std::move(value); } 164 165 /** 166 * <p>Specifies the working directory.</p> 167 */ SetWorkingDirectory(const char * value)168 inline void SetWorkingDirectory(const char* value) { m_workingDirectoryHasBeenSet = true; m_workingDirectory.assign(value); } 169 170 /** 171 * <p>Specifies the working directory.</p> 172 */ WithWorkingDirectory(const Aws::String & value)173 inline ImageConfig& WithWorkingDirectory(const Aws::String& value) { SetWorkingDirectory(value); return *this;} 174 175 /** 176 * <p>Specifies the working directory.</p> 177 */ WithWorkingDirectory(Aws::String && value)178 inline ImageConfig& WithWorkingDirectory(Aws::String&& value) { SetWorkingDirectory(std::move(value)); return *this;} 179 180 /** 181 * <p>Specifies the working directory.</p> 182 */ WithWorkingDirectory(const char * value)183 inline ImageConfig& WithWorkingDirectory(const char* value) { SetWorkingDirectory(value); return *this;} 184 185 private: 186 187 Aws::Vector<Aws::String> m_entryPoint; 188 bool m_entryPointHasBeenSet; 189 190 Aws::Vector<Aws::String> m_command; 191 bool m_commandHasBeenSet; 192 193 Aws::String m_workingDirectory; 194 bool m_workingDirectoryHasBeenSet; 195 }; 196 197 } // namespace Model 198 } // namespace Lambda 199 } // namespace Aws 200