From dbb720d3b89ad11325bc5ccfa30642336618e0ad Mon Sep 17 00:00:00 2001 From: Lin Jian Date: Tue, 8 Sep 2020 16:49:30 +0800 Subject: [PATCH] build:autorest --- .../src/generated/src/models/blobMappers.ts | 2 + .../src/generated/src/models/index.ts | 35 +- .../src/generated/src/models/mappers.ts | 96 ++- .../src/generated/src/models/parameters.ts | 2 +- .../src/generated/src/storageClientContext.ts | 2 +- sdk/storage/storage-blob/swagger/README.md | 11 +- .../src/generated/src/models/index.ts | 40 ++ .../src/generated/src/models/mappers.ts | 24 + .../src/generated/src/models/parameters.ts | 24 + .../src/operations/pathOperations.ts | 3 + .../storage-file-datalake/swagger/README.md | 100 +-- .../src/generated/src/models/index.ts | 672 ++++++++++++++++-- .../src/generated/src/models/mappers.ts | 477 ++++++++++++- .../src/generated/src/models/parameters.ts | 54 +- .../generated/src/models/serviceMappers.ts | 3 + .../src/generated/src/models/shareMappers.ts | 5 + .../src/generated/src/operations/directory.ts | 6 +- .../src/generated/src/operations/file.ts | 17 +- .../src/generated/src/operations/share.ts | 334 ++++++++- .../storage-file-share/swagger/README.md | 2 +- 20 files changed, 1723 insertions(+), 186 deletions(-) diff --git a/sdk/storage/storage-blob/src/generated/src/models/blobMappers.ts b/sdk/storage/storage-blob/src/generated/src/models/blobMappers.ts index 00356c263890..6155de6204df 100644 --- a/sdk/storage/storage-blob/src/generated/src/models/blobMappers.ts +++ b/sdk/storage/storage-blob/src/generated/src/models/blobMappers.ts @@ -7,6 +7,8 @@ */ export { + ArrowConfiguration, + ArrowField, BlobAbortCopyFromURLHeaders, BlobAcquireLeaseHeaders, BlobBreakLeaseHeaders, diff --git a/sdk/storage/storage-blob/src/generated/src/models/index.ts b/sdk/storage/storage-blob/src/generated/src/models/index.ts index f54c9b83bc3d..0118e66fb1fa 100644 --- a/sdk/storage/storage-blob/src/generated/src/models/index.ts +++ b/sdk/storage/storage-blob/src/generated/src/models/index.ts @@ -185,6 +185,7 @@ export interface BlobPropertiesInternal { * Possible values include: 'High', 'Standard' */ rehydratePriority?: RehydratePriority; + lastAccessedOn?: Date; } /** @@ -374,6 +375,23 @@ export interface JsonTextConfiguration { recordSeparator: string; } +/** + * field of an arrow schema + */ +export interface ArrowField { + type: string; + name?: string; + precision?: number; + scale?: number; +} + +/** + * arrow configuration + */ +export interface ArrowConfiguration { + schema: ArrowField[]; +} + /** * An enumeration of containers */ @@ -542,11 +560,12 @@ export interface PageList { */ export interface QueryFormat { /** - * Possible values include: 'delimited', 'json' + * Possible values include: 'delimited', 'json', 'arrow' */ type?: QueryFormatType; delimitedTextConfiguration?: DelimitedTextConfiguration; jsonTextConfiguration?: JsonTextConfiguration; + arrowConfiguration?: ArrowConfiguration; } /** @@ -4526,6 +4545,11 @@ export interface BlobDownloadHeaders { * If this blob has been sealed */ isSealed?: boolean; + /** + * UTC date/time value generated by the service that indicates the time at which the blob was + * last read or written to + */ + lastAccessed?: Date; /** * If the request is to read a specified range and the x-ms-range-get-content-crc64 is set to * true, then the request returns a crc64 for the range, as long as the range size is less than @@ -4771,6 +4795,11 @@ export interface BlobGetPropertiesHeaders { * rehydrate. Possible values include: 'High', 'Standard' */ rehydratePriority?: RehydratePriority; + /** + * UTC date/time value generated by the service that indicates the time at which the blob was + * last read or written to + */ + lastAccessed?: Date; errorCode?: string; } @@ -6932,11 +6961,11 @@ export type GeoReplicationStatusType = 'live' | 'bootstrap' | 'unavailable'; /** * Defines values for QueryFormatType. - * Possible values include: 'delimited', 'json' + * Possible values include: 'delimited', 'json', 'arrow' * @readonly * @enum {string} */ -export type QueryFormatType = 'delimited' | 'json'; +export type QueryFormatType = 'delimited' | 'json' | 'arrow'; /** * Defines values for BlobExpiryOptions. diff --git a/sdk/storage/storage-blob/src/generated/src/models/mappers.ts b/sdk/storage/storage-blob/src/generated/src/models/mappers.ts index 634991b2c184..3eb90408bb81 100644 --- a/sdk/storage/storage-blob/src/generated/src/models/mappers.ts +++ b/sdk/storage/storage-blob/src/generated/src/models/mappers.ts @@ -477,6 +477,13 @@ export const BlobPropertiesInternal: coreHttp.CompositeMapper = { type: { name: "String" } + }, + lastAccessedOn: { + xmlName: "LastAccessTime", + serializedName: "LastAccessTime", + type: { + name: "DateTimeRfc1123" + } } } } @@ -1198,6 +1205,72 @@ export const JsonTextConfiguration: coreHttp.CompositeMapper = { } }; +export const ArrowField: coreHttp.CompositeMapper = { + xmlName: "Field", + serializedName: "ArrowField", + type: { + name: "Composite", + className: "ArrowField", + modelProperties: { + type: { + xmlName: "Type", + required: true, + serializedName: "Type", + type: { + name: "String" + } + }, + name: { + xmlName: "Name", + serializedName: "Name", + type: { + name: "String" + } + }, + precision: { + xmlName: "Precision", + serializedName: "Precision", + type: { + name: "Number" + } + }, + scale: { + xmlName: "Scale", + serializedName: "Scale", + type: { + name: "Number" + } + } + } + } +}; + +export const ArrowConfiguration: coreHttp.CompositeMapper = { + serializedName: "ArrowConfiguration", + type: { + name: "Composite", + className: "ArrowConfiguration", + modelProperties: { + schema: { + xmlIsWrapped: true, + xmlName: "Schema", + xmlElementName: "Field", + required: true, + serializedName: "Schema", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ArrowField" + } + } + } + } + } + } +}; + export const ListContainersSegmentResponse: coreHttp.CompositeMapper = { xmlName: "EnumerationResults", serializedName: "ListContainersSegmentResponse", @@ -1649,7 +1722,8 @@ export const QueryFormat: coreHttp.CompositeMapper = { name: "Enum", allowedValues: [ "delimited", - "json" + "json", + "arrow" ] } }, @@ -1668,6 +1742,14 @@ export const QueryFormat: coreHttp.CompositeMapper = { name: "Composite", className: "JsonTextConfiguration" } + }, + arrowConfiguration: { + xmlName: "ArrowConfiguration", + serializedName: "ArrowConfiguration", + type: { + name: "Composite", + className: "ArrowConfiguration" + } } } } @@ -3902,6 +3984,12 @@ export const BlobDownloadHeaders: coreHttp.CompositeMapper = { name: "Boolean" } }, + lastAccessed: { + serializedName: "x-ms-last-access-time", + type: { + name: "DateTimeRfc1123" + } + }, contentCrc64: { serializedName: "x-ms-content-crc64", type: { @@ -4232,6 +4320,12 @@ export const BlobGetPropertiesHeaders: coreHttp.CompositeMapper = { name: "String" } }, + lastAccessed: { + serializedName: "x-ms-last-access-time", + type: { + name: "DateTimeRfc1123" + } + }, errorCode: { serializedName: "x-ms-error-code", type: { diff --git a/sdk/storage/storage-blob/src/generated/src/models/parameters.ts b/sdk/storage/storage-blob/src/generated/src/models/parameters.ts index c985e05682ff..d7985b887061 100644 --- a/sdk/storage/storage-blob/src/generated/src/models/parameters.ts +++ b/sdk/storage/storage-blob/src/generated/src/models/parameters.ts @@ -1680,7 +1680,7 @@ export const version: coreHttp.OperationParameter = { required: true, isConstant: true, serializedName: "x-ms-version", - defaultValue: '2019-12-12', + defaultValue: '2020-02-10', type: { name: "String" } diff --git a/sdk/storage/storage-blob/src/generated/src/storageClientContext.ts b/sdk/storage/storage-blob/src/generated/src/storageClientContext.ts index cdd4abddd6f4..c20e6b507691 100644 --- a/sdk/storage/storage-blob/src/generated/src/storageClientContext.ts +++ b/sdk/storage/storage-blob/src/generated/src/storageClientContext.ts @@ -39,7 +39,7 @@ export class StorageClientContext extends coreHttp.ServiceClient { super(undefined, options); - this.version = '2019-12-12'; + this.version = '2020-02-10'; this.baseUri = "{url}"; this.requestContentType = "application/json; charset=utf-8"; this.url = url; diff --git a/sdk/storage/storage-blob/swagger/README.md b/sdk/storage/storage-blob/swagger/README.md index ad173321949d..004a1403654d 100644 --- a/sdk/storage/storage-blob/swagger/README.md +++ b/sdk/storage/storage-blob/swagger/README.md @@ -12,7 +12,7 @@ enable-xml: true generate-metadata: false license-header: MICROSOFT_MIT_NO_VERSION output-folder: ../src/generated -input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.BlobStorage/preview/2019-12-12/blob.json +input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.BlobStorage/preview/2020-02-10/blob.json model-date-time-as-string: true optional-response-headers: true ``` @@ -350,7 +350,6 @@ directive: transform: > $.Start["x-ms-client-name"] = "startsOn"; $.Expiry["x-ms-client-name"] = "expiresOn"; - ``` ### Rename KeyInfo start -> startsOn @@ -362,10 +361,9 @@ directive: transform: > $.Start["x-ms-client-name"] = "startsOn"; $.Expiry["x-ms-client-name"] = "expiresOn"; - ``` -### Un-group encryptionScope +### Un-group encryptionScope ```yaml directive: @@ -376,7 +374,6 @@ directive: if (grouping) { delete $["x-ms-parameter-grouping"]; } - ``` ### Rename ContainerCpkScopeInfo -> ContainerEncryptionScope @@ -391,7 +388,6 @@ directive: where: $.parameters.DenyEncryptionScopeOverride transform: > $["x-ms-parameter-grouping"]["name"] = "container-encryption-scope"; - ``` ### Use string union instead of string for RehydratePriority in getProperties @@ -405,8 +401,7 @@ directive: $["enum"] = ["High", "Standard"]; $["x-ms-enum"] = {}; $["x-ms-enum"]["name"] = "RehydratePriority"; - $["x-ms-enum"]["modelAsString"] = true; - + $["x-ms-enum"]["modelAsString"] = true; ``` ![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fstorage%2Fstorage-blob%2Fswagger%2FREADME.png) diff --git a/sdk/storage/storage-file-datalake/src/generated/src/models/index.ts b/sdk/storage/storage-file-datalake/src/generated/src/models/index.ts index 5befeea12216..e9adab042efe 100644 --- a/sdk/storage/storage-file-datalake/src/generated/src/models/index.ts +++ b/sdk/storage/storage-file-datalake/src/generated/src/models/index.ts @@ -474,6 +474,14 @@ export interface PathUpdateOptionalParams extends coreHttp.RequestOptionsBase { * operation. */ continuation?: string; + /** + * Optional. Valid for "SetAccessControlRecursive" operation. If set to false, the operation will + * terminate quickly on encountering user errors (4XX). If true, the operation will ignore user + * errors and proceed with the operation on other sub-entities of the directory. Continuation + * token will only be returned when forceFlag is true in case of user errors. If not set the + * default value is false for this. + */ + forceFlag?: boolean; /** * This parameter allows the caller to upload data in parallel and control the order in which it * is appended to the file. It is required when uploading data to be appended to the file and @@ -787,6 +795,14 @@ export interface PathSetAccessControlRecursiveOptionalParams extends coreHttp.Re * continue deleting the directory. */ continuation?: string; + /** + * Optional. Valid for "SetAccessControlRecursive" operation. If set to false, the operation will + * terminate quickly on encountering user errors (4XX). If true, the operation will ignore user + * errors and proceed with the operation on other sub-entities of the directory. Continuation + * token will only be returned when forceFlag is true in case of user errors. If not set the + * default value is false for this. + */ + forceFlag?: boolean; /** * Optional. It specifies the maximum number of files or directories on which the acl change will * be applied. If omitted or greater than 2,000, the request will process up to 2,000 items @@ -895,6 +911,10 @@ export interface PathAppendDataOptionalParams extends coreHttp.RequestOptionsBas * of the request content in bytes for "Append Data". */ contentLength?: number; + /** + * Specify the transactional crc64 for the body, to be validated by the service. + */ + transactionalContentCrc64?: Uint8Array; /** * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the * analytics logs when storage analytics logging is enabled. @@ -1668,6 +1688,26 @@ export interface PathAppendDataHeaders { * The version of the REST protocol used to process the request. */ version?: string; + /** + * An HTTP entity tag associated with the file or directory. + */ + etag?: string; + /** + * If the blob has an MD5 hash and this operation is to read the full blob, this response header + * is returned so that the client can check for message content integrity. + */ + contentMD5?: Uint8Array; + /** + * This header is returned so that the client can check for message content integrity. The value + * of this header is computed by the Blob service; it is not necessarily the same value specified + * in the request headers. + */ + xMsContentCrc64?: Uint8Array; + /** + * The value of this header is set to true if the contents of the request are successfully + * encrypted using the specified algorithm, and false otherwise. + */ + isServerEncrypted?: boolean; } /** diff --git a/sdk/storage/storage-file-datalake/src/generated/src/models/mappers.ts b/sdk/storage/storage-file-datalake/src/generated/src/models/mappers.ts index 38367cfb49ff..2307d46a988c 100644 --- a/sdk/storage/storage-file-datalake/src/generated/src/models/mappers.ts +++ b/sdk/storage/storage-file-datalake/src/generated/src/models/mappers.ts @@ -1376,6 +1376,30 @@ export const PathAppendDataHeaders: coreHttp.CompositeMapper = { type: { name: "String" } + }, + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + contentMD5: { + serializedName: "content-md5", + type: { + name: "ByteArray" + } + }, + xMsContentCrc64: { + serializedName: "x-ms-content-crc64", + type: { + name: "ByteArray" + } + }, + isServerEncrypted: { + serializedName: "x-ms-request-server-encrypted", + type: { + name: "Boolean" + } } } } diff --git a/sdk/storage/storage-file-datalake/src/generated/src/models/parameters.ts b/sdk/storage/storage-file-datalake/src/generated/src/models/parameters.ts index cb9a8ccbce69..7d97499db1c0 100644 --- a/sdk/storage/storage-file-datalake/src/generated/src/models/parameters.ts +++ b/sdk/storage/storage-file-datalake/src/generated/src/models/parameters.ts @@ -254,6 +254,18 @@ export const expiryOptions: coreHttp.OperationParameter = { } } }; +export const forceFlag: coreHttp.OperationQueryParameter = { + parameterPath: [ + "options", + "forceFlag" + ], + mapper: { + serializedName: "forceFlag", + type: { + name: "Boolean" + } + } +}; export const group: coreHttp.OperationParameter = { parameterPath: [ "options", @@ -665,6 +677,18 @@ export const timeout: coreHttp.OperationQueryParameter = { } } }; +export const transactionalContentCrc64: coreHttp.OperationParameter = { + parameterPath: [ + "options", + "transactionalContentCrc64" + ], + mapper: { + serializedName: "x-ms-content-crc64", + type: { + name: "ByteArray" + } + } +}; export const transactionalContentHash: coreHttp.OperationParameter = { parameterPath: [ "options", diff --git a/sdk/storage/storage-file-datalake/src/generated/src/operations/pathOperations.ts b/sdk/storage/storage-file-datalake/src/generated/src/operations/pathOperations.ts index e8457dddec57..36cdded813f3 100644 --- a/sdk/storage/storage-file-datalake/src/generated/src/operations/pathOperations.ts +++ b/sdk/storage/storage-file-datalake/src/generated/src/operations/pathOperations.ts @@ -478,6 +478,7 @@ const updateOperationSpec: coreHttp.OperationSpec = { Parameters.maxRecords, Parameters.continuation, Parameters.mode1, + Parameters.forceFlag, Parameters.position, Parameters.retainUncommittedData, Parameters.close, @@ -727,6 +728,7 @@ const setAccessControlRecursiveOperationSpec: coreHttp.OperationSpec = { Parameters.timeout, Parameters.continuation, Parameters.mode1, + Parameters.forceFlag, Parameters.maxRecords, Parameters.action3 ], @@ -802,6 +804,7 @@ const appendDataOperationSpec: coreHttp.OperationSpec = { ], headerParameters: [ Parameters.contentLength, + Parameters.transactionalContentCrc64, Parameters.requestId, Parameters.version, Parameters.transactionalContentHash, diff --git a/sdk/storage/storage-file-datalake/swagger/README.md b/sdk/storage/storage-file-datalake/swagger/README.md index 3f536a85d830..2cdfe73b78b2 100644 --- a/sdk/storage/storage-file-datalake/swagger/README.md +++ b/sdk/storage/storage-file-datalake/swagger/README.md @@ -12,75 +12,82 @@ enable-xml: true generate-metadata: false license-header: MICROSOFT_MIT_NO_VERSION output-folder: ../src/generated -input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2019-12-12/DataLakeStorage.json +input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.StorageDataLake/stable/2020-02-10/DataLakeStorage.json model-date-time-as-string: true optional-response-headers: true enum-types: true ``` + ## Customizations for Track 2 Generator See the [AutoRest samples](https://github.com/Azure/autorest/tree/master/Samples/3b-custom-transformations) for more about how we're customizing things. ### Update DataLakeStorageClientContext to StorageClientContext + ```yaml directive: -- from: swagger-document - where: $.info["x-ms-code-generation-settings"] - transform: > - $.name = "StorageClient" + - from: swagger-document + where: $.info["x-ms-code-generation-settings"] + transform: > + $.name = "StorageClient" ``` ### Remove parameter FileSystem + ```yaml directive: -- from: swagger-document - where: $.parameters - transform: > - $.FileSystem = undefined + - from: swagger-document + where: $.parameters + transform: > + $.FileSystem = undefined ``` ### Remove parameter Path + ```yaml directive: -- from: swagger-document - where: $.parameters - transform: > - $.Path = undefined + - from: swagger-document + where: $.parameters + transform: > + $.Path = undefined ``` ### Rename path-HTTP-headers to path-Http-headers + ```yaml directive: -- from: swagger-document - where: $.parameters - transform: > - $.CacheControl["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.ContentDisposition["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.ContentEncoding["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.ContentLanguage["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.ContentType["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.TransactionalContentMD5["x-ms-parameter-grouping"].name = "path-Http-headers"; - $.ContentMD5["x-ms-parameter-grouping"].name = "path-Http-headers"; + - from: swagger-document + where: $.parameters + transform: > + $.CacheControl["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.ContentDisposition["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.ContentEncoding["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.ContentLanguage["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.ContentType["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.TransactionalContentMD5["x-ms-parameter-grouping"].name = "path-Http-headers"; + $.ContentMD5["x-ms-parameter-grouping"].name = "path-Http-headers"; ``` ### Rename response property ACL to acl for Path_GetProperties + ```yaml directive: -- from: swagger-document - where: $["x-ms-paths"]["/{filesystem}/{path}"].head.responses["200"].headers["x-ms-acl"] - transform: > - $["x-ms-client-name"] = "acl"; + - from: swagger-document + where: $["x-ms-paths"]["/{filesystem}/{path}"].head.responses["200"].headers["x-ms-acl"] + transform: > + $["x-ms-client-name"] = "acl"; ``` ### Update last modified property from string type to Date for FileSystem and Path models + ```yaml directive: -- from: swagger-document - where: $.definitions - transform: > - $.FileSystem.properties.lastModified.format = "date-time-rfc1123"; - $.Path.properties.lastModified.format = "date-time-rfc1123"; + - from: swagger-document + where: $.definitions + transform: > + $.FileSystem.properties.lastModified.format = "date-time-rfc1123"; + $.Path.properties.lastModified.format = "date-time-rfc1123"; ``` ### Update service version @@ -93,24 +100,25 @@ directive: ``` ### Rename eTag -> etag -``` yaml + +```yaml directive: -- from: swagger-document - where: $["x-ms-paths"]..responses..headers["ETag"] - transform: > - $["x-ms-client-name"] = "etag"; -- from: swagger-document - where: $["definitions"]..["eTag"] - transform: > - $["x-ms-client-name"] = "etag"; + - from: swagger-document + where: $["x-ms-paths"]..responses..headers["ETag"] + transform: > + $["x-ms-client-name"] = "etag"; + - from: swagger-document + where: $["definitions"]..["eTag"] + transform: > + $["x-ms-client-name"] = "etag"; ``` ### workaround: adding parameter location for `PathSetAccessControlRecursiveMode` -``` yaml +```yaml directive: -- from: swagger-document - where: $["parameters"].PathSetAccessControlRecursiveMode - transform: > - $["x-ms-parameter-location"] = "method"; + - from: swagger-document + where: $["parameters"].PathSetAccessControlRecursiveMode + transform: > + $["x-ms-parameter-location"] = "method"; ``` diff --git a/sdk/storage/storage-file-share/src/generated/src/models/index.ts b/sdk/storage/storage-file-share/src/generated/src/models/index.ts index 7fb1d5c868d2..ceb582da8835 100644 --- a/sdk/storage/storage-file-share/src/generated/src/models/index.ts +++ b/sdk/storage/storage-file-share/src/generated/src/models/index.ts @@ -175,6 +175,18 @@ export interface ShareProperties { nextAllowedQuotaDowngradeTime?: Date; deletedTime?: Date; remainingRetentionDays?: number; + /** + * Possible values include: 'locked', 'unlocked' + */ + leaseStatus?: LeaseStatusType; + /** + * Possible values include: 'available', 'leased', 'expired', 'breaking', 'broken' + */ + leaseState?: LeaseStateType; + /** + * Possible values include: 'infinite', 'fixed' + */ + leaseDuration?: LeaseDurationType; } /** @@ -237,6 +249,16 @@ export interface Metrics { retentionPolicy?: RetentionPolicy; } +/** + * Settings for SMB multichannel + */ +export interface SmbMultichannel { + /** + * If SMB multichannel is enabled. + */ + enabled?: boolean; +} + /** * An Azure Storage file range. */ @@ -251,6 +273,26 @@ export interface Range { end: number; } +/** + * Settings for SMB protocol. + */ +export interface SmbSettings { + /** + * Settings for SMB Multichannel. + */ + multichannel?: SmbMultichannel; +} + +/** + * Protocol settings + */ +export interface ProtocolSettings { + /** + * Settings for SMB protocol. + */ + smbSettings?: SmbSettings; +} + /** * An interface representing StorageError. */ @@ -309,6 +351,21 @@ export interface FileServiceProperties { * The set of CORS rules. */ cors?: CorsRule[]; + /** + * Protocol settings + */ + protocolSettings?: ProtocolSettings; +} + +/** + * Additional parameters for a set of operations. + */ +export interface LeaseAccessConditions { + /** + * If specified, the operation only succeeds if the resource's lease is active and matches this + * ID. + */ + leaseId?: string; } /** @@ -342,17 +399,6 @@ export interface FileHttpHeaders { fileContentDisposition?: string; } -/** - * Additional parameters for a set of operations. - */ -export interface LeaseAccessConditions { - /** - * If specified, the operation only succeeds if the resource's lease is active and matches this - * ID. - */ - leaseId?: string; -} - /** * Additional parameters for uploadRangeFromURL operation. */ @@ -495,6 +541,10 @@ export interface ShareGetPropertiesOptionalParams extends coreHttp.RequestOption * Timeouts for File Service Operations. */ timeoutInSeconds?: number; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -517,6 +567,152 @@ export interface ShareDeleteMethodOptionalParams extends coreHttp.RequestOptions * values include: 'include' */ deleteSnapshots?: DeleteSnapshotsOptionType; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; +} + +/** + * Optional Parameters. + */ +export interface ShareAcquireLeaseOptionalParams extends coreHttp.RequestOptionsBase { + /** + * The timeout parameter is expressed in seconds. For more information, see Setting + * Timeouts for File Service Operations. + */ + timeoutInSeconds?: number; + /** + * Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never + * expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be + * changed using renew or change. + */ + duration?: number; + /** + * Proposed lease ID, in a GUID string format. The File service returns 400 (Invalid request) if + * the proposed lease ID is not in the correct format. See Guid Constructor (String) for a list + * of valid GUID string formats. + */ + proposedLeaseId?: string; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; + /** + * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the + * analytics logs when storage analytics logging is enabled. + */ + requestId?: string; +} + +/** + * Optional Parameters. + */ +export interface ShareReleaseLeaseOptionalParams extends coreHttp.RequestOptionsBase { + /** + * The timeout parameter is expressed in seconds. For more information, see Setting + * Timeouts for File Service Operations. + */ + timeoutInSeconds?: number; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; + /** + * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the + * analytics logs when storage analytics logging is enabled. + */ + requestId?: string; +} + +/** + * Optional Parameters. + */ +export interface ShareChangeLeaseOptionalParams extends coreHttp.RequestOptionsBase { + /** + * The timeout parameter is expressed in seconds. For more information, see Setting + * Timeouts for File Service Operations. + */ + timeoutInSeconds?: number; + /** + * Proposed lease ID, in a GUID string format. The File service returns 400 (Invalid request) if + * the proposed lease ID is not in the correct format. See Guid Constructor (String) for a list + * of valid GUID string formats. + */ + proposedLeaseId?: string; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; + /** + * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the + * analytics logs when storage analytics logging is enabled. + */ + requestId?: string; +} + +/** + * Optional Parameters. + */ +export interface ShareRenewLeaseOptionalParams extends coreHttp.RequestOptionsBase { + /** + * The timeout parameter is expressed in seconds. For more information, see Setting + * Timeouts for File Service Operations. + */ + timeoutInSeconds?: number; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; + /** + * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the + * analytics logs when storage analytics logging is enabled. + */ + requestId?: string; +} + +/** + * Optional Parameters. + */ +export interface ShareBreakLeaseOptionalParams extends coreHttp.RequestOptionsBase { + /** + * The timeout parameter is expressed in seconds. For more information, see Setting + * Timeouts for File Service Operations. + */ + timeoutInSeconds?: number; + /** + * For a break operation, proposed duration the lease should continue before it is broken, in + * seconds, between 0 and 60. This break period is only used if it is shorter than the time + * remaining on the lease. If longer, the time remaining on the lease is used. A new lease will + * not be available before the break period has expired, but the lease may be held for longer + * than the break period. If this header does not appear with a break operation, a fixed-duration + * lease breaks after the remaining lease period elapses, and an infinite lease breaks + * immediately. + */ + breakPeriod?: number; + /** + * Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the + * analytics logs when storage analytics logging is enabled. + */ + requestId?: string; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -573,6 +769,10 @@ export interface ShareSetQuotaOptionalParams extends coreHttp.RequestOptionsBase * Specifies the maximum size of the share, in gigabytes. */ quota?: number; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -589,6 +789,10 @@ export interface ShareSetMetadataOptionalParams extends coreHttp.RequestOptionsB * A name-value pair to associate with a file storage object. */ metadata?: { [propertyName: string]: string }; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -601,6 +805,10 @@ export interface ShareGetAccessPolicyOptionalParams extends coreHttp.RequestOpti * Timeouts for File Service Operations. */ timeoutInSeconds?: number; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -617,6 +825,10 @@ export interface ShareSetAccessPolicyOptionalParams extends coreHttp.RequestOpti * Timeouts for File Service Operations. */ timeoutInSeconds?: number; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -629,6 +841,10 @@ export interface ShareGetStatisticsOptionalParams extends coreHttp.RequestOption * Timeouts for File Service Operations. */ timeoutInSeconds?: number; + /** + * Additional parameters for the operation + */ + leaseAccessConditions?: LeaseAccessConditions; } /** @@ -1163,6 +1379,11 @@ export interface FileGetRangeListOptionalParams extends coreHttp.RequestOptionsB * snapshot to query. */ shareSnapshot?: string; + /** + * The previous snapshot parameter is an opaque DateTime value that, when present, specifies the + * previous snapshot. + */ + prevsharesnapshot?: string; /** * The timeout parameter is expressed in seconds. For more information, see Setting @@ -1277,18 +1498,163 @@ export interface FileForceCloseHandlesOptionalParams extends coreHttp.RequestOpt * was not complete. The marker value may then be used in a subsequent call to request the next * set of list items. The marker value is opaque to the client. */ - marker?: string; + marker?: string; + /** + * The snapshot parameter is an opaque DateTime value that, when present, specifies the share + * snapshot to query. + */ + shareSnapshot?: string; +} + +/** + * Defines headers for SetProperties operation. + */ +export interface ServiceSetPropertiesHeaders { + /** + * This header uniquely identifies the request that was made and can be used for troubleshooting + * the request. + */ + requestId?: string; + /** + * Indicates the version of the File service used to execute the request. + */ + version?: string; + errorCode?: string; +} + +/** + * Defines headers for GetProperties operation. + */ +export interface ServiceGetPropertiesHeaders { + /** + * This header uniquely identifies the request that was made and can be used for troubleshooting + * the request. + */ + requestId?: string; + /** + * Indicates the version of the File service used to execute the request. + */ + version?: string; + errorCode?: string; +} + +/** + * Defines headers for ListSharesSegment operation. + */ +export interface ServiceListSharesSegmentHeaders { + /** + * This header uniquely identifies the request that was made and can be used for troubleshooting + * the request. + */ + requestId?: string; + /** + * Indicates the version of the File service used to execute the request. + */ + version?: string; + errorCode?: string; +} + +/** + * Defines headers for Create operation. + */ +export interface ShareCreateHeaders { + /** + * The ETag contains a value which represents the version of the share, in quotes. + */ + etag?: string; + /** + * Returns the date and time the share was last modified. Any operation that modifies the share + * or its properties or metadata updates the last modified time. Operations on files do not + * affect the last modified time of the share. + */ + lastModified?: Date; + /** + * This header uniquely identifies the request that was made and can be used for troubleshooting + * the request. + */ + requestId?: string; + /** + * Indicates the version of the File service used to execute the request. + */ + version?: string; + /** + * A UTC date/time value generated by the service that indicates the time at which the response + * was initiated. + */ + date?: Date; + errorCode?: string; +} + +/** + * Defines headers for GetProperties operation. + */ +export interface ShareGetPropertiesHeaders { + metadata?: { [propertyName: string]: string }; + /** + * The ETag contains a value that you can use to perform operations conditionally, in quotes. + */ + etag?: string; + /** + * Returns the date and time the share was last modified. Any operation that modifies the share + * or its properties updates the last modified time. Operations on files do not affect the last + * modified time of the share. + */ + lastModified?: Date; + /** + * This header uniquely identifies the request that was made and can be used for troubleshooting + * the request. + */ + requestId?: string; + /** + * Indicates the version of the File service used to execute the request. + */ + version?: string; + /** + * A UTC date/time value generated by the service that indicates the time at which the response + * was initiated. + */ + date?: Date; + /** + * Returns the current share quota in GB. + */ + quota?: number; + /** + * Returns the current share provisioned ipos. + */ + provisionedIops?: number; + /** + * Returns the current share provisioned ingress in megabytes per second. + */ + provisionedIngressMBps?: number; + /** + * Returns the current share provisioned egress in megabytes per second. + */ + provisionedEgressMBps?: number; + /** + * Returns the current share next allowed quota downgrade time. + */ + nextAllowedQuotaDowngradeTime?: Date; + /** + * When a share is leased, specifies whether the lease is of infinite or fixed duration. Possible + * values include: 'infinite', 'fixed' + */ + leaseDuration?: LeaseDurationType; /** - * The snapshot parameter is an opaque DateTime value that, when present, specifies the share - * snapshot to query. + * Lease state of the share. Possible values include: 'available', 'leased', 'expired', + * 'breaking', 'broken' */ - shareSnapshot?: string; + leaseState?: LeaseStateType; + /** + * The current lease status of the share. Possible values include: 'locked', 'unlocked' + */ + leaseStatus?: LeaseStatusType; + errorCode?: string; } /** - * Defines headers for SetProperties operation. + * Defines headers for Delete operation. */ -export interface ServiceSetPropertiesHeaders { +export interface ShareDeleteHeaders { /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1298,13 +1664,41 @@ export interface ServiceSetPropertiesHeaders { * Indicates the version of the File service used to execute the request. */ version?: string; + /** + * A UTC date/time value generated by the service that indicates the time at which the response + * was initiated. + */ + date?: Date; errorCode?: string; } /** - * Defines headers for GetProperties operation. + * Defines headers for AcquireLease operation. */ -export interface ServiceGetPropertiesHeaders { +export interface ShareAcquireLeaseHeaders { + /** + * The ETag contains a value that you can use to perform operations conditionally, in quotes. + */ + etag?: string; + /** + * Returns the date and time the share was last modified. Any operation that modifies the share + * or its properties updates the last modified time. Operations on files do not affect the last + * modified time of the share. + */ + lastModified?: Date; + /** + * Approximate time remaining in the lease period, in seconds. + */ + leaseTime?: number; + /** + * Uniquely identifies a share's lease + */ + leaseId?: string; + /** + * If a client request id header is sent in the request, this header will be present in the + * response with the same value. + */ + clientRequestId?: string; /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1314,13 +1708,37 @@ export interface ServiceGetPropertiesHeaders { * Indicates the version of the File service used to execute the request. */ version?: string; + /** + * UTC date/time value generated by the service that indicates the time at which the response was + * initiated + */ + date?: Date; errorCode?: string; } /** - * Defines headers for ListSharesSegment operation. + * Defines headers for ReleaseLease operation. */ -export interface ServiceListSharesSegmentHeaders { +export interface ShareReleaseLeaseHeaders { + /** + * The ETag contains a value that you can use to perform operations conditionally, in quotes. + */ + etag?: string; + /** + * Returns the date and time the share was last modified. Any operation that modifies the share + * or its properties updates the last modified time. Operations on files do not affect the last + * modified time of the share. + */ + lastModified?: Date; + /** + * Approximate time remaining in the lease period, in seconds. + */ + leaseTime?: number; + /** + * If a client request id header is sent in the request, this header will be present in the + * response with the same value. + */ + clientRequestId?: string; /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1330,23 +1748,41 @@ export interface ServiceListSharesSegmentHeaders { * Indicates the version of the File service used to execute the request. */ version?: string; + /** + * UTC date/time value generated by the service that indicates the time at which the response was + * initiated + */ + date?: Date; errorCode?: string; } /** - * Defines headers for Create operation. + * Defines headers for ChangeLease operation. */ -export interface ShareCreateHeaders { +export interface ShareChangeLeaseHeaders { /** - * The ETag contains a value which represents the version of the share, in quotes. + * The ETag contains a value that you can use to perform operations conditionally, in quotes. */ etag?: string; /** * Returns the date and time the share was last modified. Any operation that modifies the share - * or its properties or metadata updates the last modified time. Operations on files do not - * affect the last modified time of the share. + * or its properties updates the last modified time. Operations on files do not affect the last + * modified time of the share. */ lastModified?: Date; + /** + * Approximate time remaining in the lease period, in seconds. + */ + leaseTime?: number; + /** + * Uniquely identifies a share's lease + */ + leaseId?: string; + /** + * If a client request id header is sent in the request, this header will be present in the + * response with the same value. + */ + clientRequestId?: string; /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1357,18 +1793,17 @@ export interface ShareCreateHeaders { */ version?: string; /** - * A UTC date/time value generated by the service that indicates the time at which the response - * was initiated. + * UTC date/time value generated by the service that indicates the time at which the response was + * initiated */ date?: Date; errorCode?: string; } /** - * Defines headers for GetProperties operation. + * Defines headers for RenewLease operation. */ -export interface ShareGetPropertiesHeaders { - metadata?: { [propertyName: string]: string }; +export interface ShareRenewLeaseHeaders { /** * The ETag contains a value that you can use to perform operations conditionally, in quotes. */ @@ -1379,6 +1814,19 @@ export interface ShareGetPropertiesHeaders { * modified time of the share. */ lastModified?: Date; + /** + * Approximate time remaining in the lease period, in seconds. + */ + leaseTime?: number; + /** + * Uniquely identifies a share's lease + */ + leaseId?: string; + /** + * If a client request id header is sent in the request, this header will be present in the + * response with the same value. + */ + clientRequestId?: string; /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1389,37 +1837,40 @@ export interface ShareGetPropertiesHeaders { */ version?: string; /** - * A UTC date/time value generated by the service that indicates the time at which the response - * was initiated. + * UTC date/time value generated by the service that indicates the time at which the response was + * initiated */ date?: Date; + errorCode?: string; +} + +/** + * Defines headers for BreakLease operation. + */ +export interface ShareBreakLeaseHeaders { /** - * Returns the current share quota in GB. + * The ETag contains a value that you can use to perform operations conditionally, in quotes. */ - quota?: number; + etag?: string; /** - * Returns the current share provisioned ipos. + * Returns the date and time the share was last modified. Any operation that modifies the share + * or its properties updates the last modified time. Operations on files do not affect the last + * modified time of the share. */ - provisionedIops?: number; + lastModified?: Date; /** - * Returns the current share provisioned ingress in megabytes per second. + * Approximate time remaining in the lease period, in seconds. */ - provisionedIngressMBps?: number; + leaseTime?: number; /** - * Returns the current share provisioned egress in megabytes per second. + * Uniquely identifies a share's lease */ - provisionedEgressMBps?: number; + leaseId?: string; /** - * Returns the current share next allowed quota downgrade time. + * If a client request id header is sent in the request, this header will be present in the + * response with the same value. */ - nextAllowedQuotaDowngradeTime?: Date; - errorCode?: string; -} - -/** - * Defines headers for Delete operation. - */ -export interface ShareDeleteHeaders { + clientRequestId?: string; /** * This header uniquely identifies the request that was made and can be used for troubleshooting * the request. @@ -1430,8 +1881,8 @@ export interface ShareDeleteHeaders { */ version?: string; /** - * A UTC date/time value generated by the service that indicates the time at which the response - * was initiated. + * UTC date/time value generated by the service that indicates the time at which the response was + * initiated */ date?: Date; errorCode?: string; @@ -2961,60 +3412,60 @@ export interface FileForceCloseHandlesHeaders { export type StorageErrorCode = 'AccountAlreadyExists' | 'AccountBeingCreated' | 'AccountIsDisabled' | 'AuthenticationFailed' | 'AuthorizationFailure' | 'ConditionHeadersNotSupported' | 'ConditionNotMet' | 'EmptyMetadataKey' | 'InsufficientAccountPermissions' | 'InternalError' | 'InvalidAuthenticationInfo' | 'InvalidHeaderValue' | 'InvalidHttpVerb' | 'InvalidInput' | 'InvalidMd5' | 'InvalidMetadata' | 'InvalidQueryParameterValue' | 'InvalidRange' | 'InvalidResourceName' | 'InvalidUri' | 'InvalidXmlDocument' | 'InvalidXmlNodeValue' | 'Md5Mismatch' | 'MetadataTooLarge' | 'MissingContentLengthHeader' | 'MissingRequiredQueryParameter' | 'MissingRequiredHeader' | 'MissingRequiredXmlNode' | 'MultipleConditionHeadersNotSupported' | 'OperationTimedOut' | 'OutOfRangeInput' | 'OutOfRangeQueryParameterValue' | 'RequestBodyTooLarge' | 'ResourceTypeMismatch' | 'RequestUrlFailedToParse' | 'ResourceAlreadyExists' | 'ResourceNotFound' | 'ServerBusy' | 'UnsupportedHeader' | 'UnsupportedXmlNode' | 'UnsupportedQueryParameter' | 'UnsupportedHttpVerb' | 'CannotDeleteFileOrDirectory' | 'ClientCacheFlushDelay' | 'DeletePending' | 'DirectoryNotEmpty' | 'FileLockConflict' | 'InvalidFileOrDirectoryPathName' | 'ParentNotFound' | 'ReadOnlyAttribute' | 'ShareAlreadyExists' | 'ShareBeingDeleted' | 'ShareDisabled' | 'ShareNotFound' | 'SharingViolation' | 'ShareSnapshotInProgress' | 'ShareSnapshotCountExceeded' | 'ShareSnapshotOperationNotSupported' | 'ShareHasSnapshots' | 'ContainerQuotaDowngradeNotAllowed' | 'AuthorizationSourceIPMismatch' | 'AuthorizationProtocolMismatch' | 'AuthorizationPermissionMismatch' | 'AuthorizationServiceMismatch' | 'AuthorizationResourceTypeMismatch' | 'FeatureVersionMismatch'; /** - * Defines values for PermissionCopyModeType. - * Possible values include: 'source', 'override' + * Defines values for LeaseDurationType. + * Possible values include: 'infinite', 'fixed' * @readonly * @enum {string} */ -export type PermissionCopyModeType = 'source' | 'override'; +export type LeaseDurationType = 'infinite' | 'fixed'; /** - * Defines values for DeleteSnapshotsOptionType. - * Possible values include: 'include' + * Defines values for LeaseStateType. + * Possible values include: 'available', 'leased', 'expired', 'breaking', 'broken' * @readonly * @enum {string} */ -export type DeleteSnapshotsOptionType = 'include'; +export type LeaseStateType = 'available' | 'leased' | 'expired' | 'breaking' | 'broken'; /** - * Defines values for ListSharesIncludeType. - * Possible values include: 'snapshots', 'metadata', 'deleted' + * Defines values for LeaseStatusType. + * Possible values include: 'locked', 'unlocked' * @readonly * @enum {string} */ -export type ListSharesIncludeType = 'snapshots' | 'metadata' | 'deleted'; +export type LeaseStatusType = 'locked' | 'unlocked'; /** - * Defines values for CopyStatusType. - * Possible values include: 'pending', 'success', 'aborted', 'failed' + * Defines values for PermissionCopyModeType. + * Possible values include: 'source', 'override' * @readonly * @enum {string} */ -export type CopyStatusType = 'pending' | 'success' | 'aborted' | 'failed'; +export type PermissionCopyModeType = 'source' | 'override'; /** - * Defines values for LeaseDurationType. - * Possible values include: 'infinite', 'fixed' + * Defines values for DeleteSnapshotsOptionType. + * Possible values include: 'include' * @readonly * @enum {string} */ -export type LeaseDurationType = 'infinite' | 'fixed'; +export type DeleteSnapshotsOptionType = 'include'; /** - * Defines values for LeaseStateType. - * Possible values include: 'available', 'leased', 'expired', 'breaking', 'broken' + * Defines values for ListSharesIncludeType. + * Possible values include: 'snapshots', 'metadata', 'deleted' * @readonly * @enum {string} */ -export type LeaseStateType = 'available' | 'leased' | 'expired' | 'breaking' | 'broken'; +export type ListSharesIncludeType = 'snapshots' | 'metadata' | 'deleted'; /** - * Defines values for LeaseStatusType. - * Possible values include: 'locked', 'unlocked' + * Defines values for CopyStatusType. + * Possible values include: 'pending', 'success', 'aborted', 'failed' * @readonly * @enum {string} */ -export type LeaseStatusType = 'locked' | 'unlocked'; +export type CopyStatusType = 'pending' | 'success' | 'aborted' | 'failed'; /** * Defines values for FileRangeWriteType. @@ -3142,6 +3593,81 @@ export type ShareDeleteResponse = ShareDeleteHeaders & { }; }; +/** + * Contains response data for the acquireLease operation. + */ +export type ShareAcquireLeaseResponse = ShareAcquireLeaseHeaders & { + /** + * The underlying HTTP response. + */ + _response: coreHttp.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: ShareAcquireLeaseHeaders; + }; +}; + +/** + * Contains response data for the releaseLease operation. + */ +export type ShareReleaseLeaseResponse = ShareReleaseLeaseHeaders & { + /** + * The underlying HTTP response. + */ + _response: coreHttp.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: ShareReleaseLeaseHeaders; + }; +}; + +/** + * Contains response data for the changeLease operation. + */ +export type ShareChangeLeaseResponse = ShareChangeLeaseHeaders & { + /** + * The underlying HTTP response. + */ + _response: coreHttp.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: ShareChangeLeaseHeaders; + }; +}; + +/** + * Contains response data for the renewLease operation. + */ +export type ShareRenewLeaseResponse = ShareRenewLeaseHeaders & { + /** + * The underlying HTTP response. + */ + _response: coreHttp.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: ShareRenewLeaseHeaders; + }; +}; + +/** + * Contains response data for the breakLease operation. + */ +export type ShareBreakLeaseResponse = ShareBreakLeaseHeaders & { + /** + * The underlying HTTP response. + */ + _response: coreHttp.HttpResponse & { + /** + * The parsed HTTP response headers. + */ + parsedHeaders: ShareBreakLeaseHeaders; + }; +}; + /** * Contains response data for the createSnapshot operation. */ diff --git a/sdk/storage/storage-file-share/src/generated/src/models/mappers.ts b/sdk/storage/storage-file-share/src/generated/src/models/mappers.ts index a4f07c09825b..b1d9840c9fd1 100644 --- a/sdk/storage/storage-file-share/src/generated/src/models/mappers.ts +++ b/sdk/storage/storage-file-share/src/generated/src/models/mappers.ts @@ -462,6 +462,42 @@ export const ShareProperties: coreHttp.CompositeMapper = { type: { name: "Number" } + }, + leaseStatus: { + xmlName: "LeaseStatus", + serializedName: "LeaseStatus", + type: { + name: "Enum", + allowedValues: [ + "locked", + "unlocked" + ] + } + }, + leaseState: { + xmlName: "LeaseState", + serializedName: "LeaseState", + type: { + name: "Enum", + allowedValues: [ + "available", + "leased", + "expired", + "breaking", + "broken" + ] + } + }, + leaseDuration: { + xmlName: "LeaseDuration", + serializedName: "LeaseDuration", + type: { + name: "Enum", + allowedValues: [ + "infinite", + "fixed" + ] + } } } } @@ -662,6 +698,24 @@ export const Metrics: coreHttp.CompositeMapper = { } }; +export const SmbMultichannel: coreHttp.CompositeMapper = { + xmlName: "Multichannel", + serializedName: "SmbMultichannel", + type: { + name: "Composite", + className: "SmbMultichannel", + modelProperties: { + enabled: { + xmlName: "Enabled", + serializedName: "Enabled", + type: { + name: "Boolean" + } + } + } + } +}; + export const Range: coreHttp.CompositeMapper = { serializedName: "Range", type: { @@ -688,6 +742,42 @@ export const Range: coreHttp.CompositeMapper = { } }; +export const SmbSettings: coreHttp.CompositeMapper = { + serializedName: "SmbSettings", + type: { + name: "Composite", + className: "SmbSettings", + modelProperties: { + multichannel: { + xmlName: "Multichannel", + serializedName: "Multichannel", + type: { + name: "Composite", + className: "SmbMultichannel" + } + } + } + } +}; + +export const ProtocolSettings: coreHttp.CompositeMapper = { + serializedName: "ProtocolSettings", + type: { + name: "Composite", + className: "ProtocolSettings", + modelProperties: { + smbSettings: { + xmlName: "SMB", + serializedName: "SmbSettings", + type: { + name: "Composite", + className: "SmbSettings" + } + } + } + } +}; + export const StorageError: coreHttp.CompositeMapper = { serializedName: "StorageError", type: { @@ -804,6 +894,30 @@ export const FileServiceProperties: coreHttp.CompositeMapper = { } } } + }, + protocolSettings: { + xmlName: "ProtocolSettings", + serializedName: "ProtocolSettings", + type: { + name: "Composite", + className: "ProtocolSettings" + } + } + } + } +}; + +export const LeaseAccessConditions: coreHttp.CompositeMapper = { + xmlName: "lease-access-conditions", + type: { + name: "Composite", + className: "LeaseAccessConditions", + modelProperties: { + leaseId: { + xmlName: "leaseId", + type: { + name: "String" + } } } } @@ -855,22 +969,6 @@ export const FileHttpHeaders: coreHttp.CompositeMapper = { } }; -export const LeaseAccessConditions: coreHttp.CompositeMapper = { - xmlName: "lease-access-conditions", - type: { - name: "Composite", - className: "LeaseAccessConditions", - modelProperties: { - leaseId: { - xmlName: "leaseId", - type: { - name: "String" - } - } - } - } -}; - export const SourceModifiedAccessConditions: coreHttp.CompositeMapper = { xmlName: "source-modified-access-conditions", type: { @@ -1151,6 +1249,39 @@ export const ShareGetPropertiesHeaders: coreHttp.CompositeMapper = { name: "DateTimeRfc1123" } }, + leaseDuration: { + serializedName: "x-ms-lease-duration", + type: { + name: "Enum", + allowedValues: [ + "infinite", + "fixed" + ] + } + }, + leaseState: { + serializedName: "x-ms-lease-state", + type: { + name: "Enum", + allowedValues: [ + "available", + "leased", + "expired", + "breaking", + "broken" + ] + } + }, + leaseStatus: { + serializedName: "x-ms-lease-status", + type: { + name: "Enum", + allowedValues: [ + "locked", + "unlocked" + ] + } + }, errorCode: { serializedName: "x-ms-error-code", type: { @@ -1195,6 +1326,320 @@ export const ShareDeleteHeaders: coreHttp.CompositeMapper = { } }; +export const ShareAcquireLeaseHeaders: coreHttp.CompositeMapper = { + serializedName: "share-acquirelease-headers", + type: { + name: "Composite", + className: "ShareAcquireLeaseHeaders", + modelProperties: { + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + lastModified: { + serializedName: "last-modified", + type: { + name: "DateTimeRfc1123" + } + }, + leaseTime: { + serializedName: "x-ms-lease-time", + type: { + name: "Number" + } + }, + leaseId: { + serializedName: "x-ms-lease-id", + type: { + name: "String" + } + }, + clientRequestId: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + }, + requestId: { + serializedName: "x-ms-request-id", + type: { + name: "String" + } + }, + version: { + serializedName: "x-ms-version", + type: { + name: "String" + } + }, + date: { + serializedName: "date", + type: { + name: "DateTimeRfc1123" + } + }, + errorCode: { + serializedName: "x-ms-error-code", + type: { + name: "String" + } + } + } + } +}; + +export const ShareReleaseLeaseHeaders: coreHttp.CompositeMapper = { + serializedName: "share-releaselease-headers", + type: { + name: "Composite", + className: "ShareReleaseLeaseHeaders", + modelProperties: { + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + lastModified: { + serializedName: "last-modified", + type: { + name: "DateTimeRfc1123" + } + }, + leaseTime: { + serializedName: "x-ms-lease-time", + type: { + name: "Number" + } + }, + clientRequestId: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + }, + requestId: { + serializedName: "x-ms-request-id", + type: { + name: "String" + } + }, + version: { + serializedName: "x-ms-version", + type: { + name: "String" + } + }, + date: { + serializedName: "date", + type: { + name: "DateTimeRfc1123" + } + }, + errorCode: { + serializedName: "x-ms-error-code", + type: { + name: "String" + } + } + } + } +}; + +export const ShareChangeLeaseHeaders: coreHttp.CompositeMapper = { + serializedName: "share-changelease-headers", + type: { + name: "Composite", + className: "ShareChangeLeaseHeaders", + modelProperties: { + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + lastModified: { + serializedName: "last-modified", + type: { + name: "DateTimeRfc1123" + } + }, + leaseTime: { + serializedName: "x-ms-lease-time", + type: { + name: "Number" + } + }, + leaseId: { + serializedName: "x-ms-lease-id", + type: { + name: "String" + } + }, + clientRequestId: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + }, + requestId: { + serializedName: "x-ms-request-id", + type: { + name: "String" + } + }, + version: { + serializedName: "x-ms-version", + type: { + name: "String" + } + }, + date: { + serializedName: "date", + type: { + name: "DateTimeRfc1123" + } + }, + errorCode: { + serializedName: "x-ms-error-code", + type: { + name: "String" + } + } + } + } +}; + +export const ShareRenewLeaseHeaders: coreHttp.CompositeMapper = { + serializedName: "share-renewlease-headers", + type: { + name: "Composite", + className: "ShareRenewLeaseHeaders", + modelProperties: { + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + lastModified: { + serializedName: "last-modified", + type: { + name: "DateTimeRfc1123" + } + }, + leaseTime: { + serializedName: "x-ms-lease-time", + type: { + name: "Number" + } + }, + leaseId: { + serializedName: "x-ms-lease-id", + type: { + name: "String" + } + }, + clientRequestId: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + }, + requestId: { + serializedName: "x-ms-request-id", + type: { + name: "String" + } + }, + version: { + serializedName: "x-ms-version", + type: { + name: "String" + } + }, + date: { + serializedName: "date", + type: { + name: "DateTimeRfc1123" + } + }, + errorCode: { + serializedName: "x-ms-error-code", + type: { + name: "String" + } + } + } + } +}; + +export const ShareBreakLeaseHeaders: coreHttp.CompositeMapper = { + serializedName: "share-breaklease-headers", + type: { + name: "Composite", + className: "ShareBreakLeaseHeaders", + modelProperties: { + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + lastModified: { + serializedName: "last-modified", + type: { + name: "DateTimeRfc1123" + } + }, + leaseTime: { + serializedName: "x-ms-lease-time", + type: { + name: "Number" + } + }, + leaseId: { + serializedName: "x-ms-lease-id", + type: { + name: "String" + } + }, + clientRequestId: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + }, + requestId: { + serializedName: "x-ms-request-id", + type: { + name: "String" + } + }, + version: { + serializedName: "x-ms-version", + type: { + name: "String" + } + }, + date: { + serializedName: "date", + type: { + name: "DateTimeRfc1123" + } + }, + errorCode: { + serializedName: "x-ms-error-code", + type: { + name: "String" + } + } + } + } +}; + export const ShareCreateSnapshotHeaders: coreHttp.CompositeMapper = { serializedName: "share-createsnapshot-headers", type: { diff --git a/sdk/storage/storage-file-share/src/generated/src/models/parameters.ts b/sdk/storage/storage-file-share/src/generated/src/models/parameters.ts index 5a93cbfde140..72a17ff86b35 100644 --- a/sdk/storage/storage-file-share/src/generated/src/models/parameters.ts +++ b/sdk/storage/storage-file-share/src/generated/src/models/parameters.ts @@ -47,6 +47,18 @@ export const action2: coreHttp.OperationParameter = { } }; export const action3: coreHttp.OperationParameter = { + parameterPath: "action", + mapper: { + required: true, + isConstant: true, + serializedName: "x-ms-lease-action", + defaultValue: 'renew', + type: { + name: "String" + } + } +}; +export const action4: coreHttp.OperationParameter = { parameterPath: "action", mapper: { required: true, @@ -58,6 +70,18 @@ export const action3: coreHttp.OperationParameter = { } } }; +export const breakPeriod: coreHttp.OperationParameter = { + parameterPath: [ + "options", + "breakPeriod" + ], + mapper: { + serializedName: "x-ms-lease-break-period", + type: { + name: "Number" + } + } +}; export const comp0: coreHttp.OperationQueryParameter = { parameterPath: "comp", mapper: { @@ -88,7 +112,7 @@ export const comp10: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'lease', + defaultValue: 'forceclosehandles', type: { name: "String" } @@ -136,7 +160,7 @@ export const comp2: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'snapshot', + defaultValue: 'lease', type: { name: "String" } @@ -148,7 +172,7 @@ export const comp3: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'filepermission', + defaultValue: 'snapshot', type: { name: "String" } @@ -160,7 +184,7 @@ export const comp4: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'metadata', + defaultValue: 'filepermission', type: { name: "String" } @@ -172,7 +196,7 @@ export const comp5: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'acl', + defaultValue: 'metadata', type: { name: "String" } @@ -184,7 +208,7 @@ export const comp6: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'stats', + defaultValue: 'acl', type: { name: "String" } @@ -196,7 +220,7 @@ export const comp7: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'undelete', + defaultValue: 'stats', type: { name: "String" } @@ -208,7 +232,7 @@ export const comp8: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'listhandles', + defaultValue: 'undelete', type: { name: "String" } @@ -220,7 +244,7 @@ export const comp9: coreHttp.OperationQueryParameter = { required: true, isConstant: true, serializedName: "comp", - defaultValue: 'forceclosehandles', + defaultValue: 'listhandles', type: { name: "String" } @@ -716,6 +740,18 @@ export const prefix: coreHttp.OperationQueryParameter = { } } }; +export const prevsharesnapshot: coreHttp.OperationQueryParameter = { + parameterPath: [ + "options", + "prevsharesnapshot" + ], + mapper: { + serializedName: "prevsharesnapshot", + type: { + name: "String" + } + } +}; export const proposedLeaseId: coreHttp.OperationParameter = { parameterPath: [ "options", diff --git a/sdk/storage/storage-file-share/src/generated/src/models/serviceMappers.ts b/sdk/storage/storage-file-share/src/generated/src/models/serviceMappers.ts index ac1f53f0ddeb..0286e9152656 100644 --- a/sdk/storage/storage-file-share/src/generated/src/models/serviceMappers.ts +++ b/sdk/storage/storage-file-share/src/generated/src/models/serviceMappers.ts @@ -11,11 +11,14 @@ export { FileServiceProperties, ListSharesResponse, Metrics, + ProtocolSettings, RetentionPolicy, ServiceGetPropertiesHeaders, ServiceListSharesSegmentHeaders, ServiceSetPropertiesHeaders, ShareItem, ShareProperties, + SmbMultichannel, + SmbSettings, StorageError } from "../models/mappers"; diff --git a/sdk/storage/storage-file-share/src/generated/src/models/shareMappers.ts b/sdk/storage/storage-file-share/src/generated/src/models/shareMappers.ts index 452568ab51aa..6dfc0b033b49 100644 --- a/sdk/storage/storage-file-share/src/generated/src/models/shareMappers.ts +++ b/sdk/storage/storage-file-share/src/generated/src/models/shareMappers.ts @@ -8,6 +8,9 @@ export { AccessPolicy, + ShareAcquireLeaseHeaders, + ShareBreakLeaseHeaders, + ShareChangeLeaseHeaders, ShareCreateHeaders, ShareCreatePermissionHeaders, ShareCreateSnapshotHeaders, @@ -17,6 +20,8 @@ export { ShareGetPropertiesHeaders, ShareGetStatisticsHeaders, SharePermission, + ShareReleaseLeaseHeaders, + ShareRenewLeaseHeaders, ShareRestoreHeaders, ShareSetAccessPolicyHeaders, ShareSetMetadataHeaders, diff --git a/sdk/storage/storage-file-share/src/generated/src/operations/directory.ts b/sdk/storage/storage-file-share/src/generated/src/operations/directory.ts index 1746b39274c7..0c60814582fb 100644 --- a/sdk/storage/storage-file-share/src/generated/src/operations/directory.ts +++ b/sdk/storage/storage-file-share/src/generated/src/operations/directory.ts @@ -388,7 +388,7 @@ const setMetadataOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype2, - Parameters.comp4 + Parameters.comp5 ], headerParameters: [ Parameters.metadata, @@ -450,7 +450,7 @@ const listHandlesOperationSpec: coreHttp.OperationSpec = { Parameters.maxResults, Parameters.timeoutInSeconds, Parameters.shareSnapshot, - Parameters.comp8 + Parameters.comp9 ], headerParameters: [ Parameters.recursive, @@ -480,7 +480,7 @@ const forceCloseHandlesOperationSpec: coreHttp.OperationSpec = { Parameters.timeoutInSeconds, Parameters.marker, Parameters.shareSnapshot, - Parameters.comp9 + Parameters.comp10 ], headerParameters: [ Parameters.handleId, diff --git a/sdk/storage/storage-file-share/src/generated/src/operations/file.ts b/sdk/storage/storage-file-share/src/generated/src/operations/file.ts index 92c1d2f88001..6a7810197273 100644 --- a/sdk/storage/storage-file-share/src/generated/src/operations/file.ts +++ b/sdk/storage/storage-file-share/src/generated/src/operations/file.ts @@ -779,7 +779,7 @@ const setMetadataOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.timeoutInSeconds, - Parameters.comp4 + Parameters.comp5 ], headerParameters: [ Parameters.metadata, @@ -807,7 +807,7 @@ const acquireLeaseOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.timeoutInSeconds, - Parameters.comp10 + Parameters.comp2 ], headerParameters: [ Parameters.duration, @@ -837,7 +837,7 @@ const releaseLeaseOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.timeoutInSeconds, - Parameters.comp10 + Parameters.comp2 ], headerParameters: [ Parameters.leaseId1, @@ -866,7 +866,7 @@ const changeLeaseOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.timeoutInSeconds, - Parameters.comp10 + Parameters.comp2 ], headerParameters: [ Parameters.leaseId1, @@ -896,12 +896,12 @@ const breakLeaseOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.timeoutInSeconds, - Parameters.comp10 + Parameters.comp2 ], headerParameters: [ Parameters.version, Parameters.requestId, - Parameters.action3, + Parameters.action4, Parameters.leaseId0 ], responses: { @@ -1004,6 +1004,7 @@ const getRangeListOperationSpec: coreHttp.OperationSpec = { ], queryParameters: [ Parameters.shareSnapshot, + Parameters.prevsharesnapshot, Parameters.timeoutInSeconds, Parameters.comp12 ], @@ -1114,7 +1115,7 @@ const listHandlesOperationSpec: coreHttp.OperationSpec = { Parameters.maxResults, Parameters.timeoutInSeconds, Parameters.shareSnapshot, - Parameters.comp8 + Parameters.comp9 ], headerParameters: [ Parameters.version @@ -1143,7 +1144,7 @@ const forceCloseHandlesOperationSpec: coreHttp.OperationSpec = { Parameters.timeoutInSeconds, Parameters.marker, Parameters.shareSnapshot, - Parameters.comp9 + Parameters.comp10 ], headerParameters: [ Parameters.handleId, diff --git a/sdk/storage/storage-file-share/src/generated/src/operations/share.ts b/sdk/storage/storage-file-share/src/generated/src/operations/share.ts index 5cc5179f048f..2478db467075 100644 --- a/sdk/storage/storage-file-share/src/generated/src/operations/share.ts +++ b/sdk/storage/storage-file-share/src/generated/src/operations/share.ts @@ -101,6 +101,143 @@ export class Share { callback) as Promise; } + /** + * The Lease Share operation establishes and manages a lock on a share, or the specified snapshot + * for set and delete share operations. + * @param [options] The optional parameters + * @returns Promise + */ + acquireLease(options?: Models.ShareAcquireLeaseOptionalParams): Promise; + /** + * @param callback The callback + */ + acquireLease(callback: coreHttp.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + acquireLease(options: Models.ShareAcquireLeaseOptionalParams, callback: coreHttp.ServiceCallback): void; + acquireLease(options?: Models.ShareAcquireLeaseOptionalParams | coreHttp.ServiceCallback, callback?: coreHttp.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + acquireLeaseOperationSpec, + callback) as Promise; + } + + /** + * The Lease Share operation establishes and manages a lock on a share, or the specified snapshot + * for set and delete share operations. + * @param leaseId Specifies the current lease ID on the resource. + * @param [options] The optional parameters + * @returns Promise + */ + releaseLease(leaseId: string, options?: Models.ShareReleaseLeaseOptionalParams): Promise; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param callback The callback + */ + releaseLease(leaseId: string, callback: coreHttp.ServiceCallback): void; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param options The optional parameters + * @param callback The callback + */ + releaseLease(leaseId: string, options: Models.ShareReleaseLeaseOptionalParams, callback: coreHttp.ServiceCallback): void; + releaseLease(leaseId: string, options?: Models.ShareReleaseLeaseOptionalParams | coreHttp.ServiceCallback, callback?: coreHttp.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + leaseId, + options + }, + releaseLeaseOperationSpec, + callback) as Promise; + } + + /** + * The Lease Share operation establishes and manages a lock on a share, or the specified snapshot + * for set and delete share operations. + * @param leaseId Specifies the current lease ID on the resource. + * @param [options] The optional parameters + * @returns Promise + */ + changeLease(leaseId: string, options?: Models.ShareChangeLeaseOptionalParams): Promise; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param callback The callback + */ + changeLease(leaseId: string, callback: coreHttp.ServiceCallback): void; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param options The optional parameters + * @param callback The callback + */ + changeLease(leaseId: string, options: Models.ShareChangeLeaseOptionalParams, callback: coreHttp.ServiceCallback): void; + changeLease(leaseId: string, options?: Models.ShareChangeLeaseOptionalParams | coreHttp.ServiceCallback, callback?: coreHttp.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + leaseId, + options + }, + changeLeaseOperationSpec, + callback) as Promise; + } + + /** + * The Lease Share operation establishes and manages a lock on a share, or the specified snapshot + * for set and delete share operations. + * @param leaseId Specifies the current lease ID on the resource. + * @param [options] The optional parameters + * @returns Promise + */ + renewLease(leaseId: string, options?: Models.ShareRenewLeaseOptionalParams): Promise; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param callback The callback + */ + renewLease(leaseId: string, callback: coreHttp.ServiceCallback): void; + /** + * @param leaseId Specifies the current lease ID on the resource. + * @param options The optional parameters + * @param callback The callback + */ + renewLease(leaseId: string, options: Models.ShareRenewLeaseOptionalParams, callback: coreHttp.ServiceCallback): void; + renewLease(leaseId: string, options?: Models.ShareRenewLeaseOptionalParams | coreHttp.ServiceCallback, callback?: coreHttp.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + leaseId, + options + }, + renewLeaseOperationSpec, + callback) as Promise; + } + + /** + * The Lease Share operation establishes and manages a lock on a share, or the specified snapshot + * for set and delete share operations. + * @param [options] The optional parameters + * @returns Promise + */ + breakLease(options?: Models.ShareBreakLeaseOptionalParams): Promise; + /** + * @param callback The callback + */ + breakLease(callback: coreHttp.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + breakLease(options: Models.ShareBreakLeaseOptionalParams, callback: coreHttp.ServiceCallback): void; + breakLease(options?: Models.ShareBreakLeaseOptionalParams | coreHttp.ServiceCallback, callback?: coreHttp.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + breakLeaseOperationSpec, + callback) as Promise; + } + /** * Creates a read-only snapshot of a share. * @param [options] The optional parameters @@ -368,7 +505,8 @@ const getPropertiesOperationSpec: coreHttp.OperationSpec = { Parameters.restype1 ], headerParameters: [ - Parameters.version + Parameters.version, + Parameters.leaseId0 ], responses: { 200: { @@ -396,7 +534,8 @@ const deleteMethodOperationSpec: coreHttp.OperationSpec = { ], headerParameters: [ Parameters.version, - Parameters.deleteSnapshots + Parameters.deleteSnapshots, + Parameters.leaseId0 ], responses: { 202: { @@ -411,6 +550,164 @@ const deleteMethodOperationSpec: coreHttp.OperationSpec = { serializer }; +const acquireLeaseOperationSpec: coreHttp.OperationSpec = { + httpMethod: "PUT", + path: "{shareName}", + urlParameters: [ + Parameters.url + ], + queryParameters: [ + Parameters.timeoutInSeconds, + Parameters.shareSnapshot, + Parameters.comp2, + Parameters.restype1 + ], + headerParameters: [ + Parameters.duration, + Parameters.proposedLeaseId, + Parameters.version, + Parameters.requestId, + Parameters.action0 + ], + responses: { + 201: { + headersMapper: Mappers.ShareAcquireLeaseHeaders + }, + default: { + bodyMapper: Mappers.StorageError, + headersMapper: Mappers.ShareAcquireLeaseHeaders + } + }, + isXML: true, + serializer +}; + +const releaseLeaseOperationSpec: coreHttp.OperationSpec = { + httpMethod: "PUT", + path: "{shareName}", + urlParameters: [ + Parameters.url + ], + queryParameters: [ + Parameters.timeoutInSeconds, + Parameters.shareSnapshot, + Parameters.comp2, + Parameters.restype1 + ], + headerParameters: [ + Parameters.leaseId1, + Parameters.version, + Parameters.requestId, + Parameters.action1 + ], + responses: { + 200: { + headersMapper: Mappers.ShareReleaseLeaseHeaders + }, + default: { + bodyMapper: Mappers.StorageError, + headersMapper: Mappers.ShareReleaseLeaseHeaders + } + }, + isXML: true, + serializer +}; + +const changeLeaseOperationSpec: coreHttp.OperationSpec = { + httpMethod: "PUT", + path: "{shareName}", + urlParameters: [ + Parameters.url + ], + queryParameters: [ + Parameters.timeoutInSeconds, + Parameters.shareSnapshot, + Parameters.comp2, + Parameters.restype1 + ], + headerParameters: [ + Parameters.leaseId1, + Parameters.proposedLeaseId, + Parameters.version, + Parameters.requestId, + Parameters.action2 + ], + responses: { + 200: { + headersMapper: Mappers.ShareChangeLeaseHeaders + }, + default: { + bodyMapper: Mappers.StorageError, + headersMapper: Mappers.ShareChangeLeaseHeaders + } + }, + isXML: true, + serializer +}; + +const renewLeaseOperationSpec: coreHttp.OperationSpec = { + httpMethod: "PUT", + path: "{shareName}", + urlParameters: [ + Parameters.url + ], + queryParameters: [ + Parameters.timeoutInSeconds, + Parameters.shareSnapshot, + Parameters.comp2, + Parameters.restype1 + ], + headerParameters: [ + Parameters.leaseId1, + Parameters.version, + Parameters.requestId, + Parameters.action3 + ], + responses: { + 200: { + headersMapper: Mappers.ShareRenewLeaseHeaders + }, + default: { + bodyMapper: Mappers.StorageError, + headersMapper: Mappers.ShareRenewLeaseHeaders + } + }, + isXML: true, + serializer +}; + +const breakLeaseOperationSpec: coreHttp.OperationSpec = { + httpMethod: "PUT", + path: "{shareName}", + urlParameters: [ + Parameters.url + ], + queryParameters: [ + Parameters.timeoutInSeconds, + Parameters.shareSnapshot, + Parameters.comp2, + Parameters.restype1 + ], + headerParameters: [ + Parameters.breakPeriod, + Parameters.version, + Parameters.requestId, + Parameters.action4, + Parameters.leaseId0 + ], + responses: { + 202: { + headersMapper: Mappers.ShareBreakLeaseHeaders + }, + default: { + bodyMapper: Mappers.StorageError, + headersMapper: Mappers.ShareBreakLeaseHeaders + } + }, + isXML: true, + serializer +}; + const createSnapshotOperationSpec: coreHttp.OperationSpec = { httpMethod: "PUT", path: "{shareName}", @@ -420,7 +717,7 @@ const createSnapshotOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp2 + Parameters.comp3 ], headerParameters: [ Parameters.metadata, @@ -448,7 +745,7 @@ const createPermissionOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp3 + Parameters.comp4 ], headerParameters: [ Parameters.version @@ -470,7 +767,7 @@ const createPermissionOperationSpec: coreHttp.OperationSpec = { headersMapper: Mappers.ShareCreatePermissionHeaders } }, - isXML: false, + isXML: true, serializer }; @@ -483,7 +780,7 @@ const getPermissionOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp3 + Parameters.comp4 ], headerParameters: [ Parameters.filePermissionKey0, @@ -516,7 +813,8 @@ const setQuotaOperationSpec: coreHttp.OperationSpec = { ], headerParameters: [ Parameters.version, - Parameters.quota + Parameters.quota, + Parameters.leaseId0 ], responses: { 200: { @@ -540,11 +838,12 @@ const setMetadataOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp4 + Parameters.comp5 ], headerParameters: [ Parameters.metadata, - Parameters.version + Parameters.version, + Parameters.leaseId0 ], responses: { 200: { @@ -568,10 +867,11 @@ const getAccessPolicyOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp5 + Parameters.comp6 ], headerParameters: [ - Parameters.version + Parameters.version, + Parameters.leaseId0 ], responses: { 200: { @@ -608,10 +908,11 @@ const setAccessPolicyOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp5 + Parameters.comp6 ], headerParameters: [ - Parameters.version + Parameters.version, + Parameters.leaseId0 ], requestBody: { parameterPath: [ @@ -656,10 +957,11 @@ const getStatisticsOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp6 + Parameters.comp7 ], headerParameters: [ - Parameters.version + Parameters.version, + Parameters.leaseId0 ], responses: { 200: { @@ -684,7 +986,7 @@ const restoreOperationSpec: coreHttp.OperationSpec = { queryParameters: [ Parameters.timeoutInSeconds, Parameters.restype1, - Parameters.comp7 + Parameters.comp8 ], headerParameters: [ Parameters.version, diff --git a/sdk/storage/storage-file-share/swagger/README.md b/sdk/storage/storage-file-share/swagger/README.md index 92acff2933e5..1af9d439ec00 100644 --- a/sdk/storage/storage-file-share/swagger/README.md +++ b/sdk/storage/storage-file-share/swagger/README.md @@ -12,7 +12,7 @@ enable-xml: true generate-metadata: false license-header: MICROSOFT_MIT_NO_VERSION output-folder: ../src/generated -input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.FileStorage/preview/2019-12-12/file.json +input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/storage-dataplane-preview/specification/storage/data-plane/Microsoft.FileStorage/preview/2020-02-10/file.json model-date-time-as-string: true optional-response-headers: true ```