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/glue/Glue_EXPORTS.h> 8 #include <aws/glue/model/ResourceType.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 Glue 23 { 24 namespace Model 25 { 26 27 /** 28 * <p>The URIs for function resources.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/glue-2017-03-31/ResourceUri">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_GLUE_API ResourceUri 33 { 34 public: 35 ResourceUri(); 36 ResourceUri(Aws::Utils::Json::JsonView jsonValue); 37 ResourceUri& operator=(Aws::Utils::Json::JsonView jsonValue); 38 Aws::Utils::Json::JsonValue Jsonize() const; 39 40 41 /** 42 * <p>The type of the resource.</p> 43 */ GetResourceType()44 inline const ResourceType& GetResourceType() const{ return m_resourceType; } 45 46 /** 47 * <p>The type of the resource.</p> 48 */ ResourceTypeHasBeenSet()49 inline bool ResourceTypeHasBeenSet() const { return m_resourceTypeHasBeenSet; } 50 51 /** 52 * <p>The type of the resource.</p> 53 */ SetResourceType(const ResourceType & value)54 inline void SetResourceType(const ResourceType& value) { m_resourceTypeHasBeenSet = true; m_resourceType = value; } 55 56 /** 57 * <p>The type of the resource.</p> 58 */ SetResourceType(ResourceType && value)59 inline void SetResourceType(ResourceType&& value) { m_resourceTypeHasBeenSet = true; m_resourceType = std::move(value); } 60 61 /** 62 * <p>The type of the resource.</p> 63 */ WithResourceType(const ResourceType & value)64 inline ResourceUri& WithResourceType(const ResourceType& value) { SetResourceType(value); return *this;} 65 66 /** 67 * <p>The type of the resource.</p> 68 */ WithResourceType(ResourceType && value)69 inline ResourceUri& WithResourceType(ResourceType&& value) { SetResourceType(std::move(value)); return *this;} 70 71 72 /** 73 * <p>The URI for accessing the resource.</p> 74 */ GetUri()75 inline const Aws::String& GetUri() const{ return m_uri; } 76 77 /** 78 * <p>The URI for accessing the resource.</p> 79 */ UriHasBeenSet()80 inline bool UriHasBeenSet() const { return m_uriHasBeenSet; } 81 82 /** 83 * <p>The URI for accessing the resource.</p> 84 */ SetUri(const Aws::String & value)85 inline void SetUri(const Aws::String& value) { m_uriHasBeenSet = true; m_uri = value; } 86 87 /** 88 * <p>The URI for accessing the resource.</p> 89 */ SetUri(Aws::String && value)90 inline void SetUri(Aws::String&& value) { m_uriHasBeenSet = true; m_uri = std::move(value); } 91 92 /** 93 * <p>The URI for accessing the resource.</p> 94 */ SetUri(const char * value)95 inline void SetUri(const char* value) { m_uriHasBeenSet = true; m_uri.assign(value); } 96 97 /** 98 * <p>The URI for accessing the resource.</p> 99 */ WithUri(const Aws::String & value)100 inline ResourceUri& WithUri(const Aws::String& value) { SetUri(value); return *this;} 101 102 /** 103 * <p>The URI for accessing the resource.</p> 104 */ WithUri(Aws::String && value)105 inline ResourceUri& WithUri(Aws::String&& value) { SetUri(std::move(value)); return *this;} 106 107 /** 108 * <p>The URI for accessing the resource.</p> 109 */ WithUri(const char * value)110 inline ResourceUri& WithUri(const char* value) { SetUri(value); return *this;} 111 112 private: 113 114 ResourceType m_resourceType; 115 bool m_resourceTypeHasBeenSet; 116 117 Aws::String m_uri; 118 bool m_uriHasBeenSet; 119 }; 120 121 } // namespace Model 122 } // namespace Glue 123 } // namespace Aws 124