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/route53domains/Route53Domains_EXPORTS.h>
8 #include <aws/route53domains/model/Transferable.h>
9 #include <utility>
10 
11 namespace Aws
12 {
13 namespace Utils
14 {
15 namespace Json
16 {
17   class JsonValue;
18   class JsonView;
19 } // namespace Json
20 } // namespace Utils
21 namespace Route53Domains
22 {
23 namespace Model
24 {
25 
26   /**
27    * <p>A complex type that contains information about whether the specified domain
28    * can be transferred to Route 53.</p><p><h3>See Also:</h3>   <a
29    * href="http://docs.aws.amazon.com/goto/WebAPI/route53domains-2014-05-15/DomainTransferability">AWS
30    * API Reference</a></p>
31    */
32   class AWS_ROUTE53DOMAINS_API DomainTransferability
33   {
34   public:
35     DomainTransferability();
36     DomainTransferability(Aws::Utils::Json::JsonView jsonValue);
37     DomainTransferability& operator=(Aws::Utils::Json::JsonView jsonValue);
38     Aws::Utils::Json::JsonValue Jsonize() const;
39 
40 
41 
GetTransferable()42     inline const Transferable& GetTransferable() const{ return m_transferable; }
43 
44 
TransferableHasBeenSet()45     inline bool TransferableHasBeenSet() const { return m_transferableHasBeenSet; }
46 
47 
SetTransferable(const Transferable & value)48     inline void SetTransferable(const Transferable& value) { m_transferableHasBeenSet = true; m_transferable = value; }
49 
50 
SetTransferable(Transferable && value)51     inline void SetTransferable(Transferable&& value) { m_transferableHasBeenSet = true; m_transferable = std::move(value); }
52 
53 
WithTransferable(const Transferable & value)54     inline DomainTransferability& WithTransferable(const Transferable& value) { SetTransferable(value); return *this;}
55 
56 
WithTransferable(Transferable && value)57     inline DomainTransferability& WithTransferable(Transferable&& value) { SetTransferable(std::move(value)); return *this;}
58 
59   private:
60 
61     Transferable m_transferable;
62     bool m_transferableHasBeenSet;
63   };
64 
65 } // namespace Model
66 } // namespace Route53Domains
67 } // namespace Aws
68