1
+ /*
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ *
4
+ * Licensed under the Apache License, Version 2.0 (the "License").
5
+ * You may not use this file except in compliance with the License.
6
+ * A copy of the License is located at
7
+ *
8
+ * http://aws.amazon.com/apache2.0
9
+ *
10
+ * or in the "license" file accompanying this file. This file is distributed
11
+ * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12
+ * express or implied. See the License for the specific language governing
13
+ * permissions and limitations under the License.
14
+ */
15
+
16
+ package foo .bar ;
17
+
18
+ import software .amazon .awssdk .services .s3 .S3Client ;
19
+ import software .amazon .awssdk .services .s3 .model .CORSConfiguration ;
20
+ import software .amazon .awssdk .services .s3 .model .CORSRule ;
21
+ import software .amazon .awssdk .services .s3 .model .CreateBucketRequest ;
22
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketAnalyticsConfigurationRequest ;
23
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketCorsRequest ;
24
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketEncryptionRequest ;
25
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketIntelligentTieringConfigurationRequest ;
26
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketInventoryConfigurationRequest ;
27
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketLifecycleRequest ;
28
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketMetricsConfigurationRequest ;
29
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketPolicyRequest ;
30
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketReplicationRequest ;
31
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketRequest ;
32
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketTaggingRequest ;
33
+ import software .amazon .awssdk .services .s3 .model .DeleteBucketWebsiteRequest ;
34
+ import software .amazon .awssdk .services .s3 .model .DeleteObjectRequest ;
35
+ import software .amazon .awssdk .services .s3 .model .GetBucketAccelerateConfigurationRequest ;
36
+ import software .amazon .awssdk .services .s3 .model .GetBucketAclRequest ;
37
+ import software .amazon .awssdk .services .s3 .model .GetBucketAnalyticsConfigurationRequest ;
38
+ import software .amazon .awssdk .services .s3 .model .GetBucketCorsRequest ;
39
+ import software .amazon .awssdk .services .s3 .model .GetBucketEncryptionRequest ;
40
+ import software .amazon .awssdk .services .s3 .model .GetBucketIntelligentTieringConfigurationRequest ;
41
+ import software .amazon .awssdk .services .s3 .model .GetBucketInventoryConfigurationRequest ;
42
+ import software .amazon .awssdk .services .s3 .model .GetBucketLifecycleConfigurationRequest ;
43
+ import software .amazon .awssdk .services .s3 .model .GetBucketLocationRequest ;
44
+ import software .amazon .awssdk .services .s3 .model .GetBucketLoggingRequest ;
45
+ import software .amazon .awssdk .services .s3 .model .GetBucketMetricsConfigurationRequest ;
46
+ import software .amazon .awssdk .services .s3 .model .GetBucketNotificationConfigurationRequest ;
47
+ import software .amazon .awssdk .services .s3 .model .GetBucketPolicyRequest ;
48
+ import software .amazon .awssdk .services .s3 .model .GetBucketReplicationRequest ;
49
+ import software .amazon .awssdk .services .s3 .model .GetBucketTaggingRequest ;
50
+ import software .amazon .awssdk .services .s3 .model .GetBucketVersioningRequest ;
51
+ import software .amazon .awssdk .services .s3 .model .GetBucketWebsiteRequest ;
52
+ import software .amazon .awssdk .services .s3 .model .GetObjectAclRequest ;
53
+ import software .amazon .awssdk .services .s3 .model .HeadObjectRequest ;
54
+ import software .amazon .awssdk .services .s3 .model .GetObjectRequest ;
55
+ import software .amazon .awssdk .services .s3 .model .HeadBucketRequest ;
56
+ import software .amazon .awssdk .services .s3 .model .HeadBucketResponse ;
57
+ import software .amazon .awssdk .services .s3 .model .CreateMultipartUploadRequest ;
58
+ import software .amazon .awssdk .services .s3 .model .CreateMultipartUploadResponse ;
59
+ import software .amazon .awssdk .services .s3 .model .ListObjectsRequest ;
60
+ import software .amazon .awssdk .services .s3 .model .ListObjectsV2Request ;
61
+ import software .amazon .awssdk .services .s3 .model .ListObjectsV2Response ;
62
+ import software .amazon .awssdk .services .s3 .model .ListObjectVersionsRequest ;
63
+ import software .amazon .awssdk .services .s3 .model .ListObjectsResponse ;
64
+ import software .amazon .awssdk .services .s3 .model .HeadObjectResponse ;
65
+ import software .amazon .awssdk .services .s3 .model .PutBucketCorsRequest ;
66
+
67
+ public class S3 {
68
+
69
+ private S3 () {
70
+
71
+ }
72
+
73
+ private void headBucket (S3Client s3 , String bucket ) {
74
+ HeadBucketRequest headBucketRequest = HeadBucketRequest .builder ().bucket (bucket )
75
+ .build ();
76
+ HeadBucketResponse headBucketResult = s3 .headBucket (headBucketRequest );
77
+ System .out .println (headBucketResult );
78
+ }
79
+
80
+ private void createBucket (S3Client s3 , String bucket ) {
81
+ CreateBucketRequest createBucketRequest = CreateBucketRequest .builder ().bucket (bucket )
82
+ .build ();
83
+ s3 .createBucket (createBucketRequest );
84
+ }
85
+
86
+ private void deleteBucket (S3Client s3 , String bucket ) {
87
+ DeleteBucketRequest deleteBucketRequest = DeleteBucketRequest .builder ().bucket (bucket )
88
+ .build ();
89
+ s3 .deleteBucket (deleteBucketRequest );
90
+ }
91
+
92
+ private void getObjectMetaData_to_headObject (S3Client s3 , String bucket , String key ) {
93
+ HeadObjectRequest getObjectMetadataRequest = HeadObjectRequest .builder ().bucket ("bucket" ).key ("key" )
94
+ .build ();
95
+ HeadObjectResponse objectMetadata = s3 .headObject (getObjectMetadataRequest );
96
+ System .out .println (objectMetadata );
97
+ }
98
+
99
+ private void initiateMpu_to_createMpu (S3Client s3 , String bucket , String key ) {
100
+ CreateMultipartUploadRequest initiateMultipartUploadRequest = CreateMultipartUploadRequest .builder ().bucket (bucket ).key (key )
101
+ .build ();
102
+ CreateMultipartUploadResponse initiateMultipartUploadResult = s3 .createMultipartUpload (initiateMultipartUploadRequest );
103
+ System .out .println (initiateMultipartUploadResult );
104
+ }
105
+
106
+ private void listObjects (S3Client s3 , String bucket ) {
107
+ ListObjectsRequest listObjectsRequest = ListObjectsRequest .builder ().bucket (bucket )
108
+ .build ();
109
+ ListObjectsResponse objectListing = s3 .listObjects (listObjectsRequest );
110
+ System .out .println (objectListing );
111
+ }
112
+
113
+ private void listObjectsV2 (S3Client s3 , String bucket ) {
114
+ ListObjectsV2Request listObjectsV2Request = ListObjectsV2Request .builder ().bucket (bucket )
115
+ .build ();
116
+ ListObjectsV2Response listObjectsV2Result = s3 .listObjectsV2 (listObjectsV2Request );
117
+ System .out .println (listObjectsV2Result );
118
+ }
119
+
120
+ private void cors (S3Client s3 , String bucket ) {
121
+ CORSRule corsRule = CORSRule .builder ().id ("id" ).maxAgeSeconds (99 )
122
+ .build ();
123
+ CORSConfiguration cors = CORSConfiguration .builder ().corsRules (corsRule )
124
+ .build ();
125
+ PutBucketCorsRequest setBucketCrossOriginConfigurationRequest =
126
+ PutBucketCorsRequest .builder ().bucket (bucket ).corsConfiguration (cors )
127
+ .build ();
128
+ s3 .putBucketCors (setBucketCrossOriginConfigurationRequest );
129
+
130
+ GetBucketCorsRequest getBucketCrossOriginConfigurationRequest =
131
+ GetBucketCorsRequest .builder ().bucket (bucket )
132
+ .build ();
133
+ s3 .getBucketCors (getBucketCrossOriginConfigurationRequest );
134
+
135
+ DeleteBucketCorsRequest deleteBucketCrossOriginConfigurationRequest =
136
+ DeleteBucketCorsRequest .builder ().bucket (bucket )
137
+ .build ();
138
+ s3 .deleteBucketCors (deleteBucketCrossOriginConfigurationRequest );
139
+ }
140
+
141
+ private void singleBucketArgMethods (S3Client s3 , String bucket ) {
142
+ s3 .createBucket (CreateBucketRequest .builder ().bucket (bucket )
143
+ .build ());
144
+ s3 .deleteBucket (DeleteBucketRequest .builder ().bucket (bucket )
145
+ .build ());
146
+ s3 .listObjects (ListObjectsRequest .builder ().bucket (bucket )
147
+ .build ());
148
+ s3 .listObjectsV2 (ListObjectsV2Request .builder ().bucket (bucket )
149
+ .build ());
150
+ s3 .getBucketCors (GetBucketCorsRequest .builder ().bucket (bucket )
151
+ .build ());
152
+ s3 .deleteBucketCors (DeleteBucketCorsRequest .builder ().bucket (bucket )
153
+ .build ());
154
+ s3 .getBucketVersioning (GetBucketVersioningRequest .builder ()
155
+ .build ());
156
+ s3 .deleteBucketEncryption (DeleteBucketEncryptionRequest .builder ().bucket (bucket )
157
+ .build ());
158
+ s3 .deleteBucketPolicy (DeleteBucketPolicyRequest .builder ().bucket (bucket )
159
+ .build ());
160
+ s3 .getBucketAccelerateConfiguration (GetBucketAccelerateConfigurationRequest .builder ().bucket (bucket )
161
+ .build ());
162
+ s3 .getBucketAcl (GetBucketAclRequest .builder ().bucket (bucket )
163
+ .build ());
164
+ s3 .getBucketEncryption (GetBucketEncryptionRequest .builder ().bucket (bucket )
165
+ .build ());
166
+ s3 .getBucketLifecycleConfiguration (GetBucketLifecycleConfigurationRequest .builder ().bucket (bucket )
167
+ .build ());
168
+ s3 .getBucketNotificationConfiguration (GetBucketNotificationConfigurationRequest .builder ().bucket (bucket )
169
+ .build ());
170
+ s3 .getBucketPolicy (GetBucketPolicyRequest .builder ().bucket (bucket )
171
+ .build ());
172
+ s3 .getBucketLocation (GetBucketLocationRequest .builder ().bucket (bucket )
173
+ .build ());
174
+ s3 .deleteBucketLifecycle (DeleteBucketLifecycleRequest .builder ().bucket (bucket )
175
+ .build ());
176
+ s3 .deleteBucketReplication (DeleteBucketReplicationRequest .builder ().bucket (bucket )
177
+ .build ());
178
+ s3 .deleteBucketTagging (DeleteBucketTaggingRequest .builder ().bucket (bucket )
179
+ .build ());
180
+ s3 .deleteBucketWebsite (DeleteBucketWebsiteRequest .builder ().bucket (bucket )
181
+ .build ());
182
+ s3 .getBucketLogging (GetBucketLoggingRequest .builder ().bucket (bucket )
183
+ .build ());
184
+ s3 .getBucketReplication (GetBucketReplicationRequest .builder ().bucket (bucket )
185
+ .build ());
186
+ s3 .getBucketTagging (GetBucketTaggingRequest .builder ().bucket (bucket )
187
+ .build ());
188
+ s3 .getBucketWebsite (GetBucketWebsiteRequest .builder ().bucket (bucket )
189
+ .build ());
190
+ }
191
+
192
+ private void bucketKeyArgsMethods (S3Client s3 , String bucket , String key ) {
193
+ s3 .deleteObject (DeleteObjectRequest .builder ().bucket (bucket ).key (key )
194
+ .build ());
195
+ s3 .getObject (GetObjectRequest .builder ().bucket (bucket ).key (key )
196
+ .build ());
197
+ s3 .getObjectAcl (GetObjectAclRequest .builder ().bucket (bucket ).key (key )
198
+ .build ());
199
+ s3 .headObject (HeadObjectRequest .builder ().bucket (bucket ).key (key )
200
+ .build ());
201
+ }
202
+
203
+ private void bucketIdArgsMethods (S3Client s3 , String bucket , String id ) {
204
+ s3 .deleteBucketAnalyticsConfiguration (DeleteBucketAnalyticsConfigurationRequest .builder ().bucket (bucket ).id (id )
205
+ .build ());
206
+ s3 .deleteBucketIntelligentTieringConfiguration (DeleteBucketIntelligentTieringConfigurationRequest .builder ().bucket (bucket ).id (id )
207
+ .build ());
208
+ s3 .deleteBucketInventoryConfiguration (DeleteBucketInventoryConfigurationRequest .builder ().bucket (bucket ).id (id )
209
+ .build ());
210
+ s3 .deleteBucketMetricsConfiguration (DeleteBucketMetricsConfigurationRequest .builder ().bucket (bucket ).id (id )
211
+ .build ());
212
+ s3 .getBucketAnalyticsConfiguration (GetBucketAnalyticsConfigurationRequest .builder ().bucket (bucket ).id (id )
213
+ .build ());
214
+ s3 .getBucketIntelligentTieringConfiguration (GetBucketIntelligentTieringConfigurationRequest .builder ().bucket (bucket ).id (id )
215
+ .build ());
216
+ s3 .getBucketInventoryConfiguration (GetBucketInventoryConfigurationRequest .builder ().bucket (bucket ).id (id )
217
+ .build ());
218
+ s3 .getBucketMetricsConfiguration (GetBucketMetricsConfigurationRequest .builder ().bucket (bucket ).id (id )
219
+ .build ());
220
+ }
221
+
222
+ private void bucketPrefixArgsMethods (S3Client s3 , String bucket , String prefix ) {
223
+ s3 .listObjects (ListObjectsRequest .builder ().bucket (bucket ).prefix (prefix )
224
+ .build ());
225
+ s3 .listObjectsV2 (ListObjectsV2Request .builder ().bucket (bucket ).prefix (prefix )
226
+ .build ());
227
+ s3 .listObjectVersions (ListObjectVersionsRequest .builder ().bucket (bucket ).prefix (prefix )
228
+ .build ());
229
+ }
230
+ }
0 commit comments