47 lines
965 B
Plaintext
47 lines
965 B
Plaintext
|
|
||
|
@startuml
|
||
|
S3Client -> Gateway: PUT /bucket/dest\nx-amz-copy-source: /bucket/source
|
||
|
Gateway -> Uplink: CopyObject call
|
||
|
note left
|
||
|
oldBucket
|
||
|
oldKey
|
||
|
newBucket
|
||
|
newKey
|
||
|
end note
|
||
|
Uplink -> Satellite: BeginCopyObjectRequest
|
||
|
note left
|
||
|
Bucket
|
||
|
ObjectKey //encrypted//
|
||
|
NewBucket
|
||
|
NewObjectKey //encrypted//
|
||
|
end note
|
||
|
Uplink <-- Satellite: BeginCopyObjectResponse
|
||
|
note right
|
||
|
StreamId
|
||
|
SegmentKeys //encrypted//
|
||
|
MetadataKey //encrypted//
|
||
|
end note
|
||
|
Uplink -> Satellite: FinishCopyObjectRequest
|
||
|
note left
|
||
|
StreamId
|
||
|
Bucket
|
||
|
ObjectKey //encrypted//
|
||
|
NewBucket
|
||
|
NewObjectKey //encrypted//
|
||
|
SegmentKeys //encrypted//
|
||
|
MetadataKey //encrypted//
|
||
|
MetaData (optional) //encrypted//
|
||
|
end note
|
||
|
Uplink <-- Satellite: FinishCopyObjectResponse
|
||
|
note right: Object //encrypted//
|
||
|
|
||
|
Gateway <-- Uplink: CopyObject return
|
||
|
note right: Object
|
||
|
|
||
|
S3Client <-- Gateway: 200 response
|
||
|
note right
|
||
|
<ETag />
|
||
|
<LastModified />
|
||
|
end note
|
||
|
@enduml
|