Skip to content

Commit 75eedb0

Browse files
committed
updated S3 example topics
1 parent e7c9bfd commit 75eedb0

File tree

4 files changed

+107
-10
lines changed

4 files changed

+107
-10
lines changed

doc_source/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
example_code

doc_source/examples/s3.rst

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@
55
This section provides examples of programming |S3|_ using the |sdk-java|_.
66

77
.. toctree::
8-
:glob:
8+
:titlesonly:
9+
:maxdepth: 1
910

10-
s3/*
11+
s3/buckets
12+
s3/objects
1113

doc_source/examples/s3/buckets.rst

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ the the |s3-dg|.
1111

1212
.. contents::
1313
:local:
14+
:depth: 1
1415

1516
.. _create-bucket:
1617

@@ -20,6 +21,13 @@ Create a bucket
2021
Use the |s3client| client's :methodname:`createBucket` method. The new :java-api:`Bucket
2122
<services/s3/model/Bucket>` is returned.
2223

24+
**Imports:**
25+
26+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/CreateBucket.java
27+
:lines: 15-17
28+
29+
**Code:**
30+
2331
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/CreateBucket.java
2432
:lines: 43-50
2533
:dedent: 8
@@ -33,6 +41,13 @@ List buckets
3341
Use the |s3client| client's :methodname:`listBucket` method. If successful, a List of
3442
:java-api:`Bucket <services/s3/model/Bucket>` objects will be returned.
3543

44+
**Imports:**
45+
46+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/ListBuckets.java
47+
:lines: 16-18
48+
49+
**Code:**
50+
3651
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/ListBuckets.java
3752
:lines: 31-37
3853
:dedent: 8
@@ -46,6 +61,13 @@ Delete a bucket
4661
Use the |s3client| client's :methodname:`deleteBucket` method. *The bucket must be empty, or an
4762
error will result*.
4863

64+
**Imports:**
65+
66+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteBucket.java
67+
:lines: 15-17
68+
69+
**Code:**
70+
4971
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteBucket.java
5072
:lines: 45-52
5173
:dedent: 8

doc_source/examples/s3/objects.rst

Lines changed: 80 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
############
2-
|S3| Objects
3-
############
1+
#####################
2+
Operations on Objects
3+
#####################
44

55
An |S3| object represents a *file*, or collection of data. Every object must reside within a
66
:doc:`bucket <buckets>`.
@@ -9,6 +9,8 @@ An |S3| object represents a *file*, or collection of data. Every object must res
99

1010
.. contents::
1111
:local:
12+
:depth: 1
13+
1214

1315
.. _upload-object:
1416

@@ -18,6 +20,13 @@ Upload an object
1820
Use the |s3client| client's :methodname:`putObject` method, supplying it with a bucket name, key
1921
name, and file to upload. *The bucket must exist, or an error will result*.
2022

23+
**Imports:**
24+
25+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/PutObject.java
26+
:lines: 15-17
27+
28+
**Code:**
29+
2130
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/PutObject.java
2231
:lines: 47-54
2332
:dedent: 8
@@ -30,19 +39,22 @@ List objects
3039
To get a list of objects within a bucket, use the |s3client| client's :methodname:`listObjects`
3140
method, supplying it with the name of a bucket.
3241

33-
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/ListObjects.java
34-
:lines: 46-47
35-
:dedent: 8
36-
3742
The :methodname:`listObjects` method returns an :java-api:`ObjectListing
3843
<services/s3/model/ObjectListing>` object that provides information about the objects in the bucket.
3944
To list the object names (keys), use the :methodname:`getObjectSummaries` method to get a List of
4045
:java-api:`S3ObjectSummary <services/s3/model/S3ObjectSummary>` objects, each of which represents a
4146
single object in the bucket, then call its :methodname:`getKey` method to retrieve the object's
4247
name.
4348

49+
**Imports:**
50+
51+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/ListObjects.java
52+
:lines: 16-20
53+
54+
**Code:**
55+
4456
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/ListObjects.java
45-
:lines: 48-52
57+
:lines: 46-52
4658
:dedent: 8
4759

4860

@@ -64,11 +76,43 @@ object.
6476
The following example downloads an object from S3 and saves its contents to a file (using the same
6577
name as the object's key):
6678

79+
**Imports:**
80+
81+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/GetObject.java
82+
:lines: 15-23
83+
84+
**Code:**
85+
6786
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/GetObject.java
6887
:lines: 51-75
6988
:dedent: 8
7089

7190

91+
.. _copy-object:
92+
93+
Copying, moving or renaming objects
94+
===================================
95+
96+
You can copy an object from one bucket to another by using the |s3client| client's
97+
:methodname:`copyObject` method. It takes the name of the bucket to copy from, the object to copy,
98+
and the destination bucket and name.
99+
100+
**Imports:**
101+
102+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/CopyObject.java
103+
:lines: 15-17
104+
105+
**Code:**
106+
107+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/CopyObject.java
108+
:lines: 45-54
109+
:dedent: 8
110+
111+
You can use :methodname:`copyObject` with :ref:`deleteObject <delete-object>` to **move** or
112+
**rename** an object, by first copying the object to a new name (you can use the same bucket as both
113+
the source and destination) and then deleting the object from its old location.
114+
115+
72116
.. _delete-object:
73117

74118
Delete an object
@@ -77,7 +121,35 @@ Delete an object
77121
Use the |s3client| client's :methodname:`deleteObject` method, passing it the name of a bucket and
78122
object to delete. *The specified bucket and object key must exist, or an error will result*.
79123

124+
**Imports:**
125+
126+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteObject.java
127+
:lines: 15-17
128+
129+
**Code:**
130+
80131
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteObject.java
81132
:lines: 48-55
82133
:dedent: 8
83134

135+
136+
.. _delete-objects:
137+
138+
Deleting multiple objects at once
139+
=================================
140+
141+
Using the |s3client| client's :methodname:`deleteObjects` method, you can delete multiple objects
142+
from the same bucket by passing their names to the :java-api:`DeleteObjectRequest
143+
<services/s3/model/DeleteObjectsRequest>` :methodname:`withKeys` method.
144+
145+
**Imports:**
146+
147+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteObjects.java
148+
:lines: 15-18
149+
150+
**Code:**
151+
152+
.. literalinclude:: ../../example_code/s3/src/main/java/aws/example/s3/DeleteObjects.java
153+
:lines: 53-62
154+
:dedent: 8
155+

0 commit comments

Comments
 (0)