Interface ObjectStorageAsync

    • Method Detail

      • refreshClient

        void refreshClient()
        Rebuilds the client from scratch.

        Useful to refresh certificates.

      • setEndpoint

        void setEndpoint​(String endpoint)
        Sets the endpoint to call (ex, https://www.example.com).
        Parameters:
        endpoint - The endpoint of the serice.
      • getEndpoint

        String getEndpoint()
        Gets the set endpoint for REST call (ex, https://www.example.com)
      • setRegion

        void setRegion​(Region region)
        Sets the region to call (ex, Region.US_PHOENIX_1).

        Note, this will call setEndpoint after resolving the endpoint. If the service is not available in this region, however, an IllegalArgumentException will be raised.

        Parameters:
        region - The region of the service.
      • setRegion

        void setRegion​(String regionId)
        Sets the region to call (ex, ‘us-phoenix-1’).

        Note, this will first try to map the region ID to a known Region and call setRegion.

        If no known Region could be determined, it will create an endpoint based on the default endpoint format (Region.formatDefaultRegionEndpoint(Service, String) and then call setEndpoint.

        Parameters:
        regionId - The public region ID.
      • useRealmSpecificEndpointTemplate

        void useRealmSpecificEndpointTemplate​(boolean realmSpecificEndpointTemplateEnabled)
        Determines whether realm specific endpoint should be used or not.

        Set realmSpecificEndpointTemplateEnabled to “true” if the user wants to enable use of realm specific endpoint template, otherwise set it to “false”

        Parameters:
        realmSpecificEndpointTemplateEnabled - flag to enable the use of realm specific endpoint template
      • abortMultipartUpload

        Future<AbortMultipartUploadResponse> abortMultipartUpload​(AbortMultipartUploadRequest request,
                                                                  AsyncHandler<AbortMultipartUploadRequest,​AbortMultipartUploadResponse> handler)
        Aborts an in-progress multipart upload and deletes all parts that have been uploaded.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • cancelWorkRequest

        Future<CancelWorkRequestResponse> cancelWorkRequest​(CancelWorkRequestRequest request,
                                                            AsyncHandler<CancelWorkRequestRequest,​CancelWorkRequestResponse> handler)
        Cancels a work request.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • commitMultipartUpload

        Future<CommitMultipartUploadResponse> commitMultipartUpload​(CommitMultipartUploadRequest request,
                                                                    AsyncHandler<CommitMultipartUploadRequest,​CommitMultipartUploadResponse> handler)
        Commits a multipart upload, which involves checking part numbers and entity tags (ETags) of the parts, to create an aggregate object.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • copyObject

        Future<CopyObjectResponse> copyObject​(CopyObjectRequest request,
                                              AsyncHandler<CopyObjectRequest,​CopyObjectResponse> handler)
        Creates a request to copy an object within a region or to another region.

        See [Object Names](https://docs.oracle.com/iaas/Content/Object/Tasks/managingobjects.htm#namerequirements) for object naming requirements.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createBucket

        Future<CreateBucketResponse> createBucket​(CreateBucketRequest request,
                                                  AsyncHandler<CreateBucketRequest,​CreateBucketResponse> handler)
        Creates a bucket in the given namespace with a bucket name and optional user-defined metadata.

        Avoid entering confidential information in bucket names.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createMultipartUpload

        Future<CreateMultipartUploadResponse> createMultipartUpload​(CreateMultipartUploadRequest request,
                                                                    AsyncHandler<CreateMultipartUploadRequest,​CreateMultipartUploadResponse> handler)
        Starts a new multipart upload to a specific object in the given bucket in the given namespace.

        See [Object Names](https://docs.oracle.com/iaas/Content/Object/Tasks/managingobjects.htm#namerequirements) for object naming requirements.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createPrivateEndpoint

        Future<CreatePrivateEndpointResponse> createPrivateEndpoint​(CreatePrivateEndpointRequest request,
                                                                    AsyncHandler<CreatePrivateEndpointRequest,​CreatePrivateEndpointResponse> handler)
        Create a PrivateEndpoint.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createReplicationPolicy

        Future<CreateReplicationPolicyResponse> createReplicationPolicy​(CreateReplicationPolicyRequest request,
                                                                        AsyncHandler<CreateReplicationPolicyRequest,​CreateReplicationPolicyResponse> handler)
        Creates a replication policy for the specified bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • createRetentionRule

        Future<CreateRetentionRuleResponse> createRetentionRule​(CreateRetentionRuleRequest request,
                                                                AsyncHandler<CreateRetentionRuleRequest,​CreateRetentionRuleResponse> handler)
        Creates a new retention rule in the specified bucket.

        The new rule will take effect typically within 30 seconds. Note that a maximum of 100 rules are supported on a bucket.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deleteBucket

        Future<DeleteBucketResponse> deleteBucket​(DeleteBucketRequest request,
                                                  AsyncHandler<DeleteBucketRequest,​DeleteBucketResponse> handler)
        Deletes a bucket if the bucket is already empty.

        If the bucket is not empty, use deleteObject first. In addition, you cannot delete a bucket that has a multipart upload in progress or a pre-authenticated request associated with that bucket.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deleteObject

        Future<DeleteObjectResponse> deleteObject​(DeleteObjectRequest request,
                                                  AsyncHandler<DeleteObjectRequest,​DeleteObjectResponse> handler)
        Deletes an object.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deletePrivateEndpoint

        Future<DeletePrivateEndpointResponse> deletePrivateEndpoint​(DeletePrivateEndpointRequest request,
                                                                    AsyncHandler<DeletePrivateEndpointRequest,​DeletePrivateEndpointResponse> handler)
        Deletes a Private Endpoint if it exists in the given namespace.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deleteReplicationPolicy

        Future<DeleteReplicationPolicyResponse> deleteReplicationPolicy​(DeleteReplicationPolicyRequest request,
                                                                        AsyncHandler<DeleteReplicationPolicyRequest,​DeleteReplicationPolicyResponse> handler)
        Deletes the replication policy associated with the source bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • deleteRetentionRule

        Future<DeleteRetentionRuleResponse> deleteRetentionRule​(DeleteRetentionRuleRequest request,
                                                                AsyncHandler<DeleteRetentionRuleRequest,​DeleteRetentionRuleResponse> handler)
        Deletes the specified rule.

        The deletion takes effect typically within 30 seconds.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getBucket

        Future<GetBucketResponse> getBucket​(GetBucketRequest request,
                                            AsyncHandler<GetBucketRequest,​GetBucketResponse> handler)
        Gets the current representation of the given bucket in the given Object Storage namespace.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getNamespace

        Future<GetNamespaceResponse> getNamespace​(GetNamespaceRequest request,
                                                  AsyncHandler<GetNamespaceRequest,​GetNamespaceResponse> handler)
        Each Oracle Cloud Infrastructure tenant is assigned one unique and uneditable Object Storage namespace.

        The namespace is a system-generated string assigned during account creation. For some older tenancies, the namespace string may be the tenancy name in all lower-case letters. You cannot edit a namespace.

        GetNamespace returns the name of the Object Storage namespace for the user making the request. If an optional compartmentId query parameter is provided, GetNamespace returns the namespace name of the corresponding tenancy, provided the user has access to it.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getNamespaceMetadata

        Future<GetNamespaceMetadataResponse> getNamespaceMetadata​(GetNamespaceMetadataRequest request,
                                                                  AsyncHandler<GetNamespaceMetadataRequest,​GetNamespaceMetadataResponse> handler)
        Gets the metadata for the Object Storage namespace, which contains defaultS3CompartmentId and defaultSwiftCompartmentId.

        Any user with the OBJECTSTORAGE_NAMESPACE_READ permission will be able to see the current metadata. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getObject

        Future<GetObjectResponse> getObject​(GetObjectRequest request,
                                            AsyncHandler<GetObjectRequest,​GetObjectResponse> handler)
        Gets the metadata and body of an object.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getPrivateEndpoint

        Future<GetPrivateEndpointResponse> getPrivateEndpoint​(GetPrivateEndpointRequest request,
                                                              AsyncHandler<GetPrivateEndpointRequest,​GetPrivateEndpointResponse> handler)
        Gets the current representation of the given Private Endpoint in the given Object Storage namespace.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getReplicationPolicy

        Future<GetReplicationPolicyResponse> getReplicationPolicy​(GetReplicationPolicyRequest request,
                                                                  AsyncHandler<GetReplicationPolicyRequest,​GetReplicationPolicyResponse> handler)
        Get the replication policy.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getRetentionRule

        Future<GetRetentionRuleResponse> getRetentionRule​(GetRetentionRuleRequest request,
                                                          AsyncHandler<GetRetentionRuleRequest,​GetRetentionRuleResponse> handler)
        Get the specified retention rule.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • getWorkRequest

        Future<GetWorkRequestResponse> getWorkRequest​(GetWorkRequestRequest request,
                                                      AsyncHandler<GetWorkRequestRequest,​GetWorkRequestResponse> handler)
        Gets the status of the work request for the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • headBucket

        Future<HeadBucketResponse> headBucket​(HeadBucketRequest request,
                                              AsyncHandler<HeadBucketRequest,​HeadBucketResponse> handler)
        Efficiently checks to see if a bucket exists and gets the current entity tag (ETag) for the bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • headObject

        Future<HeadObjectResponse> headObject​(HeadObjectRequest request,
                                              AsyncHandler<HeadObjectRequest,​HeadObjectResponse> handler)
        Gets the user-defined metadata and entity tag (ETag) for an object.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listBuckets

        Future<ListBucketsResponse> listBuckets​(ListBucketsRequest request,
                                                AsyncHandler<ListBucketsRequest,​ListBucketsResponse> handler)
        Gets a list of all BucketSummary items in a compartment.

        A BucketSummary contains only summary fields for the bucket and does not contain fields like the user-defined metadata.

        ListBuckets returns a BucketSummary containing at most 1000 buckets. To paginate through more buckets, use the returned `opc-next-page` value with the `page` request parameter.

        To use this and other API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listMultipartUploads

        Future<ListMultipartUploadsResponse> listMultipartUploads​(ListMultipartUploadsRequest request,
                                                                  AsyncHandler<ListMultipartUploadsRequest,​ListMultipartUploadsResponse> handler)
        Lists all of the in-progress multipart uploads for the given bucket in the given Object Storage namespace.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listObjectVersions

        Future<ListObjectVersionsResponse> listObjectVersions​(ListObjectVersionsRequest request,
                                                              AsyncHandler<ListObjectVersionsRequest,​ListObjectVersionsResponse> handler)
        Lists the object versions in a bucket.

        ListObjectVersions returns an ObjectVersionCollection containing at most 1000 object versions. To paginate through more object versions, use the returned `opc-next-page` value with the `page` request parameter.

        To use this and other API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listObjects

        Future<ListObjectsResponse> listObjects​(ListObjectsRequest request,
                                                AsyncHandler<ListObjectsRequest,​ListObjectsResponse> handler)
        Lists the objects in a bucket.

        By default, ListObjects returns object names only. See the fields parameter for other fields that you can optionally include in ListObjects response.

        ListObjects returns at most 1000 objects. To paginate through more objects, use the returned 'nextStartWith' value with the 'start' parameter. To filter which objects ListObjects returns, use the 'start' and 'end' parameters.

        To use this and other API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see [Getting Started with Policies](https://docs.oracle.com/iaas/Content/Identity/Concepts/policygetstarted.htm).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listPrivateEndpoints

        Future<ListPrivateEndpointsResponse> listPrivateEndpoints​(ListPrivateEndpointsRequest request,
                                                                  AsyncHandler<ListPrivateEndpointsRequest,​ListPrivateEndpointsResponse> handler)
        Gets a list of all PrivateEndpointSummary in a compartment associated with a namespace.

        To use this and other API operations, you must be authorized in an IAM policy. If you are not authorized, talk to an administrator. If you are an administrator who needs to write policies to give users access, see Getting Started with Policies.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listReplicationPolicies

        Future<ListReplicationPoliciesResponse> listReplicationPolicies​(ListReplicationPoliciesRequest request,
                                                                        AsyncHandler<ListReplicationPoliciesRequest,​ListReplicationPoliciesResponse> handler)
        List the replication policies associated with a bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listReplicationSources

        Future<ListReplicationSourcesResponse> listReplicationSources​(ListReplicationSourcesRequest request,
                                                                      AsyncHandler<ListReplicationSourcesRequest,​ListReplicationSourcesResponse> handler)
        List the replication sources of a destination bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listRetentionRules

        Future<ListRetentionRulesResponse> listRetentionRules​(ListRetentionRulesRequest request,
                                                              AsyncHandler<ListRetentionRulesRequest,​ListRetentionRulesResponse> handler)
        List the retention rules for a bucket.

        The retention rules are sorted based on creation time, with the most recently created retention rule returned first.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequestErrors

        Future<ListWorkRequestErrorsResponse> listWorkRequestErrors​(ListWorkRequestErrorsRequest request,
                                                                    AsyncHandler<ListWorkRequestErrorsRequest,​ListWorkRequestErrorsResponse> handler)
        Lists the errors of the work request with the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequestLogs

        Future<ListWorkRequestLogsResponse> listWorkRequestLogs​(ListWorkRequestLogsRequest request,
                                                                AsyncHandler<ListWorkRequestLogsRequest,​ListWorkRequestLogsResponse> handler)
        Lists the logs of the work request with the given ID.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • listWorkRequests

        Future<ListWorkRequestsResponse> listWorkRequests​(ListWorkRequestsRequest request,
                                                          AsyncHandler<ListWorkRequestsRequest,​ListWorkRequestsResponse> handler)
        Lists the work requests in a compartment.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • makeBucketWritable

        Future<MakeBucketWritableResponse> makeBucketWritable​(MakeBucketWritableRequest request,
                                                              AsyncHandler<MakeBucketWritableRequest,​MakeBucketWritableResponse> handler)
        Stops replication to the destination bucket and removes the replication policy.

        When the replication policy was created, this destination bucket became read-only except for new and changed objects replicated automatically from the source bucket. MakeBucketWritable removes the replication policy. This bucket is no longer the target for replication and is now writable, allowing users to make changes to bucket contents.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • putObject

        Future<PutObjectResponse> putObject​(PutObjectRequest request,
                                            AsyncHandler<PutObjectRequest,​PutObjectResponse> handler)
        Creates a new object or overwrites an existing object with the same name.

        The maximum object size allowed by PutObject is 50 GiB.

        See [Object Names](https://docs.oracle.com/iaas/Content/Object/Tasks/managingobjects.htm#namerequirements) for object naming requirements.

        See [Special Instructions for Object Storage PUT](https://docs.oracle.com/iaas/Content/API/Concepts/signingrequests.htm#ObjectStoragePut) for request signature requirements.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • putObjectLifecyclePolicy

        Future<PutObjectLifecyclePolicyResponse> putObjectLifecyclePolicy​(PutObjectLifecyclePolicyRequest request,
                                                                          AsyncHandler<PutObjectLifecyclePolicyRequest,​PutObjectLifecyclePolicyResponse> handler)
        Creates or replaces the object lifecycle policy for the bucket.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • reencryptBucket

        Future<ReencryptBucketResponse> reencryptBucket​(ReencryptBucketRequest request,
                                                        AsyncHandler<ReencryptBucketRequest,​ReencryptBucketResponse> handler)
        Re-encrypts the unique data encryption key that encrypts each object written to the bucket by using the most recent version of the master encryption key assigned to the bucket.

        (All data encryption keys are encrypted by a master encryption key. Master encryption keys are assigned to buckets and managed by Oracle by default, but you can assign a key that you created and control through the Oracle Cloud Infrastructure Key Management service.) The kmsKeyId property of the bucket determines which master encryption key is assigned to the bucket. If you assigned a different Key Management master encryption key to the bucket, you can call this API to re-encrypt all data encryption keys with the newly assigned key. Similarly, you might want to re-encrypt all data encryption keys if the assigned key has been rotated to a new key version since objects were last added to the bucket. If you call this API and there is no kmsKeyId associated with the bucket, the call will fail.

        Calling this API starts a work request task to re-encrypt the data encryption key of all objects in the bucket. Only objects created before the time of the API call will be re-encrypted. The call can take a long time, depending on how many objects are in the bucket and how big they are. This API returns a work request ID that you can use to retrieve the status of the work request task. All the versions of objects will be re-encrypted whether versioning is enabled or suspended at the bucket.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • reencryptObject

        Future<ReencryptObjectResponse> reencryptObject​(ReencryptObjectRequest request,
                                                        AsyncHandler<ReencryptObjectRequest,​ReencryptObjectResponse> handler)
        Re-encrypts the data encryption keys that encrypt the object and its chunks.

        By default, when you create a bucket, the Object Storage service manages the master encryption key used to encrypt each object’s data encryption keys. The encryption mechanism that you specify for the bucket applies to the objects it contains.

        You can alternatively employ one of these encryption strategies for an object:

        - You can assign a key that you created and control through the Oracle Cloud Infrastructure Vault service.

        - You can encrypt an object using your own encryption key. The key you supply is known as a customer-provided encryption key (SSE-C).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • renameObject

        Future<RenameObjectResponse> renameObject​(RenameObjectRequest request,
                                                  AsyncHandler<RenameObjectRequest,​RenameObjectResponse> handler)
        Rename an object in the given Object Storage namespace.

        See [Object Names](https://docs.oracle.com/iaas/Content/Object/Tasks/managingobjects.htm#namerequirements) for object naming requirements.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • restoreObjects

        Future<RestoreObjectsResponse> restoreObjects​(RestoreObjectsRequest request,
                                                      AsyncHandler<RestoreObjectsRequest,​RestoreObjectsResponse> handler)
        Restores the object specified by the objectName parameter.

        By default object will be restored for 24 hours. Duration can be configured using the hours parameter.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updateBucket

        Future<UpdateBucketResponse> updateBucket​(UpdateBucketRequest request,
                                                  AsyncHandler<UpdateBucketRequest,​UpdateBucketResponse> handler)
        Performs a partial or full update of a bucket’s user-defined metadata.

        Use UpdateBucket to move a bucket from one compartment to another within the same tenancy. Supply the compartmentID of the compartment that you want to move the bucket to. For more information about moving resources between compartments, see [Moving Resources to a Different Compartment](https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updateNamespaceMetadata

        Future<UpdateNamespaceMetadataResponse> updateNamespaceMetadata​(UpdateNamespaceMetadataRequest request,
                                                                        AsyncHandler<UpdateNamespaceMetadataRequest,​UpdateNamespaceMetadataResponse> handler)
        By default, buckets created using the Amazon S3 Compatibility API or the Swift API are created in the root compartment of the Oracle Cloud Infrastructure tenancy.

        You can change the default Swift/Amazon S3 compartmentId designation to a different compartmentId. All subsequent bucket creations will use the new default compartment, but no previously created buckets will be modified. A user must have OBJECTSTORAGE_NAMESPACE_UPDATE permission to make changes to the default compartments for Amazon S3 and Swift.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updateObjectStorageTier

        Future<UpdateObjectStorageTierResponse> updateObjectStorageTier​(UpdateObjectStorageTierRequest request,
                                                                        AsyncHandler<UpdateObjectStorageTierRequest,​UpdateObjectStorageTierResponse> handler)
        Changes the storage tier of the object specified by the objectName parameter.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updatePrivateEndpoint

        Future<UpdatePrivateEndpointResponse> updatePrivateEndpoint​(UpdatePrivateEndpointRequest request,
                                                                    AsyncHandler<UpdatePrivateEndpointRequest,​UpdatePrivateEndpointResponse> handler)
        Performs a partial or full update of a user-defined data associated with the Private Endpoint.

        Use UpdatePrivateEndpoint to move a Private Endpoint from one compartment to another within the same tenancy. Supply the compartmentID of the compartment that you want to move the Private Endpoint to. Or use it to update the name, subnetId, endpointFqdn or privateEndpointIp or accessTargets of the Private Endpoint. For more information about moving resources between compartments, see [Moving Resources to a Different Compartment](https://docs.oracle.com/iaas/Content/Identity/Tasks/managingcompartments.htm#moveRes).

        This API follows replace semantics (rather than merge semantics). That means if the body provides values for parameters and the resource has exisiting ones, this operation will replace those existing values.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • updateRetentionRule

        Future<UpdateRetentionRuleResponse> updateRetentionRule​(UpdateRetentionRuleRequest request,
                                                                AsyncHandler<UpdateRetentionRuleRequest,​UpdateRetentionRuleResponse> handler)
        Updates the specified retention rule.

        Rule changes take effect typically within 30 seconds.

        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.
      • uploadPart

        Future<UploadPartResponse> uploadPart​(UploadPartRequest request,
                                              AsyncHandler<UploadPartRequest,​UploadPartResponse> handler)
        Uploads a single part of a multipart upload.
        Parameters:
        request - The request object containing the details to send
        handler - The request handler to invoke upon completion, may be null.
        Returns:
        A Future that can be used to get the response if no AsyncHandler was provided. Note, if you provide an AsyncHandler and use the Future, some types of responses (like java.io.InputStream) may not be able to be read in both places as the underlying stream may only be consumed once.