public static void PutObject(ClientConfig config, string namespaceName, ObjectStorageClient client)
        {
            string targetBucketName = "TestBucket";
            string fileName         = "HelloWorld.txt";

            // Test file create
            using (var streamWriter = new StreamWriter(fileName))
            {
                streamWriter.WriteLine("hello world");
            }

            // put
            PutObjectRequest putObjectRequest = new PutObjectRequest
            {
                NamespaceName = namespaceName,
                BucketName    = targetBucketName,
                ObjectName    = fileName
            };
            PutObjectResponse updateRes;

            using (FileStream stream = new FileStream(fileName, FileMode.Open))
            {
                putObjectRequest.UploadPartBody = stream;

                updateRes = client.PutObject(putObjectRequest);
            }

            // rename
            RenameObjectRequest renameObjectRequest = new RenameObjectRequest
            {
                NamespaceName       = namespaceName,
                BucketName          = targetBucketName,
                RenameObjectDetails = new RenameObjectDetails {
                    SourceName = fileName,
                    NewName    = "NewName.txt"
                }
            };
            var renameRes = client.RenameObject(renameObjectRequest);

            // delete
            DeleteObjectRequest deleteObjectRequest = new DeleteObjectRequest
            {
                NamespaceName = namespaceName,
                BucketName    = targetBucketName,
                ObjectName    = "NewName.txt",
                IfMatch       = renameRes.ETag
            };
            var deleteRes = client.DeleteObject(deleteObjectRequest);
        }
        protected override void ProcessRecord()
        {
            base.ProcessRecord();
            RenameObjectRequest request;

            try
            {
                request = new RenameObjectRequest
                {
                    NamespaceName       = NamespaceName,
                    BucketName          = BucketName,
                    RenameObjectDetails = RenameObjectDetails,
                    OpcClientRequestId  = OpcClientRequestId
                };

                response = client.RenameObject(request).GetAwaiter().GetResult();
                WriteOutput(response);
                FinishProcessing(response);
            }
            catch (Exception ex)
            {
                TerminatingErrorDuringExecution(ex);
            }
        }
        /// <summary>
        /// オブジェクトの名前変更
        /// </summary>
        /// <param name="nameSpaceName"></param>
        /// <param name="bucketName"></param>
        /// <param name="fromName"></param>
        /// <param name="regionName"></param>
        /// <param name="toName"></param>
        /// <returns></returns>
        public bool RenameObject(string nameSpaceName, string bucketName, string fromName, string regionName, string toName)
        {
            try
            {
                ObjectStorageClient.SetRegion(regionName);
                RenameObjectRequest renameObjectRequest = new RenameObjectRequest
                {
                    NamespaceName       = nameSpaceName,
                    BucketName          = bucketName,
                    RenameObjectDetails = new OCISDK.ObjectStorage.Model.RenameObjectDetails
                    {
                        NewName    = toName,
                        SourceName = fromName
                    }
                };
                ObjectStorageClient.RenameObject(renameObjectRequest);
            }
            catch
            {
                return(false);
            }

            return(true);
        }