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/appstream/AppStream_EXPORTS.h> 8 #include <aws/appstream/AppStreamRequest.h> 9 #include <aws/core/utils/memory/stl/AWSVector.h> 10 #include <aws/core/utils/memory/stl/AWSString.h> 11 #include <utility> 12 13 namespace Aws 14 { 15 namespace AppStream 16 { 17 namespace Model 18 { 19 20 /** 21 */ 22 class AWS_APPSTREAM_API DescribeDirectoryConfigsRequest : public AppStreamRequest 23 { 24 public: 25 DescribeDirectoryConfigsRequest(); 26 27 // Service request name is the Operation name which will send this request out, 28 // each operation should has unique request name, so that we can get operation's name from this request. 29 // Note: this is not true for response, multiple operations may have the same response name, 30 // so we can not get operation's name from response. GetServiceRequestName()31 inline virtual const char* GetServiceRequestName() const override { return "DescribeDirectoryConfigs"; } 32 33 Aws::String SerializePayload() const override; 34 35 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 36 37 38 /** 39 * <p>The directory names.</p> 40 */ GetDirectoryNames()41 inline const Aws::Vector<Aws::String>& GetDirectoryNames() const{ return m_directoryNames; } 42 43 /** 44 * <p>The directory names.</p> 45 */ DirectoryNamesHasBeenSet()46 inline bool DirectoryNamesHasBeenSet() const { return m_directoryNamesHasBeenSet; } 47 48 /** 49 * <p>The directory names.</p> 50 */ SetDirectoryNames(const Aws::Vector<Aws::String> & value)51 inline void SetDirectoryNames(const Aws::Vector<Aws::String>& value) { m_directoryNamesHasBeenSet = true; m_directoryNames = value; } 52 53 /** 54 * <p>The directory names.</p> 55 */ SetDirectoryNames(Aws::Vector<Aws::String> && value)56 inline void SetDirectoryNames(Aws::Vector<Aws::String>&& value) { m_directoryNamesHasBeenSet = true; m_directoryNames = std::move(value); } 57 58 /** 59 * <p>The directory names.</p> 60 */ WithDirectoryNames(const Aws::Vector<Aws::String> & value)61 inline DescribeDirectoryConfigsRequest& WithDirectoryNames(const Aws::Vector<Aws::String>& value) { SetDirectoryNames(value); return *this;} 62 63 /** 64 * <p>The directory names.</p> 65 */ WithDirectoryNames(Aws::Vector<Aws::String> && value)66 inline DescribeDirectoryConfigsRequest& WithDirectoryNames(Aws::Vector<Aws::String>&& value) { SetDirectoryNames(std::move(value)); return *this;} 67 68 /** 69 * <p>The directory names.</p> 70 */ AddDirectoryNames(const Aws::String & value)71 inline DescribeDirectoryConfigsRequest& AddDirectoryNames(const Aws::String& value) { m_directoryNamesHasBeenSet = true; m_directoryNames.push_back(value); return *this; } 72 73 /** 74 * <p>The directory names.</p> 75 */ AddDirectoryNames(Aws::String && value)76 inline DescribeDirectoryConfigsRequest& AddDirectoryNames(Aws::String&& value) { m_directoryNamesHasBeenSet = true; m_directoryNames.push_back(std::move(value)); return *this; } 77 78 /** 79 * <p>The directory names.</p> 80 */ AddDirectoryNames(const char * value)81 inline DescribeDirectoryConfigsRequest& AddDirectoryNames(const char* value) { m_directoryNamesHasBeenSet = true; m_directoryNames.push_back(value); return *this; } 82 83 84 /** 85 * <p>The maximum size of each page of results.</p> 86 */ GetMaxResults()87 inline int GetMaxResults() const{ return m_maxResults; } 88 89 /** 90 * <p>The maximum size of each page of results.</p> 91 */ MaxResultsHasBeenSet()92 inline bool MaxResultsHasBeenSet() const { return m_maxResultsHasBeenSet; } 93 94 /** 95 * <p>The maximum size of each page of results.</p> 96 */ SetMaxResults(int value)97 inline void SetMaxResults(int value) { m_maxResultsHasBeenSet = true; m_maxResults = value; } 98 99 /** 100 * <p>The maximum size of each page of results.</p> 101 */ WithMaxResults(int value)102 inline DescribeDirectoryConfigsRequest& WithMaxResults(int value) { SetMaxResults(value); return *this;} 103 104 105 /** 106 * <p>The pagination token to use to retrieve the next page of results for this 107 * operation. If this value is null, it retrieves the first page.</p> 108 */ GetNextToken()109 inline const Aws::String& GetNextToken() const{ return m_nextToken; } 110 111 /** 112 * <p>The pagination token to use to retrieve the next page of results for this 113 * operation. If this value is null, it retrieves the first page.</p> 114 */ NextTokenHasBeenSet()115 inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } 116 117 /** 118 * <p>The pagination token to use to retrieve the next page of results for this 119 * operation. If this value is null, it retrieves the first page.</p> 120 */ SetNextToken(const Aws::String & value)121 inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } 122 123 /** 124 * <p>The pagination token to use to retrieve the next page of results for this 125 * operation. If this value is null, it retrieves the first page.</p> 126 */ SetNextToken(Aws::String && value)127 inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } 128 129 /** 130 * <p>The pagination token to use to retrieve the next page of results for this 131 * operation. If this value is null, it retrieves the first page.</p> 132 */ SetNextToken(const char * value)133 inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } 134 135 /** 136 * <p>The pagination token to use to retrieve the next page of results for this 137 * operation. If this value is null, it retrieves the first page.</p> 138 */ WithNextToken(const Aws::String & value)139 inline DescribeDirectoryConfigsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} 140 141 /** 142 * <p>The pagination token to use to retrieve the next page of results for this 143 * operation. If this value is null, it retrieves the first page.</p> 144 */ WithNextToken(Aws::String && value)145 inline DescribeDirectoryConfigsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} 146 147 /** 148 * <p>The pagination token to use to retrieve the next page of results for this 149 * operation. If this value is null, it retrieves the first page.</p> 150 */ WithNextToken(const char * value)151 inline DescribeDirectoryConfigsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} 152 153 private: 154 155 Aws::Vector<Aws::String> m_directoryNames; 156 bool m_directoryNamesHasBeenSet; 157 158 int m_maxResults; 159 bool m_maxResultsHasBeenSet; 160 161 Aws::String m_nextToken; 162 bool m_nextTokenHasBeenSet; 163 }; 164 165 } // namespace Model 166 } // namespace AppStream 167 } // namespace Aws 168