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/location/LocationService_EXPORTS.h>
8 #include <aws/core/utils/stream/ResponseStream.h>
9 #include <aws/core/utils/Array.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 LocationService
19 {
20 namespace Model
21 {
22   class AWS_LOCATIONSERVICE_API GetMapStyleDescriptorResult
23   {
24   public:
25     GetMapStyleDescriptorResult();
26     //We have to define these because Microsoft doesn't auto generate them
27     GetMapStyleDescriptorResult(GetMapStyleDescriptorResult&&);
28     GetMapStyleDescriptorResult& operator=(GetMapStyleDescriptorResult&&);
29     //we delete these because Microsoft doesn't handle move generation correctly
30     //and we therefore don't trust them to get it right here either.
31     GetMapStyleDescriptorResult(const GetMapStyleDescriptorResult&) = delete;
32     GetMapStyleDescriptorResult& operator=(const GetMapStyleDescriptorResult&) = delete;
33 
34 
35     GetMapStyleDescriptorResult(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
36     GetMapStyleDescriptorResult& operator=(Aws::AmazonWebServiceResult<Aws::Utils::Stream::ResponseStream>&& result);
37 
38 
39 
40     /**
41      * <p>Contains the body of the style descriptor.</p>
42      */
GetBlob()43     inline Aws::IOStream& GetBlob() { return m_blob.GetUnderlyingStream(); }
44 
45     /**
46      * <p>Contains the body of the style descriptor.</p>
47      */
ReplaceBody(Aws::IOStream * body)48     inline void ReplaceBody(Aws::IOStream* body) { m_blob = Aws::Utils::Stream::ResponseStream(body); }
49 
50 
51     /**
52      * <p>The style descriptor's content type. For example,
53      * <code>application/json</code>.</p>
54      */
GetContentType()55     inline const Aws::String& GetContentType() const{ return m_contentType; }
56 
57     /**
58      * <p>The style descriptor's content type. For example,
59      * <code>application/json</code>.</p>
60      */
SetContentType(const Aws::String & value)61     inline void SetContentType(const Aws::String& value) { m_contentType = value; }
62 
63     /**
64      * <p>The style descriptor's content type. For example,
65      * <code>application/json</code>.</p>
66      */
SetContentType(Aws::String && value)67     inline void SetContentType(Aws::String&& value) { m_contentType = std::move(value); }
68 
69     /**
70      * <p>The style descriptor's content type. For example,
71      * <code>application/json</code>.</p>
72      */
SetContentType(const char * value)73     inline void SetContentType(const char* value) { m_contentType.assign(value); }
74 
75     /**
76      * <p>The style descriptor's content type. For example,
77      * <code>application/json</code>.</p>
78      */
WithContentType(const Aws::String & value)79     inline GetMapStyleDescriptorResult& WithContentType(const Aws::String& value) { SetContentType(value); return *this;}
80 
81     /**
82      * <p>The style descriptor's content type. For example,
83      * <code>application/json</code>.</p>
84      */
WithContentType(Aws::String && value)85     inline GetMapStyleDescriptorResult& WithContentType(Aws::String&& value) { SetContentType(std::move(value)); return *this;}
86 
87     /**
88      * <p>The style descriptor's content type. For example,
89      * <code>application/json</code>.</p>
90      */
WithContentType(const char * value)91     inline GetMapStyleDescriptorResult& WithContentType(const char* value) { SetContentType(value); return *this;}
92 
93   private:
94 
95   Aws::Utils::Stream::ResponseStream m_blob;
96 
97     Aws::String m_contentType;
98   };
99 
100 } // namespace Model
101 } // namespace LocationService
102 } // namespace Aws
103