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/cloudsearch/CloudSearch_EXPORTS.h>
8 #include <aws/core/utils/memory/stl/AWSVector.h>
9 #include <aws/cloudsearch/model/ResponseMetadata.h>
10 #include <aws/core/utils/memory/stl/AWSString.h>
11 #include <utility>
12 
13 namespace Aws
14 {
15 template<typename RESULT_TYPE>
16 class AmazonWebServiceResult;
17 
18 namespace Utils
19 {
20 namespace Xml
21 {
22   class XmlDocument;
23 } // namespace Xml
24 } // namespace Utils
25 namespace CloudSearch
26 {
27 namespace Model
28 {
29   /**
30    * <p>The result of a <code>BuildSuggester</code> request. Contains a list of the
31    * fields used for suggestions.</p><p><h3>See Also:</h3>   <a
32    * href="http://docs.aws.amazon.com/goto/WebAPI/cloudsearch-2013-01-01/BuildSuggestersResponse">AWS
33    * API Reference</a></p>
34    */
35   class AWS_CLOUDSEARCH_API BuildSuggestersResult
36   {
37   public:
38     BuildSuggestersResult();
39     BuildSuggestersResult(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
40     BuildSuggestersResult& operator=(const Aws::AmazonWebServiceResult<Aws::Utils::Xml::XmlDocument>& result);
41 
42 
43 
GetFieldNames()44     inline const Aws::Vector<Aws::String>& GetFieldNames() const{ return m_fieldNames; }
45 
46 
SetFieldNames(const Aws::Vector<Aws::String> & value)47     inline void SetFieldNames(const Aws::Vector<Aws::String>& value) { m_fieldNames = value; }
48 
49 
SetFieldNames(Aws::Vector<Aws::String> && value)50     inline void SetFieldNames(Aws::Vector<Aws::String>&& value) { m_fieldNames = std::move(value); }
51 
52 
WithFieldNames(const Aws::Vector<Aws::String> & value)53     inline BuildSuggestersResult& WithFieldNames(const Aws::Vector<Aws::String>& value) { SetFieldNames(value); return *this;}
54 
55 
WithFieldNames(Aws::Vector<Aws::String> && value)56     inline BuildSuggestersResult& WithFieldNames(Aws::Vector<Aws::String>&& value) { SetFieldNames(std::move(value)); return *this;}
57 
58 
AddFieldNames(const Aws::String & value)59     inline BuildSuggestersResult& AddFieldNames(const Aws::String& value) { m_fieldNames.push_back(value); return *this; }
60 
61 
AddFieldNames(Aws::String && value)62     inline BuildSuggestersResult& AddFieldNames(Aws::String&& value) { m_fieldNames.push_back(std::move(value)); return *this; }
63 
64 
AddFieldNames(const char * value)65     inline BuildSuggestersResult& AddFieldNames(const char* value) { m_fieldNames.push_back(value); return *this; }
66 
67 
68 
GetResponseMetadata()69     inline const ResponseMetadata& GetResponseMetadata() const{ return m_responseMetadata; }
70 
71 
SetResponseMetadata(const ResponseMetadata & value)72     inline void SetResponseMetadata(const ResponseMetadata& value) { m_responseMetadata = value; }
73 
74 
SetResponseMetadata(ResponseMetadata && value)75     inline void SetResponseMetadata(ResponseMetadata&& value) { m_responseMetadata = std::move(value); }
76 
77 
WithResponseMetadata(const ResponseMetadata & value)78     inline BuildSuggestersResult& WithResponseMetadata(const ResponseMetadata& value) { SetResponseMetadata(value); return *this;}
79 
80 
WithResponseMetadata(ResponseMetadata && value)81     inline BuildSuggestersResult& WithResponseMetadata(ResponseMetadata&& value) { SetResponseMetadata(std::move(value)); return *this;}
82 
83   private:
84 
85     Aws::Vector<Aws::String> m_fieldNames;
86 
87     ResponseMetadata m_responseMetadata;
88   };
89 
90 } // namespace Model
91 } // namespace CloudSearch
92 } // namespace Aws
93