@azure/storage-file-share 12.9.0-beta.1 → 12.9.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/CHANGELOG.md +25 -4
  2. package/README.md +6 -5
  3. package/dist/index.js +955 -370
  4. package/dist/index.js.map +1 -1
  5. package/dist-esm/src/AccountSASSignatureValues.js +2 -2
  6. package/dist-esm/src/AccountSASSignatureValues.js.map +1 -1
  7. package/dist-esm/src/Clients.js +236 -112
  8. package/dist-esm/src/Clients.js.map +1 -1
  9. package/dist-esm/src/FileDownloadResponse.js +1 -1
  10. package/dist-esm/src/FileDownloadResponse.js.map +1 -1
  11. package/dist-esm/src/FileSASSignatureValues.js +1 -1
  12. package/dist-esm/src/FileSASSignatureValues.js.map +1 -1
  13. package/dist-esm/src/Pipeline.js +6 -6
  14. package/dist-esm/src/Pipeline.js.map +1 -1
  15. package/dist-esm/src/SASQueryParameters.js +2 -2
  16. package/dist-esm/src/SASQueryParameters.js.map +1 -1
  17. package/dist-esm/src/ShareServiceClient.js +8 -8
  18. package/dist-esm/src/ShareServiceClient.js.map +1 -1
  19. package/dist-esm/src/StorageClient.js.map +1 -1
  20. package/dist-esm/src/TelemetryPolicyFactory.js +1 -1
  21. package/dist-esm/src/TelemetryPolicyFactory.js.map +1 -1
  22. package/dist-esm/src/credentials/StorageSharedKeyCredential.js +1 -3
  23. package/dist-esm/src/credentials/StorageSharedKeyCredential.js.map +1 -1
  24. package/dist-esm/src/generated/src/models/index.js.map +1 -1
  25. package/dist-esm/src/generated/src/models/mappers.js +246 -0
  26. package/dist-esm/src/generated/src/models/mappers.js.map +1 -1
  27. package/dist-esm/src/generated/src/models/parameters.js +103 -37
  28. package/dist-esm/src/generated/src/models/parameters.js.map +1 -1
  29. package/dist-esm/src/generated/src/operations/directory.js +48 -0
  30. package/dist-esm/src/generated/src/operations/directory.js.map +1 -1
  31. package/dist-esm/src/generated/src/operations/file.js +51 -7
  32. package/dist-esm/src/generated/src/operations/file.js.map +1 -1
  33. package/dist-esm/src/generated/src/storageClientContext.js +2 -2
  34. package/dist-esm/src/generated/src/storageClientContext.js.map +1 -1
  35. package/dist-esm/src/generatedModels.js.map +1 -1
  36. package/dist-esm/src/index.browser.js.map +1 -1
  37. package/dist-esm/src/index.js.map +1 -1
  38. package/dist-esm/src/policies/StorageBrowserPolicy.js +1 -1
  39. package/dist-esm/src/policies/StorageBrowserPolicy.js.map +1 -1
  40. package/dist-esm/src/policies/StorageRetryPolicy.js +5 -5
  41. package/dist-esm/src/policies/StorageRetryPolicy.js.map +1 -1
  42. package/dist-esm/src/policies/StorageSharedKeyCredentialPolicy.js +4 -2
  43. package/dist-esm/src/policies/StorageSharedKeyCredentialPolicy.js.map +1 -1
  44. package/dist-esm/src/policies/TelemetryPolicy.js +1 -1
  45. package/dist-esm/src/policies/TelemetryPolicy.js.map +1 -1
  46. package/dist-esm/src/utils/Batch.js.map +1 -1
  47. package/dist-esm/src/utils/RetriableReadableStream.js +1 -2
  48. package/dist-esm/src/utils/RetriableReadableStream.js.map +1 -1
  49. package/dist-esm/src/utils/constants.js +8 -8
  50. package/dist-esm/src/utils/constants.js.map +1 -1
  51. package/dist-esm/src/utils/tracing.js +2 -2
  52. package/dist-esm/src/utils/tracing.js.map +1 -1
  53. package/dist-esm/src/utils/utils.common.js +23 -1
  54. package/dist-esm/src/utils/utils.common.js.map +1 -1
  55. package/package.json +41 -43
  56. package/{typings → types}/3.1/storage-file-share.d.ts +271 -12
  57. package/{typings → types}/latest/storage-file-share.d.ts +235 -13
@@ -253,6 +253,18 @@ export class File {
253
253
  };
254
254
  return this.client.sendOperationRequest(operationArguments, forceCloseHandlesOperationSpec);
255
255
  }
256
+ /**
257
+ * Renames a file
258
+ * @param renameSource Required. Specifies the URI-style path of the source file, up to 2 KB in length.
259
+ * @param options The options parameters.
260
+ */
261
+ rename(renameSource, options) {
262
+ const operationArguments = {
263
+ renameSource,
264
+ options: coreHttp.operationOptionsToRequestOptionsBase(options || {})
265
+ };
266
+ return this.client.sendOperationRequest(operationArguments, renameOperationSpec);
267
+ }
256
268
  }
257
269
  // Operation Specifications
258
270
  const xmlSerializer = new coreHttp.Serializer(Mappers, /* isXml */ true);
@@ -539,7 +551,7 @@ const uploadRangeOperationSpec = {
539
551
  }
540
552
  },
541
553
  requestBody: Parameters.body,
542
- queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],
554
+ queryParameters: [Parameters.timeoutInSeconds, Parameters.comp12],
543
555
  urlParameters: [Parameters.url],
544
556
  headerParameters: [
545
557
  Parameters.version,
@@ -567,7 +579,7 @@ const uploadRangeFromURLOperationSpec = {
567
579
  headersMapper: Mappers.FileUploadRangeFromURLExceptionHeaders
568
580
  }
569
581
  },
570
- queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],
582
+ queryParameters: [Parameters.timeoutInSeconds, Parameters.comp12],
571
583
  urlParameters: [Parameters.url],
572
584
  headerParameters: [
573
585
  Parameters.version,
@@ -602,7 +614,7 @@ const getRangeListOperationSpec = {
602
614
  queryParameters: [
603
615
  Parameters.timeoutInSeconds,
604
616
  Parameters.shareSnapshot,
605
- Parameters.comp12,
617
+ Parameters.comp13,
606
618
  Parameters.prevsharesnapshot
607
619
  ],
608
620
  urlParameters: [Parameters.url],
@@ -636,12 +648,12 @@ const startCopyOperationSpec = {
636
648
  Parameters.leaseId,
637
649
  Parameters.filePermission,
638
650
  Parameters.filePermissionKey1,
639
- Parameters.copySource,
640
- Parameters.filePermissionCopyMode,
641
- Parameters.ignoreReadOnly,
642
651
  Parameters.fileAttributes1,
643
652
  Parameters.fileCreationTime,
644
653
  Parameters.fileLastWriteTime,
654
+ Parameters.copySource,
655
+ Parameters.filePermissionCopyMode,
656
+ Parameters.ignoreReadOnly1,
645
657
  Parameters.setArchiveAttribute
646
658
  ],
647
659
  isXML: true,
@@ -661,7 +673,7 @@ const abortCopyOperationSpec = {
661
673
  },
662
674
  queryParameters: [
663
675
  Parameters.timeoutInSeconds,
664
- Parameters.comp13,
676
+ Parameters.comp14,
665
677
  Parameters.copyId
666
678
  ],
667
679
  urlParameters: [Parameters.url],
@@ -726,4 +738,36 @@ const forceCloseHandlesOperationSpec = {
726
738
  isXML: true,
727
739
  serializer: xmlSerializer
728
740
  };
741
+ const renameOperationSpec = {
742
+ path: "/{shareName}/{directory}/{fileName}",
743
+ httpMethod: "PUT",
744
+ responses: {
745
+ 200: {
746
+ headersMapper: Mappers.FileRenameHeaders
747
+ },
748
+ default: {
749
+ bodyMapper: Mappers.StorageError,
750
+ headersMapper: Mappers.FileRenameExceptionHeaders
751
+ }
752
+ },
753
+ queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],
754
+ urlParameters: [Parameters.url],
755
+ headerParameters: [
756
+ Parameters.version,
757
+ Parameters.accept1,
758
+ Parameters.metadata,
759
+ Parameters.filePermission,
760
+ Parameters.filePermissionKey1,
761
+ Parameters.renameSource,
762
+ Parameters.replaceIfExists,
763
+ Parameters.ignoreReadOnly,
764
+ Parameters.sourceLeaseId,
765
+ Parameters.destinationLeaseId,
766
+ Parameters.fileAttributes1,
767
+ Parameters.fileCreationTime,
768
+ Parameters.fileLastWriteTime
769
+ ],
770
+ isXML: true,
771
+ serializer: xmlSerializer
772
+ };
729
773
  //# sourceMappingURL=file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/generated/src/operations/file.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreHttp from \"@azure/core-http\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { StorageClientContext } from \"../storageClientContext\";\nimport {\n FileCreateOptionalParams,\n FileCreateResponse,\n FileDownloadOptionalParams,\n FileDownloadResponse,\n FileGetPropertiesOptionalParams,\n FileGetPropertiesResponse,\n FileDeleteOptionalParams,\n FileDeleteResponse,\n FileSetHttpHeadersOptionalParams,\n FileSetHttpHeadersResponse,\n FileSetMetadataOptionalParams,\n FileSetMetadataResponse,\n FileAcquireLeaseOptionalParams,\n FileAcquireLeaseResponse,\n FileReleaseLeaseOptionalParams,\n FileReleaseLeaseResponse,\n FileChangeLeaseOptionalParams,\n FileChangeLeaseResponse,\n FileBreakLeaseOptionalParams,\n FileBreakLeaseResponse,\n FileRangeWriteType,\n FileUploadRangeOptionalParams,\n FileUploadRangeResponse,\n FileUploadRangeFromURLOptionalParams,\n FileUploadRangeFromURLResponse,\n FileGetRangeListOptionalParams,\n FileGetRangeListResponse,\n FileStartCopyOptionalParams,\n FileStartCopyResponse,\n FileAbortCopyOptionalParams,\n FileAbortCopyResponse,\n FileListHandlesOptionalParams,\n FileListHandlesResponse,\n FileForceCloseHandlesOptionalParams,\n FileForceCloseHandlesResponse\n} from \"../models\";\n\n/** Class representing a File. */\nexport class File {\n private readonly client: StorageClientContext;\n\n /**\n * Initialize a new instance of the class File class.\n * @param client Reference to the service client\n */\n constructor(client: StorageClientContext) {\n this.client = client;\n }\n\n /**\n * Creates a new file or replaces a file. Note it only initializes the file with no content.\n * @param fileContentLength Specifies the maximum size for the file, up to 4 TB.\n * @param fileAttributes If specified, the provided file attributes shall be set. Default value:\n * ‘Archive’ for file and ‘Directory’ for directory. ‘None’ can also be specified as default.\n * @param fileCreatedOn Creation time for the file/directory. Default value: Now.\n * @param fileLastWriteOn Last write time for the file/directory. Default value: Now.\n * @param options The options parameters.\n */\n create(\n fileContentLength: number,\n fileAttributes: string,\n fileCreatedOn: string,\n fileLastWriteOn: string,\n options?: FileCreateOptionalParams\n ): Promise<FileCreateResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n fileContentLength,\n fileAttributes,\n fileCreatedOn,\n fileLastWriteOn,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n createOperationSpec\n ) as Promise<FileCreateResponse>;\n }\n\n /**\n * Reads or downloads a file from the system, including its metadata and properties.\n * @param options The options parameters.\n */\n download(\n options?: FileDownloadOptionalParams\n ): Promise<FileDownloadResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n downloadOperationSpec\n ) as Promise<FileDownloadResponse>;\n }\n\n /**\n * Returns all user-defined metadata, standard HTTP properties, and system properties for the file. It\n * does not return the content of the file.\n * @param options The options parameters.\n */\n getProperties(\n options?: FileGetPropertiesOptionalParams\n ): Promise<FileGetPropertiesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n getPropertiesOperationSpec\n ) as Promise<FileGetPropertiesResponse>;\n }\n\n /**\n * removes the file from the storage account.\n * @param options The options parameters.\n */\n delete(options?: FileDeleteOptionalParams): Promise<FileDeleteResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n deleteOperationSpec\n ) as Promise<FileDeleteResponse>;\n }\n\n /**\n * Sets HTTP headers on the file.\n * @param fileAttributes If specified, the provided file attributes shall be set. Default value:\n * ‘Archive’ for file and ‘Directory’ for directory. ‘None’ can also be specified as default.\n * @param fileCreatedOn Creation time for the file/directory. Default value: Now.\n * @param fileLastWriteOn Last write time for the file/directory. Default value: Now.\n * @param options The options parameters.\n */\n setHttpHeaders(\n fileAttributes: string,\n fileCreatedOn: string,\n fileLastWriteOn: string,\n options?: FileSetHttpHeadersOptionalParams\n ): Promise<FileSetHttpHeadersResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n fileAttributes,\n fileCreatedOn,\n fileLastWriteOn,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n setHttpHeadersOperationSpec\n ) as Promise<FileSetHttpHeadersResponse>;\n }\n\n /**\n * Updates user-defined metadata for the specified file.\n * @param options The options parameters.\n */\n setMetadata(\n options?: FileSetMetadataOptionalParams\n ): Promise<FileSetMetadataResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n setMetadataOperationSpec\n ) as Promise<FileSetMetadataResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param options The options parameters.\n */\n acquireLease(\n options?: FileAcquireLeaseOptionalParams\n ): Promise<FileAcquireLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n acquireLeaseOperationSpec\n ) as Promise<FileAcquireLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param leaseId Specifies the current lease ID on the resource.\n * @param options The options parameters.\n */\n releaseLease(\n leaseId: string,\n options?: FileReleaseLeaseOptionalParams\n ): Promise<FileReleaseLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n leaseId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n releaseLeaseOperationSpec\n ) as Promise<FileReleaseLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param leaseId Specifies the current lease ID on the resource.\n * @param options The options parameters.\n */\n changeLease(\n leaseId: string,\n options?: FileChangeLeaseOptionalParams\n ): Promise<FileChangeLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n leaseId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n changeLeaseOperationSpec\n ) as Promise<FileChangeLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param options The options parameters.\n */\n breakLease(\n options?: FileBreakLeaseOptionalParams\n ): Promise<FileBreakLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n breakLeaseOperationSpec\n ) as Promise<FileBreakLeaseResponse>;\n }\n\n /**\n * Upload a range of bytes to a file.\n * @param range Specifies the range of bytes to be written. Both the start and end of the range must be\n * specified. For an update operation, the range can be up to 4 MB in size. For a clear operation, the\n * range can be up to the value of the file's full size. The File service accepts only a single byte\n * range for the Range and 'x-ms-range' headers, and the byte range must be specified in the following\n * format: bytes=startByte-endByte.\n * @param fileRangeWrite Specify one of the following options: - Update: Writes the bytes specified by\n * the request body into the specified range. The Range and Content-Length headers must match to\n * perform the update. - Clear: Clears the specified range and releases the space used in storage for\n * that range. To clear a range, set the Content-Length header to zero, and set the Range header to a\n * value that indicates the range to clear, up to maximum file size.\n * @param contentLength Specifies the number of bytes being transmitted in the request body. When the\n * x-ms-write header is set to clear, the value of this header must be set to zero.\n * @param options The options parameters.\n */\n uploadRange(\n range: string,\n fileRangeWrite: FileRangeWriteType,\n contentLength: number,\n options?: FileUploadRangeOptionalParams\n ): Promise<FileUploadRangeResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n range,\n fileRangeWrite,\n contentLength,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n uploadRangeOperationSpec\n ) as Promise<FileUploadRangeResponse>;\n }\n\n /**\n * Upload a range of bytes to a file where the contents are read from a URL.\n * @param range Writes data to the specified byte range in the file.\n * @param copySource Specifies the URL of the source file or blob, up to 2 KB in length. To copy a file\n * to another file within the same storage account, you may use Shared Key to authenticate the source\n * file. If you are copying a file from another storage account, or if you are copying a blob from the\n * same storage account or another storage account, then you must authenticate the source file or blob\n * using a shared access signature. If the source is a public blob, no authentication is required to\n * perform the copy operation. A file in a share snapshot can also be specified as a copy source.\n * @param contentLength Specifies the number of bytes being transmitted in the request body. When the\n * x-ms-write header is set to clear, the value of this header must be set to zero.\n * @param options The options parameters.\n */\n uploadRangeFromURL(\n range: string,\n copySource: string,\n contentLength: number,\n options?: FileUploadRangeFromURLOptionalParams\n ): Promise<FileUploadRangeFromURLResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n range,\n copySource,\n contentLength,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n uploadRangeFromURLOperationSpec\n ) as Promise<FileUploadRangeFromURLResponse>;\n }\n\n /**\n * Returns the list of valid ranges for a file.\n * @param options The options parameters.\n */\n getRangeList(\n options?: FileGetRangeListOptionalParams\n ): Promise<FileGetRangeListResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n getRangeListOperationSpec\n ) as Promise<FileGetRangeListResponse>;\n }\n\n /**\n * Copies a blob or file to a destination file within the storage account.\n * @param copySource Specifies the URL of the source file or blob, up to 2 KB in length. To copy a file\n * to another file within the same storage account, you may use Shared Key to authenticate the source\n * file. If you are copying a file from another storage account, or if you are copying a blob from the\n * same storage account or another storage account, then you must authenticate the source file or blob\n * using a shared access signature. If the source is a public blob, no authentication is required to\n * perform the copy operation. A file in a share snapshot can also be specified as a copy source.\n * @param options The options parameters.\n */\n startCopy(\n copySource: string,\n options?: FileStartCopyOptionalParams\n ): Promise<FileStartCopyResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n copySource,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n startCopyOperationSpec\n ) as Promise<FileStartCopyResponse>;\n }\n\n /**\n * Aborts a pending Copy File operation, and leaves a destination file with zero length and full\n * metadata.\n * @param copyId The copy identifier provided in the x-ms-copy-id header of the original Copy File\n * operation.\n * @param options The options parameters.\n */\n abortCopy(\n copyId: string,\n options?: FileAbortCopyOptionalParams\n ): Promise<FileAbortCopyResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n copyId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n abortCopyOperationSpec\n ) as Promise<FileAbortCopyResponse>;\n }\n\n /**\n * Lists handles for file\n * @param options The options parameters.\n */\n listHandles(\n options?: FileListHandlesOptionalParams\n ): Promise<FileListHandlesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n listHandlesOperationSpec\n ) as Promise<FileListHandlesResponse>;\n }\n\n /**\n * Closes all handles open for given file\n * @param handleId Specifies handle ID opened on the file or directory to be closed. Asterisk (‘*’) is\n * a wildcard that specifies all handles.\n * @param options The options parameters.\n */\n forceCloseHandles(\n handleId: string,\n options?: FileForceCloseHandlesOptionalParams\n ): Promise<FileForceCloseHandlesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n handleId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n forceCloseHandlesOperationSpec\n ) as Promise<FileForceCloseHandlesResponse>;\n }\n}\n// Operation Specifications\nconst xmlSerializer = new coreHttp.Serializer(Mappers, /* isXml */ true);\n\nconst createOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileCreateHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileCreateExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.fileAttributes,\n Parameters.fileCreatedOn,\n Parameters.fileLastWriteOn,\n Parameters.fileContentLength,\n Parameters.fileTypeConstant,\n Parameters.fileContentType,\n Parameters.fileContentEncoding,\n Parameters.fileContentLanguage,\n Parameters.fileCacheControl,\n Parameters.fileContentMD5,\n Parameters.fileContentDisposition\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst downloadOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: {\n type: { name: \"Stream\" },\n serializedName: \"parsedResponse\"\n },\n headersMapper: Mappers.FileDownloadHeaders\n },\n 206: {\n bodyMapper: {\n type: { name: \"Stream\" },\n serializedName: \"parsedResponse\"\n },\n headersMapper: Mappers.FileDownloadHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileDownloadExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range,\n Parameters.rangeGetContentMD5\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst getPropertiesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"HEAD\",\n responses: {\n 200: {\n headersMapper: Mappers.FileGetPropertiesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileGetPropertiesExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.shareSnapshot],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst deleteOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"DELETE\",\n responses: {\n 202: {\n headersMapper: Mappers.FileDeleteHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileDeleteExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst setHttpHeadersOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileSetHttpHeadersHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileSetHttpHeadersExceptionHeaders\n }\n },\n queryParameters: [Parameters.comp, Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.fileAttributes,\n Parameters.fileCreatedOn,\n Parameters.fileLastWriteOn,\n Parameters.fileContentType,\n Parameters.fileContentEncoding,\n Parameters.fileContentLanguage,\n Parameters.fileCacheControl,\n Parameters.fileContentMD5,\n Parameters.fileContentDisposition,\n Parameters.fileContentLength1\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst setMetadataOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileSetMetadataHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileSetMetadataExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp5],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst acquireLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileAcquireLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileAcquireLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.action,\n Parameters.duration,\n Parameters.proposedLeaseId,\n Parameters.requestId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst releaseLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileReleaseLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileReleaseLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.requestId,\n Parameters.action1,\n Parameters.leaseId1\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst changeLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileChangeLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileChangeLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.proposedLeaseId,\n Parameters.requestId,\n Parameters.leaseId1,\n Parameters.action2\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst breakLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 202: {\n headersMapper: Mappers.FileBreakLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileBreakLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.requestId,\n Parameters.action4\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst uploadRangeOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileUploadRangeHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileUploadRangeExceptionHeaders\n }\n },\n requestBody: Parameters.body,\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.leaseId,\n Parameters.contentType1,\n Parameters.accept3,\n Parameters.range1,\n Parameters.fileRangeWrite,\n Parameters.contentLength,\n Parameters.contentMD5\n ],\n contentType: \"application/octet-stream\",\n isXML: true,\n serializer: xmlSerializer\n};\nconst uploadRangeFromURLOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileUploadRangeFromURLHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileUploadRangeFromURLExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range1,\n Parameters.contentLength,\n Parameters.copySource,\n Parameters.sourceRange,\n Parameters.fileRangeWriteFromUrl,\n Parameters.sourceContentCrc64,\n Parameters.sourceIfMatchCrc64,\n Parameters.sourceIfNoneMatchCrc64,\n Parameters.copySourceAuthorization\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst getRangeListOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ShareFileRangeList,\n headersMapper: Mappers.FileGetRangeListHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileGetRangeListExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.shareSnapshot,\n Parameters.comp12,\n Parameters.prevsharesnapshot\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst startCopyOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 202: {\n headersMapper: Mappers.FileStartCopyHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileStartCopyExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.copySource,\n Parameters.filePermissionCopyMode,\n Parameters.ignoreReadOnly,\n Parameters.fileAttributes1,\n Parameters.fileCreationTime,\n Parameters.fileLastWriteTime,\n Parameters.setArchiveAttribute\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst abortCopyOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 204: {\n headersMapper: Mappers.FileAbortCopyHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileAbortCopyExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.comp13,\n Parameters.copyId\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.copyActionAbortConstant\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst listHandlesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListHandlesResponse,\n headersMapper: Mappers.FileListHandlesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileListHandlesExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.marker,\n Parameters.maxResults,\n Parameters.shareSnapshot,\n Parameters.comp9\n ],\n urlParameters: [Parameters.url],\n headerParameters: [Parameters.version, Parameters.accept1],\n isXML: true,\n serializer: xmlSerializer\n};\nconst forceCloseHandlesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileForceCloseHandlesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileForceCloseHandlesExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.marker,\n Parameters.shareSnapshot,\n Parameters.comp10\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.handleId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\n"]}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../../src/generated/src/operations/file.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreHttp from \"@azure/core-http\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { StorageClientContext } from \"../storageClientContext\";\nimport {\n FileCreateOptionalParams,\n FileCreateResponse,\n FileDownloadOptionalParams,\n FileDownloadResponse,\n FileGetPropertiesOptionalParams,\n FileGetPropertiesResponse,\n FileDeleteOptionalParams,\n FileDeleteResponse,\n FileSetHttpHeadersOptionalParams,\n FileSetHttpHeadersResponse,\n FileSetMetadataOptionalParams,\n FileSetMetadataResponse,\n FileAcquireLeaseOptionalParams,\n FileAcquireLeaseResponse,\n FileReleaseLeaseOptionalParams,\n FileReleaseLeaseResponse,\n FileChangeLeaseOptionalParams,\n FileChangeLeaseResponse,\n FileBreakLeaseOptionalParams,\n FileBreakLeaseResponse,\n FileRangeWriteType,\n FileUploadRangeOptionalParams,\n FileUploadRangeResponse,\n FileUploadRangeFromURLOptionalParams,\n FileUploadRangeFromURLResponse,\n FileGetRangeListOptionalParams,\n FileGetRangeListResponse,\n FileStartCopyOptionalParams,\n FileStartCopyResponse,\n FileAbortCopyOptionalParams,\n FileAbortCopyResponse,\n FileListHandlesOptionalParams,\n FileListHandlesResponse,\n FileForceCloseHandlesOptionalParams,\n FileForceCloseHandlesResponse,\n FileRenameOptionalParams,\n FileRenameResponse\n} from \"../models\";\n\n/** Class representing a File. */\nexport class File {\n private readonly client: StorageClientContext;\n\n /**\n * Initialize a new instance of the class File class.\n * @param client Reference to the service client\n */\n constructor(client: StorageClientContext) {\n this.client = client;\n }\n\n /**\n * Creates a new file or replaces a file. Note it only initializes the file with no content.\n * @param fileContentLength Specifies the maximum size for the file, up to 4 TB.\n * @param fileAttributes If specified, the provided file attributes shall be set. Default value:\n * ‘Archive’ for file and ‘Directory’ for directory. ‘None’ can also be specified as default.\n * @param fileCreatedOn Creation time for the file/directory. Default value: Now.\n * @param fileLastWriteOn Last write time for the file/directory. Default value: Now.\n * @param options The options parameters.\n */\n create(\n fileContentLength: number,\n fileAttributes: string,\n fileCreatedOn: string,\n fileLastWriteOn: string,\n options?: FileCreateOptionalParams\n ): Promise<FileCreateResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n fileContentLength,\n fileAttributes,\n fileCreatedOn,\n fileLastWriteOn,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n createOperationSpec\n ) as Promise<FileCreateResponse>;\n }\n\n /**\n * Reads or downloads a file from the system, including its metadata and properties.\n * @param options The options parameters.\n */\n download(\n options?: FileDownloadOptionalParams\n ): Promise<FileDownloadResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n downloadOperationSpec\n ) as Promise<FileDownloadResponse>;\n }\n\n /**\n * Returns all user-defined metadata, standard HTTP properties, and system properties for the file. It\n * does not return the content of the file.\n * @param options The options parameters.\n */\n getProperties(\n options?: FileGetPropertiesOptionalParams\n ): Promise<FileGetPropertiesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n getPropertiesOperationSpec\n ) as Promise<FileGetPropertiesResponse>;\n }\n\n /**\n * removes the file from the storage account.\n * @param options The options parameters.\n */\n delete(options?: FileDeleteOptionalParams): Promise<FileDeleteResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n deleteOperationSpec\n ) as Promise<FileDeleteResponse>;\n }\n\n /**\n * Sets HTTP headers on the file.\n * @param fileAttributes If specified, the provided file attributes shall be set. Default value:\n * ‘Archive’ for file and ‘Directory’ for directory. ‘None’ can also be specified as default.\n * @param fileCreatedOn Creation time for the file/directory. Default value: Now.\n * @param fileLastWriteOn Last write time for the file/directory. Default value: Now.\n * @param options The options parameters.\n */\n setHttpHeaders(\n fileAttributes: string,\n fileCreatedOn: string,\n fileLastWriteOn: string,\n options?: FileSetHttpHeadersOptionalParams\n ): Promise<FileSetHttpHeadersResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n fileAttributes,\n fileCreatedOn,\n fileLastWriteOn,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n setHttpHeadersOperationSpec\n ) as Promise<FileSetHttpHeadersResponse>;\n }\n\n /**\n * Updates user-defined metadata for the specified file.\n * @param options The options parameters.\n */\n setMetadata(\n options?: FileSetMetadataOptionalParams\n ): Promise<FileSetMetadataResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n setMetadataOperationSpec\n ) as Promise<FileSetMetadataResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param options The options parameters.\n */\n acquireLease(\n options?: FileAcquireLeaseOptionalParams\n ): Promise<FileAcquireLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n acquireLeaseOperationSpec\n ) as Promise<FileAcquireLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param leaseId Specifies the current lease ID on the resource.\n * @param options The options parameters.\n */\n releaseLease(\n leaseId: string,\n options?: FileReleaseLeaseOptionalParams\n ): Promise<FileReleaseLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n leaseId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n releaseLeaseOperationSpec\n ) as Promise<FileReleaseLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param leaseId Specifies the current lease ID on the resource.\n * @param options The options parameters.\n */\n changeLease(\n leaseId: string,\n options?: FileChangeLeaseOptionalParams\n ): Promise<FileChangeLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n leaseId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n changeLeaseOperationSpec\n ) as Promise<FileChangeLeaseResponse>;\n }\n\n /**\n * [Update] The Lease File operation establishes and manages a lock on a file for write and delete\n * operations\n * @param options The options parameters.\n */\n breakLease(\n options?: FileBreakLeaseOptionalParams\n ): Promise<FileBreakLeaseResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n breakLeaseOperationSpec\n ) as Promise<FileBreakLeaseResponse>;\n }\n\n /**\n * Upload a range of bytes to a file.\n * @param range Specifies the range of bytes to be written. Both the start and end of the range must be\n * specified. For an update operation, the range can be up to 4 MB in size. For a clear operation, the\n * range can be up to the value of the file's full size. The File service accepts only a single byte\n * range for the Range and 'x-ms-range' headers, and the byte range must be specified in the following\n * format: bytes=startByte-endByte.\n * @param fileRangeWrite Specify one of the following options: - Update: Writes the bytes specified by\n * the request body into the specified range. The Range and Content-Length headers must match to\n * perform the update. - Clear: Clears the specified range and releases the space used in storage for\n * that range. To clear a range, set the Content-Length header to zero, and set the Range header to a\n * value that indicates the range to clear, up to maximum file size.\n * @param contentLength Specifies the number of bytes being transmitted in the request body. When the\n * x-ms-write header is set to clear, the value of this header must be set to zero.\n * @param options The options parameters.\n */\n uploadRange(\n range: string,\n fileRangeWrite: FileRangeWriteType,\n contentLength: number,\n options?: FileUploadRangeOptionalParams\n ): Promise<FileUploadRangeResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n range,\n fileRangeWrite,\n contentLength,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n uploadRangeOperationSpec\n ) as Promise<FileUploadRangeResponse>;\n }\n\n /**\n * Upload a range of bytes to a file where the contents are read from a URL.\n * @param range Writes data to the specified byte range in the file.\n * @param copySource Specifies the URL of the source file or blob, up to 2 KB in length. To copy a file\n * to another file within the same storage account, you may use Shared Key to authenticate the source\n * file. If you are copying a file from another storage account, or if you are copying a blob from the\n * same storage account or another storage account, then you must authenticate the source file or blob\n * using a shared access signature. If the source is a public blob, no authentication is required to\n * perform the copy operation. A file in a share snapshot can also be specified as a copy source.\n * @param contentLength Specifies the number of bytes being transmitted in the request body. When the\n * x-ms-write header is set to clear, the value of this header must be set to zero.\n * @param options The options parameters.\n */\n uploadRangeFromURL(\n range: string,\n copySource: string,\n contentLength: number,\n options?: FileUploadRangeFromURLOptionalParams\n ): Promise<FileUploadRangeFromURLResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n range,\n copySource,\n contentLength,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n uploadRangeFromURLOperationSpec\n ) as Promise<FileUploadRangeFromURLResponse>;\n }\n\n /**\n * Returns the list of valid ranges for a file.\n * @param options The options parameters.\n */\n getRangeList(\n options?: FileGetRangeListOptionalParams\n ): Promise<FileGetRangeListResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n getRangeListOperationSpec\n ) as Promise<FileGetRangeListResponse>;\n }\n\n /**\n * Copies a blob or file to a destination file within the storage account.\n * @param copySource Specifies the URL of the source file or blob, up to 2 KB in length. To copy a file\n * to another file within the same storage account, you may use Shared Key to authenticate the source\n * file. If you are copying a file from another storage account, or if you are copying a blob from the\n * same storage account or another storage account, then you must authenticate the source file or blob\n * using a shared access signature. If the source is a public blob, no authentication is required to\n * perform the copy operation. A file in a share snapshot can also be specified as a copy source.\n * @param options The options parameters.\n */\n startCopy(\n copySource: string,\n options?: FileStartCopyOptionalParams\n ): Promise<FileStartCopyResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n copySource,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n startCopyOperationSpec\n ) as Promise<FileStartCopyResponse>;\n }\n\n /**\n * Aborts a pending Copy File operation, and leaves a destination file with zero length and full\n * metadata.\n * @param copyId The copy identifier provided in the x-ms-copy-id header of the original Copy File\n * operation.\n * @param options The options parameters.\n */\n abortCopy(\n copyId: string,\n options?: FileAbortCopyOptionalParams\n ): Promise<FileAbortCopyResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n copyId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n abortCopyOperationSpec\n ) as Promise<FileAbortCopyResponse>;\n }\n\n /**\n * Lists handles for file\n * @param options The options parameters.\n */\n listHandles(\n options?: FileListHandlesOptionalParams\n ): Promise<FileListHandlesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n listHandlesOperationSpec\n ) as Promise<FileListHandlesResponse>;\n }\n\n /**\n * Closes all handles open for given file\n * @param handleId Specifies handle ID opened on the file or directory to be closed. Asterisk (‘*’) is\n * a wildcard that specifies all handles.\n * @param options The options parameters.\n */\n forceCloseHandles(\n handleId: string,\n options?: FileForceCloseHandlesOptionalParams\n ): Promise<FileForceCloseHandlesResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n handleId,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n forceCloseHandlesOperationSpec\n ) as Promise<FileForceCloseHandlesResponse>;\n }\n\n /**\n * Renames a file\n * @param renameSource Required. Specifies the URI-style path of the source file, up to 2 KB in length.\n * @param options The options parameters.\n */\n rename(\n renameSource: string,\n options?: FileRenameOptionalParams\n ): Promise<FileRenameResponse> {\n const operationArguments: coreHttp.OperationArguments = {\n renameSource,\n options: coreHttp.operationOptionsToRequestOptionsBase(options || {})\n };\n return this.client.sendOperationRequest(\n operationArguments,\n renameOperationSpec\n ) as Promise<FileRenameResponse>;\n }\n}\n// Operation Specifications\nconst xmlSerializer = new coreHttp.Serializer(Mappers, /* isXml */ true);\n\nconst createOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileCreateHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileCreateExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.fileAttributes,\n Parameters.fileCreatedOn,\n Parameters.fileLastWriteOn,\n Parameters.fileContentLength,\n Parameters.fileTypeConstant,\n Parameters.fileContentType,\n Parameters.fileContentEncoding,\n Parameters.fileContentLanguage,\n Parameters.fileCacheControl,\n Parameters.fileContentMD5,\n Parameters.fileContentDisposition\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst downloadOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: {\n type: { name: \"Stream\" },\n serializedName: \"parsedResponse\"\n },\n headersMapper: Mappers.FileDownloadHeaders\n },\n 206: {\n bodyMapper: {\n type: { name: \"Stream\" },\n serializedName: \"parsedResponse\"\n },\n headersMapper: Mappers.FileDownloadHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileDownloadExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range,\n Parameters.rangeGetContentMD5\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst getPropertiesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"HEAD\",\n responses: {\n 200: {\n headersMapper: Mappers.FileGetPropertiesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileGetPropertiesExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.shareSnapshot],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst deleteOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"DELETE\",\n responses: {\n 202: {\n headersMapper: Mappers.FileDeleteHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileDeleteExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst setHttpHeadersOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileSetHttpHeadersHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileSetHttpHeadersExceptionHeaders\n }\n },\n queryParameters: [Parameters.comp, Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.fileAttributes,\n Parameters.fileCreatedOn,\n Parameters.fileLastWriteOn,\n Parameters.fileContentType,\n Parameters.fileContentEncoding,\n Parameters.fileContentLanguage,\n Parameters.fileCacheControl,\n Parameters.fileContentMD5,\n Parameters.fileContentDisposition,\n Parameters.fileContentLength1\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst setMetadataOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileSetMetadataHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileSetMetadataExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp5],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst acquireLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileAcquireLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileAcquireLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.action,\n Parameters.duration,\n Parameters.proposedLeaseId,\n Parameters.requestId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst releaseLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileReleaseLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileReleaseLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.requestId,\n Parameters.action1,\n Parameters.leaseId1\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst changeLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileChangeLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileChangeLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.proposedLeaseId,\n Parameters.requestId,\n Parameters.leaseId1,\n Parameters.action2\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst breakLeaseOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 202: {\n headersMapper: Mappers.FileBreakLeaseHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileBreakLeaseExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp2],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.requestId,\n Parameters.action4\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst uploadRangeOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileUploadRangeHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileUploadRangeExceptionHeaders\n }\n },\n requestBody: Parameters.body,\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp12],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.leaseId,\n Parameters.contentType1,\n Parameters.accept3,\n Parameters.range1,\n Parameters.fileRangeWrite,\n Parameters.contentLength,\n Parameters.contentMD5\n ],\n contentType: \"application/octet-stream\",\n isXML: true,\n serializer: xmlSerializer\n};\nconst uploadRangeFromURLOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 201: {\n headersMapper: Mappers.FileUploadRangeFromURLHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileUploadRangeFromURLExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp12],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range1,\n Parameters.contentLength,\n Parameters.copySource,\n Parameters.sourceRange,\n Parameters.fileRangeWriteFromUrl,\n Parameters.sourceContentCrc64,\n Parameters.sourceIfMatchCrc64,\n Parameters.sourceIfNoneMatchCrc64,\n Parameters.copySourceAuthorization\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst getRangeListOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ShareFileRangeList,\n headersMapper: Mappers.FileGetRangeListHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileGetRangeListExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.shareSnapshot,\n Parameters.comp13,\n Parameters.prevsharesnapshot\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.range\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst startCopyOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 202: {\n headersMapper: Mappers.FileStartCopyHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileStartCopyExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.leaseId,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.fileAttributes1,\n Parameters.fileCreationTime,\n Parameters.fileLastWriteTime,\n Parameters.copySource,\n Parameters.filePermissionCopyMode,\n Parameters.ignoreReadOnly1,\n Parameters.setArchiveAttribute\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst abortCopyOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 204: {\n headersMapper: Mappers.FileAbortCopyHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileAbortCopyExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.comp14,\n Parameters.copyId\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.leaseId,\n Parameters.copyActionAbortConstant\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst listHandlesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ListHandlesResponse,\n headersMapper: Mappers.FileListHandlesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileListHandlesExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.marker,\n Parameters.maxResults,\n Parameters.shareSnapshot,\n Parameters.comp9\n ],\n urlParameters: [Parameters.url],\n headerParameters: [Parameters.version, Parameters.accept1],\n isXML: true,\n serializer: xmlSerializer\n};\nconst forceCloseHandlesOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileForceCloseHandlesHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileForceCloseHandlesExceptionHeaders\n }\n },\n queryParameters: [\n Parameters.timeoutInSeconds,\n Parameters.marker,\n Parameters.shareSnapshot,\n Parameters.comp10\n ],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.handleId\n ],\n isXML: true,\n serializer: xmlSerializer\n};\nconst renameOperationSpec: coreHttp.OperationSpec = {\n path: \"/{shareName}/{directory}/{fileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n headersMapper: Mappers.FileRenameHeaders\n },\n default: {\n bodyMapper: Mappers.StorageError,\n headersMapper: Mappers.FileRenameExceptionHeaders\n }\n },\n queryParameters: [Parameters.timeoutInSeconds, Parameters.comp11],\n urlParameters: [Parameters.url],\n headerParameters: [\n Parameters.version,\n Parameters.accept1,\n Parameters.metadata,\n Parameters.filePermission,\n Parameters.filePermissionKey1,\n Parameters.renameSource,\n Parameters.replaceIfExists,\n Parameters.ignoreReadOnly,\n Parameters.sourceLeaseId,\n Parameters.destinationLeaseId,\n Parameters.fileAttributes1,\n Parameters.fileCreationTime,\n Parameters.fileLastWriteTime\n ],\n isXML: true,\n serializer: xmlSerializer\n};\n"]}
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import * as coreHttp from "@azure/core-http";
9
9
  const packageName = "azure-storage-file-share";
10
- const packageVersion = "12.9.0-beta.1";
10
+ const packageVersion = "12.9.0-beta.4";
11
11
  export class StorageClientContext extends coreHttp.ServiceClient {
12
12
  /**
13
13
  * Initializes a new instance of the StorageClientContext class.
@@ -33,7 +33,7 @@ export class StorageClientContext extends coreHttp.ServiceClient {
33
33
  // Parameter assignments
34
34
  this.url = url;
35
35
  // Assigning values to Constant parameters
36
- this.version = options.version || "2020-12-06";
36
+ this.version = options.version || "2021-04-10";
37
37
  this.fileRangeWriteFromUrl = options.fileRangeWriteFromUrl || "update";
38
38
  }
39
39
  }
@@ -1 +1 @@
1
- {"version":3,"file":"storageClientContext.js","sourceRoot":"","sources":["../../../../src/generated/src/storageClientContext.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAG7C,MAAM,WAAW,GAAG,0BAA0B,CAAC;AAC/C,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC,MAAM,OAAO,oBAAqB,SAAQ,QAAQ,CAAC,aAAa;IAK9D;;;;;OAKG;IACH,YAAY,GAAW,EAAE,OAAqC;QAC5D,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACzC;QAED,0CAA0C;QAC1C,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,wBAAwB,EAAE,CAAC;YAC7D,OAAO,CAAC,SAAS,GAAG,GAAG,WAAW,IAAI,cAAc,IAAI,gBAAgB,EAAE,CAAC;SAC5E;QAED,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE1B,IAAI,CAAC,kBAAkB,GAAG,iCAAiC,CAAC;QAE5D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;QAE3C,wBAAwB;QACxB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAEf,0CAA0C;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,IAAI,QAAQ,CAAC;IACzE,CAAC;CACF","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreHttp from \"@azure/core-http\";\nimport { StorageClientOptionalParams } from \"./models\";\n\nconst packageName = \"azure-storage-file-share\";\nconst packageVersion = \"12.9.0-beta.1\";\n\nexport class StorageClientContext extends coreHttp.ServiceClient {\n url: string;\n version: string;\n fileRangeWriteFromUrl: string;\n\n /**\n * Initializes a new instance of the StorageClientContext class.\n * @param url The URL of the service account, share, directory or file that is the target of the\n * desired operation.\n * @param options The parameter options\n */\n constructor(url: string, options?: StorageClientOptionalParams) {\n if (url === undefined) {\n throw new Error(\"'url' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n\n if (!options.userAgent) {\n const defaultUserAgent = coreHttp.getDefaultUserAgentValue();\n options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;\n }\n\n super(undefined, options);\n\n this.requestContentType = \"application/json; charset=utf-8\";\n\n this.baseUri = options.endpoint || \"{url}\";\n\n // Parameter assignments\n this.url = url;\n\n // Assigning values to Constant parameters\n this.version = options.version || \"2020-12-06\";\n this.fileRangeWriteFromUrl = options.fileRangeWriteFromUrl || \"update\";\n }\n}\n"]}
1
+ {"version":3,"file":"storageClientContext.js","sourceRoot":"","sources":["../../../../src/generated/src/storageClientContext.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,QAAQ,MAAM,kBAAkB,CAAC;AAG7C,MAAM,WAAW,GAAG,0BAA0B,CAAC;AAC/C,MAAM,cAAc,GAAG,eAAe,CAAC;AAEvC,MAAM,OAAO,oBAAqB,SAAQ,QAAQ,CAAC,aAAa;IAK9D;;;;;OAKG;IACH,YAAY,GAAW,EAAE,OAAqC;QAC5D,IAAI,GAAG,KAAK,SAAS,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACzC;QAED,0CAA0C;QAC1C,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,GAAG,EAAE,CAAC;SACd;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;YACtB,MAAM,gBAAgB,GAAG,QAAQ,CAAC,wBAAwB,EAAE,CAAC;YAC7D,OAAO,CAAC,SAAS,GAAG,GAAG,WAAW,IAAI,cAAc,IAAI,gBAAgB,EAAE,CAAC;SAC5E;QAED,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE1B,IAAI,CAAC,kBAAkB,GAAG,iCAAiC,CAAC;QAE5D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC;QAE3C,wBAAwB;QACxB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QAEf,0CAA0C;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,IAAI,QAAQ,CAAC;IACzE,CAAC;CACF","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreHttp from \"@azure/core-http\";\nimport { StorageClientOptionalParams } from \"./models\";\n\nconst packageName = \"azure-storage-file-share\";\nconst packageVersion = \"12.9.0-beta.4\";\n\nexport class StorageClientContext extends coreHttp.ServiceClient {\n url: string;\n version: string;\n fileRangeWriteFromUrl: string;\n\n /**\n * Initializes a new instance of the StorageClientContext class.\n * @param url The URL of the service account, share, directory or file that is the target of the\n * desired operation.\n * @param options The parameter options\n */\n constructor(url: string, options?: StorageClientOptionalParams) {\n if (url === undefined) {\n throw new Error(\"'url' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n\n if (!options.userAgent) {\n const defaultUserAgent = coreHttp.getDefaultUserAgentValue();\n options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;\n }\n\n super(undefined, options);\n\n this.requestContentType = \"application/json; charset=utf-8\";\n\n this.baseUri = options.endpoint || \"{url}\";\n\n // Parameter assignments\n this.url = url;\n\n // Assigning values to Constant parameters\n this.version = options.version || \"2021-04-10\";\n this.fileRangeWriteFromUrl = options.fileRangeWriteFromUrl || \"update\";\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"generatedModels.js","sourceRoot":"","sources":["../../src/generatedModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n// explicitly exporting types that we need.\n\nexport {\n CopyStatusType,\n DeleteSnapshotsOptionType,\n DirectoryCreateResponse,\n DirectoryDeleteResponse,\n DirectoryGetPropertiesResponse,\n DirectoryItem,\n DirectoryListFilesAndDirectoriesSegmentResponse,\n DirectoryListHandlesResponse,\n DirectorySetMetadataResponse,\n DirectorySetPropertiesResponse,\n FileAbortCopyResponse,\n FileCreateResponse,\n FileDeleteResponse,\n FileDownloadHeaders,\n FileDownloadOptionalParams,\n FileDownloadResponse as FileDownloadResponseModel,\n FileGetPropertiesResponse,\n FileGetRangeListHeaders,\n FileItem,\n FileListHandlesResponse,\n FileServiceProperties,\n FileSetMetadataResponse,\n FileStartCopyResponse,\n FileUploadRangeFromURLOptionalParams,\n FileUploadRangeFromURLResponse,\n FileUploadRangeResponse,\n PermissionCopyModeType,\n HandleItem,\n ListSharesIncludeType,\n FileRange as RangeModel,\n ServiceGetPropertiesResponse,\n ServiceSetPropertiesResponse,\n ShareCreatePermissionResponse,\n ShareCreateResponse,\n ShareCreateSnapshotResponse,\n ShareDeleteResponse,\n ShareGetAccessPolicyHeaders,\n ShareGetPermissionResponse,\n ShareGetPropertiesResponse as ShareGetPropertiesResponseModel,\n ShareGetStatisticsResponse as ShareGetStatisticsResponseModel,\n ShareItemInternal,\n ShareSetAccessPolicyResponse,\n ShareSetMetadataResponse,\n ShareSetPropertiesResponse,\n SignedIdentifier as SignedIdentifierModel,\n SourceModifiedAccessConditions,\n FileForceCloseHandlesHeaders,\n DirectoryForceCloseHandlesHeaders,\n DirectoryCreateHeaders,\n DirectoryDeleteHeaders,\n DirectoryGetPropertiesHeaders,\n FilesAndDirectoriesListSegment,\n ListFilesAndDirectoriesSegmentResponse,\n DirectoryListFilesAndDirectoriesSegmentHeaders,\n ListHandlesResponse,\n DirectoryListHandlesHeaders,\n DirectorySetMetadataHeaders,\n DirectorySetPropertiesHeaders,\n FileAbortCopyHeaders,\n FileCreateHeaders,\n FileDeleteHeaders,\n FileGetPropertiesHeaders,\n FileProperty,\n FileListHandlesHeaders,\n CorsRule,\n Metrics,\n FileSetHttpHeadersHeaders as FileSetHTTPHeadersHeaders,\n FileSetHttpHeadersResponse as FileSetHTTPHeadersResponse,\n FileSetMetadataHeaders,\n FileStartCopyHeaders,\n FileUploadRangeFromURLHeaders,\n FileUploadRangeHeaders,\n FileType,\n ServiceGetPropertiesHeaders,\n ListSharesResponse as ListSharesResponseModel,\n RetentionPolicy,\n ServiceListSharesSegmentHeaders,\n ServiceSetPropertiesHeaders,\n ShareCreatePermissionHeaders,\n ShareCreateHeaders,\n ShareCreateSnapshotHeaders,\n ShareDeleteHeaders,\n SharePermission,\n ShareGetPermissionHeaders,\n ShareGetPropertiesHeaders,\n ShareStats,\n ShareGetStatisticsHeaders,\n SharePropertiesInternal,\n ShareSetAccessPolicyHeaders,\n ShareSetMetadataHeaders,\n ShareSetPropertiesHeaders,\n AccessPolicy,\n LeaseAccessConditions,\n LeaseDurationType,\n LeaseStateType,\n LeaseStatusType,\n CopyFileSmbInfo,\n ShareProtocolSettings,\n ShareSmbSettings,\n SmbMultichannel,\n FileGetRangeListResponse as FileGetRangeListDiffResponse,\n ShareFileRangeList,\n ClearRange,\n ShareAccessTier,\n ShareRootSquash\n} from \"./generated/src/models\";\n\nimport { ShareSetPropertiesResponse, ShareSetPropertiesHeaders } from \"./generated/src/models\";\n\n/**\n * Contains response data for the setQuota operation.\n */\nexport type ShareSetQuotaResponse = ShareSetPropertiesResponse;\n\n/**\n * Defines headers for setQuota operation.\n */\nexport type ShareSetQuotaHeaders = ShareSetPropertiesHeaders;\n"]}
1
+ {"version":3,"file":"generatedModels.js","sourceRoot":"","sources":["../../src/generatedModels.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n// explicitly exporting types that we need.\n\nexport {\n CopyStatusType,\n DeleteSnapshotsOptionType,\n DirectoryCreateResponse,\n DirectoryDeleteResponse,\n DirectoryGetPropertiesResponse,\n DirectoryItem,\n DirectoryListFilesAndDirectoriesSegmentResponse,\n DirectoryListHandlesResponse,\n DirectorySetMetadataResponse,\n DirectorySetPropertiesResponse,\n FileAbortCopyResponse,\n FileCreateResponse,\n FileDeleteResponse,\n FileDownloadHeaders,\n FileDownloadOptionalParams,\n FileDownloadResponse as FileDownloadResponseModel,\n FileGetPropertiesResponse,\n FileGetRangeListHeaders,\n FileItem,\n FileListHandlesResponse,\n FileServiceProperties,\n FileSetMetadataResponse,\n FileStartCopyResponse,\n FileUploadRangeFromURLOptionalParams,\n FileUploadRangeFromURLResponse,\n FileUploadRangeResponse,\n PermissionCopyModeType,\n HandleItem,\n ListSharesIncludeType,\n FileRange as RangeModel,\n ServiceGetPropertiesResponse,\n ServiceSetPropertiesResponse,\n ShareCreatePermissionResponse,\n ShareCreateResponse,\n ShareCreateSnapshotResponse,\n ShareDeleteResponse,\n ShareGetAccessPolicyHeaders,\n ShareGetPermissionResponse,\n ShareGetPropertiesResponse as ShareGetPropertiesResponseModel,\n ShareGetStatisticsResponse as ShareGetStatisticsResponseModel,\n ShareItemInternal,\n ShareSetAccessPolicyResponse,\n ShareSetMetadataResponse,\n ShareSetPropertiesResponse,\n SignedIdentifier as SignedIdentifierModel,\n SourceModifiedAccessConditions,\n FileForceCloseHandlesHeaders,\n DirectoryForceCloseHandlesHeaders,\n DirectoryCreateHeaders,\n DirectoryDeleteHeaders,\n DirectoryGetPropertiesHeaders,\n FilesAndDirectoriesListSegment,\n ListFilesAndDirectoriesSegmentResponse,\n DirectoryListFilesAndDirectoriesSegmentHeaders,\n ListHandlesResponse,\n DirectoryRenameHeaders,\n DirectoryRenameResponse,\n DirectoryListHandlesHeaders,\n DirectorySetMetadataHeaders,\n DirectorySetPropertiesHeaders,\n FileAbortCopyHeaders,\n FileCreateHeaders,\n FileDeleteHeaders,\n FileGetPropertiesHeaders,\n FileProperty,\n FileListHandlesHeaders,\n FileRenameHeaders,\n CorsRule,\n Metrics,\n FileSetHttpHeadersHeaders as FileSetHTTPHeadersHeaders,\n FileSetHttpHeadersResponse as FileSetHTTPHeadersResponse,\n FileSetMetadataHeaders,\n FileStartCopyHeaders,\n FileRenameResponse,\n FileUploadRangeFromURLHeaders,\n FileUploadRangeHeaders,\n ServiceGetPropertiesHeaders,\n ListSharesResponse as ListSharesResponseModel,\n RetentionPolicy,\n ServiceListSharesSegmentHeaders,\n ServiceSetPropertiesHeaders,\n ShareCreatePermissionHeaders,\n ShareCreateHeaders,\n ShareCreateSnapshotHeaders,\n ShareDeleteHeaders,\n SharePermission,\n ShareGetPermissionHeaders,\n ShareGetPropertiesHeaders,\n ShareStats,\n ShareGetStatisticsHeaders,\n SharePropertiesInternal,\n ShareSetAccessPolicyHeaders,\n ShareSetMetadataHeaders,\n ShareSetPropertiesHeaders,\n AccessPolicy,\n LeaseAccessConditions,\n LeaseDurationType,\n LeaseStateType,\n LeaseStatusType,\n CopyFileSmbInfo,\n ShareProtocolSettings,\n ShareSmbSettings,\n SmbMultichannel,\n FileGetRangeListResponse as FileGetRangeListDiffResponse,\n ShareFileRangeList,\n ClearRange,\n ShareAccessTier,\n ShareRootSquash,\n} from \"./generated/src/models\";\n\nimport { ShareSetPropertiesResponse, ShareSetPropertiesHeaders } from \"./generated/src/models\";\n\n/**\n * Contains response data for the setQuota operation.\n */\nexport type ShareSetQuotaResponse = ShareSetPropertiesResponse;\n\n/**\n * Defines headers for setQuota operation.\n */\nexport type ShareSetQuotaHeaders = ShareSetPropertiesHeaders;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.browser.js","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,cAAc,WAAW,CAAC;AAC1B,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AAYzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AAErC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { RestError } from \"@azure/core-http\";\n\nexport * from \"./Clients\";\nexport * from \"./credentials/AnonymousCredential\";\nexport * from \"./credentials/Credential\";\nexport { SasIPRange } from \"./SasIPRange\";\nexport { Range } from \"./Range\";\nexport {\n FilePermissionInheritType,\n FilePermissionPreserveType,\n TimeNowType,\n TimePreserveType,\n FileAttributesPreserveType,\n CloseHandlesInfo,\n HttpAuthorization\n} from \"./models\";\nexport * from \"./FileSystemAttributes\";\nexport * from \"./Pipeline\";\nexport * from \"./policies/AnonymousCredentialPolicy\";\nexport * from \"./policies/CredentialPolicy\";\nexport * from \"./StorageRetryPolicyFactory\";\nexport * from \"./StorageBrowserPolicyFactory\";\nexport * from \"./ShareServiceClient\";\nexport { CommonOptions } from \"./StorageClient\";\nexport * from \"./generatedModels\";\nexport { RestError };\nexport { logger } from \"./log\";\n"]}
1
+ {"version":3,"file":"index.browser.js","sourceRoot":"","sources":["../../src/index.browser.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,cAAc,WAAW,CAAC;AAC1B,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AAYzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AAErC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { RestError } from \"@azure/core-http\";\n\nexport * from \"./Clients\";\nexport * from \"./credentials/AnonymousCredential\";\nexport * from \"./credentials/Credential\";\nexport { SasIPRange } from \"./SasIPRange\";\nexport { Range } from \"./Range\";\nexport {\n FilePermissionInheritType,\n FilePermissionPreserveType,\n TimeNowType,\n TimePreserveType,\n FileAttributesPreserveType,\n CloseHandlesInfo,\n HttpAuthorization,\n} from \"./models\";\nexport * from \"./FileSystemAttributes\";\nexport * from \"./Pipeline\";\nexport * from \"./policies/AnonymousCredentialPolicy\";\nexport * from \"./policies/CredentialPolicy\";\nexport * from \"./StorageRetryPolicyFactory\";\nexport * from \"./StorageBrowserPolicyFactory\";\nexport * from \"./ShareServiceClient\";\nexport { CommonOptions } from \"./StorageClient\";\nexport * from \"./generatedModels\";\nexport { RestError };\nexport { logger } from \"./log\";\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0CAA0C,CAAC;AAiBzD,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AAErC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { RestError } from \"@azure/core-http\";\n\nexport * from \"./AccountSASPermissions\";\nexport * from \"./AccountSASResourceTypes\";\nexport * from \"./AccountSASServices\";\nexport * from \"./AccountSASSignatureValues\";\nexport * from \"./FileSASPermissions\";\nexport * from \"./FileSASSignatureValues\";\nexport * from \"./Clients\";\nexport * from \"./ShareSASPermissions\";\nexport * from \"./credentials/AnonymousCredential\";\nexport * from \"./credentials/Credential\";\nexport * from \"./credentials/StorageSharedKeyCredential\";\nexport { SasIPRange } from \"./SasIPRange\";\nexport { Range } from \"./Range\";\nexport {\n FileAndDirectoryCreateCommonOptions,\n FileAndDirectorySetPropertiesCommonOptions,\n FileHttpHeaders,\n FilePermissionInheritType,\n FilePermissionPreserveType,\n Metadata,\n TimeNowType,\n TimePreserveType,\n FileAttributesPreserveType,\n CloseHandlesInfo,\n ShareProtocols,\n HttpAuthorization\n} from \"./models\";\nexport * from \"./FileSystemAttributes\";\nexport * from \"./Pipeline\";\nexport * from \"./policies/AnonymousCredentialPolicy\";\nexport * from \"./policies/CredentialPolicy\";\nexport * from \"./StorageRetryPolicyFactory\";\nexport * from \"./policies/StorageSharedKeyCredentialPolicy\";\nexport * from \"./StorageBrowserPolicyFactory\";\nexport * from \"./ShareServiceClient\";\nexport * from \"./SASQueryParameters\";\nexport { CommonOptions } from \"./StorageClient\";\nexport * from \"./generatedModels\";\nexport { RestError };\nexport { logger } from \"./log\";\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC;AAC1B,cAAc,uBAAuB,CAAC;AACtC,cAAc,mCAAmC,CAAC;AAClD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0CAA0C,CAAC;AAiBzD,cAAc,wBAAwB,CAAC;AACvC,cAAc,YAAY,CAAC;AAC3B,cAAc,sCAAsC,CAAC;AACrD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6CAA6C,CAAC;AAC5D,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AAErC,cAAc,mBAAmB,CAAC;AAClC,OAAO,EAAE,SAAS,EAAE,CAAC;AACrB,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { RestError } from \"@azure/core-http\";\n\nexport * from \"./AccountSASPermissions\";\nexport * from \"./AccountSASResourceTypes\";\nexport * from \"./AccountSASServices\";\nexport * from \"./AccountSASSignatureValues\";\nexport * from \"./FileSASPermissions\";\nexport * from \"./FileSASSignatureValues\";\nexport * from \"./Clients\";\nexport * from \"./ShareSASPermissions\";\nexport * from \"./credentials/AnonymousCredential\";\nexport * from \"./credentials/Credential\";\nexport * from \"./credentials/StorageSharedKeyCredential\";\nexport { SasIPRange } from \"./SasIPRange\";\nexport { Range } from \"./Range\";\nexport {\n FileAndDirectoryCreateCommonOptions,\n FileAndDirectorySetPropertiesCommonOptions,\n FileHttpHeaders,\n FilePermissionInheritType,\n FilePermissionPreserveType,\n Metadata,\n TimeNowType,\n TimePreserveType,\n FileAttributesPreserveType,\n CloseHandlesInfo,\n ShareProtocols,\n HttpAuthorization,\n} from \"./models\";\nexport * from \"./FileSystemAttributes\";\nexport * from \"./Pipeline\";\nexport * from \"./policies/AnonymousCredentialPolicy\";\nexport * from \"./policies/CredentialPolicy\";\nexport * from \"./StorageRetryPolicyFactory\";\nexport * from \"./policies/StorageSharedKeyCredentialPolicy\";\nexport * from \"./StorageBrowserPolicyFactory\";\nexport * from \"./ShareServiceClient\";\nexport * from \"./SASQueryParameters\";\nexport { CommonOptions } from \"./StorageClient\";\nexport * from \"./generatedModels\";\nexport { RestError };\nexport { logger } from \"./log\";\n"]}
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { BaseRequestPolicy, isNode } from "@azure/core-http";
3
+ import { BaseRequestPolicy, isNode, } from "@azure/core-http";
4
4
  import { HeaderConstants, URLConstants } from "../utils/constants";
5
5
  import { setURLParameter } from "../utils/utils.common";
6
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"StorageBrowserPolicy.js","sourceRoot":"","sources":["../../../src/policies/StorageBrowserPolicy.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,iBAAiB,EAEjB,MAAM,EAIP,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;;;;;;;;;GAUG;AACH,MAAM,OAAO,oBAAqB,SAAQ,iBAAiB;IACzD;;;;OAIG;IACH,wGAAwG;IACxG,uEAAuE;IACvE,YAAY,UAAyB,EAAE,OAA6B;QAClE,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CAAC,OAAoB;QAC3C,IAAI,MAAM,EAAE;YACV,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE;YACrF,OAAO,CAAC,GAAG,GAAG,eAAe,CAC3B,OAAO,CAAC,GAAG,EACX,YAAY,CAAC,UAAU,CAAC,sBAAsB,EAC9C,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAChC,CAAC;SACH;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAE/C,oFAAoF;QACpF,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n BaseRequestPolicy,\n HttpOperationResponse,\n isNode,\n RequestPolicy,\n RequestPolicyOptions,\n WebResource\n} from \"@azure/core-http\";\n\nimport { HeaderConstants, URLConstants } from \"../utils/constants\";\nimport { setURLParameter } from \"../utils/utils.common\";\n\n/**\n * StorageBrowserPolicy will handle differences between Node.js and browser runtime, including:\n *\n * 1. Browsers cache GET/HEAD requests by adding conditional headers such as 'IF_MODIFIED_SINCE'.\n * StorageBrowserPolicy is a policy used to add a timestamp query to GET/HEAD request URL\n * thus avoid the browser cache.\n *\n * 2. Remove cookie header for security\n *\n * 3. Remove content-length header to avoid browsers warning\n */\nexport class StorageBrowserPolicy extends BaseRequestPolicy {\n /**\n * Creates an instance of StorageBrowserPolicy.\n * @param nextPolicy -\n * @param options -\n */\n // The base class has a protected constructor. Adding a public one to enable constructing of this class.\n /* eslint-disable-next-line @typescript-eslint/no-useless-constructor*/\n constructor(nextPolicy: RequestPolicy, options: RequestPolicyOptions) {\n super(nextPolicy, options);\n }\n\n /**\n * Sends out request.\n *\n * @param request -\n */\n public async sendRequest(request: WebResource): Promise<HttpOperationResponse> {\n if (isNode) {\n return this._nextPolicy.sendRequest(request);\n }\n\n if (request.method.toUpperCase() === \"GET\" || request.method.toUpperCase() === \"HEAD\") {\n request.url = setURLParameter(\n request.url,\n URLConstants.Parameters.FORCE_BROWSER_NO_CACHE,\n new Date().getTime().toString()\n );\n }\n\n request.headers.remove(HeaderConstants.COOKIE);\n\n // According to XHR standards, content-length should be fully controlled by browsers\n request.headers.remove(HeaderConstants.CONTENT_LENGTH);\n\n return this._nextPolicy.sendRequest(request);\n }\n}\n"]}
1
+ {"version":3,"file":"StorageBrowserPolicy.js","sourceRoot":"","sources":["../../../src/policies/StorageBrowserPolicy.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EACL,iBAAiB,EAEjB,MAAM,GAIP,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;;;;;;;;;GAUG;AACH,MAAM,OAAO,oBAAqB,SAAQ,iBAAiB;IACzD;;;;OAIG;IACH,wGAAwG;IACxG,uEAAuE;IACvE,YAAY,UAAyB,EAAE,OAA6B;QAClE,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,WAAW,CAAC,OAAoB;QAC3C,IAAI,MAAM,EAAE;YACV,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SAC9C;QAED,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE;YACrF,OAAO,CAAC,GAAG,GAAG,eAAe,CAC3B,OAAO,CAAC,GAAG,EACX,YAAY,CAAC,UAAU,CAAC,sBAAsB,EAC9C,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAChC,CAAC;SACH;QAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAE/C,oFAAoF;QACpF,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;CACF","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n BaseRequestPolicy,\n HttpOperationResponse,\n isNode,\n RequestPolicy,\n RequestPolicyOptions,\n WebResource,\n} from \"@azure/core-http\";\n\nimport { HeaderConstants, URLConstants } from \"../utils/constants\";\nimport { setURLParameter } from \"../utils/utils.common\";\n\n/**\n * StorageBrowserPolicy will handle differences between Node.js and browser runtime, including:\n *\n * 1. Browsers cache GET/HEAD requests by adding conditional headers such as 'IF_MODIFIED_SINCE'.\n * StorageBrowserPolicy is a policy used to add a timestamp query to GET/HEAD request URL\n * thus avoid the browser cache.\n *\n * 2. Remove cookie header for security\n *\n * 3. Remove content-length header to avoid browsers warning\n */\nexport class StorageBrowserPolicy extends BaseRequestPolicy {\n /**\n * Creates an instance of StorageBrowserPolicy.\n * @param nextPolicy -\n * @param options -\n */\n // The base class has a protected constructor. Adding a public one to enable constructing of this class.\n /* eslint-disable-next-line @typescript-eslint/no-useless-constructor*/\n constructor(nextPolicy: RequestPolicy, options: RequestPolicyOptions) {\n super(nextPolicy, options);\n }\n\n /**\n * Sends out request.\n *\n * @param request -\n */\n public async sendRequest(request: WebResource): Promise<HttpOperationResponse> {\n if (isNode) {\n return this._nextPolicy.sendRequest(request);\n }\n\n if (request.method.toUpperCase() === \"GET\" || request.method.toUpperCase() === \"HEAD\") {\n request.url = setURLParameter(\n request.url,\n URLConstants.Parameters.FORCE_BROWSER_NO_CACHE,\n new Date().getTime().toString()\n );\n }\n\n request.headers.remove(HeaderConstants.COOKIE);\n\n // According to XHR standards, content-length should be fully controlled by browsers\n request.headers.remove(HeaderConstants.CONTENT_LENGTH);\n\n return this._nextPolicy.sendRequest(request);\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT license.
3
- import { BaseRequestPolicy } from "@azure/core-http";
3
+ import { BaseRequestPolicy, } from "@azure/core-http";
4
4
  import { AbortError } from "@azure/abort-controller";
5
5
  import { URLConstants } from "../utils/constants";
6
6
  import { delay, setURLParameter } from "../utils/utils.common";
@@ -14,7 +14,7 @@ export function NewStorageRetryPolicyFactory(retryOptions) {
14
14
  return {
15
15
  create: (nextPolicy, options) => {
16
16
  return new StorageRetryPolicy(nextPolicy, options, retryOptions);
17
- }
17
+ },
18
18
  };
19
19
  }
20
20
  /**
@@ -37,7 +37,7 @@ const DEFAULT_RETRY_OPTIONS = {
37
37
  maxTries: 4,
38
38
  retryDelayInMs: 4 * 1000,
39
39
  retryPolicyType: StorageRetryPolicyType.EXPONENTIAL,
40
- tryTimeoutInMs: undefined // Use server side default timeout strategy
40
+ tryTimeoutInMs: undefined, // Use server side default timeout strategy
41
41
  };
42
42
  const RETRY_ABORT_ERROR = new AbortError("The operation was aborted.");
43
43
  /**
@@ -71,7 +71,7 @@ export class StorageRetryPolicy extends BaseRequestPolicy {
71
71
  : DEFAULT_RETRY_OPTIONS.retryDelayInMs,
72
72
  maxRetryDelayInMs: retryOptions.maxRetryDelayInMs && retryOptions.maxRetryDelayInMs >= 0
73
73
  ? retryOptions.maxRetryDelayInMs
74
- : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs
74
+ : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs,
75
75
  };
76
76
  }
77
77
  /**
@@ -143,7 +143,7 @@ export class StorageRetryPolicy extends BaseRequestPolicy {
143
143
  "ENOTFOUND",
144
144
  "TIMEOUT",
145
145
  "EPIPE",
146
- "REQUEST_SEND_ERROR" // For default xhr based http client provided in ms-rest-js
146
+ "REQUEST_SEND_ERROR", // For default xhr based http client provided in ms-rest-js
147
147
  ];
148
148
  if (err) {
149
149
  for (const retriableError of retriableErrors) {
@@ -1 +1 @@
1
- {"version":3,"file":"StorageRetryPolicy.js","sourceRoot":"","sources":["../../../src/policies/StorageRetryPolicy.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n AbortSignalLike,\n BaseRequestPolicy,\n HttpOperationResponse,\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n RestError,\n WebResource\n} from \"@azure/core-http\";\n\nimport { AbortError } from \"@azure/abort-controller\";\n\nimport { StorageRetryOptions } from \"../StorageRetryPolicyFactory\";\nimport { URLConstants } from \"../utils/constants\";\nimport { delay, setURLParameter } from \"../utils/utils.common\";\nimport { logger } from \"../log\";\n\n/**\n * A factory method used to generated a RetryPolicy factory.\n *\n * @param retryOptions -\n */\nexport function NewStorageRetryPolicyFactory(\n retryOptions?: StorageRetryOptions\n): RequestPolicyFactory {\n return {\n create: (nextPolicy: RequestPolicy, options: RequestPolicyOptions): StorageRetryPolicy => {\n return new StorageRetryPolicy(nextPolicy, options, retryOptions);\n }\n };\n}\n\n/**\n * RetryPolicy types.\n */\nexport enum StorageRetryPolicyType {\n /**\n * Exponential retry. Retry time delay grows exponentially.\n */\n EXPONENTIAL,\n /**\n * Linear retry. Retry time delay grows linearly.\n */\n FIXED\n}\n\n// Default values of RetryOptions\nconst DEFAULT_RETRY_OPTIONS: StorageRetryOptions = {\n maxRetryDelayInMs: 120 * 1000,\n maxTries: 4,\n retryDelayInMs: 4 * 1000,\n retryPolicyType: StorageRetryPolicyType.EXPONENTIAL,\n tryTimeoutInMs: undefined // Use server side default timeout strategy\n};\n\nconst RETRY_ABORT_ERROR = new AbortError(\"The operation was aborted.\");\n\n/**\n * Retry policy with exponential retry and linear retry implemented.\n */\nexport class StorageRetryPolicy extends BaseRequestPolicy {\n /**\n * RetryOptions.\n */\n private readonly retryOptions: StorageRetryOptions;\n\n /**\n * Creates an instance of RetryPolicy.\n *\n * @param nextPolicy -\n * @param options -\n * @param retryOptions -\n */\n constructor(\n nextPolicy: RequestPolicy,\n options: RequestPolicyOptions,\n retryOptions: StorageRetryOptions = DEFAULT_RETRY_OPTIONS\n ) {\n super(nextPolicy, options);\n\n // Initialize retry options\n this.retryOptions = {\n retryPolicyType: retryOptions.retryPolicyType\n ? retryOptions.retryPolicyType\n : DEFAULT_RETRY_OPTIONS.retryPolicyType,\n\n maxTries:\n retryOptions.maxTries && retryOptions.maxTries >= 1\n ? Math.floor(retryOptions.maxTries)\n : DEFAULT_RETRY_OPTIONS.maxTries,\n\n tryTimeoutInMs:\n retryOptions.tryTimeoutInMs && retryOptions.tryTimeoutInMs >= 0\n ? retryOptions.tryTimeoutInMs\n : DEFAULT_RETRY_OPTIONS.tryTimeoutInMs,\n\n retryDelayInMs:\n retryOptions.retryDelayInMs && retryOptions.retryDelayInMs >= 0\n ? Math.min(\n retryOptions.retryDelayInMs,\n retryOptions.maxRetryDelayInMs\n ? retryOptions.maxRetryDelayInMs\n : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs!\n )\n : DEFAULT_RETRY_OPTIONS.retryDelayInMs,\n\n maxRetryDelayInMs:\n retryOptions.maxRetryDelayInMs && retryOptions.maxRetryDelayInMs >= 0\n ? retryOptions.maxRetryDelayInMs\n : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs\n };\n }\n\n /**\n * Sends request.\n *\n * @param request -\n */\n public async sendRequest(request: WebResource): Promise<HttpOperationResponse> {\n return this.attemptSendRequest(request, false, 1);\n }\n\n /**\n * Decide and perform next retry. Won't mutate request parameter.\n *\n * @param request -\n * @param response -\n * @param secondaryHas404 - If attempt was against the secondary & it returned a StatusNotFound (404), then\n * the resource was not found. This may be due to replication delay. So, in this\n * case, we'll never try the secondary again for this operation.\n * @param attempt - How many retries has been attempted to performed, starting from 1, which includes\n * the attempt will be performed by this method call.\n */\n protected async attemptSendRequest(\n request: WebResource,\n secondaryHas404: boolean,\n attempt: number\n ): Promise<HttpOperationResponse> {\n const newRequest: WebResource = request.clone();\n\n const isPrimaryRetry = true; // File doesn't support secondary endpoint\n\n // Set the server-side timeout query parameter \"timeout=[seconds]\"\n if (this.retryOptions.tryTimeoutInMs) {\n newRequest.url = setURLParameter(\n newRequest.url,\n URLConstants.Parameters.TIMEOUT,\n Math.floor(this.retryOptions.tryTimeoutInMs! / 1000).toString()\n );\n }\n\n let response: HttpOperationResponse | undefined;\n try {\n logger.info(`RetryPolicy: =====> Try=${attempt} ${isPrimaryRetry ? \"Primary\" : \"Secondary\"}`);\n response = await this._nextPolicy.sendRequest(newRequest);\n if (!this.shouldRetry(isPrimaryRetry, attempt, response)) {\n return response;\n }\n\n secondaryHas404 = secondaryHas404 || (!isPrimaryRetry && response.status === 404);\n } catch (err) {\n logger.error(`RetryPolicy: Caught error, message: ${err.message}, code: ${err.code}`);\n if (!this.shouldRetry(isPrimaryRetry, attempt, response, err)) {\n throw err;\n }\n }\n\n await this.delay(isPrimaryRetry, attempt, request.abortSignal);\n return this.attemptSendRequest(request, secondaryHas404, ++attempt);\n }\n\n /**\n * Decide whether to retry according to last HTTP response and retry counters.\n *\n * @param isPrimaryRetry -\n * @param attempt -\n * @param response -\n * @param err -\n */\n protected shouldRetry(\n isPrimaryRetry: boolean,\n attempt: number,\n response?: HttpOperationResponse,\n err?: RestError\n ): boolean {\n if (attempt >= this.retryOptions.maxTries!) {\n logger.info(\n `RetryPolicy: Attempt(s) ${attempt} >= maxTries ${this.retryOptions\n .maxTries!}, no further try.`\n );\n return false;\n }\n\n // Handle network failures, you may need to customize the list when you implement\n // your own http client\n const retriableErrors = [\n \"ETIMEDOUT\",\n \"ESOCKETTIMEDOUT\",\n \"ECONNREFUSED\",\n \"ECONNRESET\",\n \"ENOENT\",\n \"ENOTFOUND\",\n \"TIMEOUT\",\n \"EPIPE\",\n \"REQUEST_SEND_ERROR\" // For default xhr based http client provided in ms-rest-js\n ];\n if (err) {\n for (const retriableError of retriableErrors) {\n if (\n err.name.toUpperCase().includes(retriableError) ||\n err.message.toUpperCase().includes(retriableError) ||\n (err.code && err.code.toString().toUpperCase() === retriableError)\n ) {\n logger.info(`RetryPolicy: Network error ${retriableError} found, will retry.`);\n return true;\n }\n }\n }\n\n // If attempt was against the secondary & it returned a StatusNotFound (404), then\n // the resource was not found. This may be due to replication delay. So, in this\n // case, we'll never try the secondary again for this operation.\n if (response || err) {\n const statusCode = response ? response.status : err ? err.statusCode : 0;\n if (!isPrimaryRetry && statusCode === 404) {\n logger.info(`RetryPolicy: Secondary access with 404, will retry.`);\n return true;\n }\n\n // Server internal error or server timeout\n if (statusCode === 503 || statusCode === 500) {\n logger.info(`RetryPolicy: Will retry for status code ${statusCode}.`);\n return true;\n }\n }\n\n if (err?.code === \"PARSE_ERROR\" && err?.message.startsWith(`Error \"Error: Unclosed root tag`)) {\n logger.info(\n \"RetryPolicy: Incomplete XML response likely due to service timeout, will retry.\"\n );\n return true;\n }\n\n return false;\n }\n\n /**\n * Delay a calculated time between retries.\n *\n * @param isPrimaryRetry -\n * @param attempt -\n * @param abortSignal -\n */\n private async delay(isPrimaryRetry: boolean, attempt: number, abortSignal?: AbortSignalLike) {\n let delayTimeInMs: number = 0;\n\n if (isPrimaryRetry) {\n switch (this.retryOptions.retryPolicyType) {\n case StorageRetryPolicyType.EXPONENTIAL:\n delayTimeInMs = Math.min(\n (Math.pow(2, attempt - 1) - 1) * this.retryOptions.retryDelayInMs!,\n this.retryOptions.maxRetryDelayInMs!\n );\n break;\n case StorageRetryPolicyType.FIXED:\n delayTimeInMs = this.retryOptions.retryDelayInMs!;\n break;\n }\n } else {\n delayTimeInMs = Math.random() * 1000;\n }\n\n logger.info(`RetryPolicy: Delay for ${delayTimeInMs}ms`);\n return delay(delayTimeInMs, abortSignal, RETRY_ABORT_ERROR);\n }\n}\n"]}
1
+ {"version":3,"file":"StorageRetryPolicy.js","sourceRoot":"","sources":["../../../src/policies/StorageRetryPolicy.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n AbortSignalLike,\n BaseRequestPolicy,\n HttpOperationResponse,\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n RestError,\n WebResource,\n} from \"@azure/core-http\";\n\nimport { AbortError } from \"@azure/abort-controller\";\n\nimport { StorageRetryOptions } from \"../StorageRetryPolicyFactory\";\nimport { URLConstants } from \"../utils/constants\";\nimport { delay, setURLParameter } from \"../utils/utils.common\";\nimport { logger } from \"../log\";\n\n/**\n * A factory method used to generated a RetryPolicy factory.\n *\n * @param retryOptions -\n */\nexport function NewStorageRetryPolicyFactory(\n retryOptions?: StorageRetryOptions\n): RequestPolicyFactory {\n return {\n create: (nextPolicy: RequestPolicy, options: RequestPolicyOptions): StorageRetryPolicy => {\n return new StorageRetryPolicy(nextPolicy, options, retryOptions);\n },\n };\n}\n\n/**\n * RetryPolicy types.\n */\nexport enum StorageRetryPolicyType {\n /**\n * Exponential retry. Retry time delay grows exponentially.\n */\n EXPONENTIAL,\n /**\n * Linear retry. Retry time delay grows linearly.\n */\n FIXED,\n}\n\n// Default values of RetryOptions\nconst DEFAULT_RETRY_OPTIONS: StorageRetryOptions = {\n maxRetryDelayInMs: 120 * 1000,\n maxTries: 4,\n retryDelayInMs: 4 * 1000,\n retryPolicyType: StorageRetryPolicyType.EXPONENTIAL,\n tryTimeoutInMs: undefined, // Use server side default timeout strategy\n};\n\nconst RETRY_ABORT_ERROR = new AbortError(\"The operation was aborted.\");\n\n/**\n * Retry policy with exponential retry and linear retry implemented.\n */\nexport class StorageRetryPolicy extends BaseRequestPolicy {\n /**\n * RetryOptions.\n */\n private readonly retryOptions: StorageRetryOptions;\n\n /**\n * Creates an instance of RetryPolicy.\n *\n * @param nextPolicy -\n * @param options -\n * @param retryOptions -\n */\n constructor(\n nextPolicy: RequestPolicy,\n options: RequestPolicyOptions,\n retryOptions: StorageRetryOptions = DEFAULT_RETRY_OPTIONS\n ) {\n super(nextPolicy, options);\n\n // Initialize retry options\n this.retryOptions = {\n retryPolicyType: retryOptions.retryPolicyType\n ? retryOptions.retryPolicyType\n : DEFAULT_RETRY_OPTIONS.retryPolicyType,\n\n maxTries:\n retryOptions.maxTries && retryOptions.maxTries >= 1\n ? Math.floor(retryOptions.maxTries)\n : DEFAULT_RETRY_OPTIONS.maxTries,\n\n tryTimeoutInMs:\n retryOptions.tryTimeoutInMs && retryOptions.tryTimeoutInMs >= 0\n ? retryOptions.tryTimeoutInMs\n : DEFAULT_RETRY_OPTIONS.tryTimeoutInMs,\n\n retryDelayInMs:\n retryOptions.retryDelayInMs && retryOptions.retryDelayInMs >= 0\n ? Math.min(\n retryOptions.retryDelayInMs,\n retryOptions.maxRetryDelayInMs\n ? retryOptions.maxRetryDelayInMs\n : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs!\n )\n : DEFAULT_RETRY_OPTIONS.retryDelayInMs,\n\n maxRetryDelayInMs:\n retryOptions.maxRetryDelayInMs && retryOptions.maxRetryDelayInMs >= 0\n ? retryOptions.maxRetryDelayInMs\n : DEFAULT_RETRY_OPTIONS.maxRetryDelayInMs,\n };\n }\n\n /**\n * Sends request.\n *\n * @param request -\n */\n public async sendRequest(request: WebResource): Promise<HttpOperationResponse> {\n return this.attemptSendRequest(request, false, 1);\n }\n\n /**\n * Decide and perform next retry. Won't mutate request parameter.\n *\n * @param request -\n * @param response -\n * @param secondaryHas404 - If attempt was against the secondary & it returned a StatusNotFound (404), then\n * the resource was not found. This may be due to replication delay. So, in this\n * case, we'll never try the secondary again for this operation.\n * @param attempt - How many retries has been attempted to performed, starting from 1, which includes\n * the attempt will be performed by this method call.\n */\n protected async attemptSendRequest(\n request: WebResource,\n secondaryHas404: boolean,\n attempt: number\n ): Promise<HttpOperationResponse> {\n const newRequest: WebResource = request.clone();\n\n const isPrimaryRetry = true; // File doesn't support secondary endpoint\n\n // Set the server-side timeout query parameter \"timeout=[seconds]\"\n if (this.retryOptions.tryTimeoutInMs) {\n newRequest.url = setURLParameter(\n newRequest.url,\n URLConstants.Parameters.TIMEOUT,\n Math.floor(this.retryOptions.tryTimeoutInMs! / 1000).toString()\n );\n }\n\n let response: HttpOperationResponse | undefined;\n try {\n logger.info(`RetryPolicy: =====> Try=${attempt} ${isPrimaryRetry ? \"Primary\" : \"Secondary\"}`);\n response = await this._nextPolicy.sendRequest(newRequest);\n if (!this.shouldRetry(isPrimaryRetry, attempt, response)) {\n return response;\n }\n\n secondaryHas404 = secondaryHas404 || (!isPrimaryRetry && response.status === 404);\n } catch (err) {\n logger.error(`RetryPolicy: Caught error, message: ${err.message}, code: ${err.code}`);\n if (!this.shouldRetry(isPrimaryRetry, attempt, response, err)) {\n throw err;\n }\n }\n\n await this.delay(isPrimaryRetry, attempt, request.abortSignal);\n return this.attemptSendRequest(request, secondaryHas404, ++attempt);\n }\n\n /**\n * Decide whether to retry according to last HTTP response and retry counters.\n *\n * @param isPrimaryRetry -\n * @param attempt -\n * @param response -\n * @param err -\n */\n protected shouldRetry(\n isPrimaryRetry: boolean,\n attempt: number,\n response?: HttpOperationResponse,\n err?: RestError\n ): boolean {\n if (attempt >= this.retryOptions.maxTries!) {\n logger.info(\n `RetryPolicy: Attempt(s) ${attempt} >= maxTries ${this.retryOptions\n .maxTries!}, no further try.`\n );\n return false;\n }\n\n // Handle network failures, you may need to customize the list when you implement\n // your own http client\n const retriableErrors = [\n \"ETIMEDOUT\",\n \"ESOCKETTIMEDOUT\",\n \"ECONNREFUSED\",\n \"ECONNRESET\",\n \"ENOENT\",\n \"ENOTFOUND\",\n \"TIMEOUT\",\n \"EPIPE\",\n \"REQUEST_SEND_ERROR\", // For default xhr based http client provided in ms-rest-js\n ];\n if (err) {\n for (const retriableError of retriableErrors) {\n if (\n err.name.toUpperCase().includes(retriableError) ||\n err.message.toUpperCase().includes(retriableError) ||\n (err.code && err.code.toString().toUpperCase() === retriableError)\n ) {\n logger.info(`RetryPolicy: Network error ${retriableError} found, will retry.`);\n return true;\n }\n }\n }\n\n // If attempt was against the secondary & it returned a StatusNotFound (404), then\n // the resource was not found. This may be due to replication delay. So, in this\n // case, we'll never try the secondary again for this operation.\n if (response || err) {\n const statusCode = response ? response.status : err ? err.statusCode : 0;\n if (!isPrimaryRetry && statusCode === 404) {\n logger.info(`RetryPolicy: Secondary access with 404, will retry.`);\n return true;\n }\n\n // Server internal error or server timeout\n if (statusCode === 503 || statusCode === 500) {\n logger.info(`RetryPolicy: Will retry for status code ${statusCode}.`);\n return true;\n }\n }\n\n if (err?.code === \"PARSE_ERROR\" && err?.message.startsWith(`Error \"Error: Unclosed root tag`)) {\n logger.info(\n \"RetryPolicy: Incomplete XML response likely due to service timeout, will retry.\"\n );\n return true;\n }\n\n return false;\n }\n\n /**\n * Delay a calculated time between retries.\n *\n * @param isPrimaryRetry -\n * @param attempt -\n * @param abortSignal -\n */\n private async delay(isPrimaryRetry: boolean, attempt: number, abortSignal?: AbortSignalLike) {\n let delayTimeInMs: number = 0;\n\n if (isPrimaryRetry) {\n switch (this.retryOptions.retryPolicyType) {\n case StorageRetryPolicyType.EXPONENTIAL:\n delayTimeInMs = Math.min(\n (Math.pow(2, attempt - 1) - 1) * this.retryOptions.retryDelayInMs!,\n this.retryOptions.maxRetryDelayInMs!\n );\n break;\n case StorageRetryPolicyType.FIXED:\n delayTimeInMs = this.retryOptions.retryDelayInMs!;\n break;\n }\n } else {\n delayTimeInMs = Math.random() * 1000;\n }\n\n logger.info(`RetryPolicy: Delay for ${delayTimeInMs}ms`);\n return delay(delayTimeInMs, abortSignal, RETRY_ABORT_ERROR);\n }\n}\n"]}
@@ -24,7 +24,9 @@ export class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
24
24
  */
25
25
  signRequest(request) {
26
26
  request.headers.set(HeaderConstants.X_MS_DATE, new Date().toUTCString());
27
- if (request.body && typeof request.body === "string" && request.body.length > 0) {
27
+ if (request.body &&
28
+ (typeof request.body === "string" || request.body !== undefined) &&
29
+ request.body.length > 0) {
28
30
  request.headers.set(HeaderConstants.CONTENT_LENGTH, Buffer.byteLength(request.body));
29
31
  }
30
32
  const stringToSign = [
@@ -39,7 +41,7 @@ export class StorageSharedKeyCredentialPolicy extends CredentialPolicy {
39
41
  this.getHeaderValueToSign(request, HeaderConstants.IF_MATCH),
40
42
  this.getHeaderValueToSign(request, HeaderConstants.IF_NONE_MATCH),
41
43
  this.getHeaderValueToSign(request, HeaderConstants.IF_UNMODIFIED_SINCE),
42
- this.getHeaderValueToSign(request, HeaderConstants.RANGE)
44
+ this.getHeaderValueToSign(request, HeaderConstants.RANGE),
43
45
  ].join("\n") +
44
46
  "\n" +
45
47
  this.getCanonicalizedHeadersString(request) +