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/pinpoint/Pinpoint_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSString.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 Pinpoint 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Specifies the status and settings of the GCM channel for an application. This 28 * channel enables Amazon Pinpoint to send push notifications through the Firebase 29 * Cloud Messaging (FCM), formerly Google Cloud Messaging (GCM), 30 * service.</p><p><h3>See Also:</h3> <a 31 * href="http://docs.aws.amazon.com/goto/WebAPI/pinpoint-2016-12-01/GCMChannelRequest">AWS 32 * API Reference</a></p> 33 */ 34 class AWS_PINPOINT_API GCMChannelRequest 35 { 36 public: 37 GCMChannelRequest(); 38 GCMChannelRequest(Aws::Utils::Json::JsonView jsonValue); 39 GCMChannelRequest& operator=(Aws::Utils::Json::JsonView jsonValue); 40 Aws::Utils::Json::JsonValue Jsonize() const; 41 42 43 /** 44 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 45 * that you received from Google to communicate with Google services.</p> 46 */ GetApiKey()47 inline const Aws::String& GetApiKey() const{ return m_apiKey; } 48 49 /** 50 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 51 * that you received from Google to communicate with Google services.</p> 52 */ ApiKeyHasBeenSet()53 inline bool ApiKeyHasBeenSet() const { return m_apiKeyHasBeenSet; } 54 55 /** 56 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 57 * that you received from Google to communicate with Google services.</p> 58 */ SetApiKey(const Aws::String & value)59 inline void SetApiKey(const Aws::String& value) { m_apiKeyHasBeenSet = true; m_apiKey = value; } 60 61 /** 62 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 63 * that you received from Google to communicate with Google services.</p> 64 */ SetApiKey(Aws::String && value)65 inline void SetApiKey(Aws::String&& value) { m_apiKeyHasBeenSet = true; m_apiKey = std::move(value); } 66 67 /** 68 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 69 * that you received from Google to communicate with Google services.</p> 70 */ SetApiKey(const char * value)71 inline void SetApiKey(const char* value) { m_apiKeyHasBeenSet = true; m_apiKey.assign(value); } 72 73 /** 74 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 75 * that you received from Google to communicate with Google services.</p> 76 */ WithApiKey(const Aws::String & value)77 inline GCMChannelRequest& WithApiKey(const Aws::String& value) { SetApiKey(value); return *this;} 78 79 /** 80 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 81 * that you received from Google to communicate with Google services.</p> 82 */ WithApiKey(Aws::String && value)83 inline GCMChannelRequest& WithApiKey(Aws::String&& value) { SetApiKey(std::move(value)); return *this;} 84 85 /** 86 * <p>The Web API Key, also referred to as an <i>API_KEY</i> or <i>server key</i>, 87 * that you received from Google to communicate with Google services.</p> 88 */ WithApiKey(const char * value)89 inline GCMChannelRequest& WithApiKey(const char* value) { SetApiKey(value); return *this;} 90 91 92 /** 93 * <p>Specifies whether to enable the GCM channel for the application.</p> 94 */ GetEnabled()95 inline bool GetEnabled() const{ return m_enabled; } 96 97 /** 98 * <p>Specifies whether to enable the GCM channel for the application.</p> 99 */ EnabledHasBeenSet()100 inline bool EnabledHasBeenSet() const { return m_enabledHasBeenSet; } 101 102 /** 103 * <p>Specifies whether to enable the GCM channel for the application.</p> 104 */ SetEnabled(bool value)105 inline void SetEnabled(bool value) { m_enabledHasBeenSet = true; m_enabled = value; } 106 107 /** 108 * <p>Specifies whether to enable the GCM channel for the application.</p> 109 */ WithEnabled(bool value)110 inline GCMChannelRequest& WithEnabled(bool value) { SetEnabled(value); return *this;} 111 112 private: 113 114 Aws::String m_apiKey; 115 bool m_apiKeyHasBeenSet; 116 117 bool m_enabled; 118 bool m_enabledHasBeenSet; 119 }; 120 121 } // namespace Model 122 } // namespace Pinpoint 123 } // namespace Aws 124