AWS SDK for C++  1.9.16
AWS SDK for C++
S3ControlARN.h
Go to the documentation of this file.
1 
6 #pragma once
7 
9 
11 #include <aws/core/utils/ARN.h>
13 
14 namespace Aws
15 {
16  namespace Utils
17  {
18  template<typename R, typename E> class Outcome;
19  }
20 
21  namespace S3Control
22  {
23  namespace ARNResourceType
24  {
25  static const char ACCESSPOINT[] = "accesspoint";
26  static const char OUTPOST[] = "outpost";
27  static const char BUCKET[] = "bucket";
28  }
29 
31 
33  {
34  public:
36 
37  const Aws::String& GetResourceType() const { return m_resourceType; }
38  const Aws::String& GetResourceId() const { return m_resourceId; }
39  const Aws::String& GetSubResourceType() const { return m_subResourceType; }
40  const Aws::String& GetSubResourceId() const { return m_subResourceId; }
41  const Aws::String& GetResourceQualifier() const { return m_resourceQualifier; }
42 
43  // Check if S3ARN is valid.
45  // Check if S3ARN is valid, and especially, ARN region should match the region specified.
46  S3ControlARNOutcome Validate(const char* region) const;
47 
48  private:
49  void ParseARNResource();
50 
51  Aws::String m_resourceType;
52  Aws::String m_resourceId;
53  Aws::String m_subResourceType;
54  Aws::String m_subResourceId;
55  Aws::String m_resourceQualifier;
56  };
57  }
58 }
AWSError.h
Aws::S3Control::S3ControlARNOutcome
Aws::Utils::Outcome< bool, Aws::Client::AWSError< S3ControlErrors > > S3ControlARNOutcome
Definition: S3ControlARN.h:30
Aws::S3Control::S3ControlARN::S3ControlARN
S3ControlARN(const Aws::String &arn)
S3Control_EXPORTS.h
Aws::S3Control::S3ControlARN
Definition: S3ControlARN.h:33
ARN.h
Aws::S3Control::S3ControlARN::GetResourceType
const Aws::String & GetResourceType() const
Definition: S3ControlARN.h:37
AWS_S3CONTROL_API
#define AWS_S3CONTROL_API
Definition: S3Control_EXPORTS.h:28
Aws::S3Control::ARNResourceType::ACCESSPOINT
static const char ACCESSPOINT[]
Definition: S3ControlARN.h:25
S3ControlErrors.h
Aws::S3Control::S3ControlARN::Validate
S3ControlARNOutcome Validate(const char *region) const
Aws::S3Control::S3ControlARN::GetSubResourceId
const Aws::String & GetSubResourceId() const
Definition: S3ControlARN.h:40
Aws::S3Control::S3ControlARN::GetSubResourceType
const Aws::String & GetSubResourceType() const
Definition: S3ControlARN.h:39
Aws::S3Control::S3ControlARN::GetResourceQualifier
const Aws::String & GetResourceQualifier() const
Definition: S3ControlARN.h:41
Aws::S3Control::ARNResourceType::OUTPOST
static const char OUTPOST[]
Definition: S3ControlARN.h:26
Aws::S3Control::ARNResourceType::BUCKET
static const char BUCKET[]
Definition: S3ControlARN.h:27
Aws
Definition: AccessManagementClient.h:15
Aws::S3Control::S3ControlARN::GetResourceId
const Aws::String & GetResourceId() const
Definition: S3ControlARN.h:38
Aws::Utils::Outcome
Definition: Outcome.h:26
Aws::String
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
Definition: AWSString.h:97
Aws::S3Control::S3ControlARN::Validate
S3ControlARNOutcome Validate() const
Aws::Utils::ARN
Definition: ARN.h:24