/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include An object that represents the metadata and configuration settings for
* services on an Amazon Web Services Snow Family device.See Also:
* AWS
* API Reference
Represents the NFS (Network File System) service on a Snow Family device.
*/ inline const NFSOnDeviceServiceConfiguration& GetNFSOnDeviceService() const{ return m_nFSOnDeviceService; } /** *Represents the NFS (Network File System) service on a Snow Family device.
*/ inline bool NFSOnDeviceServiceHasBeenSet() const { return m_nFSOnDeviceServiceHasBeenSet; } /** *Represents the NFS (Network File System) service on a Snow Family device.
*/ inline void SetNFSOnDeviceService(const NFSOnDeviceServiceConfiguration& value) { m_nFSOnDeviceServiceHasBeenSet = true; m_nFSOnDeviceService = value; } /** *Represents the NFS (Network File System) service on a Snow Family device.
*/ inline void SetNFSOnDeviceService(NFSOnDeviceServiceConfiguration&& value) { m_nFSOnDeviceServiceHasBeenSet = true; m_nFSOnDeviceService = std::move(value); } /** *Represents the NFS (Network File System) service on a Snow Family device.
*/ inline OnDeviceServiceConfiguration& WithNFSOnDeviceService(const NFSOnDeviceServiceConfiguration& value) { SetNFSOnDeviceService(value); return *this;} /** *Represents the NFS (Network File System) service on a Snow Family device.
*/ inline OnDeviceServiceConfiguration& WithNFSOnDeviceService(NFSOnDeviceServiceConfiguration&& value) { SetNFSOnDeviceService(std::move(value)); return *this;} /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline const TGWOnDeviceServiceConfiguration& GetTGWOnDeviceService() const{ return m_tGWOnDeviceService; } /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline bool TGWOnDeviceServiceHasBeenSet() const { return m_tGWOnDeviceServiceHasBeenSet; } /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline void SetTGWOnDeviceService(const TGWOnDeviceServiceConfiguration& value) { m_tGWOnDeviceServiceHasBeenSet = true; m_tGWOnDeviceService = value; } /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline void SetTGWOnDeviceService(TGWOnDeviceServiceConfiguration&& value) { m_tGWOnDeviceServiceHasBeenSet = true; m_tGWOnDeviceService = std::move(value); } /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline OnDeviceServiceConfiguration& WithTGWOnDeviceService(const TGWOnDeviceServiceConfiguration& value) { SetTGWOnDeviceService(value); return *this;} /** *Represents the Storage Gateway service Tape Gateway type on a Snow Family * device.
*/ inline OnDeviceServiceConfiguration& WithTGWOnDeviceService(TGWOnDeviceServiceConfiguration&& value) { SetTGWOnDeviceService(std::move(value)); return *this;} /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline const EKSOnDeviceServiceConfiguration& GetEKSOnDeviceService() const{ return m_eKSOnDeviceService; } /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline bool EKSOnDeviceServiceHasBeenSet() const { return m_eKSOnDeviceServiceHasBeenSet; } /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline void SetEKSOnDeviceService(const EKSOnDeviceServiceConfiguration& value) { m_eKSOnDeviceServiceHasBeenSet = true; m_eKSOnDeviceService = value; } /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline void SetEKSOnDeviceService(EKSOnDeviceServiceConfiguration&& value) { m_eKSOnDeviceServiceHasBeenSet = true; m_eKSOnDeviceService = std::move(value); } /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline OnDeviceServiceConfiguration& WithEKSOnDeviceService(const EKSOnDeviceServiceConfiguration& value) { SetEKSOnDeviceService(value); return *this;} /** *The configuration of EKS Anywhere on the Snow Family device.
*/ inline OnDeviceServiceConfiguration& WithEKSOnDeviceService(EKSOnDeviceServiceConfiguration&& value) { SetEKSOnDeviceService(std::move(value)); return *this;} /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline const S3OnDeviceServiceConfiguration& GetS3OnDeviceService() const{ return m_s3OnDeviceService; } /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline bool S3OnDeviceServiceHasBeenSet() const { return m_s3OnDeviceServiceHasBeenSet; } /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline void SetS3OnDeviceService(const S3OnDeviceServiceConfiguration& value) { m_s3OnDeviceServiceHasBeenSet = true; m_s3OnDeviceService = value; } /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline void SetS3OnDeviceService(S3OnDeviceServiceConfiguration&& value) { m_s3OnDeviceServiceHasBeenSet = true; m_s3OnDeviceService = std::move(value); } /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline OnDeviceServiceConfiguration& WithS3OnDeviceService(const S3OnDeviceServiceConfiguration& value) { SetS3OnDeviceService(value); return *this;} /** *Configuration for Amazon S3 compatible storage on Snow family devices.
*/ inline OnDeviceServiceConfiguration& WithS3OnDeviceService(S3OnDeviceServiceConfiguration&& value) { SetS3OnDeviceService(std::move(value)); return *this;} private: NFSOnDeviceServiceConfiguration m_nFSOnDeviceService; bool m_nFSOnDeviceServiceHasBeenSet = false; TGWOnDeviceServiceConfiguration m_tGWOnDeviceService; bool m_tGWOnDeviceServiceHasBeenSet = false; EKSOnDeviceServiceConfiguration m_eKSOnDeviceService; bool m_eKSOnDeviceServiceHasBeenSet = false; S3OnDeviceServiceConfiguration m_s3OnDeviceService; bool m_s3OnDeviceServiceHasBeenSet = false; }; } // namespace Model } // namespace Snowball } // namespace Aws