diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 694e81b4a476..3a53f200f0b7 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -32,6 +32,7 @@ specifiers: '@rush-temp/arm-databricks': file:./projects/arm-databricks.tgz '@rush-temp/arm-datafactory': file:./projects/arm-datafactory.tgz '@rush-temp/arm-datalake-analytics': file:./projects/arm-datalake-analytics.tgz + '@rush-temp/arm-datamigration': file:./projects/arm-datamigration.tgz '@rush-temp/arm-desktopvirtualization': file:./projects/arm-desktopvirtualization.tgz '@rush-temp/arm-devtestlabs': file:./projects/arm-devtestlabs.tgz '@rush-temp/arm-eventgrid': file:./projects/arm-eventgrid.tgz @@ -213,6 +214,7 @@ dependencies: '@rush-temp/arm-databricks': file:projects/arm-databricks.tgz '@rush-temp/arm-datafactory': file:projects/arm-datafactory.tgz '@rush-temp/arm-datalake-analytics': file:projects/arm-datalake-analytics.tgz + '@rush-temp/arm-datamigration': file:projects/arm-datamigration.tgz '@rush-temp/arm-desktopvirtualization': file:projects/arm-desktopvirtualization.tgz '@rush-temp/arm-devtestlabs': file:projects/arm-devtestlabs.tgz '@rush-temp/arm-eventgrid': file:projects/arm-eventgrid.tgz @@ -6977,7 +6979,7 @@ packages: hasBin: true dev: false - /ts-node/10.4.0_276ff2ad8f60608417677a4691c0f835: + /ts-node/10.4.0_28670484a221c7e896c5d6b821a5cbb7: resolution: {integrity: sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==} hasBin: true peerDependencies: @@ -7003,11 +7005,11 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.2.4 + typescript: 4.4.4 yn: 3.1.1 dev: false - /ts-node/10.4.0_54d7f9b57c83a5c5120be11b085b9de6: + /ts-node/10.4.0_f9f9f28f986ed7ad377c75abc9f416f4: resolution: {integrity: sha512-g0FlPvvCXSIO1JDF6S232P5jPYqBkRL9qly81ZgAOSU7rwI0stphCgd2kLiCrU9DjQCrJMWEqcNSjQL02s6d8A==} hasBin: true peerDependencies: @@ -7033,7 +7035,7 @@ packages: create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 4.4.4 + typescript: 4.2.4 yn: 3.1.1 dev: false @@ -7629,7 +7631,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7857,7 +7859,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7908,7 +7910,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -7965,7 +7967,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -8458,6 +8460,27 @@ packages: uglify-js: 3.14.5 dev: false + file:projects/arm-datamigration.tgz: + resolution: {integrity: sha512-LRBEVEPv2m/K3dZB73YpWvTxzxSBN9yhUrAEOCLrQfJiLEzHldn4mtMskjcdNA8Xuea/AvQ2VP1COW4N7RdutA==, tarball: file:projects/arm-datamigration.tgz} + name: '@rush-temp/arm-datamigration' + version: 0.0.0 + dependencies: + '@microsoft/api-extractor': 7.19.2 + '@rollup/plugin-commonjs': 11.0.2_rollup@1.32.1 + '@rollup/plugin-json': 4.1.0_rollup@1.32.1 + '@rollup/plugin-multi-entry': 3.0.1_rollup@1.32.1 + '@rollup/plugin-node-resolve': 8.4.0_rollup@1.32.1 + cross-env: 7.0.3 + mkdirp: 1.0.4 + mocha: 7.2.0 + rimraf: 3.0.2 + rollup: 1.32.1 + rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 + tslib: 2.3.1 + typescript: 4.2.4 + uglify-js: 3.14.5 + dev: false + file:projects/arm-desktopvirtualization.tgz: resolution: {integrity: sha512-3U19vdKa3z0O/9CGkQMZc3+Q1ZmAx19snUOq6QF/djKcQEfdiP40NGU+EsN+Suc2sgUZZQUgw2mU7XMBvjd8Ag==, tarball: file:projects/arm-desktopvirtualization.tgz} name: '@rush-temp/arm-desktopvirtualization' @@ -9487,7 +9510,7 @@ packages: rollup: 1.32.1 safe-buffer: 5.2.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -9982,7 +10005,7 @@ packages: dev: false file:projects/core-amqp.tgz: - resolution: {integrity: sha512-jmyXvDp5FyZIlqp1zATESQp6qO2NqjKSfY5o9ojPsKN/g9WJ45RL4jfy+cD5u8C2t9jSDTsCoL+jbiLptpkDLA==, tarball: file:projects/core-amqp.tgz} + resolution: {integrity: sha512-nAZlMW/WFVSloK1iVzoSJNx9CHjvMl4/kJrnq1s5Okn96/AQX19SYkqfdvmew1Oy3bxfDC2g3n3e1CFLrlSyEg==, tarball: file:projects/core-amqp.tgz} name: '@rush-temp/core-amqp' version: 0.0.0 dependencies: @@ -10025,7 +10048,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 url: 0.11.0 @@ -10111,7 +10134,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -10342,7 +10365,7 @@ packages: shx: 0.3.3 sinon: 9.2.4 tough-cookie: 4.0.0 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 tunnel: 0.0.6 typescript: 4.2.4 @@ -10390,7 +10413,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -10657,7 +10680,7 @@ packages: sinon: 9.2.4 snap-shot-it: 7.9.6 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 universal-user-agent: 6.0.0 @@ -10714,7 +10737,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -10760,7 +10783,7 @@ packages: rollup: 1.32.1 rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 - ts-node: 10.4.0_54d7f9b57c83a5c5120be11b085b9de6 + ts-node: 10.4.0_28670484a221c7e896c5d6b821a5cbb7 tslib: 2.3.1 typescript: 4.4.4 yaml: 1.10.2 @@ -10917,7 +10940,7 @@ packages: rollup-plugin-sourcemaps: 0.4.2_rollup@1.32.1 rollup-plugin-terser: 5.3.1_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -10979,7 +11002,7 @@ packages: rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11034,7 +11057,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11087,7 +11110,7 @@ packages: prettier: 2.5.1 rimraf: 3.0.2 rollup: 1.32.1 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11289,7 +11312,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -11553,7 +11576,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11702,7 +11725,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11774,7 +11797,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11794,7 +11817,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11814,7 +11837,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11834,7 +11857,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11873,7 +11896,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11894,7 +11917,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11917,7 +11940,7 @@ packages: moment: 2.29.1 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -11937,7 +11960,7 @@ packages: eslint: 7.32.0 prettier: 1.19.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11957,7 +11980,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -11978,7 +12001,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12000,7 +12023,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12021,7 +12044,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12041,7 +12064,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -12060,7 +12083,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 transitivePeerDependencies: @@ -12081,7 +12104,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12104,7 +12127,7 @@ packages: node-fetch: 2.6.6 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12125,7 +12148,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12146,7 +12169,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12167,7 +12190,7 @@ packages: eslint: 7.32.0 prettier: 2.5.1 rimraf: 3.0.2 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uuid: 8.3.2 @@ -12539,7 +12562,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12608,7 +12631,7 @@ packages: rimraf: 3.0.2 rollup: 1.32.1 sinon: 9.2.4 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 ws: 8.3.0 @@ -12671,7 +12694,7 @@ packages: rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12734,7 +12757,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12797,7 +12820,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12858,7 +12881,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12916,7 +12939,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -12976,7 +12999,7 @@ packages: rollup-plugin-terser: 5.3.1_rollup@1.32.1 rollup-plugin-visualizer: 4.2.2_rollup@1.32.1 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 util: 0.12.4 @@ -13028,7 +13051,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -13082,7 +13105,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 @@ -13135,7 +13158,7 @@ packages: rollup: 1.32.1 sinon: 9.2.4 source-map-support: 0.5.21 - ts-node: 10.4.0_276ff2ad8f60608417677a4691c0f835 + ts-node: 10.4.0_f9f9f28f986ed7ad377c75abc9f416f4 tslib: 2.3.1 typescript: 4.2.4 uglify-js: 3.14.5 diff --git a/rush.json b/rush.json index 66a9aa13703f..64eddc01667c 100644 --- a/rush.json +++ b/rush.json @@ -1215,6 +1215,11 @@ "packageName": "@azure/arm-containerinstance", "projectFolder": "sdk/containerinstance/arm-containerinstance", "versionPolicyName": "management" + }, + { + "packageName": "@azure/arm-datamigration", + "projectFolder": "sdk/datamigration/arm-datamigration", + "versionPolicyName": "management" } ] } \ No newline at end of file diff --git a/sdk/datamigration/arm-datamigration/CHANGELOG.md b/sdk/datamigration/arm-datamigration/CHANGELOG.md new file mode 100644 index 000000000000..fdd5b9ea209e --- /dev/null +++ b/sdk/datamigration/arm-datamigration/CHANGELOG.md @@ -0,0 +1,11 @@ +# Release History + +## 3.0.0-beta.1 (2022-01-05) + +The package of @azure/arm-datamigration is using our next generation design principles since version 3.0.0-beta.1, which contains breaking changes. + +To understand the detail of the change, please refer to [Changelog](https://aka.ms/js-track2-changelog). + +To migrate the existing applications to the latest version, please refer to [Migration Guide](https://aka.ms/js-track2-migration-guide). + +To learn more, please refer to our documentation [Quick Start](https://aka.ms/js-track2-quickstart). diff --git a/sdk/datamigration/arm-datamigration/LICENSE.txt b/sdk/datamigration/arm-datamigration/LICENSE similarity index 96% rename from sdk/datamigration/arm-datamigration/LICENSE.txt rename to sdk/datamigration/arm-datamigration/LICENSE index b73b4a1293c3..5d1d36e0af80 100644 --- a/sdk/datamigration/arm-datamigration/LICENSE.txt +++ b/sdk/datamigration/arm-datamigration/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2019 Microsoft +Copyright (c) 2022 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +SOFTWARE. \ No newline at end of file diff --git a/sdk/datamigration/arm-datamigration/README.md b/sdk/datamigration/arm-datamigration/README.md index 6868b32fb3ef..3c2a9b9e3942 100644 --- a/sdk/datamigration/arm-datamigration/README.md +++ b/sdk/datamigration/arm-datamigration/README.md @@ -1,109 +1,98 @@ -## Azure DataMigrationServiceClient SDK for JavaScript +# Azure DataMigrationManagement client library for JavaScript -This package contains an isomorphic SDK (runs both in Node.js and in browsers) for DataMigrationServiceClient. +This package contains an isomorphic SDK (runs both in Node.js and in browsers) for Azure DataMigrationManagement client. + +Data Migration Client + +[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datamigration/arm-datamigration) | +[Package (NPM)](https://www.npmjs.com/package/@azure/arm-datamigration) | +[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-datamigration?view=azure-node-preview) | +[Samples](https://github.com/Azure-Samples/azure-samples-js-management) + +## Getting started ### Currently supported environments - [LTS versions of Node.js](https://nodejs.org/about/releases/) -- Latest versions of Safari, Chrome, Edge, and Firefox. +- Latest versions of Safari, Chrome, Edge and Firefox. ### Prerequisites -You must have an [Azure subscription](https://azure.microsoft.com/free/). +- An [Azure subscription][azure_sub]. -### How to install +### Install the `@azure/arm-datamigration` package -To use this SDK in your project, you will need to install two packages. -- `@azure/arm-datamigration` that contains the client. -- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory. +Install the Azure DataMigrationManagement client library for JavaScript with `npm`: -Install both packages using the below command: ```bash -npm install --save @azure/arm-datamigration @azure/identity +npm install @azure/arm-datamigration ``` -> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features. -If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options. +### Create and authenticate a `DataMigrationManagementClient` -### How to use +To create a client object to access the Azure DataMigrationManagement API, you will need the `endpoint` of your Azure DataMigrationManagement resource and a `credential`. The Azure DataMigrationManagement client can use Azure Active Directory credentials to authenticate. +You can find the endpoint for your Azure DataMigrationManagement resource in the [Azure Portal][azure_portal]. -- If you are writing a client side browser application, - - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions. - - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below. -- If you are writing a server side application, - - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples) - - Complete the set up steps required by the credential if any. - - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below. +You can authenticate with Azure Active Directory using a credential from the [@azure/identity][azure_identity] library or [an existing AAD Token](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token). -In the below samples, we pass the credential and the Azure subscription id to instantiate the client. -Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started. +To use the [DefaultAzureCredential][defaultazurecredential] provider shown below, or other credential providers provided with the Azure SDK, please install the `@azure/identity` package: + +```bash +npm install @azure/identity +``` -#### nodejs - Authentication, client creation, and listSkus resourceSkus as an example written in JavaScript. +You will also need to **register a new AAD application and grant access to Azure DataMigrationManagement** by assigning the suitable role to your service principal (note: roles such as `"Owner"` will not grant the necessary permissions). +Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`. -##### Sample code +For more information about how to create an Azure AD Application check out [this guide](https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). ```javascript +const { DataMigrationManagementClient } = require("@azure/arm-datamigration"); const { DefaultAzureCredential } = require("@azure/identity"); -const { DataMigrationServiceClient } = require("@azure/arm-datamigration"); -const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; - -// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples -// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead. -const creds = new DefaultAzureCredential(); -const client = new DataMigrationServiceClient(creds, subscriptionId); - -client.resourceSkus.listSkus().then((result) => { - console.log("The result is:"); - console.log(result); -}).catch((err) => { - console.log("An error occurred:"); - console.error(err); -}); +const subscriptionId = "00000000-0000-0000-0000-000000000000"; +const client = new DataMigrationManagementClient(new DefaultAzureCredential(), subscriptionId); ``` -#### browser - Authentication, client creation, and listSkus resourceSkus as an example written in JavaScript. - -In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser. - - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser. - - Note down the client Id from the previous step and use it in the browser sample below. - -##### Sample code - -- index.html - -```html - - - - @azure/arm-datamigration sample - - - - - - - + +### JavaScript Bundle +To use this client library in the browser, first you need to use a bundler. For details on how to do this, please refer to our [bundling documentation](https://aka.ms/AzureSDKBundling). + +## Key concepts + +### DataMigrationManagementClient + +`DataMigrationManagementClient` is the primary interface for developers using the Azure DataMigrationManagement client library. Explore the methods on this client object to understand the different features of the Azure DataMigrationManagement service that you can access. + +## Troubleshooting + +### Logging + +Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: + +```javascript +const { setLogLevel } = require("@azure/logger"); +setLogLevel("info"); ``` +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). + +## Next steps + +Please take a look at the [samples](https://github.com/Azure-Samples/azure-samples-js-management) directory for detailed examples on how to use this library. + +## Contributing + +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/main/CONTRIBUTING.md) to learn more about how to build and test the code. + ## Related projects -- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) +- [Microsoft Azure SDK for JavaScript](https://github.com/Azure/azure-sdk-for-js) + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fdatamigration%2Farm-datamigration%2FREADME.png) -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/datamigration/arm-datamigration/README.png) +[azure_cli]: https://docs.microsoft.com/cli/azure +[azure_sub]: https://azure.microsoft.com/free/ +[azure_sub]: https://azure.microsoft.com/free/ +[azure_portal]: https://portal.azure.com +[azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity +[defaultazurecredential]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity#defaultazurecredential diff --git a/sdk/datamigration/arm-datamigration/_meta.json b/sdk/datamigration/arm-datamigration/_meta.json new file mode 100644 index 000000000000..25456490c2d7 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/_meta.json @@ -0,0 +1,7 @@ +{ + "commit": "7086ee861c3a6196bb98f8b327af11d03e545a05", + "readme": "specification/datamigration/resource-manager/readme.md", + "autorest_command": "autorest --version=3.1.3 --typescript --modelerfour.lenient-model-deduplication --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/home/vsts/work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/datamigration/resource-manager/readme.md --use=@autorest/typescript@6.0.0-alpha.16.20211130.1", + "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", + "use": "@autorest/typescript@6.0.0-alpha.16.20211130.1" +} \ No newline at end of file diff --git a/sdk/datamigration/arm-datamigration/api-extractor.json b/sdk/datamigration/arm-datamigration/api-extractor.json new file mode 100644 index 000000000000..a59a60147e00 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/api-extractor.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "./dist-esm/src/index.d.ts", + "docModel": { "enabled": true }, + "apiReport": { "enabled": true, "reportFolder": "./review" }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "", + "publicTrimmedFilePath": "./types/arm-datamigration.d.ts" + }, + "messages": { + "tsdocMessageReporting": { "default": { "logLevel": "none" } }, + "extractorMessageReporting": { + "ae-missing-release-tag": { "logLevel": "none" }, + "ae-unresolved-link": { "logLevel": "none" } + } + } +} diff --git a/sdk/datamigration/arm-datamigration/package.json b/sdk/datamigration/arm-datamigration/package.json index a3596c215d2d..166925e3836e 100644 --- a/sdk/datamigration/arm-datamigration/package.json +++ b/sdk/datamigration/arm-datamigration/package.json @@ -1,58 +1,91 @@ { "name": "@azure/arm-datamigration", + "sdk-type": "mgmt", "author": "Microsoft Corporation", - "description": "DataMigrationServiceClient Library with typescript type definitions for node.js and browser.", - "version": "2.1.0", + "description": "A generated SDK for DataMigrationManagementClient.", + "version": "3.0.0-beta.1", + "engines": { "node": ">=12.0.0" }, "dependencies": { - "@azure/ms-rest-azure-js": "^2.1.0", - "@azure/ms-rest-js": "^2.2.0", - "@azure/core-auth": "^1.1.4", - "tslib": "^1.10.0" + "@azure/core-lro": "^2.2.0", + "@azure/abort-controller": "^1.0.0", + "@azure/core-paging": "^1.2.0", + "@azure/core-client": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-rest-pipeline": "^1.1.0", + "tslib": "^2.2.0" }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], + "keywords": ["node", "azure", "typescript", "browser", "isomorphic"], "license": "MIT", - "main": "./dist/arm-datamigration.js", - "module": "./esm/dataMigrationServiceClient.js", - "types": "./esm/dataMigrationServiceClient.d.ts", + "main": "./dist/index.js", + "module": "./dist-esm/src/index.js", + "types": "./types/arm-datamigration.d.ts", "devDependencies": { - "typescript": "^3.6.0", - "rollup": "^1.18.0", - "rollup-plugin-node-resolve": "^5.2.0", + "@microsoft/api-extractor": "^7.18.11", + "@rollup/plugin-commonjs": "11.0.2", + "@rollup/plugin-json": "^4.0.0", + "@rollup/plugin-multi-entry": "^3.0.0", + "@rollup/plugin-node-resolve": "^8.0.0", + "mkdirp": "^1.0.4", + "rollup": "^1.16.3", "rollup-plugin-sourcemaps": "^0.4.2", - "uglify-js": "^3.6.0" + "typescript": "~4.2.0", + "uglify-js": "^3.4.9", + "rimraf": "^3.0.0", + "@azure/identity": "^2.0.1", + "@azure-tools/test-recorder": "^1.0.0", + "mocha": "^7.1.1", + "cross-env": "^7.0.2" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/datamigration/arm-datamigration", "repository": { "type": "git", "url": "https://github.com/Azure/azure-sdk-for-js.git" }, - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, + "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", "dist/**/*.js.map", "dist/**/*.d.ts", "dist/**/*.d.ts.map", - "esm/**/*.js", - "esm/**/*.js.map", - "esm/**/*.d.ts", - "esm/**/*.d.ts.map", + "dist-esm/**/*.js", + "dist-esm/**/*.js.map", + "dist-esm/**/*.d.ts", + "dist-esm/**/*.d.ts.map", "src/**/*.ts", "README.md", + "LICENSE", "rollup.config.js", - "tsconfig.json" + "tsconfig.json", + "review/*", + "CHANGELOG.md", + "types/*" ], "scripts": { - "build": "tsc && rollup -c rollup.config.js && npm run minify", - "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/arm-datamigration.js.map'\" -o ./dist/arm-datamigration.min.js ./dist/arm-datamigration.js", - "prepack": "npm install && npm run build" + "build": "npm run clean && tsc && rollup -c 2>&1 && npm run minify && mkdirp ./review && npm run extract-api", + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/index.js.map'\" -o ./dist/index.min.js ./dist/index.js", + "prepack": "npm run build", + "pack": "npm pack 2>&1", + "extract-api": "api-extractor run --local", + "lint": "echo skipped", + "audit": "echo skipped", + "clean": "rimraf dist dist-browser dist-esm test-dist temp types *.tgz *.log", + "build:node": "echo skipped", + "build:browser": "echo skipped", + "build:test": "echo skipped", + "build:samples": "echo skipped.", + "check-format": "echo skipped", + "execute:samples": "echo skipped", + "format": "echo skipped", + "test": "npm run integration-test", + "test:node": "echo skipped", + "test:browser": "echo skipped", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "unit-test:node": "cross-env TEST_MODE=playback npm run integration-test:node", + "unit-test:browser": "echo skipped", + "integration-test": "npm run integration-test:node && npm run integration-test:browser", + "integration-test:node": "mocha -r esm --require ts-node/register --timeout 1200000 --full-trace test/*.ts --reporter ../../../common/tools/mocha-multi-reporter.js", + "integration-test:browser": "echo skipped", + "docs": "echo skipped" }, "sideEffects": false, "autoPublish": true diff --git a/sdk/datamigration/arm-datamigration/review/arm-datamigration.api.md b/sdk/datamigration/arm-datamigration/review/arm-datamigration.api.md new file mode 100644 index 000000000000..d2c1a9ce737b --- /dev/null +++ b/sdk/datamigration/arm-datamigration/review/arm-datamigration.api.md @@ -0,0 +1,4412 @@ +## API Report File for "@azure/arm-datamigration" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import * as coreAuth from '@azure/core-auth'; +import * as coreClient from '@azure/core-client'; +import { PagedAsyncIterableIterator } from '@azure/core-paging'; +import { PollerLike } from '@azure/core-lro'; +import { PollOperationState } from '@azure/core-lro'; + +// @public +export interface ApiError { + error?: ODataError; + readonly systemData?: SystemData; +} + +// @public +export interface AuthenticationKeys { + authKey1?: string; + authKey2?: string; +} + +// @public +export type AuthenticationType = string; + +// @public +export interface AvailableServiceSku { + capacity?: AvailableServiceSkuCapacity; + resourceType?: string; + sku?: AvailableServiceSkuSku; +} + +// @public +export interface AvailableServiceSkuCapacity { + default?: number; + maximum?: number; + minimum?: number; + scaleType?: ServiceScalability; +} + +// @public +export interface AvailableServiceSkuSku { + family?: string; + name?: string; + size?: string; + tier?: string; +} + +// @public +export interface AzureActiveDirectoryApp { + appKey: string; + applicationId: string; + tenantId: string; +} + +// @public +export interface AzureBlob { + accountKey?: string; + blobContainerName?: string; + storageAccountResourceId?: string; +} + +// @public +export interface BackupConfiguration { + sourceLocation?: SourceLocation; + targetLocation?: TargetLocation; +} + +// @public +export interface BackupFileInfo { + familySequenceNumber?: number; + fileLocation?: string; + status?: BackupFileStatus; +} + +// @public +export type BackupFileStatus = string; + +// @public +export type BackupMode = string; + +// @public +export interface BackupSetInfo { + backupFinishedDate?: Date; + backupSetId?: string; + backupStartDate?: Date; + backupType?: BackupType; + databaseName?: string; + firstLsn?: string; + isBackupRestored?: boolean; + lastLsn?: string; + lastModifiedTime?: Date; + listOfBackupFiles?: BackupFileInfo[]; +} + +// @public +export type BackupType = string; + +// @public +export interface BlobShare { + sasUri: string; +} + +// @public +export interface CheckOCIDriverTaskInput { + serverVersion?: string; +} + +// @public +export interface CheckOCIDriverTaskOutput { + installedDriver?: OracleOCIDriverInfo; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type CheckOCIDriverTaskProperties = ProjectTaskProperties & { + taskType: "Service.Check.OCI"; + input?: CheckOCIDriverTaskInput; + readonly output?: CheckOCIDriverTaskOutput[]; +}; + +// @public +export interface CommandProperties { + commandType: "Migrate.Sync.Complete.Database" | "Migrate.SqlServer.AzureDbSqlMi.Complete" | "cancel" | "finish" | "restart"; + readonly errors?: ODataError[]; + readonly state?: CommandState; +} + +// @public (undocumented) +export type CommandPropertiesUnion = CommandProperties | MigrateSyncCompleteCommandProperties | MigrateMISyncCompleteCommandProperties | MongoDbCancelCommand | MongoDbFinishCommand | MongoDbRestartCommand; + +// @public +export type CommandState = string; + +// @public +export type CommandType = string; + +// @public +export interface ConnectionInfo { + password?: string; + type: "MongoDbConnectionInfo" | "SqlConnectionInfo" | "MySqlConnectionInfo" | "OracleConnectionInfo" | "PostgreSqlConnectionInfo" | "MiSqlConnectionInfo"; + userName?: string; +} + +// @public (undocumented) +export type ConnectionInfoUnion = ConnectionInfo | MongoDbConnectionInfo | SqlConnectionInfo | MySqlConnectionInfo | OracleConnectionInfo | PostgreSqlConnectionInfo | MiSqlConnectionInfo; + +// @public +export type ConnectToMongoDbTaskProperties = ProjectTaskProperties & { + taskType: "Connect.MongoDb"; + input?: MongoDbConnectionInfo; + readonly output?: MongoDbClusterInfo[]; +}; + +// @public +export interface ConnectToSourceMySqlTaskInput { + checkPermissionsGroup?: ServerLevelPermissionsGroup; + isOfflineMigration?: boolean; + sourceConnectionInfo: MySqlConnectionInfo; + targetPlatform?: MySqlTargetPlatformType; +} + +// @public +export type ConnectToSourceMySqlTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToSource.MySql"; + input?: ConnectToSourceMySqlTaskInput; + readonly output?: ConnectToSourceNonSqlTaskOutput[]; +}; + +// @public +export interface ConnectToSourceNonSqlTaskOutput { + readonly databases?: string[]; + readonly id?: string; + readonly serverProperties?: ServerProperties; + readonly sourceServerBrandVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export interface ConnectToSourceOracleSyncTaskInput { + sourceConnectionInfo: OracleConnectionInfo; +} + +// @public +export interface ConnectToSourceOracleSyncTaskOutput { + readonly databases?: string[]; + readonly sourceServerBrandVersion?: string; + readonly sourceServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToSourceOracleSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToSource.Oracle.Sync"; + input?: ConnectToSourceOracleSyncTaskInput; + readonly output?: ConnectToSourceOracleSyncTaskOutput[]; +}; + +// @public +export interface ConnectToSourcePostgreSqlSyncTaskInput { + sourceConnectionInfo: PostgreSqlConnectionInfo; +} + +// @public +export interface ConnectToSourcePostgreSqlSyncTaskOutput { + readonly databases?: string[]; + readonly id?: string; + readonly sourceServerBrandVersion?: string; + readonly sourceServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToSourcePostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToSource.PostgreSql.Sync"; + input?: ConnectToSourcePostgreSqlSyncTaskInput; + readonly output?: ConnectToSourcePostgreSqlSyncTaskOutput[]; +}; + +// @public +export type ConnectToSourceSqlServerSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToSource.SqlServer.Sync"; + input?: ConnectToSourceSqlServerTaskInput; + readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; +}; + +// @public +export interface ConnectToSourceSqlServerTaskInput { + checkPermissionsGroup?: ServerLevelPermissionsGroup; + collectAgentJobs?: boolean; + collectDatabases?: boolean; + collectLogins?: boolean; + collectTdeCertificateInfo?: boolean; + sourceConnectionInfo: SqlConnectionInfo; + validateSsisCatalogOnly?: boolean; +} + +// @public +export interface ConnectToSourceSqlServerTaskOutput { + readonly id?: string; + resultType: "TaskLevelOutput" | "DatabaseLevelOutput" | "LoginLevelOutput" | "AgentJobLevelOutput"; +} + +// @public +export type ConnectToSourceSqlServerTaskOutputAgentJobLevel = ConnectToSourceSqlServerTaskOutput & { + resultType: "AgentJobLevelOutput"; + readonly name?: string; + readonly jobCategory?: string; + readonly isEnabled?: boolean; + readonly jobOwner?: string; + readonly lastExecutedOn?: Date; + readonly validationErrors?: ReportableException[]; + readonly migrationEligibility?: MigrationEligibilityInfo; +}; + +// @public +export type ConnectToSourceSqlServerTaskOutputDatabaseLevel = ConnectToSourceSqlServerTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly name?: string; + readonly sizeMB?: number; + readonly databaseFiles?: DatabaseFileInfo[]; + readonly compatibilityLevel?: DatabaseCompatLevel; + readonly databaseState?: DatabaseState; +}; + +// @public +export type ConnectToSourceSqlServerTaskOutputLoginLevel = ConnectToSourceSqlServerTaskOutput & { + resultType: "LoginLevelOutput"; + readonly name?: string; + readonly loginType?: LoginType; + readonly defaultDatabase?: string; + readonly isEnabled?: boolean; + readonly migrationEligibility?: MigrationEligibilityInfo; +}; + +// @public +export type ConnectToSourceSqlServerTaskOutputTaskLevel = ConnectToSourceSqlServerTaskOutput & { + resultType: "TaskLevelOutput"; + readonly databases?: string; + readonly logins?: string; + readonly agentJobs?: string; + readonly databaseTdeCertificateMapping?: string; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly validationErrors?: ReportableException[]; +}; + +// @public (undocumented) +export type ConnectToSourceSqlServerTaskOutputUnion = ConnectToSourceSqlServerTaskOutput | ConnectToSourceSqlServerTaskOutputTaskLevel | ConnectToSourceSqlServerTaskOutputDatabaseLevel | ConnectToSourceSqlServerTaskOutputLoginLevel | ConnectToSourceSqlServerTaskOutputAgentJobLevel; + +// @public +export type ConnectToSourceSqlServerTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToSource.SqlServer"; + input?: ConnectToSourceSqlServerTaskInput; + readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; +}; + +// @public +export interface ConnectToTargetAzureDbForMySqlTaskInput { + isOfflineMigration?: boolean; + sourceConnectionInfo: MySqlConnectionInfo; + targetConnectionInfo: MySqlConnectionInfo; +} + +// @public +export interface ConnectToTargetAzureDbForMySqlTaskOutput { + readonly databases?: string[]; + readonly id?: string; + readonly serverVersion?: string; + readonly targetServerBrandVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToTargetAzureDbForMySqlTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.AzureDbForMySql"; + input?: ConnectToTargetAzureDbForMySqlTaskInput; + readonly output?: ConnectToTargetAzureDbForMySqlTaskOutput[]; +}; + +// @public +export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskInput { + sourceConnectionInfo: PostgreSqlConnectionInfo; + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +// @public +export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput { + readonly databases?: string[]; + readonly id?: string; + readonly targetServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.AzureDbForPostgreSql.Sync"; + input?: ConnectToTargetAzureDbForPostgreSqlSyncTaskInput; + readonly output?: ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput[]; +}; + +// @public +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput { + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +// @public +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput { + readonly databases?: string[]; + databaseSchemaMap?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem[]; + readonly targetServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public (undocumented) +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem { + // (undocumented) + database?: string; + // (undocumented) + schemas?: string[]; +} + +// @public +export type ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync"; + input?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput; + readonly output?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput[]; +}; + +// @public +export interface ConnectToTargetSqlDbSyncTaskInput { + sourceConnectionInfo: SqlConnectionInfo; + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export type ConnectToTargetSqlDbSyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.SqlDb.Sync"; + input?: ConnectToTargetSqlDbSyncTaskInput; + readonly output?: ConnectToTargetSqlDbTaskOutput[]; +}; + +// @public +export interface ConnectToTargetSqlDbTaskInput { + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export interface ConnectToTargetSqlDbTaskOutput { + readonly databases?: string; + readonly id?: string; + readonly targetServerBrandVersion?: string; + readonly targetServerVersion?: string; +} + +// @public +export type ConnectToTargetSqlDbTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.SqlDb"; + input?: ConnectToTargetSqlDbTaskInput; + readonly output?: ConnectToTargetSqlDbTaskOutput[]; +}; + +// @public +export interface ConnectToTargetSqlMISyncTaskInput { + azureApp: AzureActiveDirectoryApp; + targetConnectionInfo: MiSqlConnectionInfo; +} + +// @public +export interface ConnectToTargetSqlMISyncTaskOutput { + readonly targetServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToTargetSqlMISyncTaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.AzureSqlDbMI.Sync.LRS"; + input?: ConnectToTargetSqlMISyncTaskInput; + readonly output?: ConnectToTargetSqlMISyncTaskOutput[]; +}; + +// @public +export interface ConnectToTargetSqlMITaskInput { + collectAgentJobs?: boolean; + collectLogins?: boolean; + targetConnectionInfo: SqlConnectionInfo; + validateSsisCatalogOnly?: boolean; +} + +// @public +export interface ConnectToTargetSqlMITaskOutput { + readonly agentJobs?: string[]; + readonly id?: string; + readonly logins?: string[]; + readonly targetServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ConnectToTargetSqlMITaskProperties = ProjectTaskProperties & { + taskType: "ConnectToTarget.AzureSqlDbMI"; + input?: ConnectToTargetSqlMITaskInput; + readonly output?: ConnectToTargetSqlMITaskOutput[]; +}; + +// @public +export type CreatedByType = string; + +// @public +export interface Database { + collation?: string; + compatibilityLevel?: DatabaseCompatLevel; + databaseState?: DatabaseState; + fqdn?: string; + id?: string; + installId?: string; + name?: string; + serverCoreCount?: number; + serverDefaultBackupPath?: string; + serverDefaultDataPath?: string; + serverDefaultLogPath?: string; + serverEdition?: string; + serverId?: string; + serverLevel?: string; + serverName?: string; + serverVersion?: string; + serverVisibleOnlineCoreCount?: number; +} + +// @public +export interface DatabaseBackupInfo { + readonly backupFiles?: string[]; + readonly backupFinishDate?: Date; + readonly backupType?: BackupType; + readonly databaseName?: string; + readonly familyCount?: number; + readonly isCompressed?: boolean; + readonly isDamaged?: boolean; + readonly position?: number; +} + +// @public +export type DatabaseCompatLevel = string; + +// @public +export interface DatabaseFileInfo { + databaseName?: string; + fileType?: DatabaseFileType; + id?: string; + logicalName?: string; + physicalFullName?: string; + restoreFullName?: string; + sizeMB?: number; +} + +// @public +export interface DatabaseFileInput { + fileType?: DatabaseFileType; + id?: string; + logicalName?: string; + physicalFullName?: string; + restoreFullName?: string; +} + +// @public +export type DatabaseFileType = string; + +// @public +export interface DatabaseInfo { + sourceDatabaseName: string; +} + +// @public +export type DatabaseMigration = ProxyResource & { + readonly systemData?: SystemData; + properties?: DatabaseMigrationPropertiesUnion; +}; + +// @public +export interface DatabaseMigrationListResult { + readonly nextLink?: string; + readonly value?: DatabaseMigration[]; +} + +// @public +export interface DatabaseMigrationProperties { + readonly endedOn?: Date; + kind: "SqlMi" | "SqlVm"; + readonly migrationFailureError?: ErrorInfo; + migrationOperationId?: string; + migrationService?: string; + readonly migrationStatus?: string; + readonly provisioningState?: string; + scope?: string; + sourceDatabaseName?: string; + sourceSqlConnection?: SqlConnectionInformation; + readonly startedOn?: Date; +} + +// @public +export type DatabaseMigrationPropertiesSqlMi = DatabaseMigrationProperties & { + kind: "SqlMi"; + readonly migrationStatusDetails?: MigrationStatusDetails; + targetDatabaseCollation?: string; + provisioningError?: string; + backupConfiguration?: BackupConfiguration; + offlineConfiguration?: OfflineConfiguration; +}; + +// @public +export type DatabaseMigrationPropertiesSqlVm = DatabaseMigrationProperties & { + kind: "SqlVm"; + readonly migrationStatusDetails?: MigrationStatusDetails; + targetDatabaseCollation?: string; + provisioningError?: string; + backupConfiguration?: BackupConfiguration; + offlineConfiguration?: OfflineConfiguration; +}; + +// @public (undocumented) +export type DatabaseMigrationPropertiesUnion = DatabaseMigrationProperties | DatabaseMigrationPropertiesSqlMi | DatabaseMigrationPropertiesSqlVm; + +// @public +export type DatabaseMigrationSqlMi = ProxyResource & { + readonly systemData?: SystemData; + properties?: DatabaseMigrationPropertiesSqlMi; +}; + +// @public +export type DatabaseMigrationSqlVm = ProxyResource & { + readonly systemData?: SystemData; + properties?: DatabaseMigrationPropertiesSqlVm; +}; + +// @public +export interface DatabaseMigrationsSqlMi { + beginCancel(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlMiCancelOptionalParams): Promise, void>>; + beginCancelAndWait(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlMiCancelOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: DatabaseMigrationSqlMi, options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams): Promise, DatabaseMigrationsSqlMiCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: DatabaseMigrationSqlMi, options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams): Promise; + beginCutover(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlMiCutoverOptionalParams): Promise, void>>; + beginCutoverAndWait(resourceGroupName: string, managedInstanceName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlMiCutoverOptionalParams): Promise; + get(resourceGroupName: string, managedInstanceName: string, targetDbName: string, options?: DatabaseMigrationsSqlMiGetOptionalParams): Promise; +} + +// @public +export interface DatabaseMigrationsSqlMiCancelOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type DatabaseMigrationsSqlMiCreateOrUpdateResponse = DatabaseMigrationSqlMi; + +// @public +export interface DatabaseMigrationsSqlMiCutoverOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface DatabaseMigrationsSqlMiGetOptionalParams extends coreClient.OperationOptions { + expand?: string; + migrationOperationId?: string; +} + +// @public +export type DatabaseMigrationsSqlMiGetResponse = DatabaseMigrationSqlMi; + +// @public +export interface DatabaseMigrationsSqlVm { + beginCancel(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlVmCancelOptionalParams): Promise, void>>; + beginCancelAndWait(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlVmCancelOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: DatabaseMigrationSqlVm, options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams): Promise, DatabaseMigrationsSqlVmCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: DatabaseMigrationSqlVm, options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams): Promise; + beginCutover(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlVmCutoverOptionalParams): Promise, void>>; + beginCutoverAndWait(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, parameters: MigrationOperationInput, options?: DatabaseMigrationsSqlVmCutoverOptionalParams): Promise; + get(resourceGroupName: string, sqlVirtualMachineName: string, targetDbName: string, options?: DatabaseMigrationsSqlVmGetOptionalParams): Promise; +} + +// @public +export interface DatabaseMigrationsSqlVmCancelOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type DatabaseMigrationsSqlVmCreateOrUpdateResponse = DatabaseMigrationSqlVm; + +// @public +export interface DatabaseMigrationsSqlVmCutoverOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface DatabaseMigrationsSqlVmGetOptionalParams extends coreClient.OperationOptions { + expand?: string; + migrationOperationId?: string; +} + +// @public +export type DatabaseMigrationsSqlVmGetResponse = DatabaseMigrationSqlVm; + +// @public +export type DatabaseMigrationStage = string; + +// @public +export type DatabaseMigrationState = string; + +// @public +export interface DatabaseObjectName { + readonly databaseName?: string; + readonly objectName?: string; + objectType?: ObjectType; + readonly schemaName?: string; +} + +// @public +export type DatabaseState = string; + +// @public +export type DatabaseSummaryResult = DataItemMigrationSummaryResult & { + readonly sizeMB?: number; +}; + +// @public +export interface DatabaseTable { + readonly hasRows?: boolean; + readonly name?: string; +} + +// @public +export interface DataIntegrityValidationResult { + failedObjects?: { + [propertyName: string]: string; + }; + validationErrors?: ValidationError; +} + +// @public +export interface DataItemMigrationSummaryResult { + readonly endedOn?: Date; + readonly errorPrefix?: string; + readonly itemsCompletedCount?: number; + readonly itemsCount?: number; + readonly name?: string; + readonly resultPrefix?: string; + readonly startedOn?: Date; + readonly state?: MigrationState; + readonly statusMessage?: string; +} + +// @public +export interface DataMigrationError { + readonly message?: string; + type?: ErrorType; +} + +// @public (undocumented) +export class DataMigrationManagementClient extends coreClient.ServiceClient { + // (undocumented) + $host: string; + constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: DataMigrationManagementClientOptionalParams); + // (undocumented) + apiVersion: string; + // (undocumented) + databaseMigrationsSqlMi: DatabaseMigrationsSqlMi; + // (undocumented) + databaseMigrationsSqlVm: DatabaseMigrationsSqlVm; + // (undocumented) + files: Files; + // (undocumented) + operations: Operations; + // (undocumented) + projects: Projects; + // (undocumented) + resourceSkus: ResourceSkus; + // (undocumented) + services: Services; + // (undocumented) + serviceTasks: ServiceTasks; + // (undocumented) + sqlMigrationServices: SqlMigrationServices; + // (undocumented) + subscriptionId: string; + // (undocumented) + tasks: Tasks; + // (undocumented) + usages: Usages; +} + +// @public +export interface DataMigrationManagementClientOptionalParams extends coreClient.ServiceClientOptions { + $host?: string; + apiVersion?: string; + endpoint?: string; +} + +// @public +export interface DataMigrationProjectMetadata { + readonly selectedMigrationTables?: MigrationTableMetadata[]; + readonly sourceServerName?: string; + readonly sourceServerPort?: string; + readonly sourceUsername?: string; + readonly targetDbName?: string; + readonly targetServerName?: string; + readonly targetUsername?: string; + readonly targetUsingWinAuth?: boolean; +} + +// @public +export type DataMigrationResultCode = string; + +// @public +export type DataMigrationService = TrackedResource & { + etag?: string; + kind?: string; + sku?: ServiceSku; + readonly provisioningState?: ServiceProvisioningState; + publicKey?: string; + virtualSubnetId?: string; + virtualNicId?: string; + autoStopDelay?: string; + deleteResourcesOnStop?: boolean; +}; + +// @public +export interface DataMigrationServiceList { + nextLink?: string; + value?: DataMigrationService[]; +} + +// @public +export interface DataMigrationServiceStatusResponse { + agentVersion?: string; + status?: string; + supportedTaskTypes?: string[]; + vmSize?: string; +} + +// @public +export interface DeleteNode { + integrationRuntimeName?: string; + nodeName?: string; +} + +// @public +export interface ErrorInfo { + readonly code?: string; + readonly message?: string; +} + +// @public +export type ErrorType = string; + +// @public +export interface ExecutionStatistics { + cpuTimeMs?: number; + elapsedTimeMs?: number; + executionCount?: number; + hasErrors?: boolean; + sqlErrors?: string[]; + waitStats?: { + [propertyName: string]: WaitStatistics; + }; +} + +// @public +interface FileList_2 { + nextLink?: string; + value?: ProjectFile[]; +} +export { FileList_2 as FileList } + +// @public +export interface Files { + createOrUpdate(groupName: string, serviceName: string, projectName: string, fileName: string, parameters: ProjectFile, options?: FilesCreateOrUpdateOptionalParams): Promise; + delete(groupName: string, serviceName: string, projectName: string, fileName: string, options?: FilesDeleteOptionalParams): Promise; + get(groupName: string, serviceName: string, projectName: string, fileName: string, options?: FilesGetOptionalParams): Promise; + list(groupName: string, serviceName: string, projectName: string, options?: FilesListOptionalParams): PagedAsyncIterableIterator; + read(groupName: string, serviceName: string, projectName: string, fileName: string, options?: FilesReadOptionalParams): Promise; + readWrite(groupName: string, serviceName: string, projectName: string, fileName: string, options?: FilesReadWriteOptionalParams): Promise; + update(groupName: string, serviceName: string, projectName: string, fileName: string, parameters: ProjectFile, options?: FilesUpdateOptionalParams): Promise; +} + +// @public +export interface FilesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesCreateOrUpdateResponse = ProjectFile; + +// @public +export interface FilesDeleteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export interface FilesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesGetResponse = ProjectFile; + +// @public +export interface FileShare { + password?: string; + path: string; + userName?: string; +} + +// @public +export interface FilesListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesListNextResponse = FileList_2; + +// @public +export interface FilesListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesListResponse = FileList_2; + +// @public +export interface FilesReadOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesReadResponse = FileStorageInfo; + +// @public +export interface FilesReadWriteOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesReadWriteResponse = FileStorageInfo; + +// @public +export interface FileStorageInfo { + headers?: { + [propertyName: string]: string; + }; + uri?: string; +} + +// @public +export interface FilesUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type FilesUpdateResponse = ProjectFile; + +// @public +export interface GetProjectDetailsNonSqlTaskInput { + projectLocation: string; + projectName: string; +} + +// @public +export interface GetTdeCertificatesSqlTaskInput { + backupFileShare: FileShare; + connectionInfo: SqlConnectionInfo; + selectedCertificates: SelectedCertificateInput[]; +} + +// @public +export interface GetTdeCertificatesSqlTaskOutput { + readonly base64EncodedCertificates?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetTdeCertificatesSqlTaskProperties = ProjectTaskProperties & { + taskType: "GetTDECertificates.Sql"; + input?: GetTdeCertificatesSqlTaskInput; + readonly output?: GetTdeCertificatesSqlTaskOutput[]; +}; + +// @public +export interface GetUserTablesMySqlTaskInput { + connectionInfo: MySqlConnectionInfo; + selectedDatabases: string[]; +} + +// @public +export interface GetUserTablesMySqlTaskOutput { + readonly databasesToTables?: string; + readonly id?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetUserTablesMySqlTaskProperties = ProjectTaskProperties & { + taskType: "GetUserTablesMySql"; + input?: GetUserTablesMySqlTaskInput; + readonly output?: GetUserTablesMySqlTaskOutput[]; +}; + +// @public +export interface GetUserTablesOracleTaskInput { + connectionInfo: OracleConnectionInfo; + selectedSchemas: string[]; +} + +// @public +export interface GetUserTablesOracleTaskOutput { + readonly schemaName?: string; + readonly tables?: DatabaseTable[]; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetUserTablesOracleTaskProperties = ProjectTaskProperties & { + taskType: "GetUserTablesOracle"; + input?: GetUserTablesOracleTaskInput; + readonly output?: GetUserTablesOracleTaskOutput[]; +}; + +// @public +export interface GetUserTablesPostgreSqlTaskInput { + connectionInfo: PostgreSqlConnectionInfo; + selectedDatabases: string[]; +} + +// @public +export interface GetUserTablesPostgreSqlTaskOutput { + readonly databaseName?: string; + readonly tables?: DatabaseTable[]; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetUserTablesPostgreSqlTaskProperties = ProjectTaskProperties & { + taskType: "GetUserTablesPostgreSql"; + input?: GetUserTablesPostgreSqlTaskInput; + readonly output?: GetUserTablesPostgreSqlTaskOutput[]; +}; + +// @public +export interface GetUserTablesSqlSyncTaskInput { + selectedSourceDatabases: string[]; + selectedTargetDatabases: string[]; + sourceConnectionInfo: SqlConnectionInfo; + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export interface GetUserTablesSqlSyncTaskOutput { + readonly databasesToSourceTables?: string; + readonly databasesToTargetTables?: string; + readonly tableValidationErrors?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetUserTablesSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "GetUserTables.AzureSqlDb.Sync"; + input?: GetUserTablesSqlSyncTaskInput; + readonly output?: GetUserTablesSqlSyncTaskOutput[]; +}; + +// @public +export interface GetUserTablesSqlTaskInput { + connectionInfo: SqlConnectionInfo; + selectedDatabases: string[]; +} + +// @public +export interface GetUserTablesSqlTaskOutput { + readonly databasesToTables?: string; + readonly id?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type GetUserTablesSqlTaskProperties = ProjectTaskProperties & { + taskType: "GetUserTables.Sql"; + input?: GetUserTablesSqlTaskInput; + readonly output?: GetUserTablesSqlTaskOutput[]; +}; + +// @public +export interface InstallOCIDriverTaskInput { + driverPackageName?: string; +} + +// @public +export interface InstallOCIDriverTaskOutput { + readonly validationErrors?: ReportableException[]; +} + +// @public +export type InstallOCIDriverTaskProperties = ProjectTaskProperties & { + taskType: "Service.Install.OCI"; + input?: InstallOCIDriverTaskInput; + readonly output?: InstallOCIDriverTaskOutput[]; +}; + +// @public +export interface IntegrationRuntimeMonitoringData { + readonly name?: string; + readonly nodes?: NodeMonitoringData[]; +} + +// @public +export enum KnownAuthenticationType { + // (undocumented) + ActiveDirectoryIntegrated = "ActiveDirectoryIntegrated", + // (undocumented) + ActiveDirectoryPassword = "ActiveDirectoryPassword", + // (undocumented) + None = "None", + // (undocumented) + SqlAuthentication = "SqlAuthentication", + // (undocumented) + WindowsAuthentication = "WindowsAuthentication" +} + +// @public +export enum KnownBackupFileStatus { + // (undocumented) + Arrived = "Arrived", + // (undocumented) + Cancelled = "Cancelled", + // (undocumented) + Queued = "Queued", + // (undocumented) + Restored = "Restored", + // (undocumented) + Restoring = "Restoring", + // (undocumented) + Uploaded = "Uploaded", + // (undocumented) + Uploading = "Uploading" +} + +// @public +export enum KnownBackupMode { + // (undocumented) + CreateBackup = "CreateBackup", + // (undocumented) + ExistingBackup = "ExistingBackup" +} + +// @public +export enum KnownBackupType { + // (undocumented) + Database = "Database", + // (undocumented) + DifferentialDatabase = "DifferentialDatabase", + // (undocumented) + DifferentialFile = "DifferentialFile", + // (undocumented) + DifferentialPartial = "DifferentialPartial", + // (undocumented) + File = "File", + // (undocumented) + Partial = "Partial", + // (undocumented) + TransactionLog = "TransactionLog" +} + +// @public +export enum KnownCommandState { + // (undocumented) + Accepted = "Accepted", + // (undocumented) + Failed = "Failed", + // (undocumented) + Running = "Running", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Unknown = "Unknown" +} + +// @public +export enum KnownCommandType { + // (undocumented) + Cancel = "cancel", + // (undocumented) + Finish = "finish", + // (undocumented) + MigrateSqlServerAzureDbSqlMiComplete = "Migrate.SqlServer.AzureDbSqlMi.Complete", + // (undocumented) + MigrateSyncCompleteDatabase = "Migrate.Sync.Complete.Database", + // (undocumented) + Restart = "restart" +} + +// @public +export enum KnownCreatedByType { + // (undocumented) + Application = "Application", + // (undocumented) + Key = "Key", + // (undocumented) + ManagedIdentity = "ManagedIdentity", + // (undocumented) + User = "User" +} + +// @public +export enum KnownDatabaseCompatLevel { + // (undocumented) + CompatLevel100 = "CompatLevel100", + // (undocumented) + CompatLevel110 = "CompatLevel110", + // (undocumented) + CompatLevel120 = "CompatLevel120", + // (undocumented) + CompatLevel130 = "CompatLevel130", + // (undocumented) + CompatLevel140 = "CompatLevel140", + // (undocumented) + CompatLevel80 = "CompatLevel80", + // (undocumented) + CompatLevel90 = "CompatLevel90" +} + +// @public +export enum KnownDatabaseFileType { + // (undocumented) + Filestream = "Filestream", + // (undocumented) + Fulltext = "Fulltext", + // (undocumented) + Log = "Log", + // (undocumented) + NotSupported = "NotSupported", + // (undocumented) + Rows = "Rows" +} + +// @public +export enum KnownDatabaseMigrationStage { + // (undocumented) + Backup = "Backup", + // (undocumented) + Completed = "Completed", + // (undocumented) + FileCopy = "FileCopy", + // (undocumented) + Initialize = "Initialize", + // (undocumented) + None = "None", + // (undocumented) + Restore = "Restore" +} + +// @public +export enum KnownDatabaseMigrationState { + // (undocumented) + Cancelled = "CANCELLED", + // (undocumented) + Completed = "COMPLETED", + // (undocumented) + CutoverStart = "CUTOVER_START", + // (undocumented) + Failed = "FAILED", + // (undocumented) + FullBackupUploadStart = "FULL_BACKUP_UPLOAD_START", + // (undocumented) + Initial = "INITIAL", + // (undocumented) + LOGShippingStart = "LOG_SHIPPING_START", + // (undocumented) + PostCutoverComplete = "POST_CUTOVER_COMPLETE", + // (undocumented) + Undefined = "UNDEFINED", + // (undocumented) + UploadLOGFilesStart = "UPLOAD_LOG_FILES_START" +} + +// @public +export enum KnownDatabaseState { + // (undocumented) + Copying = "Copying", + // (undocumented) + Emergency = "Emergency", + // (undocumented) + Offline = "Offline", + // (undocumented) + OfflineSecondary = "OfflineSecondary", + // (undocumented) + Online = "Online", + // (undocumented) + Recovering = "Recovering", + // (undocumented) + RecoveryPending = "RecoveryPending", + // (undocumented) + Restoring = "Restoring", + // (undocumented) + Suspect = "Suspect" +} + +// @public +export enum KnownDataMigrationResultCode { + // (undocumented) + Completed = "Completed", + // (undocumented) + FatalError = "FatalError", + // (undocumented) + Initial = "Initial", + // (undocumented) + ObjectNotExistsInSource = "ObjectNotExistsInSource", + // (undocumented) + ObjectNotExistsInTarget = "ObjectNotExistsInTarget", + // (undocumented) + TargetObjectIsInaccessible = "TargetObjectIsInaccessible" +} + +// @public +export enum KnownErrorType { + // (undocumented) + Default = "Default", + // (undocumented) + Error = "Error", + // (undocumented) + Warning = "Warning" +} + +// @public +export enum KnownLoginMigrationStage { + // (undocumented) + AssignRoleMembership = "AssignRoleMembership", + // (undocumented) + AssignRoleOwnership = "AssignRoleOwnership", + // (undocumented) + Completed = "Completed", + // (undocumented) + EstablishObjectPermissions = "EstablishObjectPermissions", + // (undocumented) + EstablishServerPermissions = "EstablishServerPermissions", + // (undocumented) + EstablishUserMapping = "EstablishUserMapping", + // (undocumented) + Initialize = "Initialize", + // (undocumented) + LoginMigration = "LoginMigration", + // (undocumented) + None = "None" +} + +// @public +export enum KnownLoginType { + // (undocumented) + AsymmetricKey = "AsymmetricKey", + // (undocumented) + Certificate = "Certificate", + // (undocumented) + ExternalGroup = "ExternalGroup", + // (undocumented) + ExternalUser = "ExternalUser", + // (undocumented) + SqlLogin = "SqlLogin", + // (undocumented) + WindowsGroup = "WindowsGroup", + // (undocumented) + WindowsUser = "WindowsUser" +} + +// @public +export enum KnownMigrationState { + // (undocumented) + Completed = "Completed", + // (undocumented) + Failed = "Failed", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + None = "None", + // (undocumented) + Skipped = "Skipped", + // (undocumented) + Stopped = "Stopped", + // (undocumented) + Warning = "Warning" +} + +// @public +export enum KnownMigrationStatus { + // (undocumented) + Completed = "Completed", + // (undocumented) + CompletedWithWarnings = "CompletedWithWarnings", + // (undocumented) + Configured = "Configured", + // (undocumented) + Connecting = "Connecting", + // (undocumented) + Default = "Default", + // (undocumented) + Error = "Error", + // (undocumented) + Running = "Running", + // (undocumented) + SelectLogins = "SelectLogins", + // (undocumented) + SourceAndTargetSelected = "SourceAndTargetSelected", + // (undocumented) + Stopped = "Stopped" +} + +// @public +export enum KnownMongoDbClusterType { + // (undocumented) + BlobContainer = "BlobContainer", + // (undocumented) + CosmosDb = "CosmosDb", + // (undocumented) + MongoDb = "MongoDb" +} + +// @public +export enum KnownMongoDbErrorType { + // (undocumented) + Error = "Error", + // (undocumented) + ValidationError = "ValidationError", + // (undocumented) + Warning = "Warning" +} + +// @public +export enum KnownMongoDbMigrationState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Complete = "Complete", + // (undocumented) + Copying = "Copying", + // (undocumented) + Failed = "Failed", + // (undocumented) + Finalizing = "Finalizing", + // (undocumented) + Initializing = "Initializing", + // (undocumented) + InitialReplay = "InitialReplay", + // (undocumented) + NotStarted = "NotStarted", + // (undocumented) + Replaying = "Replaying", + // (undocumented) + Restarting = "Restarting", + // (undocumented) + ValidatingInput = "ValidatingInput" +} + +// @public +export enum KnownMongoDbProgressResultType { + // (undocumented) + Collection = "Collection", + // (undocumented) + Database = "Database", + // (undocumented) + Migration = "Migration" +} + +// @public +export enum KnownMongoDbReplication { + // (undocumented) + Continuous = "Continuous", + // (undocumented) + Disabled = "Disabled", + // (undocumented) + OneTime = "OneTime" +} + +// @public +export enum KnownMongoDbShardKeyOrder { + // (undocumented) + Forward = "Forward", + // (undocumented) + Hashed = "Hashed", + // (undocumented) + Reverse = "Reverse" +} + +// @public +export enum KnownMySqlTargetPlatformType { + // (undocumented) + AzureDbForMySQL = "AzureDbForMySQL", + // (undocumented) + SqlServer = "SqlServer" +} + +// @public +export enum KnownNameCheckFailureReason { + // (undocumented) + AlreadyExists = "AlreadyExists", + // (undocumented) + Invalid = "Invalid" +} + +// @public +export enum KnownObjectType { + // (undocumented) + Function = "Function", + // (undocumented) + StoredProcedures = "StoredProcedures", + // (undocumented) + Table = "Table", + // (undocumented) + User = "User", + // (undocumented) + View = "View" +} + +// @public +export enum KnownOperationOrigin { + // (undocumented) + System = "system", + // (undocumented) + User = "user" +} + +// @public +export enum KnownProjectProvisioningState { + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Succeeded = "Succeeded" +} + +// @public +export enum KnownProjectSourcePlatform { + // (undocumented) + MongoDb = "MongoDb", + // (undocumented) + MySQL = "MySQL", + // (undocumented) + PostgreSql = "PostgreSql", + // (undocumented) + SQL = "SQL", + // (undocumented) + Unknown = "Unknown" +} + +// @public +export enum KnownProjectTargetPlatform { + // (undocumented) + AzureDbForMySql = "AzureDbForMySql", + // (undocumented) + AzureDbForPostgreSql = "AzureDbForPostgreSql", + // (undocumented) + MongoDb = "MongoDb", + // (undocumented) + Sqldb = "SQLDB", + // (undocumented) + Sqlmi = "SQLMI", + // (undocumented) + Unknown = "Unknown" +} + +// @public +export enum KnownReplicateMigrationState { + // (undocumented) + ActionRequired = "ACTION_REQUIRED", + // (undocumented) + Complete = "COMPLETE", + // (undocumented) + Failed = "FAILED", + // (undocumented) + Pending = "PENDING", + // (undocumented) + Undefined = "UNDEFINED", + // (undocumented) + Validating = "VALIDATING" +} + +// @public +export enum KnownResourceSkuCapacityScaleType { + // (undocumented) + Automatic = "Automatic", + // (undocumented) + Manual = "Manual", + // (undocumented) + None = "None" +} + +// @public +export enum KnownResourceSkuRestrictionsReasonCode { + // (undocumented) + NotAvailableForSubscription = "NotAvailableForSubscription", + // (undocumented) + QuotaId = "QuotaId" +} + +// @public +export enum KnownResourceSkuRestrictionsType { + // (undocumented) + Location = "location" +} + +// @public +export enum KnownResourceType { + // (undocumented) + SqlMi = "SqlMi", + // (undocumented) + SqlVm = "SqlVm" +} + +// @public +export enum KnownScenarioSource { + // (undocumented) + Access = "Access", + // (undocumented) + DB2 = "DB2", + // (undocumented) + MongoDB = "MongoDB", + // (undocumented) + MySQL = "MySQL", + // (undocumented) + MySqlrds = "MySQLRDS", + // (undocumented) + Oracle = "Oracle", + // (undocumented) + PostgreSQL = "PostgreSQL", + // (undocumented) + PostgreSqlrds = "PostgreSQLRDS", + // (undocumented) + SQL = "SQL", + // (undocumented) + Sqlrds = "SQLRDS", + // (undocumented) + Sybase = "Sybase" +} + +// @public +export enum KnownScenarioTarget { + // (undocumented) + AzureDBForMySql = "AzureDBForMySql", + // (undocumented) + AzureDBForPostgresSQL = "AzureDBForPostgresSQL", + // (undocumented) + MongoDB = "MongoDB", + // (undocumented) + Sqldb = "SQLDB", + // (undocumented) + Sqldw = "SQLDW", + // (undocumented) + Sqlmi = "SQLMI", + // (undocumented) + SQLServer = "SQLServer" +} + +// @public +export enum KnownSchemaMigrationOption { + // (undocumented) + ExtractFromSource = "ExtractFromSource", + // (undocumented) + None = "None", + // (undocumented) + UseStorageFile = "UseStorageFile" +} + +// @public +export enum KnownSchemaMigrationStage { + // (undocumented) + CollectingObjects = "CollectingObjects", + // (undocumented) + Completed = "Completed", + // (undocumented) + CompletedWithWarnings = "CompletedWithWarnings", + // (undocumented) + DeployingSchema = "DeployingSchema", + // (undocumented) + DownloadingScript = "DownloadingScript", + // (undocumented) + Failed = "Failed", + // (undocumented) + GeneratingScript = "GeneratingScript", + // (undocumented) + NotStarted = "NotStarted", + // (undocumented) + UploadingScript = "UploadingScript", + // (undocumented) + ValidatingInputs = "ValidatingInputs" +} + +// @public +export enum KnownServiceProvisioningState { + // (undocumented) + Accepted = "Accepted", + // (undocumented) + Deleting = "Deleting", + // (undocumented) + Deploying = "Deploying", + // (undocumented) + Failed = "Failed", + // (undocumented) + FailedToStart = "FailedToStart", + // (undocumented) + FailedToStop = "FailedToStop", + // (undocumented) + Starting = "Starting", + // (undocumented) + Stopped = "Stopped", + // (undocumented) + Stopping = "Stopping", + // (undocumented) + Succeeded = "Succeeded" +} + +// @public +export enum KnownServiceScalability { + // (undocumented) + Automatic = "automatic", + // (undocumented) + Manual = "manual", + // (undocumented) + None = "none" +} + +// @public +export enum KnownSeverity { + // (undocumented) + Error = "Error", + // (undocumented) + Message = "Message", + // (undocumented) + Warning = "Warning" +} + +// @public +export enum KnownSqlSourcePlatform { + // (undocumented) + SqlOnPrem = "SqlOnPrem" +} + +// @public +export enum KnownSsisMigrationOverwriteOption { + // (undocumented) + Ignore = "Ignore", + // (undocumented) + Overwrite = "Overwrite" +} + +// @public +export enum KnownSsisMigrationStage { + // (undocumented) + Completed = "Completed", + // (undocumented) + Initialize = "Initialize", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + None = "None" +} + +// @public +export enum KnownSsisStoreType { + // (undocumented) + SsisCatalog = "SsisCatalog" +} + +// @public +export enum KnownSyncDatabaseMigrationReportingState { + // (undocumented) + BackupCompleted = "BACKUP_COMPLETED", + // (undocumented) + BackupINProgress = "BACKUP_IN_PROGRESS", + // (undocumented) + Cancelled = "CANCELLED", + // (undocumented) + Cancelling = "CANCELLING", + // (undocumented) + Complete = "COMPLETE", + // (undocumented) + Completing = "COMPLETING", + // (undocumented) + Configuring = "CONFIGURING", + // (undocumented) + Failed = "FAILED", + // (undocumented) + Initialiazing = "INITIALIAZING", + // (undocumented) + ReadyTOComplete = "READY_TO_COMPLETE", + // (undocumented) + RestoreCompleted = "RESTORE_COMPLETED", + // (undocumented) + RestoreINProgress = "RESTORE_IN_PROGRESS", + // (undocumented) + Running = "RUNNING", + // (undocumented) + Starting = "STARTING", + // (undocumented) + Undefined = "UNDEFINED", + // (undocumented) + Validating = "VALIDATING", + // (undocumented) + ValidationComplete = "VALIDATION_COMPLETE", + // (undocumented) + ValidationFailed = "VALIDATION_FAILED" +} + +// @public +export enum KnownSyncTableMigrationState { + // (undocumented) + BeforeLoad = "BEFORE_LOAD", + // (undocumented) + Canceled = "CANCELED", + // (undocumented) + Completed = "COMPLETED", + // (undocumented) + Error = "ERROR", + // (undocumented) + Failed = "FAILED", + // (undocumented) + FullLoad = "FULL_LOAD" +} + +// @public +export enum KnownTaskState { + // (undocumented) + Canceled = "Canceled", + // (undocumented) + Failed = "Failed", + // (undocumented) + FailedInputValidation = "FailedInputValidation", + // (undocumented) + Faulted = "Faulted", + // (undocumented) + Queued = "Queued", + // (undocumented) + Running = "Running", + // (undocumented) + Succeeded = "Succeeded", + // (undocumented) + Unknown = "Unknown" +} + +// @public +export enum KnownTaskType { + // (undocumented) + ConnectMongoDb = "Connect.MongoDb", + // (undocumented) + ConnectToSourceMySql = "ConnectToSource.MySql", + // (undocumented) + ConnectToSourceOracleSync = "ConnectToSource.Oracle.Sync", + // (undocumented) + ConnectToSourcePostgreSqlSync = "ConnectToSource.PostgreSql.Sync", + // (undocumented) + ConnectToSourceSqlServer = "ConnectToSource.SqlServer", + // (undocumented) + ConnectToSourceSqlServerSync = "ConnectToSource.SqlServer.Sync", + // (undocumented) + ConnectToTargetAzureDbForMySql = "ConnectToTarget.AzureDbForMySql", + // (undocumented) + ConnectToTargetAzureDbForPostgreSqlSync = "ConnectToTarget.AzureDbForPostgreSql.Sync", + // (undocumented) + ConnectToTargetAzureSqlDbMI = "ConnectToTarget.AzureSqlDbMI", + // (undocumented) + ConnectToTargetAzureSqlDbMISyncLRS = "ConnectToTarget.AzureSqlDbMI.Sync.LRS", + // (undocumented) + ConnectToTargetOracleAzureDbForPostgreSqlSync = "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync", + // (undocumented) + ConnectToTargetSqlDb = "ConnectToTarget.SqlDb", + // (undocumented) + ConnectToTargetSqlDbSync = "ConnectToTarget.SqlDb.Sync", + // (undocumented) + GetTDECertificatesSql = "GetTDECertificates.Sql", + // (undocumented) + GetUserTablesAzureSqlDbSync = "GetUserTables.AzureSqlDb.Sync", + // (undocumented) + GetUserTablesMySql = "GetUserTablesMySql", + // (undocumented) + GetUserTablesOracle = "GetUserTablesOracle", + // (undocumented) + GetUserTablesPostgreSql = "GetUserTablesPostgreSql", + // (undocumented) + GetUserTablesSql = "GetUserTables.Sql", + // (undocumented) + MigrateMongoDb = "Migrate.MongoDb", + // (undocumented) + MigrateMySqlAzureDbForMySql = "Migrate.MySql.AzureDbForMySql", + // (undocumented) + MigrateMySqlAzureDbForMySqlSync = "Migrate.MySql.AzureDbForMySql.Sync", + // (undocumented) + MigrateOracleAzureDbForPostgreSqlSync = "Migrate.Oracle.AzureDbForPostgreSql.Sync", + // (undocumented) + MigratePostgreSqlAzureDbForPostgreSqlSyncV2 = "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2", + // (undocumented) + MigrateSchemaSqlServerSqlDb = "MigrateSchemaSqlServerSqlDb", + // (undocumented) + MigrateSqlServerAzureSqlDbMI = "Migrate.SqlServer.AzureSqlDbMI", + // (undocumented) + MigrateSqlServerAzureSqlDbMISyncLRS = "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS", + // (undocumented) + MigrateSqlServerAzureSqlDbSync = "Migrate.SqlServer.AzureSqlDb.Sync", + // (undocumented) + MigrateSqlServerSqlDb = "Migrate.SqlServer.SqlDb", + // (undocumented) + MigrateSsis = "Migrate.Ssis", + // (undocumented) + ServiceCheckOCI = "Service.Check.OCI", + // (undocumented) + ServiceInstallOCI = "Service.Install.OCI", + // (undocumented) + ServiceUploadOCI = "Service.Upload.OCI", + // (undocumented) + ValidateMigrationInputSqlServerAzureSqlDbMI = "ValidateMigrationInput.SqlServer.AzureSqlDbMI", + // (undocumented) + ValidateMigrationInputSqlServerAzureSqlDbMISyncLRS = "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS", + // (undocumented) + ValidateMigrationInputSqlServerSqlDbSync = "ValidateMigrationInput.SqlServer.SqlDb.Sync", + // (undocumented) + ValidateMongoDb = "Validate.MongoDb", + // (undocumented) + ValidateOracleAzureDbPostgreSqlSync = "Validate.Oracle.AzureDbPostgreSql.Sync" +} + +// @public +export enum KnownUpdateActionType { + // (undocumented) + AddedOnTarget = "AddedOnTarget", + // (undocumented) + ChangedOnTarget = "ChangedOnTarget", + // (undocumented) + DeletedOnTarget = "DeletedOnTarget" +} + +// @public +export enum KnownValidationStatus { + // (undocumented) + Completed = "Completed", + // (undocumented) + CompletedWithIssues = "CompletedWithIssues", + // (undocumented) + Default = "Default", + // (undocumented) + Failed = "Failed", + // (undocumented) + Initialized = "Initialized", + // (undocumented) + InProgress = "InProgress", + // (undocumented) + NotStarted = "NotStarted", + // (undocumented) + Stopped = "Stopped" +} + +// @public +export type LoginMigrationStage = string; + +// @public +export type LoginType = string; + +// @public +export interface MigrateMISyncCompleteCommandInput { + sourceDatabaseName: string; +} + +// @public +export interface MigrateMISyncCompleteCommandOutput { + errors?: ReportableException[]; +} + +// @public +export type MigrateMISyncCompleteCommandProperties = CommandProperties & { + commandType: "Migrate.SqlServer.AzureDbSqlMi.Complete"; + input?: MigrateMISyncCompleteCommandInput; + readonly output?: MigrateMISyncCompleteCommandOutput; +}; + +// @public +export type MigrateMongoDbTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.MongoDb"; + input?: MongoDbMigrationSettings; + readonly output?: MongoDbProgressUnion[]; +}; + +// @public +export interface MigrateMySqlAzureDbForMySqlOfflineDatabaseInput { + name?: string; + tableMap?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; +} + +// @public +export interface MigrateMySqlAzureDbForMySqlOfflineTaskInput { + makeSourceServerReadOnly?: boolean; + optionalAgentSettings?: { + [propertyName: string]: string; + }; + selectedDatabases: MigrateMySqlAzureDbForMySqlOfflineDatabaseInput[]; + sourceConnectionInfo: MySqlConnectionInfo; + startedOn?: Date; + targetConnectionInfo: MySqlConnectionInfo; +} + +// @public +export interface MigrateMySqlAzureDbForMySqlOfflineTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput"; +} + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly state?: MigrationState; + readonly stage?: DatabaseMigrationStage; + readonly statusMessage?: string; + readonly message?: string; + readonly numberOfObjects?: number; + readonly numberOfObjectsCompleted?: number; + readonly errorCount?: number; + readonly errorPrefix?: string; + readonly resultPrefix?: string; + readonly exceptionsAndWarnings?: ReportableException[]; + readonly lastStorageUpdate?: Date; + readonly objectSummary?: string; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputError = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly durationInSeconds?: number; + readonly status?: MigrationStatus; + readonly statusMessage?: string; + readonly message?: string; + databases?: string; + readonly databaseSummary?: string; + migrationReportResult?: MigrationReportResult; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; + readonly exceptionsAndWarnings?: ReportableException[]; + readonly lastStorageUpdate?: Date; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + resultType: "TableLevelOutput"; + readonly objectName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly state?: MigrationState; + readonly statusMessage?: string; + readonly itemsCount?: number; + readonly itemsCompletedCount?: number; + readonly errorPrefix?: string; + readonly resultPrefix?: string; + readonly lastStorageUpdate?: Date; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputUnion = MigrateMySqlAzureDbForMySqlOfflineTaskOutput | MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel | MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel | MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel | MigrateMySqlAzureDbForMySqlOfflineTaskOutputError; + +// @public +export type MigrateMySqlAzureDbForMySqlOfflineTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.MySql.AzureDbForMySql"; + input?: MigrateMySqlAzureDbForMySqlOfflineTaskInput; + readonly output?: MigrateMySqlAzureDbForMySqlOfflineTaskOutputUnion[]; +}; + +// @public +export interface MigrateMySqlAzureDbForMySqlSyncDatabaseInput { + migrationSetting?: { + [propertyName: string]: string; + }; + name?: string; + sourceSetting?: { + [propertyName: string]: string; + }; + tableMap?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; + targetSetting?: { + [propertyName: string]: string; + }; +} + +// @public +export interface MigrateMySqlAzureDbForMySqlSyncTaskInput { + selectedDatabases: MigrateMySqlAzureDbForMySqlSyncDatabaseInput[]; + sourceConnectionInfo: MySqlConnectionInfo; + targetConnectionInfo: MySqlConnectionInfo; +} + +// @public +export interface MigrateMySqlAzureDbForMySqlSyncTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput" | "DatabaseLevelErrorOutput"; +} + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + resultType: "DatabaseLevelErrorOutput"; + errorMessage?: string; + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly migrationState?: SyncDatabaseMigrationReportingState; + readonly incomingChanges?: number; + readonly appliedChanges?: number; + readonly cdcInsertCounter?: number; + readonly cdcDeleteCounter?: number; + readonly cdcUpdateCounter?: number; + readonly fullLoadCompletedTables?: number; + readonly fullLoadLoadingTables?: number; + readonly fullLoadQueuedTables?: number; + readonly fullLoadErroredTables?: number; + readonly initializationCompleted?: boolean; + readonly latency?: number; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputError = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerVersion?: string; + readonly sourceServer?: string; + readonly targetServerVersion?: string; + readonly targetServer?: string; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + resultType: "TableLevelOutput"; + readonly tableName?: string; + readonly databaseName?: string; + readonly cdcInsertCounter?: string; + readonly cdcUpdateCounter?: string; + readonly cdcDeleteCounter?: string; + readonly fullLoadEstFinishTime?: Date; + readonly fullLoadStartedOn?: Date; + readonly fullLoadEndedOn?: Date; + readonly fullLoadTotalRows?: number; + readonly state?: SyncTableMigrationState; + readonly totalChangesApplied?: number; + readonly dataErrorsCounter?: number; + readonly lastModifiedTime?: Date; +}; + +// @public (undocumented) +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion = MigrateMySqlAzureDbForMySqlSyncTaskOutput | MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel | MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel | MigrateMySqlAzureDbForMySqlSyncTaskOutputError | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError; + +// @public +export type MigrateMySqlAzureDbForMySqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.MySql.AzureDbForMySql.Sync"; + input?: MigrateMySqlAzureDbForMySqlSyncTaskInput; + readonly output?: MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion[]; +}; + +// @public +export type MigrateOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.Oracle.AzureDbForPostgreSql.Sync"; + input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; + readonly output?: MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion[]; +}; + +// @public +export interface MigrateOracleAzureDbPostgreSqlSyncDatabaseInput { + caseManipulation?: string; + migrationSetting?: { + [propertyName: string]: string; + }; + name?: string; + schemaName?: string; + sourceSetting?: { + [propertyName: string]: string; + }; + tableMap?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; + targetSetting?: { + [propertyName: string]: string; + }; +} + +// @public +export interface MigrateOracleAzureDbPostgreSqlSyncTaskInput { + selectedDatabases: MigrateOracleAzureDbPostgreSqlSyncDatabaseInput[]; + sourceConnectionInfo: OracleConnectionInfo; + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +// @public +export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput" | "DatabaseLevelErrorOutput"; +} + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + resultType: "DatabaseLevelErrorOutput"; + errorMessage?: string; + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly migrationState?: SyncDatabaseMigrationReportingState; + readonly incomingChanges?: number; + readonly appliedChanges?: number; + readonly cdcInsertCounter?: number; + readonly cdcDeleteCounter?: number; + readonly cdcUpdateCounter?: number; + readonly fullLoadCompletedTables?: number; + readonly fullLoadLoadingTables?: number; + readonly fullLoadQueuedTables?: number; + readonly fullLoadErroredTables?: number; + readonly initializationCompleted?: boolean; + readonly latency?: number; +}; + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputError = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerVersion?: string; + readonly sourceServer?: string; + readonly targetServerVersion?: string; + readonly targetServer?: string; +}; + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + resultType: "TableLevelOutput"; + readonly tableName?: string; + readonly databaseName?: string; + readonly cdcInsertCounter?: number; + readonly cdcUpdateCounter?: number; + readonly cdcDeleteCounter?: number; + readonly fullLoadEstFinishTime?: Date; + readonly fullLoadStartedOn?: Date; + readonly fullLoadEndedOn?: Date; + readonly fullLoadTotalRows?: number; + readonly state?: SyncTableMigrationState; + readonly totalChangesApplied?: number; + readonly dataErrorsCounter?: number; + readonly lastModifiedTime?: Date; +}; + +// @public (undocumented) +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion = MigrateOracleAzureDbPostgreSqlSyncTaskOutput | MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel | MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel | MigrateOracleAzureDbPostgreSqlSyncTaskOutputError | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError; + +// @public +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput { + migrationSetting?: { + [propertyName: string]: string; + }; + name?: string; + selectedTables?: MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput[]; + sourceSetting?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; + targetSetting?: { + [propertyName: string]: string; + }; +} + +// @public +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput { + name?: string; +} + +// @public +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput { + encryptedKeyForSecureFields?: string; + selectedDatabases: MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput[]; + sourceConnectionInfo: PostgreSqlConnectionInfo; + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +// @public +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput" | "DatabaseLevelErrorOutput"; +} + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + resultType: "DatabaseLevelErrorOutput"; + errorMessage?: string; + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly migrationState?: SyncDatabaseMigrationReportingState; + readonly incomingChanges?: number; + readonly appliedChanges?: number; + readonly cdcInsertCounter?: number; + readonly cdcDeleteCounter?: number; + readonly cdcUpdateCounter?: number; + readonly fullLoadCompletedTables?: number; + readonly fullLoadLoadingTables?: number; + readonly fullLoadQueuedTables?: number; + readonly fullLoadErroredTables?: number; + readonly initializationCompleted?: boolean; + readonly latency?: number; +}; + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerVersion?: string; + readonly sourceServer?: string; + readonly targetServerVersion?: string; + readonly targetServer?: string; + readonly sourceServerType?: ScenarioSource; + readonly targetServerType?: ScenarioTarget; + readonly state?: ReplicateMigrationState; + databaseCount?: number; +}; + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + resultType: "TableLevelOutput"; + readonly tableName?: string; + readonly databaseName?: string; + readonly cdcInsertCounter?: number; + readonly cdcUpdateCounter?: number; + readonly cdcDeleteCounter?: number; + readonly fullLoadEstFinishTime?: Date; + readonly fullLoadStartedOn?: Date; + readonly fullLoadEndedOn?: Date; + readonly fullLoadTotalRows?: number; + readonly state?: SyncTableMigrationState; + readonly totalChangesApplied?: number; + readonly dataErrorsCounter?: number; + readonly lastModifiedTime?: Date; +}; + +// @public (undocumented) +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError; + +// @public +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2"; + input?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput; + readonly output?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion[]; + taskId?: string; + createdOn?: string; +}; + +// @public +export interface MigrateSchemaSqlServerSqlDbDatabaseInput { + id?: string; + name?: string; + schemaSetting?: SchemaMigrationSetting; + targetDatabaseName?: string; +} + +// @public +export type MigrateSchemaSqlServerSqlDbTaskInput = SqlMigrationTaskInput & { + selectedDatabases: MigrateSchemaSqlServerSqlDbDatabaseInput[]; + encryptedKeyForSecureFields?: string; + startedOn?: string; +}; + +// @public +export interface MigrateSchemaSqlServerSqlDbTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "SchemaErrorOutput" | "ErrorOutput"; +} + +// @public (undocumented) +export type MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel = MigrateSchemaSqlServerSqlDbTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly state?: MigrationState; + readonly stage?: SchemaMigrationStage; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly databaseErrorResultPrefix?: string; + readonly schemaErrorResultPrefix?: string; + readonly numberOfSuccessfulOperations?: number; + readonly numberOfFailedOperations?: number; + readonly fileId?: string; +}; + +// @public (undocumented) +export type MigrateSchemaSqlServerSqlDbTaskOutputError = MigrateSchemaSqlServerSqlDbTaskOutput & { + resultType: "SchemaErrorOutput"; + readonly commandText?: string; + readonly errorText?: string; +}; + +// @public (undocumented) +export type MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel = MigrateSchemaSqlServerSqlDbTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly state?: MigrationState; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; +}; + +// @public (undocumented) +export type MigrateSchemaSqlServerSqlDbTaskOutputUnion = MigrateSchemaSqlServerSqlDbTaskOutput | MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel | MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel | MigrateSchemaSqlServerSqlDbTaskOutputError | MigrateSchemaSqlTaskOutputError; + +// @public +export type MigrateSchemaSqlServerSqlDbTaskProperties = ProjectTaskProperties & { + taskType: "MigrateSchemaSqlServerSqlDb"; + input?: MigrateSchemaSqlServerSqlDbTaskInput; + readonly output?: MigrateSchemaSqlServerSqlDbTaskOutputUnion[]; + createdOn?: string; + taskId?: string; +}; + +// @public (undocumented) +export type MigrateSchemaSqlTaskOutputError = MigrateSchemaSqlServerSqlDbTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public +export interface MigrateSqlServerDatabaseInput { + backupAndRestoreFolder?: string; + databaseFiles?: DatabaseFileInput[]; + name?: string; + restoreDatabaseName?: string; +} + +// @public +export interface MigrateSqlServerSqlDbDatabaseInput { + id?: string; + makeSourceDbReadOnly?: boolean; + name?: string; + schemaSetting?: Record; + tableMap?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; +} + +// @public +export interface MigrateSqlServerSqlDbSyncDatabaseInput { + id?: string; + migrationSetting?: { + [propertyName: string]: string; + }; + name?: string; + schemaName?: string; + sourceSetting?: { + [propertyName: string]: string; + }; + tableMap?: { + [propertyName: string]: string; + }; + targetDatabaseName?: string; + targetSetting?: { + [propertyName: string]: string; + }; +} + +// @public +export type MigrateSqlServerSqlDbSyncTaskInput = SqlMigrationTaskInput & { + selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; + validationOptions?: MigrationValidationOptions; +}; + +// @public +export interface MigrateSqlServerSqlDbSyncTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput" | "DatabaseLevelErrorOutput"; +} + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputDatabaseError = MigrateSqlServerSqlDbSyncTaskOutput & { + resultType: "DatabaseLevelErrorOutput"; + errorMessage?: string; + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly migrationState?: SyncDatabaseMigrationReportingState; + readonly incomingChanges?: number; + readonly appliedChanges?: number; + readonly cdcInsertCounter?: number; + readonly cdcDeleteCounter?: number; + readonly cdcUpdateCounter?: number; + readonly fullLoadCompletedTables?: number; + readonly fullLoadLoadingTables?: number; + readonly fullLoadQueuedTables?: number; + readonly fullLoadErroredTables?: number; + readonly initializationCompleted?: boolean; + readonly latency?: number; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputError = MigrateSqlServerSqlDbSyncTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerVersion?: string; + readonly sourceServer?: string; + readonly targetServerVersion?: string; + readonly targetServer?: string; + readonly databaseCount?: number; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputTableLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + resultType: "TableLevelOutput"; + readonly tableName?: string; + readonly databaseName?: string; + readonly cdcInsertCounter?: number; + readonly cdcUpdateCounter?: number; + readonly cdcDeleteCounter?: number; + readonly fullLoadEstFinishTime?: Date; + readonly fullLoadStartedOn?: Date; + readonly fullLoadEndedOn?: Date; + readonly fullLoadTotalRows?: number; + readonly state?: SyncTableMigrationState; + readonly totalChangesApplied?: number; + readonly dataErrorsCounter?: number; + readonly lastModifiedTime?: Date; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbSyncTaskOutputUnion = MigrateSqlServerSqlDbSyncTaskOutput | MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel | MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel | MigrateSqlServerSqlDbSyncTaskOutputTableLevel | MigrateSqlServerSqlDbSyncTaskOutputError | MigrateSqlServerSqlDbSyncTaskOutputDatabaseError; + +// @public +export type MigrateSqlServerSqlDbSyncTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.SqlServer.AzureSqlDb.Sync"; + input?: MigrateSqlServerSqlDbSyncTaskInput; + readonly output?: MigrateSqlServerSqlDbSyncTaskOutputUnion[]; +}; + +// @public +export type MigrateSqlServerSqlDbTaskInput = SqlMigrationTaskInput & { + selectedDatabases: MigrateSqlServerSqlDbDatabaseInput[]; + validationOptions?: MigrationValidationOptions; + startedOn?: string; + encryptedKeyForSecureFields?: string; +}; + +// @public +export interface MigrateSqlServerSqlDbTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "TableLevelOutput" | "ErrorOutput" | "MigrationValidationOutput" | "MigrationDatabaseLevelValidationOutput"; +} + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputDatabaseLevel = MigrateSqlServerSqlDbTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly state?: MigrationState; + readonly stage?: DatabaseMigrationStage; + readonly statusMessage?: string; + readonly message?: string; + readonly numberOfObjects?: number; + readonly numberOfObjectsCompleted?: number; + readonly errorCount?: number; + readonly errorPrefix?: string; + readonly resultPrefix?: string; + readonly exceptionsAndWarnings?: ReportableException[]; + readonly objectSummary?: string; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult = MigrateSqlServerSqlDbTaskOutput & MigrationValidationDatabaseLevelResult & { + resultType: "MigrationDatabaseLevelValidationOutput"; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputError = MigrateSqlServerSqlDbTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputMigrationLevel = MigrateSqlServerSqlDbTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly durationInSeconds?: number; + readonly status?: MigrationStatus; + readonly statusMessage?: string; + readonly message?: string; + readonly databases?: string; + readonly databaseSummary?: string; + migrationValidationResult?: MigrationValidationResult; + migrationReportResult?: MigrationReportResult; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputTableLevel = MigrateSqlServerSqlDbTaskOutput & { + resultType: "TableLevelOutput"; + readonly objectName?: string; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly state?: MigrationState; + readonly statusMessage?: string; + readonly itemsCount?: number; + readonly itemsCompletedCount?: number; + readonly errorPrefix?: string; + readonly resultPrefix?: string; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputUnion = MigrateSqlServerSqlDbTaskOutput | MigrateSqlServerSqlDbTaskOutputMigrationLevel | MigrateSqlServerSqlDbTaskOutputDatabaseLevel | MigrateSqlServerSqlDbTaskOutputTableLevel | MigrateSqlServerSqlDbTaskOutputError | MigrateSqlServerSqlDbTaskOutputValidationResult | MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult; + +// @public (undocumented) +export type MigrateSqlServerSqlDbTaskOutputValidationResult = MigrateSqlServerSqlDbTaskOutput & MigrationValidationResult & { + resultType: "MigrationValidationOutput"; +}; + +// @public +export type MigrateSqlServerSqlDbTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.SqlServer.SqlDb"; + input?: MigrateSqlServerSqlDbTaskInput; + readonly output?: MigrateSqlServerSqlDbTaskOutputUnion[]; + taskId?: string; + isCloneable?: boolean; +}; + +// @public +export interface MigrateSqlServerSqlMIDatabaseInput { + backupFilePaths?: string[]; + backupFileShare?: FileShare; + id?: string; + name: string; + restoreDatabaseName: string; +} + +// @public +export type MigrateSqlServerSqlMISyncTaskInput = SqlServerSqlMISyncTaskInput & {}; + +// @public +export interface MigrateSqlServerSqlMISyncTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "ErrorOutput"; +} + +// @public (undocumented) +export type MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel = MigrateSqlServerSqlMISyncTaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly sourceDatabaseName?: string; + readonly migrationState?: DatabaseMigrationState; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly fullBackupSetInfo?: BackupSetInfo; + readonly lastRestoredBackupSetInfo?: BackupSetInfo; + readonly activeBackupSets?: BackupSetInfo[]; + readonly containerName?: string; + readonly errorPrefix?: string; + readonly isFullBackupRestored?: boolean; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMISyncTaskOutputError = MigrateSqlServerSqlMISyncTaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMISyncTaskOutputMigrationLevel = MigrateSqlServerSqlMISyncTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly databaseCount?: number; + readonly state?: MigrationState; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly sourceServerName?: string; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerName?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; + readonly databaseErrorCount?: number; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMISyncTaskOutputUnion = MigrateSqlServerSqlMISyncTaskOutput | MigrateSqlServerSqlMISyncTaskOutputMigrationLevel | MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel | MigrateSqlServerSqlMISyncTaskOutputError; + +// @public +export type MigrateSqlServerSqlMISyncTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS"; + input?: MigrateSqlServerSqlMISyncTaskInput; + readonly output?: MigrateSqlServerSqlMISyncTaskOutputUnion[]; +}; + +// @public +export type MigrateSqlServerSqlMITaskInput = SqlMigrationTaskInput & { + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + startedOn?: string; + selectedLogins?: string[]; + selectedAgentJobs?: string[]; + backupFileShare?: FileShare; + backupBlobShare: BlobShare; + backupMode?: BackupMode; + aadDomainName?: string; +}; + +// @public +export interface MigrateSqlServerSqlMITaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "AgentJobLevelOutput" | "LoginLevelOutput" | "ErrorOutput"; +} + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputAgentJobLevel = MigrateSqlServerSqlMITaskOutput & { + resultType: "AgentJobLevelOutput"; + readonly name?: string; + readonly isEnabled?: boolean; + readonly state?: MigrationState; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly message?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputDatabaseLevel = MigrateSqlServerSqlMITaskOutput & { + resultType: "DatabaseLevelOutput"; + readonly databaseName?: string; + readonly sizeMB?: number; + readonly state?: MigrationState; + readonly stage?: DatabaseMigrationStage; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly message?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputError = MigrateSqlServerSqlMITaskOutput & { + resultType: "ErrorOutput"; + readonly error?: ReportableException; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputLoginLevel = MigrateSqlServerSqlMITaskOutput & { + resultType: "LoginLevelOutput"; + readonly loginName?: string; + readonly state?: MigrationState; + readonly stage?: LoginMigrationStage; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly message?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputMigrationLevel = MigrateSqlServerSqlMITaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly status?: MigrationStatus; + readonly state?: MigrationState; + readonly agentJobs?: string; + readonly logins?: string; + readonly message?: string; + readonly serverRoleResults?: string; + readonly orphanedUsersInfo?: OrphanedUserInfo[]; + readonly databases?: string; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSqlServerSqlMITaskOutputUnion = MigrateSqlServerSqlMITaskOutput | MigrateSqlServerSqlMITaskOutputMigrationLevel | MigrateSqlServerSqlMITaskOutputDatabaseLevel | MigrateSqlServerSqlMITaskOutputAgentJobLevel | MigrateSqlServerSqlMITaskOutputLoginLevel | MigrateSqlServerSqlMITaskOutputError; + +// @public +export type MigrateSqlServerSqlMITaskProperties = ProjectTaskProperties & { + taskType: "Migrate.SqlServer.AzureSqlDbMI"; + input?: MigrateSqlServerSqlMITaskInput; + readonly output?: MigrateSqlServerSqlMITaskOutputUnion[]; + taskId?: string; +}; + +// @public +export type MigrateSsisTaskInput = SqlMigrationTaskInput & { + ssisMigrationInfo: SsisMigrationInfo; +}; + +// @public +export interface MigrateSsisTaskOutput { + readonly id?: string; + resultType: "MigrationLevelOutput" | "SsisProjectLevelOutput"; +} + +// @public (undocumented) +export type MigrateSsisTaskOutputMigrationLevel = MigrateSsisTaskOutput & { + resultType: "MigrationLevelOutput"; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly status?: MigrationStatus; + readonly message?: string; + readonly sourceServerVersion?: string; + readonly sourceServerBrandVersion?: string; + readonly targetServerVersion?: string; + readonly targetServerBrandVersion?: string; + readonly exceptionsAndWarnings?: ReportableException[]; + readonly stage?: SsisMigrationStage; +}; + +// @public (undocumented) +export type MigrateSsisTaskOutputProjectLevel = MigrateSsisTaskOutput & { + resultType: "SsisProjectLevelOutput"; + readonly folderName?: string; + readonly projectName?: string; + readonly state?: MigrationState; + readonly stage?: SsisMigrationStage; + readonly startedOn?: Date; + readonly endedOn?: Date; + readonly message?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +// @public (undocumented) +export type MigrateSsisTaskOutputUnion = MigrateSsisTaskOutput | MigrateSsisTaskOutputMigrationLevel | MigrateSsisTaskOutputProjectLevel; + +// @public +export type MigrateSsisTaskProperties = ProjectTaskProperties & { + taskType: "Migrate.Ssis"; + input?: MigrateSsisTaskInput; + readonly output?: MigrateSsisTaskOutputUnion[]; +}; + +// @public +export interface MigrateSyncCompleteCommandInput { + commitTimeStamp?: Date; + databaseName: string; +} + +// @public +export interface MigrateSyncCompleteCommandOutput { + readonly errors?: ReportableException[]; + readonly id?: string; +} + +// @public +export type MigrateSyncCompleteCommandProperties = CommandProperties & { + commandType: "Migrate.Sync.Complete.Database"; + input?: MigrateSyncCompleteCommandInput; + readonly output?: MigrateSyncCompleteCommandOutput; +}; + +// @public +export interface MigrationEligibilityInfo { + readonly isEligibleForMigration?: boolean; + readonly validationMessages?: string[]; +} + +// @public +export interface MigrationOperationInput { + migrationOperationId?: string; +} + +// @public +export interface MigrationReportResult { + id?: string; + reportUrl?: string; +} + +// @public +export type MigrationState = string; + +// @public +export type MigrationStatus = string; + +// @public +export interface MigrationStatusDetails { + readonly activeBackupSets?: SqlBackupSetInfo[]; + readonly blobContainerName?: string; + readonly completeRestoreErrorMessage?: string; + readonly currentRestoringFilename?: string; + readonly fileUploadBlockingErrors?: string[]; + readonly fullBackupSetInfo?: SqlBackupSetInfo; + readonly invalidFiles?: string[]; + readonly isFullBackupRestored?: boolean; + readonly lastRestoredBackupSetInfo?: SqlBackupSetInfo; + readonly lastRestoredFilename?: string; + readonly migrationState?: string; + readonly pendingLogBackupsCount?: number; + readonly restoreBlockingReason?: string; +} + +// @public +export interface MigrationTableMetadata { + readonly sourceTableName?: string; + readonly targetTableName?: string; +} + +// @public +export interface MigrationValidationDatabaseLevelResult { + readonly dataIntegrityValidationResult?: DataIntegrityValidationResult; + readonly endedOn?: Date; + readonly id?: string; + readonly migrationId?: string; + readonly queryAnalysisValidationResult?: QueryAnalysisValidationResult; + readonly schemaValidationResult?: SchemaComparisonValidationResult; + readonly sourceDatabaseName?: string; + readonly startedOn?: Date; + readonly status?: ValidationStatus; + readonly targetDatabaseName?: string; +} + +// @public +export interface MigrationValidationDatabaseSummaryResult { + readonly endedOn?: Date; + readonly id?: string; + readonly migrationId?: string; + readonly sourceDatabaseName?: string; + readonly startedOn?: Date; + readonly status?: ValidationStatus; + readonly targetDatabaseName?: string; +} + +// @public +export interface MigrationValidationOptions { + enableDataIntegrityValidation?: boolean; + enableQueryAnalysisValidation?: boolean; + enableSchemaValidation?: boolean; +} + +// @public +export interface MigrationValidationResult { + readonly id?: string; + readonly migrationId?: string; + readonly status?: ValidationStatus; + summaryResults?: { + [propertyName: string]: MigrationValidationDatabaseSummaryResult; + }; +} + +// @public +export type MiSqlConnectionInfo = ConnectionInfo & { + type: "MiSqlConnectionInfo"; + managedInstanceResourceId: string; +}; + +// @public +export type MongoDbCancelCommand = CommandProperties & { + commandType: "cancel"; + input?: MongoDbCommandInput; +}; + +// @public +export interface MongoDbClusterInfo { + databases: MongoDbDatabaseInfo[]; + supportsSharding: boolean; + type: MongoDbClusterType; + version: string; +} + +// @public +export type MongoDbClusterType = string; + +// @public +export type MongoDbCollectionInfo = MongoDbObjectInfo & { + databaseName: string; + isCapped: boolean; + isSystemCollection: boolean; + isView: boolean; + shardKey?: MongoDbShardKeyInfo; + supportsSharding: boolean; + viewOf?: string; +}; + +// @public +export type MongoDbCollectionProgress = MongoDbProgress & { + resultType: "Collection"; +}; + +// @public +export interface MongoDbCollectionSettings { + canDelete?: boolean; + shardKey?: MongoDbShardKeySetting; + targetRUs?: number; +} + +// @public +export interface MongoDbCommandInput { + objectName?: string; +} + +// @public +export type MongoDbConnectionInfo = ConnectionInfo & { + type: "MongoDbConnectionInfo"; + connectionString: string; + dataSource?: string; + encryptConnection?: boolean; + serverBrandVersion?: string; + enforceSSL?: boolean; + port?: number; + additionalSettings?: string; +}; + +// @public +export type MongoDbDatabaseInfo = MongoDbObjectInfo & { + collections: MongoDbCollectionInfo[]; + supportsSharding: boolean; +}; + +// @public +export type MongoDbDatabaseProgress = MongoDbProgress & { + resultType: "Database"; + collections?: { + [propertyName: string]: MongoDbCollectionProgress; + }; +}; + +// @public +export interface MongoDbDatabaseSettings { + collections: { + [propertyName: string]: MongoDbCollectionSettings; + }; + targetRUs?: number; +} + +// @public +export interface MongoDbError { + code?: string; + count?: number; + message?: string; + type?: MongoDbErrorType; +} + +// @public +export type MongoDbErrorType = string; + +// @public +export type MongoDbFinishCommand = CommandProperties & { + commandType: "finish"; + input?: MongoDbFinishCommandInput; +}; + +// @public +export type MongoDbFinishCommandInput = MongoDbCommandInput & { + immediate: boolean; +}; + +// @public +export type MongoDbMigrationProgress = MongoDbProgress & { + resultType: "Migration"; + databases?: { + [propertyName: string]: MongoDbDatabaseProgress; + }; +}; + +// @public +export interface MongoDbMigrationSettings { + boostRUs?: number; + databases: { + [propertyName: string]: MongoDbDatabaseSettings; + }; + replication?: MongoDbReplication; + source: MongoDbConnectionInfo; + target: MongoDbConnectionInfo; + throttling?: MongoDbThrottlingSettings; +} + +// @public +export type MongoDbMigrationState = string; + +// @public +export interface MongoDbObjectInfo { + averageDocumentSize: number; + dataSize: number; + documentCount: number; + name: string; + qualifiedName: string; +} + +// @public +export interface MongoDbProgress { + bytesCopied: number; + documentsCopied: number; + elapsedTime: string; + errors: { + [propertyName: string]: MongoDbError; + }; + eventsPending: number; + eventsReplayed: number; + lastEventTime?: Date; + lastReplayTime?: Date; + name?: string; + qualifiedName?: string; + resultType: "Collection" | "Database" | "Migration"; + // (undocumented) + state: MongoDbMigrationState; + totalBytes: number; + totalDocuments: number; +} + +// @public +export type MongoDbProgressResultType = string; + +// @public (undocumented) +export type MongoDbProgressUnion = MongoDbProgress | MongoDbCollectionProgress | MongoDbDatabaseProgress | MongoDbMigrationProgress; + +// @public +export type MongoDbReplication = string; + +// @public +export type MongoDbRestartCommand = CommandProperties & { + commandType: "restart"; + input?: MongoDbCommandInput; +}; + +// @public +export interface MongoDbShardKeyField { + name: string; + order: MongoDbShardKeyOrder; +} + +// @public +export interface MongoDbShardKeyInfo { + fields: MongoDbShardKeyField[]; + isUnique: boolean; +} + +// @public +export type MongoDbShardKeyOrder = string; + +// @public +export interface MongoDbShardKeySetting { + fields: MongoDbShardKeyField[]; + isUnique: boolean; +} + +// @public +export interface MongoDbThrottlingSettings { + maxParallelism?: number; + minFreeCpu?: number; + minFreeMemoryMb?: number; +} + +// @public +export type MySqlConnectionInfo = ConnectionInfo & { + type: "MySqlConnectionInfo"; + serverName: string; + dataSource?: string; + port: number; + encryptConnection?: boolean; +}; + +// @public +export type MySqlTargetPlatformType = string; + +// @public +export interface NameAvailabilityRequest { + name?: string; + type?: string; +} + +// @public +export interface NameAvailabilityResponse { + message?: string; + nameAvailable?: boolean; + reason?: NameCheckFailureReason; +} + +// @public +export type NameCheckFailureReason = string; + +// @public (undocumented) +export interface NodeMonitoringData { + readonly additionalProperties?: { + [propertyName: string]: Record; + }; + readonly availableMemoryInMB?: number; + readonly concurrentJobsLimit?: number; + readonly concurrentJobsRunning?: number; + readonly cpuUtilization?: number; + readonly maxConcurrentJobs?: number; + readonly nodeName?: string; + readonly receivedBytes?: number; + readonly sentBytes?: number; +} + +// @public +export interface NonSqlDataMigrationTable { + sourceName?: string; +} + +// @public +export interface NonSqlDataMigrationTableResult { + readonly elapsedTimeInMiliseconds?: number; + readonly errors?: DataMigrationError[]; + readonly resultCode?: DataMigrationResultCode; + readonly sourceName?: string; + readonly sourceRowCount?: number; + readonly targetName?: string; + readonly targetRowCount?: number; +} + +// @public +export interface NonSqlMigrationTaskInput { + projectLocation: string; + projectName: string; + selectedTables: NonSqlDataMigrationTable[]; + targetConnectionInfo: SqlConnectionInfo; + targetDatabaseName: string; +} + +// @public +export interface NonSqlMigrationTaskOutput { + readonly dataMigrationTableResults?: string; + readonly endedOn?: Date; + readonly id?: string; + readonly progressMessage?: string; + readonly sourceServerName?: string; + readonly startedOn?: Date; + readonly status?: MigrationStatus; + readonly targetServerName?: string; +} + +// @public +export type ObjectType = string; + +// @public +export interface ODataError { + code?: string; + details?: ODataError[]; + message?: string; +} + +// @public +export interface OfflineConfiguration { + lastBackupName?: string; + offline?: boolean; +} + +// @public +export interface OperationListResult { + readonly nextLink?: string; + readonly value?: OperationsDefinition[]; +} + +// @public +export type OperationOrigin = string; + +// @public +export interface Operations { + list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator; +} + +// @public (undocumented) +export interface OperationsDefinition { + readonly display?: OperationsDisplayDefinition; + isDataAction?: boolean; + readonly name?: string; + readonly origin?: OperationOrigin; + readonly properties?: { + [propertyName: string]: Record; + }; +} + +// @public (undocumented) +export interface OperationsDisplayDefinition { + readonly description?: string; + readonly operation?: string; + readonly provider?: string; + readonly resource?: string; +} + +// @public +export interface OperationsListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type OperationsListNextResponse = OperationListResult; + +// @public +export interface OperationsListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type OperationsListResponse = OperationListResult; + +// @public +export type OracleConnectionInfo = ConnectionInfo & { + type: "OracleConnectionInfo"; + dataSource: string; +}; + +// @public +export interface OracleOCIDriverInfo { + readonly archiveChecksum?: string; + readonly assemblyVersion?: string; + readonly driverName?: string; + readonly driverSize?: string; + readonly oracleChecksum?: string; + readonly supportedOracleVersions?: string[]; +} + +// @public +export interface OrphanedUserInfo { + databaseName?: string; + name?: string; +} + +// @public +export type PostgreSqlConnectionInfo = ConnectionInfo & { + type: "PostgreSqlConnectionInfo"; + serverName: string; + dataSource?: string; + serverVersion?: string; + databaseName?: string; + port: number; + encryptConnection?: boolean; + trustServerCertificate?: boolean; +}; + +// @public +export type Project = TrackedResource & { + eTag?: string; + sourcePlatform?: ProjectSourcePlatform; + azureAuthenticationInfo?: string; + targetPlatform?: ProjectTargetPlatform; + readonly creationTime?: Date; + sourceConnectionInfo?: ConnectionInfoUnion; + targetConnectionInfo?: ConnectionInfoUnion; + databasesInfo?: DatabaseInfo[]; + readonly provisioningState?: ProjectProvisioningState; +}; + +// @public +export type ProjectFile = Resource & { + etag?: string; + properties?: ProjectFileProperties; + readonly systemData?: SystemData; +}; + +// @public +export interface ProjectFileProperties { + extension?: string; + filePath?: string; + readonly lastModified?: Date; + mediaType?: string; + readonly size?: number; +} + +// @public +export interface ProjectList { + nextLink?: string; + value?: Project[]; +} + +// @public +export type ProjectProvisioningState = string; + +// @public +export interface Projects { + createOrUpdate(groupName: string, serviceName: string, projectName: string, parameters: Project, options?: ProjectsCreateOrUpdateOptionalParams): Promise; + delete(groupName: string, serviceName: string, projectName: string, options?: ProjectsDeleteOptionalParams): Promise; + get(groupName: string, serviceName: string, projectName: string, options?: ProjectsGetOptionalParams): Promise; + list(groupName: string, serviceName: string, options?: ProjectsListOptionalParams): PagedAsyncIterableIterator; + update(groupName: string, serviceName: string, projectName: string, parameters: Project, options?: ProjectsUpdateOptionalParams): Promise; +} + +// @public +export interface ProjectsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ProjectsCreateOrUpdateResponse = Project; + +// @public +export interface ProjectsDeleteOptionalParams extends coreClient.OperationOptions { + deleteRunningTasks?: boolean; +} + +// @public +export interface ProjectsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ProjectsGetResponse = Project; + +// @public +export interface ProjectsListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ProjectsListNextResponse = ProjectList; + +// @public +export interface ProjectsListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ProjectsListResponse = ProjectList; + +// @public +export type ProjectSourcePlatform = string; + +// @public +export interface ProjectsUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ProjectsUpdateResponse = Project; + +// @public +export type ProjectTargetPlatform = string; + +// @public +export type ProjectTask = Resource & { + etag?: string; + properties?: ProjectTaskPropertiesUnion; + readonly systemData?: SystemData; +}; + +// @public +export interface ProjectTaskProperties { + clientData?: { + [propertyName: string]: string; + }; + readonly commands?: CommandPropertiesUnion[]; + readonly errors?: ODataError[]; + readonly state?: TaskState; + taskType: "MigrateSchemaSqlServerSqlDb" | "Service.Check.OCI" | "Service.Upload.OCI" | "Service.Install.OCI" | "Connect.MongoDb" | "ConnectToSource.SqlServer" | "ConnectToSource.SqlServer.Sync" | "ConnectToSource.PostgreSql.Sync" | "ConnectToSource.MySql" | "ConnectToSource.Oracle.Sync" | "ConnectToTarget.SqlDb" | "ConnectToTarget.SqlDb.Sync" | "ConnectToTarget.AzureDbForPostgreSql.Sync" | "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync" | "GetUserTables.Sql" | "GetUserTables.AzureSqlDb.Sync" | "GetUserTablesOracle" | "GetUserTablesPostgreSql" | "GetUserTablesMySql" | "ConnectToTarget.AzureSqlDbMI" | "ConnectToTarget.AzureSqlDbMI.Sync.LRS" | "ConnectToTarget.AzureDbForMySql" | "Migrate.MongoDb" | "Migrate.SqlServer.AzureSqlDbMI" | "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS" | "Migrate.SqlServer.SqlDb" | "Migrate.SqlServer.AzureSqlDb.Sync" | "Migrate.MySql.AzureDbForMySql.Sync" | "Migrate.MySql.AzureDbForMySql" | "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2" | "Migrate.Oracle.AzureDbForPostgreSql.Sync" | "ValidateMigrationInput.SqlServer.SqlDb.Sync" | "ValidateMigrationInput.SqlServer.AzureSqlDbMI" | "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS" | "Validate.MongoDb" | "Validate.Oracle.AzureDbPostgreSql.Sync" | "GetTDECertificates.Sql" | "Migrate.Ssis"; +} + +// @public (undocumented) +export type ProjectTaskPropertiesUnion = ProjectTaskProperties | MigrateSchemaSqlServerSqlDbTaskProperties | CheckOCIDriverTaskProperties | UploadOCIDriverTaskProperties | InstallOCIDriverTaskProperties | ConnectToMongoDbTaskProperties | ConnectToSourceSqlServerTaskProperties | ConnectToSourceSqlServerSyncTaskProperties | ConnectToSourcePostgreSqlSyncTaskProperties | ConnectToSourceMySqlTaskProperties | ConnectToSourceOracleSyncTaskProperties | ConnectToTargetSqlDbTaskProperties | ConnectToTargetSqlDbSyncTaskProperties | ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties | ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties | GetUserTablesSqlTaskProperties | GetUserTablesSqlSyncTaskProperties | GetUserTablesOracleTaskProperties | GetUserTablesPostgreSqlTaskProperties | GetUserTablesMySqlTaskProperties | ConnectToTargetSqlMITaskProperties | ConnectToTargetSqlMISyncTaskProperties | ConnectToTargetAzureDbForMySqlTaskProperties | MigrateMongoDbTaskProperties | MigrateSqlServerSqlMITaskProperties | MigrateSqlServerSqlMISyncTaskProperties | MigrateSqlServerSqlDbTaskProperties | MigrateSqlServerSqlDbSyncTaskProperties | MigrateMySqlAzureDbForMySqlSyncTaskProperties | MigrateMySqlAzureDbForMySqlOfflineTaskProperties | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties | MigrateOracleAzureDbForPostgreSqlSyncTaskProperties | ValidateMigrationInputSqlServerSqlDbSyncTaskProperties | ValidateMigrationInputSqlServerSqlMITaskProperties | ValidateMigrationInputSqlServerSqlMISyncTaskProperties | ValidateMongoDbTaskProperties | ValidateOracleAzureDbForPostgreSqlSyncTaskProperties | GetTdeCertificatesSqlTaskProperties | MigrateSsisTaskProperties; + +// @public (undocumented) +export interface ProxyResource { + readonly id?: string; + readonly name?: string; + readonly type?: string; +} + +// @public +export interface QueryAnalysisValidationResult { + queryResults?: QueryExecutionResult; + validationErrors?: ValidationError; +} + +// @public +export interface QueryExecutionResult { + queryText?: string; + sourceResult?: ExecutionStatistics; + statementsInBatch?: number; + targetResult?: ExecutionStatistics; +} + +// @public +export interface Quota { + currentValue?: number; + id?: string; + limit?: number; + name?: QuotaName; + unit?: string; +} + +// @public +export interface QuotaList { + nextLink?: string; + value?: Quota[]; +} + +// @public +export interface QuotaName { + localizedValue?: string; + value?: string; +} + +// @public +export interface RegenAuthKeys { + authKey1?: string; + authKey2?: string; + keyName?: string; +} + +// @public +export type ReplicateMigrationState = string; + +// @public +export interface ReportableException { + actionableMessage?: string; + filePath?: string; + hResult?: number; + lineNumber?: string; + message?: string; + stackTrace?: string; +} + +// @public +export interface Resource { + readonly id?: string; + readonly name?: string; + readonly type?: string; +} + +// @public +export interface ResourceSku { + readonly apiVersions?: string[]; + readonly capabilities?: ResourceSkuCapabilities[]; + readonly capacity?: ResourceSkuCapacity; + readonly costs?: ResourceSkuCosts[]; + readonly family?: string; + readonly kind?: string; + readonly locations?: string[]; + readonly name?: string; + readonly resourceType?: string; + readonly restrictions?: ResourceSkuRestrictions[]; + readonly size?: string; + readonly tier?: string; +} + +// @public +export interface ResourceSkuCapabilities { + readonly name?: string; + readonly value?: string; +} + +// @public +export interface ResourceSkuCapacity { + readonly default?: number; + readonly maximum?: number; + readonly minimum?: number; + readonly scaleType?: ResourceSkuCapacityScaleType; +} + +// @public +export type ResourceSkuCapacityScaleType = string; + +// @public +export interface ResourceSkuCosts { + readonly extendedUnit?: string; + readonly meterID?: string; + readonly quantity?: number; +} + +// @public +export interface ResourceSkuRestrictions { + readonly reasonCode?: ResourceSkuRestrictionsReasonCode; + readonly type?: ResourceSkuRestrictionsType; + readonly values?: string[]; +} + +// @public +export type ResourceSkuRestrictionsReasonCode = string; + +// @public +export type ResourceSkuRestrictionsType = string; + +// @public +export interface ResourceSkus { + listSkus(options?: ResourceSkusListSkusOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ResourceSkusListSkusNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ResourceSkusListSkusNextResponse = ResourceSkusResult; + +// @public +export interface ResourceSkusListSkusOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ResourceSkusListSkusResponse = ResourceSkusResult; + +// @public +export interface ResourceSkusResult { + nextLink?: string; + value: ResourceSku[]; +} + +// @public +export type ResourceType = string; + +// @public +export type ScenarioSource = string; + +// @public +export type ScenarioTarget = string; + +// @public +export interface SchemaComparisonValidationResult { + schemaDifferences?: SchemaComparisonValidationResultType; + sourceDatabaseObjectCount?: { + [propertyName: string]: number; + }; + targetDatabaseObjectCount?: { + [propertyName: string]: number; + }; + validationErrors?: ValidationError; +} + +// @public +export interface SchemaComparisonValidationResultType { + objectName?: string; + objectType?: ObjectType; + updateAction?: UpdateActionType; +} + +// @public +export type SchemaMigrationOption = string; + +// @public +export interface SchemaMigrationSetting { + fileId?: string; + fileName?: string; + schemaOption?: SchemaMigrationOption; +} + +// @public +export type SchemaMigrationStage = string; + +// @public +export interface SelectedCertificateInput { + certificateName: string; + password: string; +} + +// @public +export type ServerLevelPermissionsGroup = "Default" | "MigrationFromSqlServerToAzureDB" | "MigrationFromSqlServerToAzureMI" | "MigrationFromMySQLToAzureDBForMySQL"; + +// @public +export interface ServerProperties { + readonly serverDatabaseCount?: number; + readonly serverEdition?: string; + readonly serverName?: string; + readonly serverOperatingSystemVersion?: string; + readonly serverPlatform?: string; + readonly serverVersion?: string; +} + +// @public +export interface ServiceOperation { + display?: ServiceOperationDisplay; + name?: string; +} + +// @public +export interface ServiceOperationDisplay { + description?: string; + operation?: string; + provider?: string; + resource?: string; +} + +// @public +export interface ServiceOperationList { + nextLink?: string; + value?: ServiceOperation[]; +} + +// @public +export type ServiceProvisioningState = string; + +// @public +export interface Services { + beginCreateOrUpdate(groupName: string, serviceName: string, parameters: DataMigrationService, options?: ServicesCreateOrUpdateOptionalParams): Promise, ServicesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(groupName: string, serviceName: string, parameters: DataMigrationService, options?: ServicesCreateOrUpdateOptionalParams): Promise; + beginDelete(groupName: string, serviceName: string, options?: ServicesDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(groupName: string, serviceName: string, options?: ServicesDeleteOptionalParams): Promise; + beginStart(groupName: string, serviceName: string, options?: ServicesStartOptionalParams): Promise, void>>; + beginStartAndWait(groupName: string, serviceName: string, options?: ServicesStartOptionalParams): Promise; + beginStop(groupName: string, serviceName: string, options?: ServicesStopOptionalParams): Promise, void>>; + beginStopAndWait(groupName: string, serviceName: string, options?: ServicesStopOptionalParams): Promise; + beginUpdate(groupName: string, serviceName: string, parameters: DataMigrationService, options?: ServicesUpdateOptionalParams): Promise, ServicesUpdateResponse>>; + beginUpdateAndWait(groupName: string, serviceName: string, parameters: DataMigrationService, options?: ServicesUpdateOptionalParams): Promise; + checkChildrenNameAvailability(groupName: string, serviceName: string, parameters: NameAvailabilityRequest, options?: ServicesCheckChildrenNameAvailabilityOptionalParams): Promise; + checkNameAvailability(location: string, parameters: NameAvailabilityRequest, options?: ServicesCheckNameAvailabilityOptionalParams): Promise; + checkStatus(groupName: string, serviceName: string, options?: ServicesCheckStatusOptionalParams): Promise; + get(groupName: string, serviceName: string, options?: ServicesGetOptionalParams): Promise; + list(options?: ServicesListOptionalParams): PagedAsyncIterableIterator; + listByResourceGroup(groupName: string, options?: ServicesListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listSkus(groupName: string, serviceName: string, options?: ServicesListSkusOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export type ServiceScalability = string; + +// @public +export interface ServicesCheckChildrenNameAvailabilityOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesCheckChildrenNameAvailabilityResponse = NameAvailabilityResponse; + +// @public +export interface ServicesCheckNameAvailabilityOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesCheckNameAvailabilityResponse = NameAvailabilityResponse; + +// @public +export interface ServicesCheckStatusOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesCheckStatusResponse = DataMigrationServiceStatusResponse; + +// @public +export interface ServicesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ServicesCreateOrUpdateResponse = DataMigrationService; + +// @public +export interface ServicesDeleteOptionalParams extends coreClient.OperationOptions { + deleteRunningTasks?: boolean; + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ServicesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesGetResponse = DataMigrationService; + +// @public +export interface ServiceSku { + capacity?: number; + family?: string; + name?: string; + size?: string; + tier?: string; +} + +// @public +export interface ServiceSkuList { + nextLink?: string; + value?: AvailableServiceSku[]; +} + +// @public +export interface ServicesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListByResourceGroupNextResponse = DataMigrationServiceList; + +// @public +export interface ServicesListByResourceGroupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListByResourceGroupResponse = DataMigrationServiceList; + +// @public +export interface ServicesListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListNextResponse = DataMigrationServiceList; + +// @public +export interface ServicesListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListResponse = DataMigrationServiceList; + +// @public +export interface ServicesListSkusNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListSkusNextResponse = ServiceSkuList; + +// @public +export interface ServicesListSkusOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServicesListSkusResponse = ServiceSkuList; + +// @public +export interface ServicesStartOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ServicesStopOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ServicesUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ServicesUpdateResponse = DataMigrationService; + +// @public +export interface ServiceTasks { + cancel(groupName: string, serviceName: string, taskName: string, options?: ServiceTasksCancelOptionalParams): Promise; + createOrUpdate(groupName: string, serviceName: string, taskName: string, parameters: ProjectTask, options?: ServiceTasksCreateOrUpdateOptionalParams): Promise; + delete(groupName: string, serviceName: string, taskName: string, options?: ServiceTasksDeleteOptionalParams): Promise; + get(groupName: string, serviceName: string, taskName: string, options?: ServiceTasksGetOptionalParams): Promise; + list(groupName: string, serviceName: string, options?: ServiceTasksListOptionalParams): PagedAsyncIterableIterator; + update(groupName: string, serviceName: string, taskName: string, parameters: ProjectTask, options?: ServiceTasksUpdateOptionalParams): Promise; +} + +// @public +export interface ServiceTasksCancelOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServiceTasksCancelResponse = ProjectTask; + +// @public +export interface ServiceTasksCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServiceTasksCreateOrUpdateResponse = ProjectTask; + +// @public +export interface ServiceTasksDeleteOptionalParams extends coreClient.OperationOptions { + deleteRunningTasks?: boolean; +} + +// @public +export interface ServiceTasksGetOptionalParams extends coreClient.OperationOptions { + expand?: string; +} + +// @public +export type ServiceTasksGetResponse = ProjectTask; + +// @public +export interface ServiceTasksListNextOptionalParams extends coreClient.OperationOptions { + taskType?: string; +} + +// @public +export type ServiceTasksListNextResponse = TaskList; + +// @public +export interface ServiceTasksListOptionalParams extends coreClient.OperationOptions { + taskType?: string; +} + +// @public +export type ServiceTasksListResponse = TaskList; + +// @public +export interface ServiceTasksUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ServiceTasksUpdateResponse = ProjectTask; + +// @public +export type Severity = string; + +// @public +export interface SourceLocation { + azureBlob?: AzureBlob; + fileShare?: SqlFileShare; +} + +// @public +export interface SqlBackupFileInfo { + readonly copyDuration?: number; + readonly copyThroughput?: number; + readonly dataRead?: number; + readonly dataWritten?: number; + readonly familySequenceNumber?: number; + readonly fileName?: string; + readonly status?: string; + readonly totalSize?: number; +} + +// @public +export interface SqlBackupSetInfo { + readonly backupFinishDate?: Date; + readonly backupSetId?: string; + readonly backupStartDate?: Date; + readonly backupType?: string; + readonly familyCount?: number; + readonly firstLSN?: string; + readonly hasBackupChecksums?: boolean; + readonly ignoreReasons?: string[]; + readonly isBackupRestored?: boolean; + readonly lastLSN?: string; + readonly listOfBackupFiles?: SqlBackupFileInfo[]; +} + +// @public +export type SqlConnectionInfo = ConnectionInfo & { + type: "SqlConnectionInfo"; + dataSource: string; + serverName?: string; + port?: string; + resourceId?: string; + authentication?: AuthenticationType; + encryptConnection?: boolean; + additionalSettings?: string; + trustServerCertificate?: boolean; + platform?: SqlSourcePlatform; +}; + +// @public +export interface SqlConnectionInformation { + authentication?: string; + dataSource?: string; + encryptConnection?: boolean; + password?: string; + trustServerCertificate?: boolean; + userName?: string; +} + +// @public +export interface SqlFileShare { + password?: string; + path?: string; + username?: string; +} + +// @public +export interface SqlMigrationListResult { + readonly nextLink?: string; + readonly value?: SqlMigrationService[]; +} + +// @public +export type SqlMigrationService = TrackedResource & { + readonly provisioningState?: string; + readonly integrationRuntimeState?: string; +}; + +// @public +export interface SqlMigrationServices { + beginCreateOrUpdate(resourceGroupName: string, sqlMigrationServiceName: string, parameters: SqlMigrationService, options?: SqlMigrationServicesCreateOrUpdateOptionalParams): Promise, SqlMigrationServicesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, sqlMigrationServiceName: string, parameters: SqlMigrationService, options?: SqlMigrationServicesCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, sqlMigrationServiceName: string, parameters: SqlMigrationServiceUpdate, options?: SqlMigrationServicesUpdateOptionalParams): Promise, SqlMigrationServicesUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, sqlMigrationServiceName: string, parameters: SqlMigrationServiceUpdate, options?: SqlMigrationServicesUpdateOptionalParams): Promise; + deleteNode(resourceGroupName: string, sqlMigrationServiceName: string, parameters: DeleteNode, options?: SqlMigrationServicesDeleteNodeOptionalParams): Promise; + get(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesGetOptionalParams): Promise; + listAuthKeys(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesListAuthKeysOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: SqlMigrationServicesListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: SqlMigrationServicesListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + listMigrations(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesListMigrationsOptionalParams): PagedAsyncIterableIterator; + listMonitoringData(resourceGroupName: string, sqlMigrationServiceName: string, options?: SqlMigrationServicesListMonitoringDataOptionalParams): Promise; + regenerateAuthKeys(resourceGroupName: string, sqlMigrationServiceName: string, parameters: RegenAuthKeys, options?: SqlMigrationServicesRegenerateAuthKeysOptionalParams): Promise; +} + +// @public +export interface SqlMigrationServicesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlMigrationServicesCreateOrUpdateResponse = SqlMigrationService; + +// @public +export interface SqlMigrationServicesDeleteNodeOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesDeleteNodeResponse = DeleteNode; + +// @public +export interface SqlMigrationServicesDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface SqlMigrationServicesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesGetResponse = SqlMigrationService; + +// @public +export interface SqlMigrationServicesListAuthKeysOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListAuthKeysResponse = AuthenticationKeys; + +// @public +export interface SqlMigrationServicesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListByResourceGroupNextResponse = SqlMigrationListResult; + +// @public +export interface SqlMigrationServicesListByResourceGroupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListByResourceGroupResponse = SqlMigrationListResult; + +// @public +export interface SqlMigrationServicesListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListBySubscriptionNextResponse = SqlMigrationListResult; + +// @public +export interface SqlMigrationServicesListBySubscriptionOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListBySubscriptionResponse = SqlMigrationListResult; + +// @public +export interface SqlMigrationServicesListMigrationsNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListMigrationsNextResponse = DatabaseMigrationListResult; + +// @public +export interface SqlMigrationServicesListMigrationsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListMigrationsResponse = DatabaseMigrationListResult; + +// @public +export interface SqlMigrationServicesListMonitoringDataOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesListMonitoringDataResponse = IntegrationRuntimeMonitoringData; + +// @public +export interface SqlMigrationServicesRegenerateAuthKeysOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type SqlMigrationServicesRegenerateAuthKeysResponse = RegenAuthKeys; + +// @public +export interface SqlMigrationServicesUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlMigrationServicesUpdateResponse = SqlMigrationService; + +// @public +export interface SqlMigrationServiceUpdate { + tags?: { + [propertyName: string]: string; + }; +} + +// @public +export interface SqlMigrationTaskInput { + sourceConnectionInfo: SqlConnectionInfo; + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export interface SqlServerSqlMISyncTaskInput { + azureApp: AzureActiveDirectoryApp; + backupFileShare?: FileShare; + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + sourceConnectionInfo: SqlConnectionInfo; + storageResourceId: string; + targetConnectionInfo: MiSqlConnectionInfo; +} + +// @public +export type SqlSourcePlatform = string; + +// @public +export interface SsisMigrationInfo { + environmentOverwriteOption?: SsisMigrationOverwriteOption; + projectOverwriteOption?: SsisMigrationOverwriteOption; + ssisStoreType?: SsisStoreType; +} + +// @public +export type SsisMigrationOverwriteOption = string; + +// @public +export type SsisMigrationStage = string; + +// @public +export type SsisStoreType = string; + +// @public +export interface StartMigrationScenarioServerRoleResult { + readonly exceptionsAndWarnings?: ReportableException[]; + readonly name?: string; + readonly state?: MigrationState; +} + +// @public +export type SyncDatabaseMigrationReportingState = string; + +// @public +export interface SyncMigrationDatabaseErrorEvent { + readonly eventText?: string; + readonly eventTypeString?: string; + readonly timestampString?: string; +} + +// @public +export type SyncTableMigrationState = string; + +// @public (undocumented) +export interface SystemData { + // (undocumented) + createdAt?: Date; + // (undocumented) + createdBy?: string; + // (undocumented) + createdByType?: CreatedByType; + // (undocumented) + lastModifiedAt?: Date; + // (undocumented) + lastModifiedBy?: string; + // (undocumented) + lastModifiedByType?: CreatedByType; +} + +// @public +export interface TargetLocation { + accountKey?: string; + storageAccountResourceId?: string; +} + +// @public +export interface TaskList { + nextLink?: string; + value?: ProjectTask[]; +} + +// @public +export interface Tasks { + cancel(groupName: string, serviceName: string, projectName: string, taskName: string, options?: TasksCancelOptionalParams): Promise; + command(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: CommandPropertiesUnion, options?: TasksCommandOptionalParams): Promise; + createOrUpdate(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: ProjectTask, options?: TasksCreateOrUpdateOptionalParams): Promise; + delete(groupName: string, serviceName: string, projectName: string, taskName: string, options?: TasksDeleteOptionalParams): Promise; + get(groupName: string, serviceName: string, projectName: string, taskName: string, options?: TasksGetOptionalParams): Promise; + list(groupName: string, serviceName: string, projectName: string, options?: TasksListOptionalParams): PagedAsyncIterableIterator; + update(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: ProjectTask, options?: TasksUpdateOptionalParams): Promise; +} + +// @public +export interface TasksCancelOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TasksCancelResponse = ProjectTask; + +// @public +export interface TasksCommandOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TasksCommandResponse = CommandPropertiesUnion; + +// @public +export interface TasksCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TasksCreateOrUpdateResponse = ProjectTask; + +// @public +export interface TasksDeleteOptionalParams extends coreClient.OperationOptions { + deleteRunningTasks?: boolean; +} + +// @public +export interface TasksGetOptionalParams extends coreClient.OperationOptions { + expand?: string; +} + +// @public +export type TasksGetResponse = ProjectTask; + +// @public +export interface TasksListNextOptionalParams extends coreClient.OperationOptions { + taskType?: string; +} + +// @public +export type TasksListNextResponse = TaskList; + +// @public +export interface TasksListOptionalParams extends coreClient.OperationOptions { + taskType?: string; +} + +// @public +export type TasksListResponse = TaskList; + +// @public +export type TaskState = string; + +// @public +export interface TasksUpdateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TasksUpdateResponse = ProjectTask; + +// @public +export type TaskType = string; + +// @public (undocumented) +export interface TrackedResource { + readonly id?: string; + // (undocumented) + location?: string; + readonly name?: string; + readonly systemData?: SystemData; + tags?: { + [propertyName: string]: string; + }; + readonly type?: string; +} + +// @public +export type UpdateActionType = string; + +// @public +export interface UploadOCIDriverTaskInput { + driverShare?: FileShare; +} + +// @public +export interface UploadOCIDriverTaskOutput { + readonly driverPackageName?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type UploadOCIDriverTaskProperties = ProjectTaskProperties & { + taskType: "Service.Upload.OCI"; + input?: UploadOCIDriverTaskInput; + readonly output?: UploadOCIDriverTaskOutput[]; +}; + +// @public +export interface Usages { + list(location: string, options?: UsagesListOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface UsagesListNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type UsagesListNextResponse = QuotaList; + +// @public +export interface UsagesListOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type UsagesListResponse = QuotaList; + +// @public +export type ValidateMigrationInputSqlServerSqlDbSyncTaskProperties = ProjectTaskProperties & { + taskType: "ValidateMigrationInput.SqlServer.SqlDb.Sync"; + input?: ValidateSyncMigrationInputSqlServerTaskInput; + readonly output?: ValidateSyncMigrationInputSqlServerTaskOutput[]; +}; + +// @public +export type ValidateMigrationInputSqlServerSqlMISyncTaskInput = SqlServerSqlMISyncTaskInput & {}; + +// @public +export interface ValidateMigrationInputSqlServerSqlMISyncTaskOutput { + readonly id?: string; + readonly name?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export type ValidateMigrationInputSqlServerSqlMISyncTaskProperties = ProjectTaskProperties & { + taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS"; + input?: ValidateMigrationInputSqlServerSqlMISyncTaskInput; + readonly output?: ValidateMigrationInputSqlServerSqlMISyncTaskOutput[]; +}; + +// @public +export interface ValidateMigrationInputSqlServerSqlMITaskInput { + backupBlobShare: BlobShare; + backupFileShare?: FileShare; + backupMode?: BackupMode; + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + selectedLogins?: string[]; + sourceConnectionInfo: SqlConnectionInfo; + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export interface ValidateMigrationInputSqlServerSqlMITaskOutput { + readonly backupFolderErrors?: ReportableException[]; + readonly backupShareCredentialsErrors?: ReportableException[]; + readonly backupStorageAccountErrors?: ReportableException[]; + databaseBackupInfo?: DatabaseBackupInfo; + readonly existingBackupErrors?: ReportableException[]; + readonly id?: string; + readonly name?: string; + readonly restoreDatabaseNameErrors?: ReportableException[]; +} + +// @public +export type ValidateMigrationInputSqlServerSqlMITaskProperties = ProjectTaskProperties & { + taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI"; + input?: ValidateMigrationInputSqlServerSqlMITaskInput; + readonly output?: ValidateMigrationInputSqlServerSqlMITaskOutput[]; +}; + +// @public +export type ValidateMongoDbTaskProperties = ProjectTaskProperties & { + taskType: "Validate.MongoDb"; + input?: MongoDbMigrationSettings; + readonly output?: MongoDbMigrationProgress[]; +}; + +// @public +export type ValidateOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + taskType: "Validate.Oracle.AzureDbPostgreSql.Sync"; + input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; + readonly output?: ValidateOracleAzureDbPostgreSqlSyncTaskOutput[]; +}; + +// @public +export interface ValidateOracleAzureDbPostgreSqlSyncTaskOutput { + readonly validationErrors?: ReportableException[]; +} + +// @public +export interface ValidateSyncMigrationInputSqlServerTaskInput { + selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; + sourceConnectionInfo: SqlConnectionInfo; + targetConnectionInfo: SqlConnectionInfo; +} + +// @public +export interface ValidateSyncMigrationInputSqlServerTaskOutput { + readonly id?: string; + readonly name?: string; + readonly validationErrors?: ReportableException[]; +} + +// @public +export interface ValidationError { + severity?: Severity; + text?: string; +} + +// @public +export type ValidationStatus = string; + +// @public +export interface WaitStatistics { + waitCount?: number; + waitTimeMs?: number; + waitType?: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/datamigration/arm-datamigration/rollup.config.js b/sdk/datamigration/arm-datamigration/rollup.config.js index 2141aaf9bde7..9be1955eb7f1 100644 --- a/sdk/datamigration/arm-datamigration/rollup.config.js +++ b/sdk/datamigration/arm-datamigration/rollup.config.js @@ -1,37 +1,188 @@ -import rollup from "rollup"; -import nodeResolve from "rollup-plugin-node-resolve"; +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import nodeResolve from "@rollup/plugin-node-resolve"; +import cjs from "@rollup/plugin-commonjs"; import sourcemaps from "rollup-plugin-sourcemaps"; +import multiEntry from "@rollup/plugin-multi-entry"; +import json from "@rollup/plugin-json"; + +import nodeBuiltins from "builtin-modules"; + +/** + * Gets the proper configuration needed for rollup's commonJS plugin for @opentelemetry/api. + * + * NOTE: this manual configuration is only needed because OpenTelemetry uses an + * __exportStar downleveled helper function to declare its exports which confuses + * rollup's automatic discovery mechanism. + * + * @returns an object reference that can be `...`'d into your cjs() configuration. + */ +export function openTelemetryCommonJs() { + const namedExports = {}; + + for (const key of [ + "@opentelemetry/api", + "@azure/core-tracing/node_modules/@opentelemetry/api" + ]) { + namedExports[key] = [ + "SpanKind", + "TraceFlags", + "getSpan", + "setSpan", + "SpanStatusCode", + "getSpanContext", + "setSpanContext" + ]; + } + + const releasedOpenTelemetryVersions = ["0.10.2", "1.0.0-rc.0"]; + + for (const version of releasedOpenTelemetryVersions) { + namedExports[ + // working around a limitation in the rollup common.js plugin - it's not able to resolve these modules so the named exports listed above will not get applied. We have to drill down to the actual path. + `../../../common/temp/node_modules/.pnpm/@opentelemetry/api@${version}/node_modules/@opentelemetry/api/build/src/index.js` + ] = [ + "SpanKind", + "TraceFlags", + "getSpan", + "setSpan", + "StatusCode", + "CanonicalCode", + "getSpanContext", + "setSpanContext" + ]; + } + + return namedExports; +} + +// #region Warning Handler /** - * @type {rollup.RollupFileOptions} + * A function that can determine whether a rollupwarning should be ignored. If + * the function returns `true`, then the warning will not be displayed. */ -const config = { - input: "./esm/dataMigrationServiceClient.js", - external: [ - "@azure/ms-rest-js", - "@azure/ms-rest-azure-js" - ], - output: { - file: "./dist/arm-datamigration.js", - format: "umd", - name: "Azure.ArmDatamigration", - sourcemap: true, - globals: { - "@azure/ms-rest-js": "msRest", - "@azure/ms-rest-azure-js": "msRestAzure" + +function ignoreNiseSinonEvalWarnings(warning) { + return ( + warning.code === "EVAL" && + warning.id && + (warning.id.includes("node_modules/nise") || + warning.id.includes("node_modules/sinon")) === true + ); +} + +function ignoreChaiCircularDependencyWarnings(warning) { + return ( + warning.code === "CIRCULAR_DEPENDENCY" && + warning.importer && warning.importer.includes("node_modules/chai") === true + ); +} + +const warningInhibitors = [ + ignoreChaiCircularDependencyWarnings, + ignoreNiseSinonEvalWarnings +]; + +/** + * Construct a warning handler for the shared rollup configuration + * that ignores certain warnings that are not relevant to testing. + */ +function makeOnWarnForTesting() { + return (warning, warn) => { + // If every inhibitor returns false (i.e. no inhibitors), then show the warning + if (warningInhibitors.every((inhib) => !inhib(warning))) { + warn(warning); + } + }; +} + +// #endregion + +function makeBrowserTestConfig() { + const config = { + input: { + include: ["dist-esm/test/**/*.spec.js"], + exclude: ["dist-esm/test/**/node/**"] }, - banner: `/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */` - }, - plugins: [ - nodeResolve({ mainFields: ['module', 'main'] }), - sourcemaps() - ] + output: { + file: `dist-test/index.browser.js`, + format: "umd", + sourcemap: true + }, + preserveSymlinks: false, + plugins: [ + multiEntry({ exports: false }), + nodeResolve({ + mainFields: ["module", "browser"] + }), + cjs({ + namedExports: { + // Chai's strange internal architecture makes it impossible to statically + // analyze its exports. + chai: [ + "version", + "use", + "util", + "config", + "expect", + "should", + "assert" + ], + ...openTelemetryCommonJs() + } + }), + json(), + sourcemaps() + //viz({ filename: "dist-test/browser-stats.html", sourcemap: true }) + ], + onwarn: makeOnWarnForTesting(), + // Disable tree-shaking of test code. In rollup-plugin-node-resolve@5.0.0, + // rollup started respecting the "sideEffects" field in package.json. Since + // our package.json sets "sideEffects=false", this also applies to test + // code, which causes all tests to be removed by tree-shaking. + treeshake: false + }; + + return config; +} + +const defaultConfigurationOptions = { + disableBrowserBundle: false }; -export default config; +export function makeConfig(pkg, options) { + options = { + ...defaultConfigurationOptions, + ...(options || {}) + }; + + const baseConfig = { + // Use the package's module field if it has one + input: pkg["module"] || "dist-esm/src/index.js", + external: [ + ...nodeBuiltins, + ...Object.keys(pkg.dependencies), + ...Object.keys(pkg.devDependencies) + ], + output: { file: "dist/index.js", format: "cjs", sourcemap: true }, + preserveSymlinks: false, + plugins: [sourcemaps(), nodeResolve(), cjs()] + }; + + const config = [baseConfig]; + + if (!options.disableBrowserBundle) { + config.push(makeBrowserTestConfig()); + } + + return config; +} + +export default makeConfig(require("./package.json")); diff --git a/sdk/datamigration/arm-datamigration/src/dataMigrationManagementClient.ts b/sdk/datamigration/arm-datamigration/src/dataMigrationManagementClient.ts new file mode 100644 index 000000000000..d4015dc282d3 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/dataMigrationManagementClient.ts @@ -0,0 +1,119 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import * as coreClient from "@azure/core-client"; +import * as coreAuth from "@azure/core-auth"; +import { + DatabaseMigrationsSqlMiImpl, + DatabaseMigrationsSqlVmImpl, + OperationsImpl, + SqlMigrationServicesImpl, + ResourceSkusImpl, + ServicesImpl, + TasksImpl, + ServiceTasksImpl, + ProjectsImpl, + UsagesImpl, + FilesImpl +} from "./operations"; +import { + DatabaseMigrationsSqlMi, + DatabaseMigrationsSqlVm, + Operations, + SqlMigrationServices, + ResourceSkus, + Services, + Tasks, + ServiceTasks, + Projects, + Usages, + Files +} from "./operationsInterfaces"; +import { DataMigrationManagementClientOptionalParams } from "./models"; + +export class DataMigrationManagementClient extends coreClient.ServiceClient { + $host: string; + subscriptionId: string; + apiVersion: string; + + /** + * Initializes a new instance of the DataMigrationManagementClient class. + * @param credentials Subscription credentials which uniquely identify client subscription. + * @param subscriptionId Subscription ID that identifies an Azure subscription. + * @param options The parameter options + */ + constructor( + credentials: coreAuth.TokenCredential, + subscriptionId: string, + options?: DataMigrationManagementClientOptionalParams + ) { + if (credentials === undefined) { + throw new Error("'credentials' cannot be null"); + } + if (subscriptionId === undefined) { + throw new Error("'subscriptionId' cannot be null"); + } + + // Initializing default values for options + if (!options) { + options = {}; + } + const defaults: DataMigrationManagementClientOptionalParams = { + requestContentType: "application/json; charset=utf-8", + credential: credentials + }; + + const packageDetails = `azsdk-js-arm-datamigration/3.0.0-beta.1`; + const userAgentPrefix = + options.userAgentOptions && options.userAgentOptions.userAgentPrefix + ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` + : `${packageDetails}`; + + if (!options.credentialScopes) { + options.credentialScopes = ["https://management.azure.com/.default"]; + } + const optionsWithDefaults = { + ...defaults, + ...options, + userAgentOptions: { + userAgentPrefix + }, + baseUri: options.endpoint || "https://management.azure.com" + }; + super(optionsWithDefaults); + // Parameter assignments + this.subscriptionId = subscriptionId; + + // Assigning values to Constant parameters + this.$host = options.$host || "https://management.azure.com"; + this.apiVersion = options.apiVersion || "2021-10-30-preview"; + this.databaseMigrationsSqlMi = new DatabaseMigrationsSqlMiImpl(this); + this.databaseMigrationsSqlVm = new DatabaseMigrationsSqlVmImpl(this); + this.operations = new OperationsImpl(this); + this.sqlMigrationServices = new SqlMigrationServicesImpl(this); + this.resourceSkus = new ResourceSkusImpl(this); + this.services = new ServicesImpl(this); + this.tasks = new TasksImpl(this); + this.serviceTasks = new ServiceTasksImpl(this); + this.projects = new ProjectsImpl(this); + this.usages = new UsagesImpl(this); + this.files = new FilesImpl(this); + } + + databaseMigrationsSqlMi: DatabaseMigrationsSqlMi; + databaseMigrationsSqlVm: DatabaseMigrationsSqlVm; + operations: Operations; + sqlMigrationServices: SqlMigrationServices; + resourceSkus: ResourceSkus; + services: Services; + tasks: Tasks; + serviceTasks: ServiceTasks; + projects: Projects; + usages: Usages; + files: Files; +} diff --git a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts deleted file mode 100644 index 25396551b380..000000000000 --- a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClient.ts +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. - */ - -import * as msRest from "@azure/ms-rest-js"; -import { TokenCredential } from "@azure/core-auth"; -import * as Models from "./models"; -import * as Mappers from "./models/mappers"; -import * as operations from "./operations"; -import { DataMigrationServiceClientContext } from "./dataMigrationServiceClientContext"; - - -class DataMigrationServiceClient extends DataMigrationServiceClientContext { - // Operation groups - resourceSkus: operations.ResourceSkus; - services: operations.Services; - tasks: operations.Tasks; - serviceTasks: operations.ServiceTasks; - projects: operations.Projects; - usages: operations.Usages; - operations: operations.Operations; - files: operations.Files; - - /** - * Initializes a new instance of the DataMigrationServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. Credentials - * implementing the TokenCredential interface from the @azure/identity package are recommended. For - * more information about these credentials, see - * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the - * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and - * @azure/ms-rest-browserauth are also supported. - * @param subscriptionId Identifier of the subscription - * @param [options] The parameter options - */ - constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { - super(credentials, subscriptionId, options); - this.resourceSkus = new operations.ResourceSkus(this); - this.services = new operations.Services(this); - this.tasks = new operations.Tasks(this); - this.serviceTasks = new operations.ServiceTasks(this); - this.projects = new operations.Projects(this); - this.usages = new operations.Usages(this); - this.operations = new operations.Operations(this); - this.files = new operations.Files(this); - } -} - -// Operation Specifications - -export { - DataMigrationServiceClient, - DataMigrationServiceClientContext, - Models as DataMigrationServiceModels, - Mappers as DataMigrationServiceMappers -}; -export * from "./operations"; diff --git a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts b/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts deleted file mode 100644 index 69901d9c9581..000000000000 --- a/sdk/datamigration/arm-datamigration/src/dataMigrationServiceClientContext.ts +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. - */ - -import * as Models from "./models"; -import * as msRest from "@azure/ms-rest-js"; -import { TokenCredential } from "@azure/core-auth"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; - -const packageName = "@azure/arm-datamigration"; -const packageVersion = "2.1.0"; - -export class DataMigrationServiceClientContext extends msRestAzure.AzureServiceClient { - credentials: msRest.ServiceClientCredentials | TokenCredential; - apiVersion?: string; - subscriptionId: string; - - /** - * Initializes a new instance of the DataMigrationServiceClient class. - * @param credentials Credentials needed for the client to connect to Azure. Credentials - * implementing the TokenCredential interface from the @azure/identity package are recommended. For - * more information about these credentials, see - * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the - * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and - * @azure/ms-rest-browserauth are also supported. - * @param subscriptionId Identifier of the subscription - * @param [options] The parameter options - */ - constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.DataMigrationServiceClientOptions) { - if (credentials == undefined) { - throw new Error('\'credentials\' cannot be null.'); - } - if (subscriptionId == undefined) { - throw new Error('\'subscriptionId\' cannot be null.'); - } - - if (!options) { - options = {}; - } - if(!options.userAgent) { - const defaultUserAgent = msRestAzure.getDefaultUserAgentValue(); - options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`; - } - - super(credentials, options); - - this.apiVersion = '2018-07-15-preview'; - this.acceptLanguage = 'en-US'; - this.longRunningOperationRetryTimeout = 30; - this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com"; - this.requestContentType = "application/json; charset=utf-8"; - this.credentials = credentials; - this.subscriptionId = subscriptionId; - - if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) { - this.acceptLanguage = options.acceptLanguage; - } - if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) { - this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout; - } - } -} diff --git a/sdk/datamigration/arm-datamigration/src/index.ts b/sdk/datamigration/arm-datamigration/src/index.ts new file mode 100644 index 000000000000..8b94228cb9d9 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/index.ts @@ -0,0 +1,12 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +/// +export * from "./models"; +export { DataMigrationManagementClient } from "./dataMigrationManagementClient"; +export * from "./operationsInterfaces"; diff --git a/sdk/datamigration/arm-datamigration/src/lroImpl.ts b/sdk/datamigration/arm-datamigration/src/lroImpl.ts new file mode 100644 index 000000000000..518d5f053b4e --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/lroImpl.ts @@ -0,0 +1,34 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { LongRunningOperation, LroResponse } from "@azure/core-lro"; + +export class LroImpl implements LongRunningOperation { + constructor( + private sendOperationFn: (args: any, spec: any) => Promise>, + private args: Record, + private spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record, + public requestPath: string = spec.path!, + public requestMethod: string = spec.httpMethod + ) {} + public async sendInitialRequest(): Promise> { + return this.sendOperationFn(this.args, this.spec); + } + public async sendPollRequest(path: string): Promise> { + const { requestBody, ...restSpec } = this.spec; + return this.sendOperationFn(this.args, { + ...restSpec, + path, + httpMethod: "GET" + }); + } +} diff --git a/sdk/datamigration/arm-datamigration/src/models/filesMappers.ts b/sdk/datamigration/arm-datamigration/src/models/filesMappers.ts deleted file mode 100644 index 9e4af9dbd9b4..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/filesMappers.ts +++ /dev/null @@ -1,235 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - AzureActiveDirectoryApp, - BackupFileInfo, - BackupSetInfo, - BaseResource, - BlobShare, - CheckOCIDriverTaskInput, - CheckOCIDriverTaskOutput, - CheckOCIDriverTaskProperties, - CommandProperties, - ConnectionInfo, - ConnectToMongoDbTaskProperties, - ConnectToSourceMySqlTaskInput, - ConnectToSourceMySqlTaskProperties, - ConnectToSourceNonSqlTaskOutput, - ConnectToSourceOracleSyncTaskInput, - ConnectToSourceOracleSyncTaskOutput, - ConnectToSourceOracleSyncTaskProperties, - ConnectToSourcePostgreSqlSyncTaskInput, - ConnectToSourcePostgreSqlSyncTaskOutput, - ConnectToSourcePostgreSqlSyncTaskProperties, - ConnectToSourceSqlServerSyncTaskProperties, - ConnectToSourceSqlServerTaskInput, - ConnectToSourceSqlServerTaskOutput, - ConnectToSourceSqlServerTaskOutputAgentJobLevel, - ConnectToSourceSqlServerTaskOutputDatabaseLevel, - ConnectToSourceSqlServerTaskOutputLoginLevel, - ConnectToSourceSqlServerTaskOutputTaskLevel, - ConnectToSourceSqlServerTaskProperties, - ConnectToTargetAzureDbForMySqlTaskInput, - ConnectToTargetAzureDbForMySqlTaskOutput, - ConnectToTargetAzureDbForMySqlTaskProperties, - ConnectToTargetAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetSqlDbTaskInput, - ConnectToTargetSqlDbTaskOutput, - ConnectToTargetSqlDbTaskProperties, - ConnectToTargetSqlMISyncTaskInput, - ConnectToTargetSqlMISyncTaskOutput, - ConnectToTargetSqlMISyncTaskProperties, - ConnectToTargetSqlMITaskInput, - ConnectToTargetSqlMITaskOutput, - ConnectToTargetSqlMITaskProperties, - ConnectToTargetSqlSqlDbSyncTaskInput, - ConnectToTargetSqlSqlDbSyncTaskProperties, - DatabaseBackupInfo, - DatabaseFileInfo, - DatabaseInfo, - DatabaseSummaryResult, - DatabaseTable, - DataItemMigrationSummaryResult, - DataMigrationService, - FileList, - FileShare, - FileStorageInfo, - GetTdeCertificatesSqlTaskInput, - GetTdeCertificatesSqlTaskOutput, - GetTdeCertificatesSqlTaskProperties, - GetUserTablesOracleTaskInput, - GetUserTablesOracleTaskOutput, - GetUserTablesOracleTaskProperties, - GetUserTablesPostgreSqlTaskInput, - GetUserTablesPostgreSqlTaskOutput, - GetUserTablesPostgreSqlTaskProperties, - GetUserTablesSqlSyncTaskInput, - GetUserTablesSqlSyncTaskOutput, - GetUserTablesSqlSyncTaskProperties, - GetUserTablesSqlTaskInput, - GetUserTablesSqlTaskOutput, - GetUserTablesSqlTaskProperties, - InstallOCIDriverTaskInput, - InstallOCIDriverTaskOutput, - InstallOCIDriverTaskProperties, - MigrateMISyncCompleteCommandInput, - MigrateMISyncCompleteCommandOutput, - MigrateMISyncCompleteCommandProperties, - MigrateMongoDbTaskProperties, - MigrateMySqlAzureDbForMySqlSyncDatabaseInput, - MigrateMySqlAzureDbForMySqlSyncTaskInput, - MigrateMySqlAzureDbForMySqlSyncTaskOutput, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - MigrateMySqlAzureDbForMySqlSyncTaskProperties, - MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - MigrateOracleAzureDbPostgreSqlSyncDatabaseInput, - MigrateOracleAzureDbPostgreSqlSyncTaskInput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - MigrateSchemaSqlServerSqlDbDatabaseInput, - MigrateSchemaSqlServerSqlDbTaskInput, - MigrateSchemaSqlServerSqlDbTaskOutput, - MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSchemaSqlServerSqlDbTaskOutputError, - MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSchemaSqlServerSqlDbTaskProperties, - MigrateSchemaSqlTaskOutputError, - MigrateSqlServerSqlDbDatabaseInput, - MigrateSqlServerSqlDbSyncDatabaseInput, - MigrateSqlServerSqlDbSyncTaskInput, - MigrateSqlServerSqlDbSyncTaskOutput, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbSyncTaskOutputError, - MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - MigrateSqlServerSqlDbSyncTaskProperties, - MigrateSqlServerSqlDbTaskInput, - MigrateSqlServerSqlDbTaskOutput, - MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbTaskOutputError, - MigrateSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSqlServerSqlDbTaskOutputTableLevel, - MigrateSqlServerSqlDbTaskProperties, - MigrateSqlServerSqlMIDatabaseInput, - MigrateSqlServerSqlMISyncTaskInput, - MigrateSqlServerSqlMISyncTaskOutput, - MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlMISyncTaskOutputError, - MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - MigrateSqlServerSqlMISyncTaskProperties, - MigrateSqlServerSqlMITaskInput, - MigrateSqlServerSqlMITaskOutput, - MigrateSqlServerSqlMITaskOutputAgentJobLevel, - MigrateSqlServerSqlMITaskOutputDatabaseLevel, - MigrateSqlServerSqlMITaskOutputError, - MigrateSqlServerSqlMITaskOutputLoginLevel, - MigrateSqlServerSqlMITaskOutputMigrationLevel, - MigrateSqlServerSqlMITaskProperties, - MigrateSsisTaskInput, - MigrateSsisTaskOutput, - MigrateSsisTaskOutputMigrationLevel, - MigrateSsisTaskOutputProjectLevel, - MigrateSsisTaskProperties, - MigrateSyncCompleteCommandInput, - MigrateSyncCompleteCommandOutput, - MigrateSyncCompleteCommandProperties, - MigrationEligibilityInfo, - MigrationReportResult, - MigrationValidationDatabaseSummaryResult, - MigrationValidationOptions, - MigrationValidationResult, - MiSqlConnectionInfo, - MongoDbCancelCommand, - MongoDbClusterInfo, - MongoDbCollectionInfo, - MongoDbCollectionProgress, - MongoDbCollectionSettings, - MongoDbCommandInput, - MongoDbConnectionInfo, - MongoDbDatabaseInfo, - MongoDbDatabaseProgress, - MongoDbDatabaseSettings, - MongoDbError, - MongoDbFinishCommand, - MongoDbFinishCommandInput, - MongoDbMigrationProgress, - MongoDbMigrationSettings, - MongoDbObjectInfo, - MongoDbProgress, - MongoDbRestartCommand, - MongoDbShardKeyField, - MongoDbShardKeyInfo, - MongoDbShardKeySetting, - MongoDbThrottlingSettings, - MySqlConnectionInfo, - ODataError, - OracleConnectionInfo, - OracleOCIDriverInfo, - OrphanedUserInfo, - PostgreSqlConnectionInfo, - Project, - ProjectFile, - ProjectFileProperties, - ProjectTask, - ProjectTaskProperties, - ReportableException, - Resource, - SchemaMigrationSetting, - SelectedCertificateInput, - ServerProperties, - ServiceSku, - SqlConnectionInfo, - SqlMigrationTaskInput, - SqlServerSqlMISyncTaskInput, - SsisMigrationInfo, - StartMigrationScenarioServerRoleResult, - SyncMigrationDatabaseErrorEvent, - TrackedResource, - UploadOCIDriverTaskInput, - UploadOCIDriverTaskOutput, - UploadOCIDriverTaskProperties, - ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - ValidateMigrationInputSqlServerSqlMISyncTaskInput, - ValidateMigrationInputSqlServerSqlMISyncTaskOutput, - ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - ValidateMigrationInputSqlServerSqlMITaskInput, - ValidateMigrationInputSqlServerSqlMITaskOutput, - ValidateMigrationInputSqlServerSqlMITaskProperties, - ValidateMongoDbTaskProperties, - ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - ValidateOracleAzureDbPostgreSqlSyncTaskOutput, - ValidateSyncMigrationInputSqlServerTaskInput, - ValidateSyncMigrationInputSqlServerTaskOutput -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/index.ts b/sdk/datamigration/arm-datamigration/src/models/index.ts index f2255ca5eb5d..a41c1ae39904 100644 --- a/sdk/datamigration/arm-datamigration/src/models/index.ts +++ b/sdk/datamigration/arm-datamigration/src/models/index.ts @@ -1,9189 +1,7968 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; -import * as msRest from "@azure/ms-rest-js"; - -export { BaseResource, CloudError }; - -/** - * ARM resource. - */ -export interface Resource extends BaseResource { +import * as coreClient from "@azure/core-client"; + +export type DatabaseMigrationPropertiesUnion = + | DatabaseMigrationProperties + | DatabaseMigrationPropertiesSqlMi + | DatabaseMigrationPropertiesSqlVm; +export type ProjectTaskPropertiesUnion = + | ProjectTaskProperties + | MigrateSchemaSqlServerSqlDbTaskProperties + | CheckOCIDriverTaskProperties + | UploadOCIDriverTaskProperties + | InstallOCIDriverTaskProperties + | ConnectToMongoDbTaskProperties + | ConnectToSourceSqlServerTaskProperties + | ConnectToSourceSqlServerSyncTaskProperties + | ConnectToSourcePostgreSqlSyncTaskProperties + | ConnectToSourceMySqlTaskProperties + | ConnectToSourceOracleSyncTaskProperties + | ConnectToTargetSqlDbTaskProperties + | ConnectToTargetSqlDbSyncTaskProperties + | ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties + | ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties + | GetUserTablesSqlTaskProperties + | GetUserTablesSqlSyncTaskProperties + | GetUserTablesOracleTaskProperties + | GetUserTablesPostgreSqlTaskProperties + | GetUserTablesMySqlTaskProperties + | ConnectToTargetSqlMITaskProperties + | ConnectToTargetSqlMISyncTaskProperties + | ConnectToTargetAzureDbForMySqlTaskProperties + | MigrateMongoDbTaskProperties + | MigrateSqlServerSqlMITaskProperties + | MigrateSqlServerSqlMISyncTaskProperties + | MigrateSqlServerSqlDbTaskProperties + | MigrateSqlServerSqlDbSyncTaskProperties + | MigrateMySqlAzureDbForMySqlSyncTaskProperties + | MigrateMySqlAzureDbForMySqlOfflineTaskProperties + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties + | MigrateOracleAzureDbForPostgreSqlSyncTaskProperties + | ValidateMigrationInputSqlServerSqlDbSyncTaskProperties + | ValidateMigrationInputSqlServerSqlMITaskProperties + | ValidateMigrationInputSqlServerSqlMISyncTaskProperties + | ValidateMongoDbTaskProperties + | ValidateOracleAzureDbForPostgreSqlSyncTaskProperties + | GetTdeCertificatesSqlTaskProperties + | MigrateSsisTaskProperties; +export type CommandPropertiesUnion = + | CommandProperties + | MigrateSyncCompleteCommandProperties + | MigrateMISyncCompleteCommandProperties + | MongoDbCancelCommand + | MongoDbFinishCommand + | MongoDbRestartCommand; +export type ConnectionInfoUnion = + | ConnectionInfo + | MongoDbConnectionInfo + | SqlConnectionInfo + | MySqlConnectionInfo + | OracleConnectionInfo + | PostgreSqlConnectionInfo + | MiSqlConnectionInfo; +export type ConnectToSourceSqlServerTaskOutputUnion = + | ConnectToSourceSqlServerTaskOutput + | ConnectToSourceSqlServerTaskOutputTaskLevel + | ConnectToSourceSqlServerTaskOutputDatabaseLevel + | ConnectToSourceSqlServerTaskOutputLoginLevel + | ConnectToSourceSqlServerTaskOutputAgentJobLevel; +export type MigrateSchemaSqlServerSqlDbTaskOutputUnion = + | MigrateSchemaSqlServerSqlDbTaskOutput + | MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel + | MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel + | MigrateSchemaSqlServerSqlDbTaskOutputError + | MigrateSchemaSqlTaskOutputError; +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion = + | MigrateMySqlAzureDbForMySqlSyncTaskOutput + | MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel + | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel + | MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel + | MigrateMySqlAzureDbForMySqlSyncTaskOutputError + | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError; +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion = + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError + | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError; +export type MigrateSqlServerSqlDbSyncTaskOutputUnion = + | MigrateSqlServerSqlDbSyncTaskOutput + | MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel + | MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel + | MigrateSqlServerSqlDbSyncTaskOutputTableLevel + | MigrateSqlServerSqlDbSyncTaskOutputError + | MigrateSqlServerSqlDbSyncTaskOutputDatabaseError; +export type MigrateSqlServerSqlDbTaskOutputUnion = + | MigrateSqlServerSqlDbTaskOutput + | MigrateSqlServerSqlDbTaskOutputMigrationLevel + | MigrateSqlServerSqlDbTaskOutputDatabaseLevel + | MigrateSqlServerSqlDbTaskOutputTableLevel + | MigrateSqlServerSqlDbTaskOutputError + | MigrateSqlServerSqlDbTaskOutputValidationResult + | MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult; +export type MigrateSqlServerSqlMISyncTaskOutputUnion = + | MigrateSqlServerSqlMISyncTaskOutput + | MigrateSqlServerSqlMISyncTaskOutputMigrationLevel + | MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel + | MigrateSqlServerSqlMISyncTaskOutputError; +export type MigrateSqlServerSqlMITaskOutputUnion = + | MigrateSqlServerSqlMITaskOutput + | MigrateSqlServerSqlMITaskOutputMigrationLevel + | MigrateSqlServerSqlMITaskOutputDatabaseLevel + | MigrateSqlServerSqlMITaskOutputAgentJobLevel + | MigrateSqlServerSqlMITaskOutputLoginLevel + | MigrateSqlServerSqlMITaskOutputError; +export type MigrateSsisTaskOutputUnion = + | MigrateSsisTaskOutput + | MigrateSsisTaskOutputMigrationLevel + | MigrateSsisTaskOutputProjectLevel; +export type MongoDbProgressUnion = + | MongoDbProgress + | MongoDbCollectionProgress + | MongoDbDatabaseProgress + | MongoDbMigrationProgress; +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion = + | MigrateOracleAzureDbPostgreSqlSyncTaskOutput + | MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel + | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel + | MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel + | MigrateOracleAzureDbPostgreSqlSyncTaskOutputError + | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError; +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputUnion = + | MigrateMySqlAzureDbForMySqlOfflineTaskOutput + | MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel + | MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel + | MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel + | MigrateMySqlAzureDbForMySqlOfflineTaskOutputError; + +export interface SystemData { + createdBy?: string; + createdByType?: CreatedByType; + createdAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; + lastModifiedAt?: Date; +} + +/** Detailed status of current migration. */ +export interface MigrationStatusDetails { + /** + * Current State of Migration. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly migrationState?: string; + /** + * Details of full backup set. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fullBackupSetInfo?: SqlBackupSetInfo; + /** + * Last applied backup set information. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastRestoredBackupSetInfo?: SqlBackupSetInfo; + /** + * Backup sets that are currently active. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly activeBackupSets?: SqlBackupSetInfo[]; + /** + * Files that are not valid backup files. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly invalidFiles?: string[]; + /** + * Name of blob container. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly blobContainerName?: string; + /** + * Whether full backup has been applied to the target database or not. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly isFullBackupRestored?: boolean; /** - * Resource ID. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Restore blocking reason, if any + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly restoreBlockingReason?: string; /** - * Resource name. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Complete restore error message, if any + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly name?: string; + readonly completeRestoreErrorMessage?: string; /** - * Resource type. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * File upload blocking errors, if any. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: string; -} - -/** - * ARM tracked top level resource. - */ -export interface TrackedResource extends Resource { + readonly fileUploadBlockingErrors?: string[]; /** - * Resource tags. + * File name that is currently being restored. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tags?: { [propertyName: string]: string }; + readonly currentRestoringFilename?: string; + /** + * Last restored file name. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastRestoredFilename?: string; /** - * Resource location. + * Total pending log backups. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - location: string; + readonly pendingLogBackupsCount?: number; } -/** - * Base class for file properties. - */ -export interface ProjectFileProperties { +/** Information of backup set */ +export interface SqlBackupSetInfo { /** - * Optional File extension. If submitted it should not have a leading period and must match the - * extension from filePath. + * Backup set id. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - extension?: string; + readonly backupSetId?: string; /** - * Relative path of this file resource. This property can be set when creating or updating the - * file resource. + * First LSN of the backup set. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - filePath?: string; + readonly firstLSN?: string; /** - * Modification DateTime. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Last LSN of the backup set. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly lastModified?: Date; + readonly lastLSN?: string; /** - * File content type. This property can be modified to reflect the file content type. + * Backup type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - mediaType?: string; + readonly backupType?: string; /** - * File size. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of files in the backup set. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly size?: number; -} - -/** - * A file resource - */ -export interface ProjectFile extends Resource { + readonly listOfBackupFiles?: SqlBackupFileInfo[]; /** - * HTTP strong entity tag value. This is ignored if submitted. + * Backup start date. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - etag?: string; + readonly backupStartDate?: Date; /** - * Custom file properties + * Backup end time. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - properties?: ProjectFileProperties; -} - -/** - * Error information in OData format. - */ -export interface ODataError { + readonly backupFinishDate?: Date; /** - * The machine-readable description of the error, such as 'InvalidRequest' or - * 'InternalServerError' + * Whether this backup set has been restored or not. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - code?: string; + readonly isBackupRestored?: boolean; /** - * The human-readable description of the error + * Has Backup Checksums + * NOTE: This property will not be serialized. It can only be populated by the server. */ - message?: string; + readonly hasBackupChecksums?: boolean; /** - * Inner errors that caused this error + * Media family count + * NOTE: This property will not be serialized. It can only be populated by the server. */ - details?: ODataError[]; + readonly familyCount?: number; + /** + * The reasons why the backup set is ignored + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly ignoreReasons?: string[]; } -/** - * Exception object for all custom exceptions - */ -export interface ReportableException { +/** Information of backup file */ +export interface SqlBackupFileInfo { /** - * Error message + * File name. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - message?: string; + readonly fileName?: string; /** - * Actionable steps for this exception + * Status of the file. (Initial, Uploading, Uploaded, Restoring, Restored or Skipped) + * NOTE: This property will not be serialized. It can only be populated by the server. */ - actionableMessage?: string; + readonly status?: string; /** - * The path to the file where exception occurred + * File size in bytes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - filePath?: string; + readonly totalSize?: number; /** - * The line number where exception occurred + * Bytes read + * NOTE: This property will not be serialized. It can only be populated by the server. */ - lineNumber?: string; + readonly dataRead?: number; /** - * Coded numerical value that is assigned to a specific exception + * Bytes written + * NOTE: This property will not be serialized. It can only be populated by the server. */ - hResult?: number; + readonly dataWritten?: number; /** - * Stack trace + * Copy throughput in KBps + * NOTE: This property will not be serialized. It can only be populated by the server. */ - stackTrace?: string; -} - -/** - * Output for command that completes online migration for an Azure SQL Database Managed Instance. - */ -export interface MigrateMISyncCompleteCommandOutput { + readonly copyThroughput?: number; /** - * List of errors that happened during the command execution + * Copy Duration in seconds + * NOTE: This property will not be serialized. It can only be populated by the server. */ - errors?: ReportableException[]; -} - -/** - * Input for command that completes online migration for an Azure SQL Database Managed Instance. - */ -export interface MigrateMISyncCompleteCommandInput { + readonly copyDuration?: number; /** - * Name of managed instance database + * Media family sequence number + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceDatabaseName: string; + readonly familySequenceNumber?: number; } -/** - * Contains the possible cases for CommandProperties. - */ -export type CommandPropertiesUnion = CommandProperties | MigrateMISyncCompleteCommandProperties | MigrateSyncCompleteCommandProperties | MongoDbCancelCommand | MongoDbFinishCommand | MongoDbRestartCommand; +/** Backup Configuration */ +export interface BackupConfiguration { + /** Source location of backups. */ + sourceLocation?: SourceLocation; + /** Target location for copying backups. */ + targetLocation?: TargetLocation; +} -/** - * Base class for all types of DMS command properties. If command is not supported by current - * client, this object is returned. - */ -export interface CommandProperties { +/** Source Location details of backups. */ +export interface SourceLocation { + /** Source File share. */ + fileShare?: SqlFileShare; + /** Source Azure Blob. */ + azureBlob?: AzureBlob; +} + +/** File share */ +export interface SqlFileShare { + /** Location as SMB share or local drive where backups are placed. */ + path?: string; + /** Username to access the file share location for backups. */ + username?: string; + /** Password for username to access file share location. */ + password?: string; +} + +/** Azure Blob Details */ +export interface AzureBlob { + /** Resource Id of the storage account where backups are stored. */ + storageAccountResourceId?: string; + /** Storage Account Key. */ + accountKey?: string; + /** Blob container name where backups are stored. */ + blobContainerName?: string; +} + +/** Target Location details for optional copy of backups */ +export interface TargetLocation { + /** Resource Id of the storage account copying backups. */ + storageAccountResourceId?: string; + /** Storage Account Key. */ + accountKey?: string; +} + +/** Offline configuration */ +export interface OfflineConfiguration { + /** Offline migration */ + offline?: boolean; + /** Last backup name for offline migration. This is optional for migrations from file share. If it is not provided, then the service will determine the last backup file name based on latest backup files present in file share. */ + lastBackupName?: string; +} + +/** Database Migration Resource properties. */ +export interface DatabaseMigrationProperties { + /** Polymorphic discriminator, which specifies the different types this object can be */ + kind: "SqlMi" | "SqlVm"; + /** Scope of the database. */ + scope?: string; /** - * Polymorphic Discriminator + * Provisioning State of migration. ProvisioningState as Succeeded implies that validations have been performed and migration has started. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "CommandProperties"; + readonly provisioningState?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration status. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly migrationStatus?: string; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database migration start time. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly startedOn?: Date; + /** + * Database migration end time. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly endedOn?: Date; + /** Source SQL Server connection details. */ + sourceSqlConnection?: SqlConnectionInformation; + /** Name of the source database. */ + sourceDatabaseName?: string; + /** Resource Id of the Migration Service. */ + migrationService?: string; + /** ID tracking current migration operation. */ + migrationOperationId?: string; + /** + * Error details in case of migration failure. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly migrationFailureError?: ErrorInfo; +} + +/** Source SQL Connection */ +export interface SqlConnectionInformation { + /** Data source. */ + dataSource?: string; + /** Authentication type. */ + authentication?: string; + /** User name to connect to source SQL. */ + userName?: string; + /** Password to connect to source SQL. */ + password?: string; + /** Whether to encrypt connection or not. */ + encryptConnection?: boolean; + /** Whether to trust server certificate or not. */ + trustServerCertificate?: boolean; } -/** - * Properties for the command that completes online migration for an Azure SQL Database Managed - * Instance. - */ -export interface MigrateMISyncCompleteCommandProperties { +/** Error details */ +export interface ErrorInfo { /** - * Polymorphic Discriminator + * Error code. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "Migrate.SqlServer.AzureDbSqlMi.Complete"; + readonly code?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Error message. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly message?: string; +} + +export interface ProxyResource { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly id?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly name?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly type?: string; +} + +/** Migration Operation Input */ +export interface MigrationOperationInput { + /** ID tracking migration operation. */ + migrationOperationId?: string; +} + +/** Result of the request to list SQL operations. */ +export interface OperationListResult { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly value?: OperationsDefinition[]; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly nextLink?: string; +} + +export interface OperationsDefinition { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly name?: string; + /** Indicates whether the operation is a data action */ + isDataAction?: boolean; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly display?: OperationsDisplayDefinition; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly origin?: OperationOrigin; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Dictionary of + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly properties?: { [propertyName: string]: Record }; +} + +export interface OperationsDisplayDefinition { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly provider?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly resource?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly operation?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly description?: string; +} + +export interface TrackedResource { + location?: string; + /** Dictionary of */ + tags?: { [propertyName: string]: string }; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly id?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly name?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly type?: string; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly systemData?: SystemData; +} + +/** An update to a SQL Migration Service. */ +export interface SqlMigrationServiceUpdate { + /** Dictionary of */ + tags?: { [propertyName: string]: string }; +} + +/** A list of SQL Migration Service. */ +export interface SqlMigrationListResult { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly value?: SqlMigrationService[]; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly nextLink?: string; +} + +/** An authentication key. */ +export interface AuthenticationKeys { + /** The first authentication key. */ + authKey1?: string; + /** The second authentication key. */ + authKey2?: string; +} + +/** An authentication key to regenerate. */ +export interface RegenAuthKeys { + /** The name of authentication key to generate. */ + keyName?: string; + /** The first authentication key. */ + authKey1?: string; + /** The second authentication key. */ + authKey2?: string; +} + +/** Details of node to be deleted. */ +export interface DeleteNode { + /** The name of node to delete. */ + nodeName?: string; + /** The name of integration runtime. */ + integrationRuntimeName?: string; +} + +/** A list of Database Migrations. */ +export interface DatabaseMigrationListResult { + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly value?: DatabaseMigration[]; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly nextLink?: string; +} + +/** Integration Runtime Monitoring Data. */ +export interface IntegrationRuntimeMonitoringData { /** - * Command input + * The name of Integration Runtime. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MigrateMISyncCompleteCommandInput; + readonly name?: string; /** - * Command output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Integration Runtime node monitoring data. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: MigrateMISyncCompleteCommandOutput; + readonly nodes?: NodeMonitoringData[]; } -/** - * Output for command that completes sync migration for a database. - */ -export interface MigrateSyncCompleteCommandOutput { +export interface NodeMonitoringData { /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Unmatched properties from the message are deserialized in this collection. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly additionalProperties?: { + [propertyName: string]: Record; + }; /** - * List of errors that happened during the command execution - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ReportableException[]; -} - -/** - * Input for command that completes sync migration for a database. - */ -export interface MigrateSyncCompleteCommandInput { + readonly nodeName?: string; /** - * Name of database + * Available memory (MB) on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseName: string; + readonly availableMemoryInMB?: number; /** - * Time stamp to complete + * CPU percentage on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commitTimeStamp?: Date; -} - -/** - * Properties for the command that completes sync migration for a database. - */ -export interface MigrateSyncCompleteCommandProperties { + readonly cpuUtilization?: number; /** - * Polymorphic Discriminator + * Maximum concurrent jobs on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "Migrate.Sync.Complete.Database"; + readonly concurrentJobsLimit?: number; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The number of jobs currently running on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly concurrentJobsRunning?: number; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The maximum concurrent jobs in this integration runtime. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly maxConcurrentJobs?: number; /** - * Command input + * Sent bytes on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MigrateSyncCompleteCommandInput; + readonly sentBytes?: number; /** - * Command output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Received bytes on the integration runtime node. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: MigrateSyncCompleteCommandOutput; + readonly receivedBytes?: number; } -/** - * Contains the possible cases for MigrateSsisTaskOutput. - */ -export type MigrateSsisTaskOutputUnion = MigrateSsisTaskOutput | MigrateSsisTaskOutputProjectLevel | MigrateSsisTaskOutputMigrationLevel; +/** The DMS List SKUs operation response. */ +export interface ResourceSkusResult { + /** The list of SKUs available for the subscription. */ + value: ResourceSku[]; + /** The uri to fetch the next page of DMS SKUs. Call ListNext() with this to fetch the next page of DMS SKUs. */ + nextLink?: string; +} -/** - * Output for task that migrates SSIS packages from SQL Server to Azure SQL Database Managed - * Instance. - */ -export interface MigrateSsisTaskOutput { +/** Describes an available DMS SKU. */ +export interface ResourceSku { /** - * Polymorphic Discriminator + * The type of resource the SKU applies to. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "MigrateSsisTaskOutput"; + readonly resourceType?: string; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The name of SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; -} - -/** - * An interface representing MigrateSsisTaskOutputProjectLevel. - */ -export interface MigrateSsisTaskOutputProjectLevel { + readonly name?: string; /** - * Polymorphic Discriminator + * Specifies the tier of DMS in a scale set. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "SsisProjectLevelOutput"; + readonly tier?: string; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The Size of the SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly size?: string; /** - * Name of the folder - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The Family of this particular SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly folderName?: string; + readonly family?: string; /** - * Name of the project - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The Kind of resources that are supported in this SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly projectName?: string; + readonly kind?: string; /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Not used. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: MigrationState; + readonly capacity?: ResourceSkuCapacity; /** - * Stage of SSIS migration. Possible values include: 'None', 'Initialize', 'InProgress', - * 'Completed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The set of locations that the SKU is available. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly stage?: SsisMigrationStage; + readonly locations?: string[]; /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The api versions that support this SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly startedOn?: Date; + readonly apiVersions?: string[]; /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Metadata for retrieving price info. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly endedOn?: Date; + readonly costs?: ResourceSkuCosts[]; /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * A name value pair to describe the capability. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly message?: string; + readonly capabilities?: ResourceSkuCapabilities[]; /** - * Migration exceptions and warnings - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The restrictions because of which SKU cannot be used. This is empty if there are no restrictions. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly exceptionsAndWarnings?: ReportableException[]; + readonly restrictions?: ResourceSkuRestrictions[]; } -/** - * An interface representing MigrateSsisTaskOutputMigrationLevel. - */ -export interface MigrateSsisTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; +/** Describes scaling information of a SKU. */ +export interface ResourceSkuCapacity { /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The minimum capacity. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly minimum?: number; /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The maximum capacity. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly startedOn?: Date; + readonly maximum?: number; /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The default capacity. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly endedOn?: Date; + readonly default?: number; /** - * Current status of migration. Possible values include: 'Default', 'Connecting', - * 'SourceAndTargetSelected', 'SelectLogins', 'Configured', 'Running', 'Error', 'Stopped', - * 'Completed', 'CompletedWithWarnings' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The scale type applicable to the SKU. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly status?: MigrationStatus; + readonly scaleType?: ResourceSkuCapacityScaleType; +} + +/** Describes metadata for retrieving price info. */ +export interface ResourceSkuCosts { /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Used for querying price from commerce. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly message?: string; + readonly meterID?: string; /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The multiplier is needed to extend the base metered cost. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerVersion?: string; + readonly quantity?: number; /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * An invariant to show the extended unit. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerBrandVersion?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Migration exceptions and warnings. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; - /** - * Stage of SSIS migration. Possible values include: 'None', 'Initialize', 'InProgress', - * 'Completed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly stage?: SsisMigrationStage; + readonly extendedUnit?: string; } -/** - * SSIS migration info with SSIS store type, overwrite policy. - */ -export interface SsisMigrationInfo { - /** - * The SSIS store type of source, only SSIS catalog is supported now in DMS. Possible values - * include: 'SsisCatalog' - */ - ssisStoreType?: SsisStoreType; +/** Describes The SKU capabilities object. */ +export interface ResourceSkuCapabilities { /** - * The overwrite option for the SSIS project migration. Possible values include: 'Ignore', - * 'Overwrite' + * An invariant to describe the feature. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - projectOverwriteOption?: SsisMigrationOverwriteOption; + readonly name?: string; /** - * The overwrite option for the SSIS environment migration. Possible values include: 'Ignore', - * 'Overwrite' + * An invariant if the feature is measured by quantity. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - environmentOverwriteOption?: SsisMigrationOverwriteOption; + readonly value?: string; } -/** - * Contains the possible cases for ConnectionInfo. - */ -export type ConnectionInfoUnion = ConnectionInfo | MiSqlConnectionInfo | PostgreSqlConnectionInfo | OracleConnectionInfo | MySqlConnectionInfo | MongoDbConnectionInfo | SqlConnectionInfo; - -/** - * Defines the connection properties of a server - */ -export interface ConnectionInfo { +/** Describes scaling information of a SKU. */ +export interface ResourceSkuRestrictions { /** - * Polymorphic Discriminator + * The type of restrictions. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - type: "ConnectionInfo"; + readonly type?: ResourceSkuRestrictionsType; /** - * User name + * The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - userName?: string; + readonly values?: string[]; /** - * Password credential. + * The reason code for restriction. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - password?: string; + readonly reasonCode?: ResourceSkuRestrictionsReasonCode; } -/** - * Properties required to create a connection to Azure SQL database Managed instance - */ -export interface MiSqlConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "MiSqlConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; +/** Error information. */ +export interface ApiError { + /** Error information in OData format */ + error?: ODataError; /** - * Resource id for Azure SQL database Managed instance + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - managedInstanceResourceId: string; + readonly systemData?: SystemData; } -/** - * Information for connecting to PostgreSQL server - */ -export interface PostgreSqlConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "PostgreSqlConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; - /** - * Name of the server - */ - serverName: string; - /** - * Name of the database - */ - databaseName?: string; - /** - * Port for Server - */ - port: number; +/** Error information in OData format. */ +export interface ODataError { + /** The machine-readable description of the error, such as 'InvalidRequest' or 'InternalServerError' */ + code?: string; + /** The human-readable description of the error */ + message?: string; + /** Inner errors that caused this error */ + details?: ODataError[]; } -/** - * Information for connecting to Oracle server - */ -export interface OracleConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "OracleConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; - /** - * EZConnect or TNSName connection string. - */ - dataSource: string; +/** An Azure SKU instance */ +export interface ServiceSku { + /** The unique name of the SKU, such as 'P3' */ + name?: string; + /** The tier of the SKU, such as 'Basic', 'General Purpose', or 'Business Critical' */ + tier?: string; + /** The SKU family, used when the service has multiple performance classes within a tier, such as 'A', 'D', etc. for virtual machines */ + family?: string; + /** The size of the SKU, used when the name alone does not denote a service size or when a SKU has multiple performance classes within a family, e.g. 'A1' for virtual machines */ + size?: string; + /** The capacity of the SKU, if it supports scaling */ + capacity?: number; } -/** - * Information for connecting to MySQL server - */ -export interface MySqlConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "MySqlConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; - /** - * Name of the server - */ - serverName: string; - /** - * Port for Server - */ - port: number; +/** Service health status */ +export interface DataMigrationServiceStatusResponse { + /** The DMS instance agent version */ + agentVersion?: string; + /** The machine-readable status, such as 'Initializing', 'Offline', 'Online', 'Deploying', 'Deleting', 'Stopped', 'Stopping', 'Starting', 'FailedToStart', 'FailedToStop' or 'Failed' */ + status?: string; + /** The services virtual machine size, such as 'Standard_D2_v2' */ + vmSize?: string; + /** The list of supported task types */ + supportedTaskTypes?: string[]; } -/** - * Describes a connection to a MongoDB data source - */ -export interface MongoDbConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "MongoDbConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; - /** - * A MongoDB connection string or blob container URL. The user name and password can be specified - * here or in the userName and password properties - */ - connectionString: string; +/** OData page of available SKUs */ +export interface ServiceSkuList { + /** List of service SKUs */ + value?: AvailableServiceSku[]; + /** URL to load the next page of service SKUs */ + nextLink?: string; } -/** - * Information for connecting to SQL database server - */ -export interface SqlConnectionInfo { - /** - * Polymorphic Discriminator - */ - type: "SqlConnectionInfo"; - /** - * User name - */ - userName?: string; - /** - * Password credential. - */ - password?: string; - /** - * Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber - */ - dataSource: string; - /** - * Authentication type to use for connection. Possible values include: 'None', - * 'WindowsAuthentication', 'SqlAuthentication', 'ActiveDirectoryIntegrated', - * 'ActiveDirectoryPassword' - */ - authentication?: AuthenticationType; - /** - * Whether to encrypt the connection. Default value: true. - */ - encryptConnection?: boolean; - /** - * Additional connection settings - */ - additionalSettings?: string; - /** - * Whether to trust the server certificate. Default value: false. - */ - trustServerCertificate?: boolean; - /** - * Server platform type for connection. Possible values include: 'SqlOnPrem' - */ - platform?: SqlSourcePlatform; +/** Describes the available service SKU. */ +export interface AvailableServiceSku { + /** The resource type, including the provider namespace */ + resourceType?: string; + /** SKU name, tier, etc. */ + sku?: AvailableServiceSkuSku; + /** A description of the scaling capacities of the SKU */ + capacity?: AvailableServiceSkuCapacity; } -/** - * Base class for migration task input - */ -export interface SqlMigrationTaskInput { - /** - * Information for connecting to source - */ - sourceConnectionInfo: SqlConnectionInfo; - /** - * Information for connecting to target - */ - targetConnectionInfo: SqlConnectionInfo; +/** SKU name, tier, etc. */ +export interface AvailableServiceSkuSku { + /** The name of the SKU */ + name?: string; + /** SKU family */ + family?: string; + /** SKU size */ + size?: string; + /** The tier of the SKU, such as "Basic", "General Purpose", or "Business Critical" */ + tier?: string; } -/** - * Input for task that migrates SSIS packages from SQL Server to Azure SQL Database Managed - * Instance. - */ -export interface MigrateSsisTaskInput extends SqlMigrationTaskInput { - /** - * SSIS package migration information. - */ - ssisMigrationInfo: SsisMigrationInfo; +/** A description of the scaling capacities of the SKU */ +export interface AvailableServiceSkuCapacity { + /** The minimum capacity, usually 0 or 1. */ + minimum?: number; + /** The maximum capacity */ + maximum?: number; + /** The default capacity */ + default?: number; + /** The scalability approach */ + scaleType?: ServiceScalability; } -/** - * Contains the possible cases for ProjectTaskProperties. - */ -export type ProjectTaskPropertiesUnion = ProjectTaskProperties | MigrateSsisTaskProperties | GetTdeCertificatesSqlTaskProperties | ValidateOracleAzureDbForPostgreSqlSyncTaskProperties | ValidateMongoDbTaskProperties | ValidateMigrationInputSqlServerSqlMISyncTaskProperties | ValidateMigrationInputSqlServerSqlMITaskProperties | ValidateMigrationInputSqlServerSqlDbSyncTaskProperties | MigrateOracleAzureDbForPostgreSqlSyncTaskProperties | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties | MigrateMySqlAzureDbForMySqlSyncTaskProperties | MigrateSqlServerSqlDbSyncTaskProperties | MigrateSqlServerSqlDbTaskProperties | MigrateSqlServerSqlMISyncTaskProperties | MigrateSqlServerSqlMITaskProperties | MigrateMongoDbTaskProperties | ConnectToTargetAzureDbForMySqlTaskProperties | ConnectToTargetSqlMISyncTaskProperties | ConnectToTargetSqlMITaskProperties | GetUserTablesPostgreSqlTaskProperties | GetUserTablesOracleTaskProperties | GetUserTablesSqlSyncTaskProperties | GetUserTablesSqlTaskProperties | ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties | ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties | ConnectToTargetSqlSqlDbSyncTaskProperties | ConnectToTargetSqlDbTaskProperties | ConnectToSourceOracleSyncTaskProperties | ConnectToSourcePostgreSqlSyncTaskProperties | ConnectToSourceSqlServerSyncTaskProperties | ConnectToSourceSqlServerTaskProperties | ConnectToMongoDbTaskProperties | ConnectToSourceMySqlTaskProperties | MigrateSchemaSqlServerSqlDbTaskProperties | CheckOCIDriverTaskProperties | UploadOCIDriverTaskProperties | InstallOCIDriverTaskProperties; +/** OData page of tasks */ +export interface TaskList { + /** List of tasks */ + value?: ProjectTask[]; + /** URL to load the next page of tasks */ + nextLink?: string; +} -/** - * Base class for all types of DMS task properties. If task is not supported by current client, - * this object is returned. - */ +/** Base class for all types of DMS task properties. If task is not supported by current client, this object is returned. */ export interface ProjectTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ProjectTaskProperties"; + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: + | "MigrateSchemaSqlServerSqlDb" + | "Service.Check.OCI" + | "Service.Upload.OCI" + | "Service.Install.OCI" + | "Connect.MongoDb" + | "ConnectToSource.SqlServer" + | "ConnectToSource.SqlServer.Sync" + | "ConnectToSource.PostgreSql.Sync" + | "ConnectToSource.MySql" + | "ConnectToSource.Oracle.Sync" + | "ConnectToTarget.SqlDb" + | "ConnectToTarget.SqlDb.Sync" + | "ConnectToTarget.AzureDbForPostgreSql.Sync" + | "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync" + | "GetUserTables.Sql" + | "GetUserTables.AzureSqlDb.Sync" + | "GetUserTablesOracle" + | "GetUserTablesPostgreSql" + | "GetUserTablesMySql" + | "ConnectToTarget.AzureSqlDbMI" + | "ConnectToTarget.AzureSqlDbMI.Sync.LRS" + | "ConnectToTarget.AzureDbForMySql" + | "Migrate.MongoDb" + | "Migrate.SqlServer.AzureSqlDbMI" + | "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS" + | "Migrate.SqlServer.SqlDb" + | "Migrate.SqlServer.AzureSqlDb.Sync" + | "Migrate.MySql.AzureDbForMySql.Sync" + | "Migrate.MySql.AzureDbForMySql" + | "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2" + | "Migrate.Oracle.AzureDbForPostgreSql.Sync" + | "ValidateMigrationInput.SqlServer.SqlDb.Sync" + | "ValidateMigrationInput.SqlServer.AzureSqlDbMI" + | "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS" + | "Validate.MongoDb" + | "Validate.Oracle.AzureDbPostgreSql.Sync" + | "GetTDECertificates.Sql" + | "Migrate.Ssis"; /** * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly errors?: ODataError[]; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The state of the task. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly state?: TaskState; /** * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ + /** Key value pairs of client data to attach meta data information to task */ clientData?: { [propertyName: string]: string }; } -/** - * Properties for task that migrates SSIS packages from SQL Server databases to Azure SQL Database - * Managed Instance. - */ -export interface MigrateSsisTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.Ssis"; +/** Base class for all types of DMS command properties. If command is not supported by current client, this object is returned. */ +export interface CommandProperties { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: + | "Migrate.Sync.Complete.Database" + | "Migrate.SqlServer.AzureDbSqlMi.Complete" + | "cancel" + | "finish" + | "restart"; /** * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly errors?: ODataError[]; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateSsisTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The state of the command. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: MigrateSsisTaskOutputUnion[]; + readonly state?: CommandState; } -/** - * Output of the task that gets TDE certificates in Base64 encoded format. - */ -export interface GetTdeCertificatesSqlTaskOutput { +/** ARM resource. */ +export interface Resource { /** - * Mapping from certificate name to base 64 encoded format. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly base64EncodedCertificates?: { [propertyName: string]: string[] }; - /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Resource ID. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Info for certificate to be exported for TDE enabled databases. - */ -export interface SelectedCertificateInput { + readonly id?: string; /** - * Name of certificate to be exported. + * Resource name. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - certificateName: string; + readonly name?: string; /** - * Password to use for encrypting the exported certificate. + * Resource type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - password: string; + readonly type?: string; } -/** - * File share information with Path, Username, and Password. - */ -export interface FileShare { - /** - * User name credential to connect to the share location - */ - userName?: string; +/** A resource type and proposed name */ +export interface NameAvailabilityRequest { + /** The proposed resource name */ + name?: string; + /** The resource type chain (e.g. virtualMachines/extensions) */ + type?: string; +} + +/** Indicates whether a proposed resource name is available */ +export interface NameAvailabilityResponse { + /** If true, the name is valid and available. If false, 'reason' describes why not. */ + nameAvailable?: boolean; + /** The reason why the name is not available, if nameAvailable is false */ + reason?: NameCheckFailureReason; + /** The localized reason why the name is not available, if nameAvailable is false */ + message?: string; +} + +/** OData page of service objects */ +export interface DataMigrationServiceList { + /** List of services */ + value?: DataMigrationService[]; + /** URL to load the next page of services */ + nextLink?: string; +} + +/** OData page of project resources */ +export interface ProjectList { + /** List of projects */ + value?: Project[]; + /** URL to load the next page of projects */ + nextLink?: string; +} + +/** Defines the connection properties of a server */ +export interface ConnectionInfo { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: + | "MongoDbConnectionInfo" + | "SqlConnectionInfo" + | "MySqlConnectionInfo" + | "OracleConnectionInfo" + | "PostgreSqlConnectionInfo" + | "MiSqlConnectionInfo"; + /** User name */ + userName?: string; + /** Password credential. */ + password?: string; +} + +/** Project Database Details */ +export interface DatabaseInfo { + /** Name of the database */ + sourceDatabaseName: string; +} + +/** OData page of quota objects */ +export interface QuotaList { + /** List of quotas */ + value?: Quota[]; + /** URL to load the next page of quotas, or null or missing if this is the last page */ + nextLink?: string; +} + +/** Describes a quota for or usage details about a resource */ +export interface Quota { + /** The current value of the quota. If null or missing, the current value cannot be determined in the context of the request. */ + currentValue?: number; + /** The resource ID of the quota object */ + id?: string; + /** The maximum value of the quota. If null or missing, the quota has no maximum, in which case it merely tracks usage. */ + limit?: number; + /** The name of the quota */ + name?: QuotaName; + /** The unit for the quota, such as Count, Bytes, BytesPerSecond, etc. */ + unit?: string; +} + +/** The name of the quota */ +export interface QuotaName { + /** The localized name of the quota */ + localizedValue?: string; + /** The unlocalized name (or ID) of the quota */ + value?: string; +} + +/** OData page of files */ +export interface FileList { + /** List of files */ + value?: ProjectFile[]; + /** URL to load the next page of files */ + nextLink?: string; +} + +/** Base class for file properties. */ +export interface ProjectFileProperties { + /** Optional File extension. If submitted it should not have a leading period and must match the extension from filePath. */ + extension?: string; + /** Relative path of this file resource. This property can be set when creating or updating the file resource. */ + filePath?: string; /** - * Password credential used to connect to the share location. + * Modification DateTime. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - password?: string; + readonly lastModified?: Date; + /** File content type. This property can be modified to reflect the file content type. */ + mediaType?: string; /** - * The folder path for this share. + * File size. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - path: string; + readonly size?: number; } -/** - * Input for the task that gets TDE certificates in Base64 encoded format. - */ -export interface GetTdeCertificatesSqlTaskInput { +/** File storage information. */ +export interface FileStorageInfo { + /** A URI that can be used to access the file content. */ + uri?: string; + /** Dictionary of */ + headers?: { [propertyName: string]: string }; +} + +/** Input for command that completes sync migration for a database. */ +export interface MigrateSyncCompleteCommandInput { + /** Name of database */ + databaseName: string; + /** Time stamp to complete */ + commitTimeStamp?: Date; +} + +/** Output for command that completes sync migration for a database. */ +export interface MigrateSyncCompleteCommandOutput { /** - * Connection information for SQL Server + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - connectionInfo: SqlConnectionInfo; + readonly id?: string; /** - * Backup file share information for file share to be used for temporarily storing files. + * List of errors that happened during the command execution + * NOTE: This property will not be serialized. It can only be populated by the server. */ - backupFileShare: FileShare; + readonly errors?: ReportableException[]; +} + +/** Exception object for all custom exceptions */ +export interface ReportableException { + /** Error message */ + message?: string; + /** Actionable steps for this exception */ + actionableMessage?: string; + /** The path to the file where exception occurred */ + filePath?: string; + /** The line number where exception occurred */ + lineNumber?: string; + /** Coded numerical value that is assigned to a specific exception */ + hResult?: number; + /** Stack trace */ + stackTrace?: string; +} + +/** Input for command that completes online migration for an Azure SQL Database Managed Instance. */ +export interface MigrateMISyncCompleteCommandInput { + /** Name of managed instance database */ + sourceDatabaseName: string; +} + +/** Output for command that completes online migration for an Azure SQL Database Managed Instance. */ +export interface MigrateMISyncCompleteCommandOutput { + /** List of errors that happened during the command execution */ + errors?: ReportableException[]; +} + +/** Azure Active Directory Application */ +export interface AzureActiveDirectoryApp { + /** Application ID of the Azure Active Directory Application */ + applicationId: string; + /** Key used to authenticate to the Azure Active Directory Application */ + appKey: string; + /** Tenant id of the customer */ + tenantId: string; +} + +/** Information of backup set */ +export interface BackupSetInfo { + /** Id for the set of backup files */ + backupSetId?: string; + /** First log sequence number of the backup file */ + firstLsn?: string; + /** Last log sequence number of the backup file */ + lastLsn?: string; + /** Last modified time of the backup file in share location */ + lastModifiedTime?: Date; + /** Enum of the different backup types */ + backupType?: BackupType; + /** List of files in the backup set */ + listOfBackupFiles?: BackupFileInfo[]; + /** Name of the database to which the backup set belongs */ + databaseName?: string; + /** Date and time that the backup operation began */ + backupStartDate?: Date; + /** Date and time that the backup operation finished */ + backupFinishedDate?: Date; + /** Whether the backup set is restored or not */ + isBackupRestored?: boolean; +} + +/** Information of the backup file */ +export interface BackupFileInfo { + /** Location of the backup file in shared folder */ + fileLocation?: string; + /** Sequence number of the backup file in the backup set */ + familySequenceNumber?: number; + /** Status of the backup file during migration */ + status?: BackupFileStatus; +} + +/** Information of orphaned users on the SQL server database. */ +export interface OrphanedUserInfo { + /** Name of the orphaned user */ + name?: string; + /** Parent database of the user */ + databaseName?: string; +} + +/** Input for the task that validates MySQL database connection */ +export interface ConnectToSourceMySqlTaskInput { + /** Information for connecting to MySQL source */ + sourceConnectionInfo: MySqlConnectionInfo; + /** Target Platform for the migration */ + targetPlatform?: MySqlTargetPlatformType; + /** Permission group for validations */ + checkPermissionsGroup?: ServerLevelPermissionsGroup; + /** Flag for whether or not the migration is offline */ + isOfflineMigration?: boolean; +} + +/** Input for the task that validates connection to SQL Server and also validates source server requirements */ +export interface ConnectToSourceSqlServerTaskInput { + /** Connection information for Source SQL Server */ + sourceConnectionInfo: SqlConnectionInfo; + /** Permission group for validations */ + checkPermissionsGroup?: ServerLevelPermissionsGroup; + /** Flag for whether to collect databases from source server. */ + collectDatabases?: boolean; + /** Flag for whether to collect logins from source server. */ + collectLogins?: boolean; + /** Flag for whether to collect agent jobs from source server. */ + collectAgentJobs?: boolean; + /** Flag for whether to collect TDE Certificate names from source server. */ + collectTdeCertificateInfo?: boolean; + /** Flag for whether to validate SSIS catalog is reachable on the source server. */ + validateSsisCatalogOnly?: boolean; +} + +/** Output for the task that validates connection to SQL Server and also validates source server requirements */ +export interface ConnectToSourceSqlServerTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "TaskLevelOutput" + | "DatabaseLevelOutput" + | "LoginLevelOutput" + | "AgentJobLevelOutput"; /** - * List containing certificate names and corresponding password to use for encrypting the - * exported certificate. + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedCertificates: SelectedCertificateInput[]; + readonly id?: string; } -/** - * Properties for the task that gets TDE certificates in Base64 encoded format. - */ -export interface GetTdeCertificatesSqlTaskProperties { +/** Database file specific information */ +export interface DatabaseFileInfo { + /** Name of the database */ + databaseName?: string; + /** Unique identifier for database file */ + id?: string; + /** Logical name of the file */ + logicalName?: string; + /** Operating-system full path of the file */ + physicalFullName?: string; + /** Suggested full path of the file for restoring */ + restoreFullName?: string; + /** Database file type */ + fileType?: DatabaseFileType; + /** Size of the file in megabytes */ + sizeMB?: number; +} + +/** Information about migration eligibility of a server object */ +export interface MigrationEligibilityInfo { /** - * Polymorphic Discriminator + * Whether object is eligible for migration or not. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "GetTDECertificates.Sql"; + readonly isEligibleForMigration?: boolean; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Information about eligibility failure for the server object. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly validationMessages?: string[]; +} + +/** Input for the task that validates connection to PostgreSQL and source server requirements */ +export interface ConnectToSourcePostgreSqlSyncTaskInput { + /** Connection information for source PostgreSQL server */ + sourceConnectionInfo: PostgreSqlConnectionInfo; +} + +/** Output for the task that validates connection to PostgreSQL and source server requirements */ +export interface ConnectToSourcePostgreSqlSyncTaskOutput { /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly id?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Version of the source server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly sourceServerVersion?: string; /** - * Key value pairs of client data to attach meta data information to task + * List of databases on source server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly databases?: string[]; /** - * Task input + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: GetTdeCertificatesSqlTaskInput; + readonly sourceServerBrandVersion?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: GetTdeCertificatesSqlTaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * Output for task that validates migration input for Oracle to Azure Database for PostgreSQL for - * online migrations - */ -export interface ValidateOracleAzureDbPostgreSqlSyncTaskOutput { - /** - * Errors associated with a selected database object - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; +/** Input for the task that validates connection to Azure Database for MySQL and target server requirements */ +export interface ConnectToTargetAzureDbForMySqlTaskInput { + /** Connection information for source MySQL server */ + sourceConnectionInfo: MySqlConnectionInfo; + /** Connection information for target Azure Database for MySQL server */ + targetConnectionInfo: MySqlConnectionInfo; + /** Flag for whether or not the migration is offline */ + isOfflineMigration?: boolean; } -/** - * Database specific information for Oracle to Azure Database for PostgreSQL migration task inputs - */ -export interface MigrateOracleAzureDbPostgreSqlSyncDatabaseInput { +/** Output for the task that validates connection to Azure Database for MySQL and target server requirements */ +export interface ConnectToTargetAzureDbForMySqlTaskOutput { /** - * How to handle object name casing: either Preserve or ToLower + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - caseManipulation?: string; + readonly id?: string; /** - * Name of the migration pipeline + * Version of the target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly serverVersion?: string; /** - * Name of the source schema + * List of databases on target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - schemaName?: string; + readonly databases?: string[]; /** - * Mapping of source to target tables + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tableMap?: { [propertyName: string]: string }; + readonly targetServerBrandVersion?: string; /** - * Name of target database. Note: Target database will be truncated before starting migration. + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetDatabaseName?: string; + readonly validationErrors?: ReportableException[]; +} + +/** Input for the task that validates connection to SQL DB and target server requirements */ +export interface ConnectToTargetSqlDbTaskInput { + /** Connection information for target SQL DB */ + targetConnectionInfo: SqlConnectionInfo; +} + +/** Output for the task that validates connection to SQL DB and target server requirements */ +export interface ConnectToTargetSqlDbTaskOutput { /** - * Migration settings which tune the migration behavior + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - migrationSetting?: { [propertyName: string]: string }; + readonly id?: string; /** - * Source settings to tune source endpoint migration behavior + * Source databases as a map from database name to database id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceSetting?: { [propertyName: string]: string }; + readonly databases?: string; /** - * Target settings to tune target endpoint migration behavior + * Version of the target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetSetting?: { [propertyName: string]: string }; + readonly targetServerVersion?: string; + /** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly targetServerBrandVersion?: string; } -/** - * Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online - * migrations - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskInput { +/** Input for the task that validates connection to Azure SQL Database Managed Instance online scenario. */ +export interface ConnectToTargetSqlMISyncTaskInput { + /** Connection information for Azure SQL Database Managed Instance */ + targetConnectionInfo: MiSqlConnectionInfo; + /** Azure Active Directory Application the DMS instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account */ + azureApp: AzureActiveDirectoryApp; +} + +/** Output for the task that validates connection to Azure SQL Database Managed Instance. */ +export interface ConnectToTargetSqlMISyncTaskOutput { /** - * Databases to migrate + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedDatabases: MigrateOracleAzureDbPostgreSqlSyncDatabaseInput[]; + readonly targetServerVersion?: string; /** - * Connection information for target Azure Database for PostgreSQL + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: PostgreSqlConnectionInfo; + readonly targetServerBrandVersion?: string; /** - * Connection information for source Oracle + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: OracleConnectionInfo; + readonly validationErrors?: ReportableException[]; } -/** - * Properties for the task that validates a migration for Oracle to Azure Database for PostgreSQL - * for online migrations - */ -export interface ValidateOracleAzureDbForPostgreSqlSyncTaskProperties { +/** Input for the task that validates connection to Azure SQL Database Managed Instance. */ +export interface ConnectToTargetSqlMITaskInput { + /** Connection information for target SQL Server */ + targetConnectionInfo: SqlConnectionInfo; + /** Flag for whether to collect logins from target SQL MI server. */ + collectLogins?: boolean; + /** Flag for whether to collect agent jobs from target SQL MI server. */ + collectAgentJobs?: boolean; + /** Flag for whether to validate SSIS catalog is reachable on the target SQL MI server. */ + validateSsisCatalogOnly?: boolean; +} + +/** Output for the task that validates connection to Azure SQL Database Managed Instance. */ +export interface ConnectToTargetSqlMITaskOutput { /** - * Polymorphic Discriminator + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Validate.Oracle.AzureDbPostgreSql.Sync"; + readonly id?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly targetServerVersion?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly targetServerBrandVersion?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of logins on the target server. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly logins?: string[]; /** - * Key value pairs of client data to attach meta data information to task + * List of agent jobs on the target server. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; - input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; + readonly agentJobs?: string[]; /** - * An array containing a single validation error response object - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ValidateOracleAzureDbPostgreSqlSyncTaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * Describes an error or warning that occurred during a MongoDB migration - */ -export interface MongoDbError { - /** - * The non-localized, machine-readable code that describes the error or warning - */ - code?: string; - /** - * The number of times the error or warning has occurred - */ - count?: number; - /** - * The localized, human-readable message that describes the error or warning - */ - message?: string; - /** - * The type of error or warning. Possible values include: 'Error', 'ValidationError', 'Warning' - */ - type?: MongoDbErrorType; +/** Input for the task that validates connection to Azure SQL DB and target server requirements */ +export interface ConnectToTargetSqlDbSyncTaskInput { + /** Connection information for source SQL Server */ + sourceConnectionInfo: SqlConnectionInfo; + /** Connection information for target SQL DB */ + targetConnectionInfo: SqlConnectionInfo; } -/** - * Base class for MongoDB migration outputs - */ -export interface MongoDbProgress { - /** - * The number of document bytes copied during the Copying stage - */ - bytesCopied: number; - /** - * The number of documents copied during the Copying stage - */ - documentsCopied: number; - /** - * The elapsed time in the format [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) - */ - elapsedTime: string; - /** - * The errors and warnings that have occurred for the current object. The keys are the error - * codes. - */ - errors: { [propertyName: string]: MongoDbError }; +/** Input for the task that validates connection to Azure Database for PostgreSQL and target server requirements */ +export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskInput { + /** Connection information for source PostgreSQL server */ + sourceConnectionInfo: PostgreSqlConnectionInfo; + /** Connection information for target Azure Database for PostgreSQL server */ + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +/** Output for the task that validates connection to Azure Database for PostgreSQL and target server requirements */ +export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput { /** - * The number of oplog events awaiting replay + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - eventsPending: number; + readonly id?: string; /** - * The number of oplog events replayed so far + * Version of the target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - eventsReplayed: number; + readonly targetServerVersion?: string; /** - * The timestamp of the last oplog event received, or null if no oplog event has been received - * yet + * List of databases on target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - lastEventTime?: Date; + readonly databases?: string[]; /** - * The timestamp of the last oplog event replayed, or null if no oplog event has been replayed - * yet + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - lastReplayTime?: Date; + readonly targetServerBrandVersion?: string; /** - * The name of the progress object. For a collection, this is the unqualified collection name. - * For a database, this is the database name. For the overall migration, this is null. + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly validationErrors?: ReportableException[]; +} + +/** Input for the task that collects user tables for the given list of databases */ +export interface GetUserTablesMySqlTaskInput { + /** Connection information for SQL Server */ + connectionInfo: MySqlConnectionInfo; + /** List of database names to collect tables for */ + selectedDatabases: string[]; +} + +/** Output of the task that collects user tables for the given list of databases */ +export interface GetUserTablesMySqlTaskOutput { /** - * The qualified name of the progress object. For a collection, this is the database-qualified - * name. For a database, this is the database name. For the overall migration, this is null. + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - qualifiedName?: string; + readonly id?: string; /** - * The type of progress object. Possible values include: 'Migration', 'Database', 'Collection' + * Mapping from database name to list of tables + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: ResultType; + readonly databasesToTables?: string; /** - * Possible values include: 'NotStarted', 'ValidatingInput', 'Initializing', 'Restarting', - * 'Copying', 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', 'Failed' + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - state: MongoDbMigrationState; + readonly validationErrors?: ReportableException[]; +} + +/** Table properties */ +export interface DatabaseTable { /** - * The total number of document bytes on the source at the beginning of the Copying stage, or -1 - * if the total size was unknown + * Indicates whether table is empty or not + * NOTE: This property will not be serialized. It can only be populated by the server. */ - totalBytes: number; + readonly hasRows?: boolean; /** - * The total number of documents on the source at the beginning of the Copying stage, or -1 if - * the total count was unknown + * Schema-qualified name of the table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - totalDocuments: number; + readonly name?: string; } -/** - * Describes the progress of a collection - */ -export interface MongoDbCollectionProgress extends MongoDbProgress { +/** Input for the task that gets TDE certificates in Base64 encoded format. */ +export interface GetTdeCertificatesSqlTaskInput { + /** Connection information for SQL Server */ + connectionInfo: SqlConnectionInfo; + /** Backup file share information for file share to be used for temporarily storing files. */ + backupFileShare: FileShare; + /** List containing certificate names and corresponding password to use for encrypting the exported certificate. */ + selectedCertificates: SelectedCertificateInput[]; } -/** - * Describes the progress of a database - */ -export interface MongoDbDatabaseProgress extends MongoDbProgress { - /** - * The progress of the collections in the database. The keys are the unqualified names of the - * collections - */ - collections?: { [propertyName: string]: MongoDbCollectionProgress }; +/** File share information with Path, Username, and Password. */ +export interface FileShare { + /** User name credential to connect to the share location */ + userName?: string; + /** Password credential used to connect to the share location. */ + password?: string; + /** The folder path for this share. */ + path: string; } -/** - * Describes the progress of the overall migration - */ -export interface MongoDbMigrationProgress extends MongoDbProgress { - /** - * The progress of the databases in the migration. The keys are the names of the databases - */ - databases?: { [propertyName: string]: MongoDbDatabaseProgress }; +/** Info for certificate to be exported for TDE enabled databases. */ +export interface SelectedCertificateInput { + /** Name of certificate to be exported. */ + certificateName: string; + /** Password to use for encrypting the exported certificate. */ + password: string; } -/** - * Specifies resource limits for the migration - */ -export interface MongoDbThrottlingSettings { - /** - * The percentage of CPU time that the migrator will try to avoid using, from 0 to 100 - */ - minFreeCpu?: number; +/** Output of the task that gets TDE certificates in Base64 encoded format. */ +export interface GetTdeCertificatesSqlTaskOutput { /** - * The number of megabytes of RAM that the migrator will try to avoid using + * Mapping from certificate name to base 64 encoded format. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - minFreeMemoryMb?: number; + readonly base64EncodedCertificates?: string; /** - * The maximum number of work items (e.g. collection copies) that will be processed in parallel + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - maxParallelism?: number; + readonly validationErrors?: ReportableException[]; } -/** - * Describes a field reference within a MongoDB shard key - */ -export interface MongoDbShardKeyField { - /** - * The name of the field - */ - name: string; - /** - * The field ordering. Possible values include: 'Forward', 'Reverse', 'Hashed' - */ - order: MongoDbShardKeyOrder; +/** Input for the task that collects user tables for the given list of databases */ +export interface GetUserTablesSqlSyncTaskInput { + /** Connection information for SQL Server */ + sourceConnectionInfo: SqlConnectionInfo; + /** Connection information for SQL DB */ + targetConnectionInfo: SqlConnectionInfo; + /** List of source database names to collect tables for */ + selectedSourceDatabases: string[]; + /** List of target database names to collect tables for */ + selectedTargetDatabases: string[]; } -/** - * Describes a MongoDB shard key - */ -export interface MongoDbShardKeySetting { +/** Output of the task that collects user tables for the given list of databases */ +export interface GetUserTablesSqlSyncTaskOutput { /** - * The fields within the shard key + * Mapping from database name to list of source tables + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fields: MongoDbShardKeyField[]; + readonly databasesToSourceTables?: string; /** - * Whether the shard key is unique + * Mapping from database name to list of target tables + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isUnique: boolean; -} - -/** - * Describes how an individual MongoDB collection should be migrated - */ -export interface MongoDbCollectionSettings { + readonly databasesToTargetTables?: string; /** - * Whether the migrator is allowed to drop the target collection in the course of performing a - * migration. The default is true. + * Mapping from database name to list of validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - canDelete?: boolean; - shardKey?: MongoDbShardKeySetting; + readonly tableValidationErrors?: string; /** - * The RUs that should be configured on a CosmosDB target, or null to use the default. This has - * no effect on non-CosmosDB targets. + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetRUs?: number; + readonly validationErrors?: ReportableException[]; } -/** - * Describes how an individual MongoDB database should be migrated - */ -export interface MongoDbDatabaseSettings { - /** - * The collections on the source database to migrate to the target. The keys are the unqualified - * names of the collections. - */ - collections: { [propertyName: string]: MongoDbCollectionSettings }; - /** - * The RUs that should be configured on a CosmosDB target, or null to use the default, or 0 if - * throughput should not be provisioned for the database. This has no effect on non-CosmosDB - * targets. - */ - targetRUs?: number; +/** Input for the task that collects user tables for the given list of databases */ +export interface GetUserTablesSqlTaskInput { + /** Connection information for SQL Server */ + connectionInfo: SqlConnectionInfo; + /** List of database names to collect tables for */ + selectedDatabases: string[]; } -/** - * Describes how a MongoDB data migration should be performed - */ -export interface MongoDbMigrationSettings { - /** - * The RU limit on a CosmosDB target that collections will be temporarily increased to (if lower) - * during the initial copy of a migration, from 10,000 to 1,000,000, or 0 to use the default - * boost (which is generally the maximum), or null to not boost the RUs. This setting has no - * effect on non-CosmosDB targets. - */ - boostRUs?: number; +/** Output of the task that collects user tables for the given list of databases */ +export interface GetUserTablesSqlTaskOutput { /** - * The databases on the source cluster to migrate to the target. The keys are the names of the - * databases. + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databases: { [propertyName: string]: MongoDbDatabaseSettings }; + readonly id?: string; /** - * Describes how changes will be replicated from the source to the target. The default is - * OneTime. Possible values include: 'Disabled', 'OneTime', 'Continuous' + * Mapping from database name to list of tables + * NOTE: This property will not be serialized. It can only be populated by the server. */ - replication?: MongoDbReplication; + readonly databasesToTables?: string; /** - * Settings used to connect to the source cluster + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - source: MongoDbConnectionInfo; + readonly validationErrors?: ReportableException[]; +} + +/** Database input for migrate schema Sql Server to Azure SQL Server scenario */ +export interface MigrateSchemaSqlServerSqlDbDatabaseInput { + /** Name of source database */ + name?: string; + /** Id of the source database */ + id?: string; + /** Name of target database */ + targetDatabaseName?: string; + /** Database schema migration settings */ + schemaSetting?: SchemaMigrationSetting; +} + +/** Settings for migrating schema from source to target */ +export interface SchemaMigrationSetting { + /** Option on how to migrate the schema */ + schemaOption?: SchemaMigrationOption; + /** Resource Identifier of a file resource containing the uploaded schema file */ + fileId?: string; + /** Name of the file resource containing the uploaded schema file */ + fileName?: string; +} + +/** Base class for migration task input */ +export interface SqlMigrationTaskInput { + /** Information for connecting to source */ + sourceConnectionInfo: SqlConnectionInfo; + /** Information for connecting to target */ + targetConnectionInfo: SqlConnectionInfo; +} + +/** Output for the task that migrates Schema for SQL Server databases to Azure SQL databases */ +export interface MigrateSchemaSqlServerSqlDbTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "SchemaErrorOutput" + | "ErrorOutput"; /** - * Settings used to connect to the target cluster + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - target: MongoDbConnectionInfo; + readonly id?: string; +} + +/** Input for the task that migrates MySQL databases to Azure Database for MySQL for online migrations */ +export interface MigrateMySqlAzureDbForMySqlSyncTaskInput { + /** Connection information for source MySQL */ + sourceConnectionInfo: MySqlConnectionInfo; + /** Connection information for target Azure Database for MySQL */ + targetConnectionInfo: MySqlConnectionInfo; + /** Databases to migrate */ + selectedDatabases: MigrateMySqlAzureDbForMySqlSyncDatabaseInput[]; +} + +/** Database specific information for MySQL to Azure Database for MySQL migration task inputs */ +export interface MigrateMySqlAzureDbForMySqlSyncDatabaseInput { + /** Name of the database */ + name?: string; + /** Name of target database. Note: Target database will be truncated before starting migration. */ + targetDatabaseName?: string; + /** Migration settings which tune the migration behavior */ + migrationSetting?: { [propertyName: string]: string }; + /** Source settings to tune source endpoint migration behavior */ + sourceSetting?: { [propertyName: string]: string }; + /** Target settings to tune target endpoint migration behavior */ + targetSetting?: { [propertyName: string]: string }; + /** Mapping of source to target tables */ + tableMap?: { [propertyName: string]: string }; +} + +/** Output for the task that migrates MySQL databases to Azure Database for MySQL for online migrations */ +export interface MigrateMySqlAzureDbForMySqlSyncTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput" + | "DatabaseLevelErrorOutput"; /** - * Settings used to limit the resource usage of the migration + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - throttling?: MongoDbThrottlingSettings; + readonly id?: string; } -/** - * Properties for the task that validates a migration between MongoDB data sources - */ -export interface ValidateMongoDbTaskProperties { +/** Database migration errors for online migration */ +export interface SyncMigrationDatabaseErrorEvent { /** - * Polymorphic Discriminator + * String value of timestamp. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Validate.MongoDb"; + readonly timestampString?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Event type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly eventTypeString?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Event text. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - input?: MongoDbMigrationSettings; - /** - * An array containing a single MongoDbMigrationProgress object - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MongoDbMigrationProgress[]; + readonly eventText?: string; } -/** - * Output for task that validates migration input for Azure SQL Database Managed Instance online - * migration - */ -export interface ValidateMigrationInputSqlServerSqlMISyncTaskOutput { +/** Input for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for online migrations */ +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput { + /** Databases to migrate */ + selectedDatabases: MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput[]; + /** Connection information for target Azure Database for PostgreSQL */ + targetConnectionInfo: PostgreSqlConnectionInfo; + /** Connection information for source PostgreSQL */ + sourceConnectionInfo: PostgreSqlConnectionInfo; + /** encrypted key for secure fields */ + encryptedKeyForSecureFields?: string; +} + +/** Database specific information for PostgreSQL to Azure Database for PostgreSQL migration task inputs */ +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput { + /** Name of the database */ + name?: string; + /** Name of target database. Note: Target database will be truncated before starting migration. */ + targetDatabaseName?: string; + /** Migration settings which tune the migration behavior */ + migrationSetting?: { [propertyName: string]: string }; + /** Source settings to tune source endpoint migration behavior */ + sourceSetting?: { [propertyName: string]: string }; + /** Target settings to tune target endpoint migration behavior */ + targetSetting?: { [propertyName: string]: string }; + /** Tables selected for migration */ + selectedTables?: MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput[]; +} + +/** Selected tables for the migration */ +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput { + /** Name of the table to migrate */ + name?: string; +} + +/** Output for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for online migrations */ +export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput" + | "DatabaseLevelErrorOutput"; /** - * Database identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; - /** - * Name of database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * Errors associated with a selected database object - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; } -/** - * Azure Active Directory Application - */ -export interface AzureActiveDirectoryApp { - /** - * Application ID of the Azure Active Directory Application - */ - applicationId: string; - /** - * Key used to authenticate to the Azure Active Directory Application - */ - appKey: string; - /** - * Tenant id of the customer - */ - tenantId: string; +/** Database specific information for SQL to Azure SQL DB sync migration task inputs */ +export interface MigrateSqlServerSqlDbSyncDatabaseInput { + /** Unique identifier for database */ + id?: string; + /** Name of database */ + name?: string; + /** Target database name */ + targetDatabaseName?: string; + /** Schema name to be migrated */ + schemaName?: string; + /** Mapping of source to target tables */ + tableMap?: { [propertyName: string]: string }; + /** Migration settings which tune the migration behavior */ + migrationSetting?: { [propertyName: string]: string }; + /** Source settings to tune source endpoint migration behavior */ + sourceSetting?: { [propertyName: string]: string }; + /** Target settings to tune target endpoint migration behavior */ + targetSetting?: { [propertyName: string]: string }; } -/** - * Database specific information for SQL to Azure SQL DB Managed Instance migration task inputs - */ -export interface MigrateSqlServerSqlMIDatabaseInput { - /** - * Name of the database - */ - name: string; - /** - * Name of the database at destination - */ - restoreDatabaseName: string; - /** - * Backup file share information for backing up this database. - */ - backupFileShare?: FileShare; - /** - * The list of backup files to be used in case of existing backups. - */ - backupFilePaths?: string[]; +/** Types of validations to run after the migration */ +export interface MigrationValidationOptions { + /** Allows to compare the schema information between source and target. */ + enableSchemaValidation?: boolean; + /** Allows to perform a checksum based data integrity validation between source and target for the selected database / tables . */ + enableDataIntegrityValidation?: boolean; + /** Allows to perform a quick and intelligent query analysis by retrieving queries from the source database and executes them in the target. The result will have execution statistics for executions in source and target databases for the extracted queries. */ + enableQueryAnalysisValidation?: boolean; } -/** - * Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online - * scenario. - */ -export interface SqlServerSqlMISyncTaskInput { - /** - * Databases to migrate - */ - selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; - /** - * Backup file share information for all selected databases. - */ - backupFileShare?: FileShare; - /** - * Fully qualified resourceId of storage - */ - storageResourceId: string; - /** - * Connection information for source SQL Server - */ - sourceConnectionInfo: SqlConnectionInfo; - /** - * Connection information for Azure SQL Database Managed Instance - */ - targetConnectionInfo: MiSqlConnectionInfo; +/** Output for the task that migrates on-prem SQL Server databases to Azure SQL Database for online migrations */ +export interface MigrateSqlServerSqlDbSyncTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput" + | "DatabaseLevelErrorOutput"; /** - * Azure Active Directory Application the DMS instance will use to connect to the target instance - * of Azure SQL Database Managed Instance and the Azure Storage Account + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - azureApp: AzureActiveDirectoryApp; + readonly id?: string; } -/** - * Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online - * scenario. - */ -export interface ValidateMigrationInputSqlServerSqlMISyncTaskInput extends SqlServerSqlMISyncTaskInput { +/** Database specific information for SQL to Azure SQL DB migration task inputs */ +export interface MigrateSqlServerSqlDbDatabaseInput { + /** Name of the database */ + name?: string; + /** Name of target database. Note: Target database will be truncated before starting migration. */ + targetDatabaseName?: string; + /** Whether to set database read only before migration */ + makeSourceDbReadOnly?: boolean; + /** Mapping of source to target tables */ + tableMap?: { [propertyName: string]: string }; + /** Settings selected for DB schema migration. */ + schemaSetting?: Record; + /** id of the database */ + id?: string; } -/** - * Properties for task that validates migration input for SQL to Azure SQL Database Managed - * Instance sync scenario - */ -export interface ValidateMigrationInputSqlServerSqlMISyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; +/** Output for the task that migrates on-prem SQL Server databases to Azure SQL Database */ +export interface MigrateSqlServerSqlDbTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput" + | "MigrationValidationOutput" + | "MigrationDatabaseLevelValidationOutput"; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly id?: string; +} + +/** Migration Validation Result */ +export interface MigrationValidationResult { /** - * Key value pairs of client data to attach meta data information to task + * Migration validation result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly id?: string; /** - * Task input + * Migration Identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ValidateMigrationInputSqlServerSqlMISyncTaskInput; + readonly migrationId?: string; + /** Validation summary results for each database */ + summaryResults?: { + [propertyName: string]: MigrationValidationDatabaseSummaryResult; + }; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current status of validation at the migration level. Status from the database validation result status will be aggregated here. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ValidateMigrationInputSqlServerSqlMISyncTaskOutput[]; + readonly status?: ValidationStatus; } -/** - * Information about backup files when existing backup mode is used. - */ -export interface DatabaseBackupInfo { - /** - * Database name. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; +/** Migration Validation Database level summary result */ +export interface MigrationValidationDatabaseSummaryResult { /** - * Backup Type. Possible values include: 'Database', 'TransactionLog', 'File', - * 'DifferentialDatabase', 'DifferentialFile', 'Partial', 'DifferentialPartial' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupType?: BackupType; + readonly id?: string; /** - * The list of backup files for the current database. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration Identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupFiles?: string[]; + readonly migrationId?: string; /** - * Position of current database backup in the file. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the source database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly position?: number; + readonly sourceDatabaseName?: string; /** - * Database was damaged when backed up, but the backup operation was requested to continue - * despite errors. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the target database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly isDamaged?: boolean; + readonly targetDatabaseName?: string; /** - * Whether the backup set is compressed - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly isCompressed?: boolean; + readonly startedOn?: Date; /** - * Number of files in the backup set. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly familyCount?: number; + readonly endedOn?: Date; /** - * Date and time when the backup operation finished. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current status of validation at the database level + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupFinishDate?: Date; + readonly status?: ValidationStatus; } -/** - * Output for task that validates migration input for SQL to Azure SQL Managed Instance migrations - */ -export interface ValidateMigrationInputSqlServerSqlMITaskOutput { +/** Migration validation report result, contains the url for downloading the generated report. */ +export interface MigrationReportResult { + /** Migration validation result identifier */ + id?: string; + /** The url of the report. */ + reportUrl?: string; +} + +/** Basic summary of a data item migration */ +export interface DataItemMigrationSummaryResult { /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly name?: string; /** - * Name of database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly name?: string; + readonly startedOn?: Date; /** - * Errors associated with the RestoreDatabaseName - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly restoreDatabaseNameErrors?: ReportableException[]; + readonly endedOn?: Date; /** - * Errors associated with the BackupFolder path - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupFolderErrors?: ReportableException[]; + readonly state?: MigrationState; /** - * Errors associated with backup share user name and password credentials - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupShareCredentialsErrors?: ReportableException[]; + readonly statusMessage?: string; /** - * Errors associated with the storage account provided. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly backupStorageAccountErrors?: ReportableException[]; + readonly itemsCount?: number; /** - * Errors associated with existing backup files. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of successfully completed items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly existingBackupErrors?: ReportableException[]; + readonly itemsCompletedCount?: number; /** - * Information about backup files when existing backup mode is used. + * Wildcard string prefix to use for querying all errors of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseBackupInfo?: DatabaseBackupInfo; -} - -/** - * Blob container storage information. - */ -export interface BlobShare { + readonly errorPrefix?: string; /** - * SAS URI of Azure Storage Account Container. + * Wildcard string prefix to use for querying all sub-tem results of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sasUri: string; + readonly resultPrefix?: string; } -/** - * Input for task that validates migration input for SQL to Azure SQL Managed Instance - */ -export interface ValidateMigrationInputSqlServerSqlMITaskInput { +/** Database level validation results */ +export interface MigrationValidationDatabaseLevelResult { /** - * Information for connecting to source + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: SqlConnectionInfo; + readonly id?: string; /** - * Information for connecting to target + * Migration Identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: SqlConnectionInfo; + readonly migrationId?: string; /** - * Databases to migrate + * Name of the source database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + readonly sourceDatabaseName?: string; /** - * Logins to migrate + * Name of the target database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedLogins?: string[]; + readonly targetDatabaseName?: string; /** - * Backup file share information for all selected databases. + * Validation start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - backupFileShare?: FileShare; + readonly startedOn?: Date; /** - * SAS URI of Azure Storage Account Container to be used for storing backup files. + * Validation end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - backupBlobShare: BlobShare; + readonly endedOn?: Date; /** - * Backup Mode to specify whether to use existing backup or create new backup. Possible values - * include: 'CreateBackup', 'ExistingBackup' + * Provides data integrity validation result between the source and target tables that are migrated. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - backupMode?: BackupMode; -} - -/** - * Properties for task that validates migration input for SQL to Azure SQL Database Managed - * Instance - */ -export interface ValidateMigrationInputSqlServerSqlMITaskProperties { + readonly dataIntegrityValidationResult?: DataIntegrityValidationResult; /** - * Polymorphic Discriminator + * Provides schema comparison result between source and target database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI"; + readonly schemaValidationResult?: SchemaComparisonValidationResult; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Results of some of the query execution result between source and target database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: ValidateMigrationInputSqlServerSqlMITaskInput; + readonly queryAnalysisValidationResult?: QueryAnalysisValidationResult; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current status of validation at the database level + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ValidateMigrationInputSqlServerSqlMITaskOutput[]; + readonly status?: ValidationStatus; } -/** - * Output for task that validates migration input for SQL sync migrations - */ -export interface ValidateSyncMigrationInputSqlServerTaskOutput { - /** - * Database identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * Errors associated with a selected database object - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; +/** Results for checksum based Data Integrity validation results */ +export interface DataIntegrityValidationResult { + /** List of failed table names of source and target pair */ + failedObjects?: { [propertyName: string]: string }; + /** List of errors that happened while performing data integrity validation */ + validationErrors?: ValidationError; } -/** - * Database specific information for SQL to Azure SQL DB sync migration task inputs - */ -export interface MigrateSqlServerSqlDbSyncDatabaseInput { - /** - * Unique identifier for database - */ - id?: string; - /** - * Name of database - */ - name?: string; - /** - * Target database name - */ - targetDatabaseName?: string; - /** - * Schema name to be migrated - */ - schemaName?: string; - /** - * Mapping of source to target tables - */ - tableMap?: { [propertyName: string]: string }; - /** - * Migration settings which tune the migration behavior - */ - migrationSetting?: { [propertyName: string]: string }; - /** - * Source settings to tune source endpoint migration behavior - */ - sourceSetting?: { [propertyName: string]: string }; - /** - * Target settings to tune target endpoint migration behavior - */ - targetSetting?: { [propertyName: string]: string }; +/** Description about the errors happen while performing migration validation */ +export interface ValidationError { + /** Error Text */ + text?: string; + /** Severity of the error */ + severity?: Severity; } -/** - * Input for task that validates migration input for SQL sync migrations - */ -export interface ValidateSyncMigrationInputSqlServerTaskInput { - /** - * Information for connecting to source SQL server - */ - sourceConnectionInfo: SqlConnectionInfo; - /** - * Information for connecting to target - */ - targetConnectionInfo: SqlConnectionInfo; - /** - * Databases to migrate - */ - selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; +/** Results for schema comparison between the source and target */ +export interface SchemaComparisonValidationResult { + /** List of schema differences between the source and target databases */ + schemaDifferences?: SchemaComparisonValidationResultType; + /** List of errors that happened while performing schema compare validation */ + validationErrors?: ValidationError; + /** Count of source database objects */ + sourceDatabaseObjectCount?: { [propertyName: string]: number }; + /** Count of target database objects */ + targetDatabaseObjectCount?: { [propertyName: string]: number }; } -/** - * Properties for task that validates migration input for SQL to Azure SQL DB sync migrations - */ -export interface ValidateMigrationInputSqlServerSqlDbSyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ValidateMigrationInput.SqlServer.SqlDb.Sync"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: ValidateSyncMigrationInputSqlServerTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: ValidateSyncMigrationInputSqlServerTaskOutput[]; +/** Description about the errors happen while performing migration validation */ +export interface SchemaComparisonValidationResultType { + /** Name of the object that has the difference */ + objectName?: string; + /** Type of the object that has the difference. e.g (Table/View/StoredProcedure) */ + objectType?: ObjectType; + /** Update action type with respect to target */ + updateAction?: UpdateActionType; } -/** - * Database migration errors for online migration - */ -export interface SyncMigrationDatabaseErrorEvent { - /** - * String value of timestamp. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly timestampString?: string; - /** - * Event type. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly eventTypeString?: string; - /** - * Event text. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly eventText?: string; +/** Results for query analysis comparison between the source and target */ +export interface QueryAnalysisValidationResult { + /** List of queries executed and it's execution results in source and target */ + queryResults?: QueryExecutionResult; + /** Errors that are part of the execution */ + validationErrors?: ValidationError; } -/** - * Contains the possible cases for MigrateOracleAzureDbPostgreSqlSyncTaskOutput. - */ -export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion = MigrateOracleAzureDbPostgreSqlSyncTaskOutput | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError | MigrateOracleAzureDbPostgreSqlSyncTaskOutputError | MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel | MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel | MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel; +/** Describes query analysis results for execution in source and target */ +export interface QueryExecutionResult { + /** Query text retrieved from the source server */ + queryText?: string; + /** Total no. of statements in the batch */ + statementsInBatch?: number; + /** Query analysis result from the source */ + sourceResult?: ExecutionStatistics; + /** Query analysis result from the target */ + targetResult?: ExecutionStatistics; +} -/** - * Output for the task that migrates Oracle databases to Azure Database for PostgreSQL for online - * migrations - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; +/** Description about the errors happen while performing migration validation */ +export interface ExecutionStatistics { + /** No. of query executions */ + executionCount?: number; + /** CPU Time in millisecond(s) for the query execution */ + cpuTimeMs?: number; + /** Time taken in millisecond(s) for executing the query */ + elapsedTimeMs?: number; + /** Dictionary of sql query execution wait types and the respective statistics */ + waitStats?: { [propertyName: string]: WaitStatistics }; + /** Indicates whether the query resulted in an error */ + hasErrors?: boolean; + /** List of sql Errors */ + sqlErrors?: string[]; } -/** - * An interface representing MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError. - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelErrorOutput"; +/** Wait statistics gathered during query batch execution */ +export interface WaitStatistics { + /** Type of the Wait */ + waitType?: string; + /** Total wait time in millisecond(s) */ + waitTimeMs?: number; + /** Total no. of waits */ + waitCount?: number; +} + +/** Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online scenario. */ +export interface SqlServerSqlMISyncTaskInput { + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + /** Backup file share information for all selected databases. */ + backupFileShare?: FileShare; + /** Fully qualified resourceId of storage */ + storageResourceId: string; + /** Connection information for source SQL Server */ + sourceConnectionInfo: SqlConnectionInfo; + /** Connection information for Azure SQL Database Managed Instance */ + targetConnectionInfo: MiSqlConnectionInfo; + /** Azure Active Directory Application the DMS instance will use to connect to the target instance of Azure SQL Database Managed Instance and the Azure Storage Account */ + azureApp: AzureActiveDirectoryApp; +} + +/** Database specific information for SQL to Azure SQL DB Managed Instance migration task inputs */ +export interface MigrateSqlServerSqlMIDatabaseInput { + /** Name of the database */ + name: string; + /** Name of the database at destination */ + restoreDatabaseName: string; + /** Backup file share information for backing up this database. */ + backupFileShare?: FileShare; + /** The list of backup files to be used in case of existing backups. */ + backupFilePaths?: string[]; + /** id of the database */ + id?: string; +} + +/** Output for task that migrates SQL Server databases to Azure SQL Database Managed Instance using Log Replay Service. */ +export interface MigrateSqlServerSqlMISyncTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput" | "DatabaseLevelOutput" | "ErrorOutput"; /** * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; - /** - * Error message - */ - errorMessage?: string; - /** - * List of error events. - */ - events?: SyncMigrationDatabaseErrorEvent[]; } -/** - * An interface representing MigrateOracleAzureDbPostgreSqlSyncTaskOutputError. - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; +/** Blob container storage information. */ +export interface BlobShare { + /** SAS URI of Azure Storage Account Container. */ + sasUri: string; +} + +/** Output for task that migrates SQL Server databases to Azure SQL Database Managed Instance. */ +export interface MigrateSqlServerSqlMITaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "AgentJobLevelOutput" + | "LoginLevelOutput" + | "ErrorOutput"; /** * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; } -/** - * An interface representing MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel. - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TableLevelOutput"; +/** SSIS migration info with SSIS store type, overwrite policy. */ +export interface SsisMigrationInfo { + /** The SSIS store type of source, only SSIS catalog is supported now in DMS */ + ssisStoreType?: SsisStoreType; + /** The overwrite option for the SSIS project migration */ + projectOverwriteOption?: SsisMigrationOverwriteOption; + /** The overwrite option for the SSIS environment migration */ + environmentOverwriteOption?: SsisMigrationOverwriteOption; +} + +/** Output for task that migrates SSIS packages from SQL Server to Azure SQL Database Managed Instance. */ +export interface MigrateSsisTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput" | "SsisProjectLevelOutput"; /** * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; - /** - * Name of the table - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly tableName?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Number of applied inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of applied updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of applied deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Estimate to finish full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEstFinishTime?: Date; - /** - * Full load start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadStartedOn?: Date; - /** - * Full load end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEndedOn?: Date; - /** - * Number of rows applied in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadTotalRows?: number; - /** - * Current state of the table migration. Possible values include: 'BEFORE_LOAD', 'FULL_LOAD', - * 'COMPLETED', 'CANCELED', 'ERROR', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: SyncTableMigrationState; - /** - * Total number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly totalChangesApplied?: number; - /** - * Number of data errors occurred - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly dataErrorsCounter?: number; - /** - * Last modified time on target - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly lastModifiedTime?: Date; -} - -/** - * An interface representing MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel. - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration state that this database is in. Possible values include: 'UNDEFINED', 'CONFIGURING', - * 'INITIALIAZING', 'STARTING', 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', - * 'CANCELLING', 'CANCELLED', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationState?: SyncDatabaseMigrationReportingState; - /** - * Number of incoming changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly incomingChanges?: number; - /** - * Number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly appliedChanges?: number; - /** - * Number of cdc inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of cdc deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Number of cdc updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of tables completed in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadCompletedTables?: number; - /** - * Number of tables loading in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadLoadingTables?: number; - /** - * Number of tables queued in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadQueuedTables?: number; - /** - * Number of tables errored in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadErroredTables?: number; - /** - * Indicates if initial load (full load) has been completed - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly initializationCompleted?: boolean; - /** - * CDC apply latency - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly latency?: number; -} - -/** - * An interface representing MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel. - */ -export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServer?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServer?: string; -} - -/** - * Properties for the task that migrates Oracle to Azure Database for PostgreSQL for online - * migrations - */ -export interface MigrateOracleAzureDbForPostgreSqlSyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.Oracle.AzureDbForPostgreSql.Sync"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion[]; -} - -/** - * Contains the possible cases for MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput. - */ -export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel | MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel; - -/** - * Output for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for - * online migrations - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError. - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Error message - */ - errorMessage?: string; - /** - * List of error events. - */ - events?: SyncMigrationDatabaseErrorEvent[]; -} - -/** - * An interface representing MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError. - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * An interface representing MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel. - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TableLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the table - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly tableName?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Number of applied inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of applied updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of applied deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Estimate to finish full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEstFinishTime?: Date; - /** - * Full load start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadStartedOn?: Date; - /** - * Full load end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEndedOn?: Date; - /** - * Number of rows applied in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadTotalRows?: number; - /** - * Current state of the table migration. Possible values include: 'BEFORE_LOAD', 'FULL_LOAD', - * 'COMPLETED', 'CANCELED', 'ERROR', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: SyncTableMigrationState; - /** - * Total number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly totalChangesApplied?: number; - /** - * Number of data errors occurred - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly dataErrorsCounter?: number; - /** - * Last modified time on target - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly lastModifiedTime?: Date; -} - -/** - * An interface representing MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel. - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration state that this database is in. Possible values include: 'UNDEFINED', 'CONFIGURING', - * 'INITIALIAZING', 'STARTING', 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', - * 'CANCELLING', 'CANCELLED', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationState?: SyncDatabaseMigrationReportingState; - /** - * Number of incoming changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly incomingChanges?: number; - /** - * Number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly appliedChanges?: number; - /** - * Number of cdc inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of cdc deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Number of cdc updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of tables completed in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadCompletedTables?: number; - /** - * Number of tables loading in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadLoadingTables?: number; - /** - * Number of tables queued in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadQueuedTables?: number; - /** - * Number of tables errored in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadErroredTables?: number; - /** - * Indicates if initial load (full load) has been completed - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly initializationCompleted?: boolean; - /** - * CDC apply latency - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly latency?: number; -} - -/** - * An interface representing MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel. - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServer?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServer?: string; -} - -/** - * Database specific information for PostgreSQL to Azure Database for PostgreSQL migration task - * inputs - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput { - /** - * Name of the database - */ - name?: string; - /** - * Name of target database. Note: Target database will be truncated before starting migration. - */ - targetDatabaseName?: string; - /** - * Migration settings which tune the migration behavior - */ - migrationSetting?: { [propertyName: string]: string }; - /** - * Source settings to tune source endpoint migration behavior - */ - sourceSetting?: { [propertyName: string]: string }; - /** - * Target settings to tune target endpoint migration behavior - */ - targetSetting?: { [propertyName: string]: string }; -} - -/** - * Input for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for - * online migrations - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput { - /** - * Databases to migrate - */ - selectedDatabases: MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput[]; - /** - * Connection information for target Azure Database for PostgreSQL - */ - targetConnectionInfo: PostgreSqlConnectionInfo; - /** - * Connection information for source PostgreSQL - */ - sourceConnectionInfo: PostgreSqlConnectionInfo; -} - -/** - * Properties for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for - * online migrations - */ -export interface MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.PostgreSql.AzureDbForPostgreSql.Sync"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion[]; -} - -/** - * Contains the possible cases for MigrateMySqlAzureDbForMySqlSyncTaskOutput. - */ -export type MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion = MigrateMySqlAzureDbForMySqlSyncTaskOutput | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError | MigrateMySqlAzureDbForMySqlSyncTaskOutputError | MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel | MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel | MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel; - -/** - * Output for the task that migrates MySQL databases to Azure Database for MySQL for online - * migrations - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateMySqlAzureDbForMySqlSyncTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError. - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Error message - */ - errorMessage?: string; - /** - * List of error events. - */ - events?: SyncMigrationDatabaseErrorEvent[]; -} - -/** - * An interface representing MigrateMySqlAzureDbForMySqlSyncTaskOutputError. - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * An interface representing MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel. - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TableLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the table - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly tableName?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Number of applied inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: string; - /** - * Number of applied updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: string; - /** - * Number of applied deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: string; - /** - * Estimate to finish full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEstFinishTime?: Date; - /** - * Full load start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadStartedOn?: Date; - /** - * Full load end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEndedOn?: Date; - /** - * Number of rows applied in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadTotalRows?: number; - /** - * Current state of the table migration. Possible values include: 'BEFORE_LOAD', 'FULL_LOAD', - * 'COMPLETED', 'CANCELED', 'ERROR', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: SyncTableMigrationState; - /** - * Total number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly totalChangesApplied?: number; - /** - * Number of data errors occurred - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly dataErrorsCounter?: number; - /** - * Last modified time on target - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly lastModifiedTime?: Date; -} - -/** - * An interface representing MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel. - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration state that this database is in. Possible values include: 'UNDEFINED', 'CONFIGURING', - * 'INITIALIAZING', 'STARTING', 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', - * 'CANCELLING', 'CANCELLED', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationState?: SyncDatabaseMigrationReportingState; - /** - * Number of incoming changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly incomingChanges?: number; - /** - * Number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly appliedChanges?: number; - /** - * Number of cdc inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of cdc deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Number of cdc updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of tables completed in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadCompletedTables?: number; - /** - * Number of tables loading in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadLoadingTables?: number; - /** - * Number of tables queued in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadQueuedTables?: number; - /** - * Number of tables errored in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadErroredTables?: number; - /** - * Indicates if initial load (full load) has been completed - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly initializationCompleted?: boolean; - /** - * CDC apply latency - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly latency?: number; -} - -/** - * An interface representing MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel. - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServer?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServer?: string; -} - -/** - * Database specific information for MySQL to Azure Database for MySQL migration task inputs - */ -export interface MigrateMySqlAzureDbForMySqlSyncDatabaseInput { - /** - * Name of the database - */ - name?: string; - /** - * Name of target database. Note: Target database will be truncated before starting migration. - */ - targetDatabaseName?: string; - /** - * Migration settings which tune the migration behavior - */ - migrationSetting?: { [propertyName: string]: string }; - /** - * Source settings to tune source endpoint migration behavior - */ - sourceSetting?: { [propertyName: string]: string }; - /** - * Target settings to tune target endpoint migration behavior - */ - targetSetting?: { [propertyName: string]: string }; -} - -/** - * Input for the task that migrates MySQL databases to Azure Database for MySQL for online - * migrations - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskInput { - /** - * Connection information for source MySQL - */ - sourceConnectionInfo: MySqlConnectionInfo; - /** - * Connection information for target Azure Database for MySQL - */ - targetConnectionInfo: MySqlConnectionInfo; - /** - * Databases to migrate - */ - selectedDatabases: MigrateMySqlAzureDbForMySqlSyncDatabaseInput[]; -} - -/** - * Properties for the task that migrates MySQL databases to Azure Database for MySQL for online - * migrations - */ -export interface MigrateMySqlAzureDbForMySqlSyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.MySql.AzureDbForMySql.Sync"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateMySqlAzureDbForMySqlSyncTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion[]; -} - -/** - * Contains the possible cases for MigrateSqlServerSqlDbSyncTaskOutput. - */ -export type MigrateSqlServerSqlDbSyncTaskOutputUnion = MigrateSqlServerSqlDbSyncTaskOutput | MigrateSqlServerSqlDbSyncTaskOutputDatabaseError | MigrateSqlServerSqlDbSyncTaskOutputError | MigrateSqlServerSqlDbSyncTaskOutputTableLevel | MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel | MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel; - -/** - * Output for the task that migrates on-prem SQL Server databases to Azure SQL Database for online - * migrations - */ -export interface MigrateSqlServerSqlDbSyncTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateSqlServerSqlDbSyncTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigrateSqlServerSqlDbSyncTaskOutputDatabaseError. - */ -export interface MigrateSqlServerSqlDbSyncTaskOutputDatabaseError { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Error message - */ - errorMessage?: string; - /** - * List of error events. - */ - events?: SyncMigrationDatabaseErrorEvent[]; -} - -/** - * An interface representing MigrateSqlServerSqlDbSyncTaskOutputError. - */ -export interface MigrateSqlServerSqlDbSyncTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * An interface representing MigrateSqlServerSqlDbSyncTaskOutputTableLevel. - */ -export interface MigrateSqlServerSqlDbSyncTaskOutputTableLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TableLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the table - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly tableName?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Number of applied inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of applied updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of applied deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Estimate to finish full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEstFinishTime?: Date; - /** - * Full load start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadStartedOn?: Date; - /** - * Full load end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadEndedOn?: Date; - /** - * Number of rows applied in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadTotalRows?: number; - /** - * Current state of the table migration. Possible values include: 'BEFORE_LOAD', 'FULL_LOAD', - * 'COMPLETED', 'CANCELED', 'ERROR', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: SyncTableMigrationState; - /** - * Total number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly totalChangesApplied?: number; - /** - * Number of data errors occurred - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly dataErrorsCounter?: number; - /** - * Last modified time on target - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly lastModifiedTime?: Date; -} - -/** - * An interface representing MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel. - */ -export interface MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration state that this database is in. Possible values include: 'UNDEFINED', 'CONFIGURING', - * 'INITIALIAZING', 'STARTING', 'RUNNING', 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', - * 'CANCELLING', 'CANCELLED', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationState?: SyncDatabaseMigrationReportingState; - /** - * Number of incoming changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly incomingChanges?: number; - /** - * Number of applied changes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly appliedChanges?: number; - /** - * Number of cdc inserts - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcInsertCounter?: number; - /** - * Number of cdc deletes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcDeleteCounter?: number; - /** - * Number of cdc updates - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly cdcUpdateCounter?: number; - /** - * Number of tables completed in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadCompletedTables?: number; - /** - * Number of tables loading in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadLoadingTables?: number; - /** - * Number of tables queued in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadQueuedTables?: number; - /** - * Number of tables errored in full load - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullLoadErroredTables?: number; - /** - * Indicates if initial load (full load) has been completed - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly initializationCompleted?: boolean; - /** - * CDC apply latency - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly latency?: number; -} - -/** - * An interface representing MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel. - */ -export interface MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServer?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServer?: string; - /** - * Count of databases - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseCount?: number; -} - -/** - * Types of validations to run after the migration - */ -export interface MigrationValidationOptions { - /** - * Allows to compare the schema information between source and target. - */ - enableSchemaValidation?: boolean; - /** - * Allows to perform a checksum based data integrity validation between source and target for the - * selected database / tables . - */ - enableDataIntegrityValidation?: boolean; - /** - * Allows to perform a quick and intelligent query analysis by retrieving queries from the source - * database and executes them in the target. The result will have execution statistics for - * executions in source and target databases for the extracted queries. - */ - enableQueryAnalysisValidation?: boolean; -} - -/** - * Input for the task that migrates on-prem SQL Server databases to Azure SQL Database for online - * migrations - */ -export interface MigrateSqlServerSqlDbSyncTaskInput extends SqlMigrationTaskInput { - /** - * Databases to migrate - */ - selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; - /** - * Validation options - */ - validationOptions?: MigrationValidationOptions; -} - -/** - * Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database for - * online migrations - */ -export interface MigrateSqlServerSqlDbSyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.SqlServer.AzureSqlDb.Sync"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateSqlServerSqlDbSyncTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateSqlServerSqlDbSyncTaskOutputUnion[]; -} - -/** - * Description about the errors happen while performing migration validation - */ -export interface ValidationError { - /** - * Error Text - */ - text?: string; - /** - * Severity of the error. Possible values include: 'Message', 'Warning', 'Error' - */ - severity?: Severity; -} - -/** - * Wait statistics gathered during query batch execution - */ -export interface WaitStatistics { - /** - * Type of the Wait - */ - waitType?: string; - /** - * Total wait time in millisecond(s). Default value: 0. - */ - waitTimeMs?: number; - /** - * Total no. of waits - */ - waitCount?: number; -} - -/** - * Description about the errors happen while performing migration validation - */ -export interface ExecutionStatistics { - /** - * No. of query executions - */ - executionCount?: number; - /** - * CPU Time in millisecond(s) for the query execution - */ - cpuTimeMs?: number; - /** - * Time taken in millisecond(s) for executing the query - */ - elapsedTimeMs?: number; - /** - * Dictionary of sql query execution wait types and the respective statistics - */ - waitStats?: { [propertyName: string]: WaitStatistics }; - /** - * Indicates whether the query resulted in an error - */ - hasErrors?: boolean; - /** - * List of sql Errors - */ - sqlErrors?: string[]; -} - -/** - * Describes query analysis results for execution in source and target - */ -export interface QueryExecutionResult { - /** - * Query text retrieved from the source server - */ - queryText?: string; - /** - * Total no. of statements in the batch - */ - statementsInBatch?: number; - /** - * Query analysis result from the source - */ - sourceResult?: ExecutionStatistics; - /** - * Query analysis result from the target - */ - targetResult?: ExecutionStatistics; -} - -/** - * Results for query analysis comparison between the source and target - */ -export interface QueryAnalysisValidationResult { - /** - * List of queries executed and it's execution results in source and target - */ - queryResults?: QueryExecutionResult; - /** - * Errors that are part of the execution - */ - validationErrors?: ValidationError; -} - -/** - * Description about the errors happen while performing migration validation - */ -export interface SchemaComparisonValidationResultType { - /** - * Name of the object that has the difference - */ - objectName?: string; - /** - * Type of the object that has the difference. e.g (Table/View/StoredProcedure). Possible values - * include: 'StoredProcedures', 'Table', 'User', 'View', 'Function' - */ - objectType?: ObjectType; - /** - * Update action type with respect to target. Possible values include: 'DeletedOnTarget', - * 'ChangedOnTarget', 'AddedOnTarget' - */ - updateAction?: UpdateActionType; -} - -/** - * Results for schema comparison between the source and target - */ -export interface SchemaComparisonValidationResult { - /** - * List of schema differences between the source and target databases - */ - schemaDifferences?: SchemaComparisonValidationResultType; - /** - * List of errors that happened while performing schema compare validation - */ - validationErrors?: ValidationError; - /** - * Count of source database objects - */ - sourceDatabaseObjectCount?: { [propertyName: string]: number }; - /** - * Count of target database objects - */ - targetDatabaseObjectCount?: { [propertyName: string]: number }; -} - -/** - * Results for checksum based Data Integrity validation results - */ -export interface DataIntegrityValidationResult { - /** - * List of failed table names of source and target pair - */ - failedObjects?: { [propertyName: string]: string }; - /** - * List of errors that happened while performing data integrity validation - */ - validationErrors?: ValidationError; -} - -/** - * Database level validation results - */ -export interface MigrationValidationDatabaseLevelResult { - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration Identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationId?: string; - /** - * Name of the source database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceDatabaseName?: string; - /** - * Name of the target database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetDatabaseName?: string; - /** - * Validation start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Validation end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Provides data integrity validation result between the source and target tables that are - * migrated. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly dataIntegrityValidationResult?: DataIntegrityValidationResult; - /** - * Provides schema comparison result between source and target database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly schemaValidationResult?: SchemaComparisonValidationResult; - /** - * Results of some of the query execution result between source and target database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly queryAnalysisValidationResult?: QueryAnalysisValidationResult; - /** - * Current status of validation at the database level. Possible values include: 'Default', - * 'NotStarted', 'Initialized', 'InProgress', 'Completed', 'CompletedWithIssues', 'Stopped', - * 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly status?: ValidationStatus; -} - -/** - * Migration Validation Database level summary result - */ -export interface MigrationValidationDatabaseSummaryResult { - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration Identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationId?: string; - /** - * Name of the source database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceDatabaseName?: string; - /** - * Name of the target database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetDatabaseName?: string; - /** - * Validation start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Validation end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Current status of validation at the database level. Possible values include: 'Default', - * 'NotStarted', 'Initialized', 'InProgress', 'Completed', 'CompletedWithIssues', 'Stopped', - * 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly status?: ValidationStatus; -} - -/** - * Migration Validation Result - */ -export interface MigrationValidationResult { - /** - * Migration validation result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration Identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationId?: string; - /** - * Validation summary results for each database - */ - summaryResults?: { [propertyName: string]: MigrationValidationDatabaseSummaryResult }; - /** - * Current status of validation at the migration level. Status from the database validation - * result status will be aggregated here. Possible values include: 'Default', 'NotStarted', - * 'Initialized', 'InProgress', 'Completed', 'CompletedWithIssues', 'Stopped', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly status?: ValidationStatus; -} - -/** - * Contains the possible cases for MigrateSqlServerSqlDbTaskOutput. - */ -export type MigrateSqlServerSqlDbTaskOutputUnion = MigrateSqlServerSqlDbTaskOutput | MigrateSqlServerSqlDbTaskOutputError | MigrateSqlServerSqlDbTaskOutputTableLevel | MigrateSqlServerSqlDbTaskOutputDatabaseLevel | MigrateSqlServerSqlDbTaskOutputMigrationLevel; - -/** - * Output for the task that migrates on-prem SQL Server databases to Azure SQL Database - */ -export interface MigrateSqlServerSqlDbTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateSqlServerSqlDbTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigrateSqlServerSqlDbTaskOutputError. - */ -export interface MigrateSqlServerSqlDbTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * An interface representing MigrateSqlServerSqlDbTaskOutputTableLevel. - */ -export interface MigrateSqlServerSqlDbTaskOutputTableLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TableLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly objectName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Status message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly statusMessage?: string; - /** - * Number of items - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly itemsCount?: number; - /** - * Number of successfully completed items - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly itemsCompletedCount?: number; - /** - * Wildcard string prefix to use for querying all errors of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errorPrefix?: string; - /** - * Wildcard string prefix to use for querying all sub-tem results of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly resultPrefix?: string; -} - -/** - * Basic summary of a data item migration - */ -export interface DataItemMigrationSummaryResult { - /** - * Name of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Status message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly statusMessage?: string; - /** - * Number of items - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly itemsCount?: number; - /** - * Number of successfully completed items - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly itemsCompletedCount?: number; - /** - * Wildcard string prefix to use for querying all errors of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errorPrefix?: string; - /** - * Wildcard string prefix to use for querying all sub-tem results of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly resultPrefix?: string; -} - -/** - * An interface representing MigrateSqlServerSqlDbTaskOutputDatabaseLevel. - */ -export interface MigrateSqlServerSqlDbTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Migration stage that this database is in. Possible values include: 'None', 'Initialize', - * 'Backup', 'FileCopy', 'Restore', 'Completed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly stage?: DatabaseMigrationStage; - /** - * Status message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly statusMessage?: string; - /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Number of objects - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly numberOfObjects?: number; - /** - * Number of successfully completed objects - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly numberOfObjectsCompleted?: number; - /** - * Number of database/object errors. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errorCount?: number; - /** - * Wildcard string prefix to use for querying all errors of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errorPrefix?: string; - /** - * Wildcard string prefix to use for querying all sub-tem results of the item - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly resultPrefix?: string; - /** - * Migration exceptions and warnings. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; - /** - * Summary of object results in the migration - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly objectSummary?: { [propertyName: string]: DataItemMigrationSummaryResult }; -} - -/** - * Migration validation report result, contains the url for downloading the generated report. - */ -export interface MigrationReportResult { - /** - * Migration validation result identifier - */ - id?: string; - /** - * The url of the report. - */ - reportUrl?: string; -} - -/** - * Summary of database results in the migration - */ -export interface DatabaseSummaryResult extends DataItemMigrationSummaryResult { - /** - * Size of the database in megabytes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sizeMB?: number; -} - -/** - * An interface representing MigrateSqlServerSqlDbTaskOutputMigrationLevel. - */ -export interface MigrateSqlServerSqlDbTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Duration of task execution in seconds. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly durationInSeconds?: number; - /** - * Current status of migration. Possible values include: 'Default', 'Connecting', - * 'SourceAndTargetSelected', 'SelectLogins', 'Configured', 'Running', 'Error', 'Stopped', - * 'Completed', 'CompletedWithWarnings' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly status?: MigrationStatus; - /** - * Migration status message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly statusMessage?: string; - /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Selected databases as a map from database name to database id - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databases?: { [propertyName: string]: string }; - /** - * Summary of database results in the migration - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseSummary?: { [propertyName: string]: DatabaseSummaryResult }; - /** - * Migration Validation Results - */ - migrationValidationResult?: MigrationValidationResult; - /** - * Migration Report Result, provides unique url for downloading your migration report. - */ - migrationReportResult?: MigrationReportResult; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerBrandVersion?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Migration exceptions and warnings. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * Database specific information for SQL to Azure SQL DB migration task inputs - */ -export interface MigrateSqlServerSqlDbDatabaseInput { - /** - * Name of the database - */ - name?: string; - /** - * Name of target database. Note: Target database will be truncated before starting migration. - */ - targetDatabaseName?: string; - /** - * Whether to set database read only before migration - */ - makeSourceDbReadOnly?: boolean; - /** - * Mapping of source to target tables - */ - tableMap?: { [propertyName: string]: string }; -} - -/** - * Input for the task that migrates on-prem SQL Server databases to Azure SQL Database - */ -export interface MigrateSqlServerSqlDbTaskInput extends SqlMigrationTaskInput { - /** - * Databases to migrate - */ - selectedDatabases: MigrateSqlServerSqlDbDatabaseInput[]; - /** - * Options for enabling various post migration validations. Available options, - * 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables - * after the migration to ensure the correctness of the data. - * 2.) Schema Validation: Performs a thorough schema comparison between the source and target - * tables and provides a list of differences between the source and target database, 3.) Query - * Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache - * or Query Store and execute them and compares the execution time between the source and target - * database. - */ - validationOptions?: MigrationValidationOptions; -} - -/** - * Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database - */ -export interface MigrateSqlServerSqlDbTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.SqlServer.SqlDb"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateSqlServerSqlDbTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateSqlServerSqlDbTaskOutputUnion[]; -} - -/** - * Contains the possible cases for MigrateSqlServerSqlMISyncTaskOutput. - */ -export type MigrateSqlServerSqlMISyncTaskOutputUnion = MigrateSqlServerSqlMISyncTaskOutput | MigrateSqlServerSqlMISyncTaskOutputError | MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel | MigrateSqlServerSqlMISyncTaskOutputMigrationLevel; - -/** - * Output for task that migrates SQL Server databases to Azure SQL Database Managed Instance using - * Log Replay Service. - */ -export interface MigrateSqlServerSqlMISyncTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateSqlServerSqlMISyncTaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigrateSqlServerSqlMISyncTaskOutputError. - */ -export interface MigrateSqlServerSqlMISyncTaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * Information of the backup file - */ -export interface BackupFileInfo { - /** - * Location of the backup file in shared folder - */ - fileLocation?: string; - /** - * Sequence number of the backup file in the backup set - */ - familySequenceNumber?: number; - /** - * Status of the backup file during migration. Possible values include: 'Arrived', 'Queued', - * 'Uploading', 'Uploaded', 'Restoring', 'Restored', 'Cancelled' - */ - status?: BackupFileStatus; -} - -/** - * Information of backup set - */ -export interface BackupSetInfo { - /** - * Id for the set of backup files - */ - backupSetId?: string; - /** - * First log sequence number of the backup file - */ - firstLsn?: string; - /** - * Last log sequence number of the backup file - */ - lastLsn?: string; - /** - * Last modified time of the backup file in share location - */ - lastModifiedTime?: Date; - /** - * Enum of the different backup types. Possible values include: 'Database', 'TransactionLog', - * 'File', 'DifferentialDatabase', 'DifferentialFile', 'Partial', 'DifferentialPartial' - */ - backupType?: BackupType; - /** - * List of files in the backup set - */ - listOfBackupFiles?: BackupFileInfo[]; - /** - * Name of the database to which the backup set belongs - */ - databaseName?: string; - /** - * Date and time that the backup operation began - */ - backupStartDate?: Date; - /** - * Date and time that the backup operation finished - */ - backupFinishedDate?: Date; - /** - * Whether the backup set is restored or not - */ - isBackupRestored?: boolean; -} - -/** - * An interface representing MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel. - */ -export interface MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceDatabaseName?: string; - /** - * Current state of database. Possible values include: 'UNDEFINED', 'INITIAL', - * 'FULL_BACKUP_UPLOAD_START', 'LOG_SHIPPING_START', 'UPLOAD_LOG_FILES_START', 'CUTOVER_START', - * 'POST_CUTOVER_COMPLETE', 'COMPLETED', 'CANCELLED', 'FAILED' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly migrationState?: DatabaseMigrationState; - /** - * Database migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Database migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Details of full backup set - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fullBackupSetInfo?: BackupSetInfo; - /** - * Last applied backup set information - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly lastRestoredBackupSetInfo?: BackupSetInfo; - /** - * Backup sets that are currently active (Either being uploaded or getting restored) - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly activeBackupSets?: BackupSetInfo[]; - /** - * Name of container created in the Azure Storage account where backups are copied to - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly containerName?: string; - /** - * prefix string to use for querying errors for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errorPrefix?: string; - /** - * Whether full backup has been applied to the target database or not - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly isFullBackupRestored?: boolean; - /** - * Migration exceptions and warnings - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * An interface representing MigrateSqlServerSqlMISyncTaskOutputMigrationLevel. - */ -export interface MigrateSqlServerSqlMISyncTaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Count of databases - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseCount?: number; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerName?: string; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerBrandVersion?: string; - /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerName?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Number of database level errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseErrorCount?: number; -} - -/** - * Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online - * scenario. - */ -export interface MigrateSqlServerSqlMISyncTaskInput extends SqlServerSqlMISyncTaskInput { -} - -/** - * Properties for task that migrates SQL Server databases to Azure SQL Database Managed Instance - * sync scenario - */ -export interface MigrateSqlServerSqlMISyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateSqlServerSqlMISyncTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateSqlServerSqlMISyncTaskOutputUnion[]; -} - -/** - * Contains the possible cases for MigrateSqlServerSqlMITaskOutput. - */ -export type MigrateSqlServerSqlMITaskOutputUnion = MigrateSqlServerSqlMITaskOutput | MigrateSqlServerSqlMITaskOutputError | MigrateSqlServerSqlMITaskOutputLoginLevel | MigrateSqlServerSqlMITaskOutputAgentJobLevel | MigrateSqlServerSqlMITaskOutputDatabaseLevel | MigrateSqlServerSqlMITaskOutputMigrationLevel; - -/** - * Output for task that migrates SQL Server databases to Azure SQL Database Managed Instance. - */ -export interface MigrateSqlServerSqlMITaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "MigrateSqlServerSqlMITaskOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; -} - -/** - * An interface representing MigrateSqlServerSqlMITaskOutputError. - */ -export interface MigrateSqlServerSqlMITaskOutputError { - /** - * Polymorphic Discriminator - */ - resultType: "ErrorOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly error?: ReportableException; -} - -/** - * An interface representing MigrateSqlServerSqlMITaskOutputLoginLevel. - */ -export interface MigrateSqlServerSqlMITaskOutputLoginLevel { - /** - * Polymorphic Discriminator - */ - resultType: "LoginLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Login name. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly loginName?: string; - /** - * Current state of login. Possible values include: 'None', 'InProgress', 'Failed', 'Warning', - * 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Current stage of login. Possible values include: 'None', 'Initialize', 'LoginMigration', - * 'EstablishUserMapping', 'AssignRoleMembership', 'AssignRoleOwnership', - * 'EstablishServerPermissions', 'EstablishObjectPermissions', 'Completed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly stage?: LoginMigrationStage; - /** - * Login migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Login migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Login migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Login migration errors and warnings per login - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * An interface representing MigrateSqlServerSqlMITaskOutputAgentJobLevel. - */ -export interface MigrateSqlServerSqlMITaskOutputAgentJobLevel { - /** - * Polymorphic Discriminator - */ - resultType: "AgentJobLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Agent Job name. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * The state of the original Agent Job. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly isEnabled?: boolean; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Migration errors and warnings per job - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * An interface representing MigrateSqlServerSqlMITaskOutputDatabaseLevel. - */ -export interface MigrateSqlServerSqlMITaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; - /** - * Size of the database in megabytes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sizeMB?: number; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Current stage of migration. Possible values include: 'None', 'Initialize', 'Backup', - * 'FileCopy', 'Restore', 'Completed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly stage?: DatabaseMigrationStage; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Migration exceptions and warnings - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * Information of orphaned users on the SQL server database. - */ -export interface OrphanedUserInfo { - /** - * Name of the orphaned user - */ - name?: string; - /** - * Parent database of the user - */ - databaseName?: string; -} - -/** - * Server role migration result - */ -export interface StartMigrationScenarioServerRoleResult { - /** - * Name of server role. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Migration exceptions and warnings. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; -} - -/** - * An interface representing MigrateSqlServerSqlMITaskOutputMigrationLevel. - */ -export interface MigrateSqlServerSqlMITaskOutputMigrationLevel { - /** - * Polymorphic Discriminator - */ - resultType: "MigrationLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly startedOn?: Date; - /** - * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly endedOn?: Date; - /** - * Current status of migration. Possible values include: 'Default', 'Connecting', - * 'SourceAndTargetSelected', 'SelectLogins', 'Configured', 'Running', 'Error', 'Stopped', - * 'Completed', 'CompletedWithWarnings' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly status?: MigrationStatus; - /** - * Current state of migration. Possible values include: 'None', 'InProgress', 'Failed', - * 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: MigrationState; - /** - * Selected agent jobs as a map from name to id - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly agentJobs?: { [propertyName: string]: string }; - /** - * Selected logins as a map from name to id - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly logins?: { [propertyName: string]: string }; - /** - * Migration progress message - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly message?: string; - /** - * Map of server role migration results. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly serverRoleResults?: { [propertyName: string]: StartMigrationScenarioServerRoleResult }; - /** - * List of orphaned users. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly orphanedUsersInfo?: OrphanedUserInfo[]; - /** - * Selected databases as a map from database name to database id - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databases?: { [propertyName: string]: string }; - /** - * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerVersion?: string; - /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sourceServerBrandVersion?: string; - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Migration exceptions and warnings. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly exceptionsAndWarnings?: ReportableException[]; } -/** - * Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance. - */ -export interface MigrateSqlServerSqlMITaskInput extends SqlMigrationTaskInput { - /** - * Databases to migrate - */ - selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; - /** - * Logins to migrate. - */ - selectedLogins?: string[]; - /** - * Agent Jobs to migrate. - */ - selectedAgentJobs?: string[]; - /** - * Backup file share information for all selected databases. - */ - backupFileShare?: FileShare; - /** - * SAS URI of Azure Storage Account Container to be used for storing backup files. - */ - backupBlobShare: BlobShare; - /** - * Backup Mode to specify whether to use existing backup or create new backup. If using existing - * backups, backup file paths are required to be provided in selectedDatabases. Possible values - * include: 'CreateBackup', 'ExistingBackup' - */ - backupMode?: BackupMode; - /** - * Azure Active Directory domain name in the format of 'contoso.com' for federated Azure AD or - * 'contoso.onmicrosoft.com' for managed domain, required if and only if Windows logins are - * selected - */ - aadDomainName?: string; +/** Describes the input to the 'cancel' and 'restart' MongoDB migration commands */ +export interface MongoDbCommandInput { + /** The qualified name of a database or collection to act upon, or null to act upon the entire migration */ + objectName?: string; } -/** - * Properties for task that migrates SQL Server databases to Azure SQL Database Managed Instance - */ -export interface MigrateSqlServerSqlMITaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.SqlServer.AzureSqlDbMI"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: MigrateSqlServerSqlMITaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MigrateSqlServerSqlMITaskOutputUnion[]; +/** Describes a MongoDB data source */ +export interface MongoDbClusterInfo { + /** A list of non-system databases in the cluster */ + databases: MongoDbDatabaseInfo[]; + /** Whether the cluster supports sharded collections */ + supportsSharding: boolean; + /** The type of data source */ + type: MongoDbClusterType; + /** The version of the data source in the form x.y.z (e.g. 3.6.7). Not used if Type is BlobContainer. */ + version: string; } -/** - * Properties for the task that migrates data between MongoDB data sources - */ -export interface MigrateMongoDbTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "Migrate.MongoDb"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - input?: MongoDbMigrationSettings; - /** - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: MongoDbProgress[]; +/** Describes a MongoDB shard key */ +export interface MongoDbShardKeyInfo { + /** The fields within the shard key */ + fields: MongoDbShardKeyField[]; + /** Whether the shard key is unique */ + isUnique: boolean; } -/** - * Output for the task that validates connection to Azure Database for MySQL and target server - * requirements - */ -export interface ConnectToTargetAzureDbForMySqlTaskOutput { - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Version of the target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly serverVersion?: string; - /** - * List of databases on target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databases?: string[]; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; +/** Describes a field reference within a MongoDB shard key */ +export interface MongoDbShardKeyField { + /** The name of the field */ + name: string; + /** The field ordering */ + order: MongoDbShardKeyOrder; } -/** - * Input for the task that validates connection to Azure Database for MySQL and target server - * requirements - */ -export interface ConnectToTargetAzureDbForMySqlTaskInput { - /** - * Connection information for source MySQL server - */ - sourceConnectionInfo: MySqlConnectionInfo; - /** - * Connection information for target Azure Database for MySQL server - */ - targetConnectionInfo: MySqlConnectionInfo; +/** Describes a database or collection within a MongoDB data source */ +export interface MongoDbObjectInfo { + /** The average document size, or -1 if the average size is unknown */ + averageDocumentSize: number; + /** The estimated total data size, in bytes, or -1 if the size is unknown. */ + dataSize: number; + /** The estimated total number of documents, or -1 if the document count is unknown */ + documentCount: number; + /** The unqualified name of the database or collection */ + name: string; + /** The qualified name of the database or collection. For a collection, this is the database-qualified name. */ + qualifiedName: string; } -/** - * Properties for the task that validates connection to Azure Database for MySQL and target server - * requirements - */ -export interface ConnectToTargetAzureDbForMySqlTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ConnectToTarget.AzureDbForMySql"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; - /** - * Key value pairs of client data to attach meta data information to task - */ - clientData?: { [propertyName: string]: string }; - /** - * Task input - */ - input?: ConnectToTargetAzureDbForMySqlTaskInput; - /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly output?: ConnectToTargetAzureDbForMySqlTaskOutput[]; +/** Base class for MongoDB migration outputs */ +export interface MongoDbProgress { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "Collection" | "Database" | "Migration"; + /** The number of document bytes copied during the Copying stage */ + bytesCopied: number; + /** The number of documents copied during the Copying stage */ + documentsCopied: number; + /** The elapsed time in the format [ddd.]hh:mm:ss[.fffffff] (i.e. TimeSpan format) */ + elapsedTime: string; + /** The errors and warnings that have occurred for the current object. The keys are the error codes. */ + errors: { [propertyName: string]: MongoDbError }; + /** The number of oplog events awaiting replay */ + eventsPending: number; + /** The number of oplog events replayed so far */ + eventsReplayed: number; + /** The timestamp of the last oplog event received, or null if no oplog event has been received yet */ + lastEventTime?: Date; + /** The timestamp of the last oplog event replayed, or null if no oplog event has been replayed yet */ + lastReplayTime?: Date; + /** The name of the progress object. For a collection, this is the unqualified collection name. For a database, this is the database name. For the overall migration, this is null. */ + name?: string; + /** The qualified name of the progress object. For a collection, this is the database-qualified name. For a database, this is the database name. For the overall migration, this is null. */ + qualifiedName?: string; + state: MongoDbMigrationState; + /** The total number of document bytes on the source at the beginning of the Copying stage, or -1 if the total size was unknown */ + totalBytes: number; + /** The total number of documents on the source at the beginning of the Copying stage, or -1 if the total count was unknown */ + totalDocuments: number; } -/** - * Output for the task that validates connection to Azure SQL Database Managed Instance. - */ -export interface ConnectToTargetSqlMISyncTaskOutput { - /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerVersion?: string; - /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly targetServerBrandVersion?: string; - /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; +/** Describes an error or warning that occurred during a MongoDB migration */ +export interface MongoDbError { + /** The non-localized, machine-readable code that describes the error or warning */ + code?: string; + /** The number of times the error or warning has occurred */ + count?: number; + /** The localized, human-readable message that describes the error or warning */ + message?: string; + /** The type of error or warning */ + type?: MongoDbErrorType; } -/** - * Input for the task that validates connection to Azure SQL Database Managed Instance online - * scenario. - */ -export interface ConnectToTargetSqlMISyncTaskInput { - /** - * Connection information for Azure SQL Database Managed Instance - */ - targetConnectionInfo: MiSqlConnectionInfo; - /** - * Azure Active Directory Application the DMS instance will use to connect to the target instance - * of Azure SQL Database Managed Instance and the Azure Storage Account - */ - azureApp: AzureActiveDirectoryApp; +/** Describes how an individual MongoDB collection should be migrated */ +export interface MongoDbCollectionSettings { + /** Whether the migrator is allowed to drop the target collection in the course of performing a migration. The default is true. */ + canDelete?: boolean; + /** Describes a MongoDB shard key */ + shardKey?: MongoDbShardKeySetting; + /** The RUs that should be configured on a CosmosDB target, or null to use the default. This has no effect on non-CosmosDB targets. */ + targetRUs?: number; } -/** - * Properties for the task that validates connection to Azure SQL Database Managed Instance - */ -export interface ConnectToTargetSqlMISyncTaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ConnectToTarget.AzureSqlDbMI.Sync.LRS"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; +/** Describes a MongoDB shard key */ +export interface MongoDbShardKeySetting { + /** The fields within the shard key */ + fields: MongoDbShardKeyField[]; + /** Whether the shard key is unique */ + isUnique: boolean; +} + +/** Describes how an individual MongoDB database should be migrated */ +export interface MongoDbDatabaseSettings { + /** The collections on the source database to migrate to the target. The keys are the unqualified names of the collections. */ + collections: { [propertyName: string]: MongoDbCollectionSettings }; + /** The RUs that should be configured on a CosmosDB target, or null to use the default, or 0 if throughput should not be provisioned for the database. This has no effect on non-CosmosDB targets. */ + targetRUs?: number; +} + +/** Describes how a MongoDB data migration should be performed */ +export interface MongoDbMigrationSettings { + /** The RU limit on a CosmosDB target that collections will be temporarily increased to (if lower) during the initial copy of a migration, from 10,000 to 1,000,000, or 0 to use the default boost (which is generally the maximum), or null to not boost the RUs. This setting has no effect on non-CosmosDB targets. */ + boostRUs?: number; + /** The databases on the source cluster to migrate to the target. The keys are the names of the databases. */ + databases: { [propertyName: string]: MongoDbDatabaseSettings }; + /** Describes how changes will be replicated from the source to the target. The default is OneTime. */ + replication?: MongoDbReplication; + /** Settings used to connect to the source cluster */ + source: MongoDbConnectionInfo; + /** Settings used to connect to the target cluster */ + target: MongoDbConnectionInfo; + /** Settings used to limit the resource usage of the migration */ + throttling?: MongoDbThrottlingSettings; +} + +/** Specifies resource limits for the migration */ +export interface MongoDbThrottlingSettings { + /** The percentage of CPU time that the migrator will try to avoid using, from 0 to 100 */ + minFreeCpu?: number; + /** The number of megabytes of RAM that the migrator will try to avoid using */ + minFreeMemoryMb?: number; + /** The maximum number of work items (e.g. collection copies) that will be processed in parallel */ + maxParallelism?: number; +} + +/** Input for the task that validates Oracle database connection */ +export interface ConnectToSourceOracleSyncTaskInput { + /** Information for connecting to Oracle source */ + sourceConnectionInfo: OracleConnectionInfo; +} + +/** Output for the task that validates Oracle database connection */ +export interface ConnectToSourceOracleSyncTaskOutput { /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Version of the source server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly sourceServerVersion?: string; /** - * Key value pairs of client data to attach meta data information to task + * List of schemas on source server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly databases?: string[]; /** - * Task input + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToTargetSqlMISyncTaskInput; + readonly sourceServerBrandVersion?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToTargetSqlMISyncTaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * Output for the task that validates connection to Azure SQL Database Managed Instance. - */ -export interface ConnectToTargetSqlMITaskOutput { +/** Input for the task that validates connection to Azure Database for PostgreSQL and target server requirements for Oracle source. */ +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput { + /** Connection information for target Azure Database for PostgreSQL server */ + targetConnectionInfo: PostgreSqlConnectionInfo; +} + +/** Output for the task that validates connection to Azure Database for PostgreSQL and target server requirements for Oracle source. */ +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput { /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Version of the target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly targetServerVersion?: string; /** - * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of databases on target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerVersion?: string; + readonly databases?: string[]; /** * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly targetServerBrandVersion?: string; /** - * List of logins on the target server. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly logins?: string[]; - /** - * List of agent jobs on the target server. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly agentJobs?: string[]; - /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly validationErrors?: ReportableException[]; + /** Mapping of schemas per database */ + databaseSchemaMap?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem[]; } -/** - * Input for the task that validates connection to Azure SQL Database Managed Instance. - */ -export interface ConnectToTargetSqlMITaskInput { - /** - * Connection information for target SQL Server - */ - targetConnectionInfo: SqlConnectionInfo; - /** - * Flag for whether to collect logins from target SQL MI server. Default value: true. - */ - collectLogins?: boolean; - /** - * Flag for whether to collect agent jobs from target SQL MI server. Default value: true. - */ - collectAgentJobs?: boolean; - /** - * Flag for whether to validate SSIS catalog is reachable on the target SQL MI server. Default - * value: false. - */ - validateSsisCatalogOnly?: boolean; +export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem { + database?: string; + schemas?: string[]; } -/** - * Properties for the task that validates connection to Azure SQL Database Managed Instance - */ -export interface ConnectToTargetSqlMITaskProperties { - /** - * Polymorphic Discriminator - */ - taskType: "ConnectToTarget.AzureSqlDbMI"; - /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly errors?: ODataError[]; - /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly state?: TaskState; - /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly commands?: CommandPropertiesUnion[]; +/** Input for the task that gets the list of tables contained within a provided list of Oracle schemas. */ +export interface GetUserTablesOracleTaskInput { + /** Information for connecting to Oracle source */ + connectionInfo: OracleConnectionInfo; + /** List of Oracle schemas for which to collect tables */ + selectedSchemas: string[]; +} + +/** Output for the task that gets the list of tables contained within a provided list of Oracle schemas. */ +export interface GetUserTablesOracleTaskOutput { /** - * Key value pairs of client data to attach meta data information to task + * The schema this result is for + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly schemaName?: string; /** - * Task input + * List of valid tables found for this schema + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToTargetSqlMITaskInput; + readonly tables?: DatabaseTable[]; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToTargetSqlMITaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * Table properties - */ -export interface DatabaseTable { - /** - * Indicates whether table is empty or not - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly hasRows?: boolean; - /** - * Schema-qualified name of the table - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; +/** Input for the task that gets the list of tables for a provided list of PostgreSQL databases. */ +export interface GetUserTablesPostgreSqlTaskInput { + /** Information for connecting to PostgreSQL source */ + connectionInfo: PostgreSqlConnectionInfo; + /** List of PostgreSQL databases for which to collect tables */ + selectedDatabases: string[]; } -/** - * Output for the task that gets the list of tables for a provided list of PostgreSQL databases. - */ +/** Output for the task that gets the list of tables for a provided list of PostgreSQL databases. */ export interface GetUserTablesPostgreSqlTaskOutput { /** * The database this result is for - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly databaseName?: string; /** * List of valid tables found for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly tables?: DatabaseTable[]; /** * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly validationErrors?: ReportableException[]; } -/** - * Input for the task that gets the list of tables for a provided list of PostgreSQL databases. - */ -export interface GetUserTablesPostgreSqlTaskInput { +/** Output for task that validates migration input for Oracle to Azure Database for PostgreSQL for online migrations */ +export interface ValidateOracleAzureDbPostgreSqlSyncTaskOutput { /** - * Information for connecting to PostgreSQL source + * Errors associated with a selected database object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - connectionInfo: PostgreSqlConnectionInfo; + readonly validationErrors?: ReportableException[]; +} + +/** Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations */ +export interface MigrateOracleAzureDbPostgreSqlSyncTaskInput { + /** Databases to migrate */ + selectedDatabases: MigrateOracleAzureDbPostgreSqlSyncDatabaseInput[]; + /** Connection information for target Azure Database for PostgreSQL */ + targetConnectionInfo: PostgreSqlConnectionInfo; + /** Connection information for source Oracle */ + sourceConnectionInfo: OracleConnectionInfo; +} + +/** Database specific information for Oracle to Azure Database for PostgreSQL migration task inputs */ +export interface MigrateOracleAzureDbPostgreSqlSyncDatabaseInput { + /** How to handle object name casing: either Preserve or ToLower */ + caseManipulation?: string; + /** Name of the migration pipeline */ + name?: string; + /** Name of the source schema */ + schemaName?: string; + /** Mapping of source to target tables */ + tableMap?: { [propertyName: string]: string }; + /** Name of target database. Note: Target database will be truncated before starting migration. */ + targetDatabaseName?: string; + /** Migration settings which tune the migration behavior */ + migrationSetting?: { [propertyName: string]: string }; + /** Source settings to tune source endpoint migration behavior */ + sourceSetting?: { [propertyName: string]: string }; + /** Target settings to tune target endpoint migration behavior */ + targetSetting?: { [propertyName: string]: string }; +} + +/** Output for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations */ +export interface MigrateOracleAzureDbPostgreSqlSyncTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput" + | "DatabaseLevelErrorOutput"; /** - * List of PostgreSQL databases for which to collect tables + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedDatabases: string[]; + readonly id?: string; } -/** - * Properties for the task that collects user tables for the given list of databases - */ -export interface GetUserTablesPostgreSqlTaskProperties { +/** Information about an Oracle OCI driver. */ +export interface OracleOCIDriverInfo { /** - * Polymorphic Discriminator + * The name of the driver package + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "GetUserTablesPostgreSql"; + readonly driverName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The size in bytes of the driver package + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly driverSize?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The MD5 Base64 encoded checksum for the driver package. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly archiveChecksum?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The checksum for the driver package provided by Oracle. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly oracleChecksum?: string; /** - * Key value pairs of client data to attach meta data information to task + * Version listed in the OCI assembly 'oci.dll' + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly assemblyVersion?: string; /** - * Task input + * List of Oracle database versions supported by this driver. Only major minor of the version is listed. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: GetUserTablesPostgreSqlTaskInput; + readonly supportedOracleVersions?: string[]; +} + +/** Input for the service task to check for OCI drivers. */ +export interface CheckOCIDriverTaskInput { + /** Version of the source server to check against. Optional. */ + serverVersion?: string; +} + +/** Output for the service task to check for OCI drivers. */ +export interface CheckOCIDriverTaskOutput { + /** Information about the installed driver if found and valid. */ + installedDriver?: OracleOCIDriverInfo; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: GetUserTablesPostgreSqlTaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * Output for the task that gets the list of tables contained within a provided list of Oracle - * schemas. - */ -export interface GetUserTablesOracleTaskOutput { +/** Input for the service task to upload an OCI driver. */ +export interface UploadOCIDriverTaskInput { + /** File share information for the OCI driver archive. */ + driverShare?: FileShare; +} + +/** Output for the service task to upload an OCI driver. */ +export interface UploadOCIDriverTaskOutput { /** - * The schema this result is for - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The name of the driver package that was validated and uploaded. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly schemaName?: string; + readonly driverPackageName?: string; /** - * List of valid tables found for this schema - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly tables?: DatabaseTable[]; + readonly validationErrors?: ReportableException[]; +} + +/** Input for the service task to install an OCI driver. */ +export interface InstallOCIDriverTaskInput { + /** Name of the uploaded driver package to install. */ + driverPackageName?: string; +} + +/** Output for the service task to install an OCI driver. */ +export interface InstallOCIDriverTaskOutput { /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly validationErrors?: ReportableException[]; } -/** - * Input for the task that gets the list of tables contained within a provided list of Oracle - * schemas. - */ -export interface GetUserTablesOracleTaskInput { +/** Description of an action supported by the Database Migration Service */ +export interface ServiceOperation { + /** The fully qualified action name, e.g. Microsoft.DataMigration/services/read */ + name?: string; + /** Localized display text */ + display?: ServiceOperationDisplay; +} + +/** Localized display text */ +export interface ServiceOperationDisplay { + /** The localized resource provider name */ + provider?: string; + /** The localized resource type name */ + resource?: string; + /** The localized operation name */ + operation?: string; + /** The localized operation description */ + description?: string; +} + +/** OData page of action (operation) objects */ +export interface ServiceOperationList { + /** List of actions */ + value?: ServiceOperation[]; + /** URL to load the next page of actions */ + nextLink?: string; +} + +/** Output for connect to MySQL type source */ +export interface ConnectToSourceNonSqlTaskOutput { /** - * Information for connecting to Oracle source + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - connectionInfo: OracleConnectionInfo; + readonly id?: string; /** - * List of Oracle schemas for which to collect tables + * Server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedSchemas: string[]; -} - -/** - * Properties for the task that collects user tables for the given list of Oracle schemas - */ -export interface GetUserTablesOracleTaskProperties { + readonly sourceServerBrandVersion?: string; /** - * Polymorphic Discriminator + * Server properties + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "GetUserTablesOracle"; + readonly serverProperties?: ServerProperties; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of databases on the server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly databases?: string[]; + /** + * Validation errors associated with the task + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly validationErrors?: ReportableException[]; +} + +/** Server properties for MySQL type source */ +export interface ServerProperties { /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the server platform + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly serverPlatform?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly serverName?: string; + /** + * Version of the database server + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly serverVersion?: string; /** - * Key value pairs of client data to attach meta data information to task + * Edition of the database server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly serverEdition?: string; /** - * Task input + * Version of the operating system + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: GetUserTablesOracleTaskInput; + readonly serverOperatingSystemVersion?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of databases in the server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: GetUserTablesOracleTaskOutput[]; + readonly serverDatabaseCount?: number; } -/** - * Output of the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlSyncTaskOutput { +/** Input for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations */ +export interface MigrateMySqlAzureDbForMySqlOfflineTaskInput { + /** Connection information for source MySQL */ + sourceConnectionInfo: MySqlConnectionInfo; + /** Connection information for target Azure Database for MySQL */ + targetConnectionInfo: MySqlConnectionInfo; + /** Databases to migrate */ + selectedDatabases: MigrateMySqlAzureDbForMySqlOfflineDatabaseInput[]; + /** Setting to set the source server read only */ + makeSourceServerReadOnly?: boolean; + /** Parameter to specify when the migration started */ + startedOn?: Date; + /** Optional parameters for fine tuning the data transfer rate during migration */ + optionalAgentSettings?: { [propertyName: string]: string }; +} + +/** Database specific information for offline MySQL to Azure Database for MySQL migration task inputs */ +export interface MigrateMySqlAzureDbForMySqlOfflineDatabaseInput { + /** Name of the database */ + name?: string; + /** Name of target database. Note: Target database will be truncated before starting migration. */ + targetDatabaseName?: string; + /** Mapping of source to target tables */ + tableMap?: { [propertyName: string]: string }; +} + +/** Output for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations */ +export interface MigrateMySqlAzureDbForMySqlOfflineTaskOutput { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: + | "MigrationLevelOutput" + | "DatabaseLevelOutput" + | "TableLevelOutput" + | "ErrorOutput"; /** - * Mapping from database name to list of source tables - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databasesToSourceTables?: { [propertyName: string]: DatabaseTable[] }; + readonly id?: string; +} + +/** Input for task that validates migration input for SQL sync migrations */ +export interface ValidateSyncMigrationInputSqlServerTaskInput { + /** Information for connecting to source SQL server */ + sourceConnectionInfo: SqlConnectionInfo; + /** Information for connecting to target */ + targetConnectionInfo: SqlConnectionInfo; + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; +} + +/** Output for task that validates migration input for SQL sync migrations */ +export interface ValidateSyncMigrationInputSqlServerTaskOutput { /** - * Mapping from database name to list of target tables - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databasesToTargetTables?: { [propertyName: string]: DatabaseTable[] }; + readonly id?: string; /** - * Mapping from database name to list of validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly tableValidationErrors?: { [propertyName: string]: string[] }; + readonly name?: string; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Errors associated with a selected database object + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly validationErrors?: ReportableException[]; } -/** - * Input for the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlSyncTaskInput { - /** - * Connection information for SQL Server - */ +/** Input for task that validates migration input for SQL to Azure SQL Managed Instance */ +export interface ValidateMigrationInputSqlServerSqlMITaskInput { + /** Information for connecting to source */ sourceConnectionInfo: SqlConnectionInfo; - /** - * Connection information for SQL DB - */ + /** Information for connecting to target */ targetConnectionInfo: SqlConnectionInfo; - /** - * List of source database names to collect tables for - */ - selectedSourceDatabases: string[]; - /** - * List of target database names to collect tables for - */ - selectedTargetDatabases: string[]; + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + /** Logins to migrate */ + selectedLogins?: string[]; + /** Backup file share information for all selected databases. */ + backupFileShare?: FileShare; + /** SAS URI of Azure Storage Account Container to be used for storing backup files. */ + backupBlobShare: BlobShare; + /** Backup Mode to specify whether to use existing backup or create new backup. */ + backupMode?: BackupMode; } -/** - * Properties for the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlSyncTaskProperties { +/** Output for task that validates migration input for SQL to Azure SQL Managed Instance migrations */ +export interface ValidateMigrationInputSqlServerSqlMITaskOutput { /** - * Polymorphic Discriminator + * Result identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "GetUserTables.AzureSqlDb.Sync"; + readonly id?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly name?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Errors associated with the RestoreDatabaseName + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly restoreDatabaseNameErrors?: ReportableException[]; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Errors associated with the BackupFolder path + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly backupFolderErrors?: ReportableException[]; /** - * Key value pairs of client data to attach meta data information to task + * Errors associated with backup share user name and password credentials + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly backupShareCredentialsErrors?: ReportableException[]; /** - * Task input + * Errors associated with the storage account provided. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: GetUserTablesSqlSyncTaskInput; + readonly backupStorageAccountErrors?: ReportableException[]; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Errors associated with existing backup files. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: GetUserTablesSqlSyncTaskOutput[]; + readonly existingBackupErrors?: ReportableException[]; + /** Information about backup files when existing backup mode is used. */ + databaseBackupInfo?: DatabaseBackupInfo; } -/** - * Output of the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlTaskOutput { - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; +/** Information about backup files when existing backup mode is used. */ +export interface DatabaseBackupInfo { /** - * Mapping from database name to list of tables - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database name. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databasesToTables?: { [propertyName: string]: DatabaseTable[] }; + readonly databaseName?: string; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Backup Type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Input for the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlTaskInput { + readonly backupType?: BackupType; /** - * Connection information for SQL Server + * The list of backup files for the current database. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - connectionInfo: SqlConnectionInfo; + readonly backupFiles?: string[]; /** - * List of database names to collect tables for + * Position of current database backup in the file. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedDatabases: string[]; -} - -/** - * Properties for the task that collects user tables for the given list of databases - */ -export interface GetUserTablesSqlTaskProperties { + readonly position?: number; /** - * Polymorphic Discriminator + * Database was damaged when backed up, but the backup operation was requested to continue despite errors. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "GetUserTables.Sql"; + readonly isDamaged?: boolean; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Whether the backup set is compressed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly isCompressed?: boolean; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of files in the backup set. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly familyCount?: number; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Date and time when the backup operation finished. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly backupFinishDate?: Date; +} + +/** Output for task that validates migration input for Azure SQL Database Managed Instance online migration */ +export interface ValidateMigrationInputSqlServerSqlMISyncTaskOutput { /** - * Key value pairs of client data to attach meta data information to task + * Database identifier + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly id?: string; /** - * Task input + * Name of database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: GetUserTablesSqlTaskInput; + readonly name?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Errors associated with a selected database object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: GetUserTablesSqlTaskOutput[]; + readonly validationErrors?: ReportableException[]; } -/** - * An interface representing - * ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem. - */ -export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem { - database?: string; - schemas?: string[]; +/** Information about a single database */ +export interface Database { + /** Unique identifier for the database */ + id?: string; + /** Name of the database */ + name?: string; + /** SQL Server compatibility level of database */ + compatibilityLevel?: DatabaseCompatLevel; + /** Collation name of the database */ + collation?: string; + /** Name of the server */ + serverName?: string; + /** Fully qualified name */ + fqdn?: string; + /** Install id of the database */ + installId?: string; + /** Version of the server */ + serverVersion?: string; + /** Edition of the server */ + serverEdition?: string; + /** Product level of the server (RTM, SP, CTP). */ + serverLevel?: string; + /** Default path of the data files */ + serverDefaultDataPath?: string; + /** Default path of the log files */ + serverDefaultLogPath?: string; + /** Default path of the backup folder */ + serverDefaultBackupPath?: string; + /** Number of cores on the server */ + serverCoreCount?: number; + /** Number of cores on the server that have VISIBLE ONLINE status */ + serverVisibleOnlineCoreCount?: number; + /** State of the database */ + databaseState?: DatabaseState; + /** The unique Server Id */ + serverId?: string; } -/** - * Output for the task that validates connection to Azure Database for PostgreSQL and target server - * requirements for Oracle source. - */ -export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput { +/** A representation of the name of an object in a database */ +export interface DatabaseObjectName { /** - * Version of the target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The unescaped name of the database containing the object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerVersion?: string; + readonly databaseName?: string; /** - * List of databases on target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The unescaped name of the object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: string[]; + readonly objectName?: string; /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The unescaped name of the schema containing the object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerBrandVersion?: string; + readonly schemaName?: string; + /** Type of the object in the database */ + objectType?: ObjectType; +} + +/** Common metadata for migration projects */ +export interface DataMigrationProjectMetadata { /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; + readonly sourceServerName?: string; /** - * Mapping of schemas per database + * Source server port number + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseSchemaMap?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem[]; -} - -/** - * Input for the task that validates connection to Azure Database for PostgreSQL and target server - * requirements for Oracle source. - */ -export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput { + readonly sourceServerPort?: string; /** - * Connection information for target Azure Database for PostgreSQL server + * Source username + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: PostgreSqlConnectionInfo; -} - -/** - * Properties for the task that validates connection to Azure Database For PostgreSQL server and - * target server requirements for online migration for Oracle source. - */ -export interface ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties { + readonly sourceUsername?: string; /** - * Polymorphic Discriminator + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync"; + readonly targetServerName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target username + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly targetUsername?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target database name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly targetDbName?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Whether target connection is Windows authentication + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly targetUsingWinAuth?: boolean; /** - * Key value pairs of client data to attach meta data information to task + * List of tables selected for migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly selectedMigrationTables?: MigrationTableMetadata[]; +} + +/** Metadata for tables selected in migration project */ +export interface MigrationTableMetadata { /** - * Task input + * Source table name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput; + readonly sourceTableName?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target table name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput[]; + readonly targetTableName?: string; } -/** - * Output for the task that validates connection to Azure Database for PostgreSQL and target server - * requirements - */ -export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput { +/** Input for the task that reads configuration from project artifacts */ +export interface GetProjectDetailsNonSqlTaskInput { + /** Name of the migration project */ + projectName: string; + /** A URL that points to the location to access project artifacts */ + projectLocation: string; +} + +/** Base class for non sql migration task input */ +export interface NonSqlMigrationTaskInput { + /** Information for connecting to target */ + targetConnectionInfo: SqlConnectionInfo; + /** Target database name */ + targetDatabaseName: string; + /** Name of the migration project */ + projectName: string; + /** A URL that points to the drop location to access project artifacts */ + projectLocation: string; + /** Metadata of the tables selected for migration */ + selectedTables: NonSqlDataMigrationTable[]; +} + +/** Defines metadata for table to be migrated */ +export interface NonSqlDataMigrationTable { + /** Source table name */ + sourceName?: string; +} + +/** Base class for non sql migration task output */ +export interface NonSqlMigrationTaskOutput { /** * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly startedOn?: Date; /** - * Version of the target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerVersion?: string; + readonly endedOn?: Date; /** - * List of databases on target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: string[]; + readonly status?: MigrationStatus; /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Results of the migration. The key contains the table name and the value the table result object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerBrandVersion?: string; + readonly dataMigrationTableResults?: string; /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Message about the progress of the migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Input for the task that validates connection to Azure Database for PostgreSQL and target server - * requirements - */ -export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskInput { + readonly progressMessage?: string; /** - * Connection information for source PostgreSQL server + * Name of source server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: PostgreSqlConnectionInfo; + readonly sourceServerName?: string; /** - * Connection information for target Azure Database for PostgreSQL server + * Name of target server + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: PostgreSqlConnectionInfo; + readonly targetServerName?: string; } -/** - * Properties for the task that validates connection to Azure Database For PostgreSQL server and - * target server requirements for online migration - */ -export interface ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties { +/** Object used to report the data migration results of a table */ +export interface NonSqlDataMigrationTableResult { /** - * Polymorphic Discriminator + * Result code of the data migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToTarget.AzureDbForPostgreSql.Sync"; + readonly resultCode?: DataMigrationResultCode; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the source table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly sourceName?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the target table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly targetName?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of rows in the source table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly sourceRowCount?: number; /** - * Key value pairs of client data to attach meta data information to task + * Number of rows in the target table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly targetRowCount?: number; /** - * Task input + * Time taken to migrate the data + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToTargetAzureDbForPostgreSqlSyncTaskInput; + readonly elapsedTimeInMiliseconds?: number; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of errors, if any, during migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput[]; + readonly errors?: DataMigrationError[]; } -/** - * Output for the task that validates connection to SQL DB and target server requirements - */ -export interface ConnectToTargetSqlDbTaskOutput { +/** Migration Task errors */ +export interface DataMigrationError { /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Error description + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly message?: string; + /** Error type */ + type?: ErrorType; +} + +/** Database specific information for SQL to SQL migration task inputs */ +export interface MigrateSqlServerDatabaseInput { + /** Name of the database */ + name?: string; + /** Name of the database at destination */ + restoreDatabaseName?: string; + /** The backup and restore folder */ + backupAndRestoreFolder?: string; + /** The list of database files */ + databaseFiles?: DatabaseFileInput[]; +} + +/** Database file specific information for input */ +export interface DatabaseFileInput { + /** Unique identifier for database file */ + id?: string; + /** Logical name of the file */ + logicalName?: string; + /** Operating-system full path of the file */ + physicalFullName?: string; + /** Suggested full path of the file for restoring */ + restoreFullName?: string; + /** Database file type */ + fileType?: DatabaseFileType; +} + +/** Server role migration result */ +export interface StartMigrationScenarioServerRoleResult { /** - * Source databases as a map from database name to database id - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of server role. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: { [propertyName: string]: string }; + readonly name?: string; /** - * Version of the target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerVersion?: string; + readonly state?: MigrationState; /** - * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerBrandVersion?: string; + readonly exceptionsAndWarnings?: ReportableException[]; } -/** - * Input for the task that validates connection to Azure SQL DB and target server requirements - */ -export interface ConnectToTargetSqlSqlDbSyncTaskInput { +/** Database Migration Resource properties for SQL Managed Instance. */ +export type DatabaseMigrationPropertiesSqlMi = DatabaseMigrationProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + kind: "SqlMi"; /** - * Connection information for source SQL Server + * Detailed migration status. Not included by default. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: SqlConnectionInfo; + readonly migrationStatusDetails?: MigrationStatusDetails; + /** Database collation to be used for the target database. */ + targetDatabaseCollation?: string; + /** Error message for migration provisioning failure, if any. */ + provisioningError?: string; + /** Backup configuration info. */ + backupConfiguration?: BackupConfiguration; + /** Offline configuration. */ + offlineConfiguration?: OfflineConfiguration; +}; + +/** Database Migration Resource properties for SQL Virtual Machine. */ +export type DatabaseMigrationPropertiesSqlVm = DatabaseMigrationProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + kind: "SqlVm"; + /** + * Detailed migration status. Not included by default. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly migrationStatusDetails?: MigrationStatusDetails; + /** Database collation to be used for the target database. */ + targetDatabaseCollation?: string; + /** Error message for migration provisioning failure, if any. */ + provisioningError?: string; + /** Backup configuration info. */ + backupConfiguration?: BackupConfiguration; + /** Offline configuration. */ + offlineConfiguration?: OfflineConfiguration; +}; + +/** Database Migration Resource for SQL Managed Instance. */ +export type DatabaseMigrationSqlMi = ProxyResource & { /** - * Connection information for target SQL DB + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: SqlConnectionInfo; -} + readonly systemData?: SystemData; + /** Database Migration Resource properties for SQL Managed Instance. */ + properties?: DatabaseMigrationPropertiesSqlMi; +}; -/** - * Properties for the task that validates connection to SQL DB and target server requirements for - * online migration - */ -export interface ConnectToTargetSqlSqlDbSyncTaskProperties { +/** Database Migration Resource for SQL Virtual Machine. */ +export type DatabaseMigrationSqlVm = ProxyResource & { /** - * Polymorphic Discriminator + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToTarget.SqlDb.Sync"; + readonly systemData?: SystemData; + /** Database Migration Resource properties for SQL Virtual Machine. */ + properties?: DatabaseMigrationPropertiesSqlVm; +}; + +/** Database Migration Resource. */ +export type DatabaseMigration = ProxyResource & { /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly systemData?: SystemData; + /** Database Migration Resource properties. */ + properties?: DatabaseMigrationPropertiesUnion; +}; + +/** A SQL Migration Service. */ +export type SqlMigrationService = TrackedResource & { /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Provisioning state to track the async operation status. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly provisioningState?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of the Integration runtime. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly integrationRuntimeState?: string; +}; + +/** A Database Migration Service resource */ +export type DataMigrationService = TrackedResource & { + /** HTTP strong entity tag value. Ignored if submitted */ + etag?: string; + /** The resource kind. Only 'vm' (the default) is supported. */ + kind?: string; + /** Service SKU */ + sku?: ServiceSku; /** - * Key value pairs of client data to attach meta data information to task + * The resource's provisioning state + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly provisioningState?: ServiceProvisioningState; + /** The public key of the service, used to encrypt secrets sent to the service */ + publicKey?: string; + /** The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should be joined */ + virtualSubnetId?: string; + /** The ID of the Microsoft.Network/networkInterfaces resource which the service have */ + virtualNicId?: string; + /** The time delay before the service is auto-stopped when idle. */ + autoStopDelay?: string; + /** Whether service resources should be deleted when stopped. (Turned on by default) */ + deleteResourcesOnStop?: boolean; +}; + +/** A project resource */ +export type Project = TrackedResource & { + /** HTTP strong entity tag value. This is ignored if submitted. */ + eTag?: string; + /** Source platform for the project */ + sourcePlatform?: ProjectSourcePlatform; + /** Field that defines the Azure active directory application info, used to connect to the target Azure resource */ + azureAuthenticationInfo?: string; + /** Target platform for the project */ + targetPlatform?: ProjectTargetPlatform; + /** + * UTC Date and time when project was created + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly creationTime?: Date; + /** Information for connecting to source */ + sourceConnectionInfo?: ConnectionInfoUnion; + /** Information for connecting to target */ + targetConnectionInfo?: ConnectionInfoUnion; + /** List of DatabaseInfo */ + databasesInfo?: DatabaseInfo[]; /** - * Task input + * The project's provisioning state + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToTargetSqlSqlDbSyncTaskInput; + readonly provisioningState?: ProjectProvisioningState; +}; + +/** Properties for task that migrates Schema for SQL Server databases to Azure SQL databases */ +export type MigrateSchemaSqlServerSqlDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "MigrateSchemaSqlServerSqlDb"; + /** Task input */ + input?: MigrateSchemaSqlServerSqlDbTaskInput; /** * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToTargetSqlDbTaskOutput[]; -} + readonly output?: MigrateSchemaSqlServerSqlDbTaskOutputUnion[]; + /** DateTime in UTC when the task was created */ + createdOn?: string; + /** Task id */ + taskId?: string; +}; -/** - * Input for the task that validates connection to SQL DB and target server requirements - */ -export interface ConnectToTargetSqlDbTaskInput { +/** Properties for the task that checks for OCI drivers. */ +export type CheckOCIDriverTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Service.Check.OCI"; + /** Input for the service task to check for OCI drivers. */ + input?: CheckOCIDriverTaskInput; /** - * Connection information for target SQL DB + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: SqlConnectionInfo; -} + readonly output?: CheckOCIDriverTaskOutput[]; +}; -/** - * Properties for the task that validates connection to SQL DB and target server requirements - */ -export interface ConnectToTargetSqlDbTaskProperties { +/** Properties for the task that uploads an OCI driver. */ +export type UploadOCIDriverTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Service.Upload.OCI"; + /** Input for the service task to upload an OCI driver. */ + input?: UploadOCIDriverTaskInput; /** - * Polymorphic Discriminator + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToTarget.SqlDb"; + readonly output?: UploadOCIDriverTaskOutput[]; +}; + +/** Properties for the task that installs an OCI driver. */ +export type InstallOCIDriverTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Service.Install.OCI"; + /** Input for the service task to install an OCI driver. */ + input?: InstallOCIDriverTaskInput; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly output?: InstallOCIDriverTaskOutput[]; +}; + +/** Properties for the task that validates the connection to and provides information about a MongoDB server */ +export type ConnectToMongoDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Connect.MongoDb"; + /** Describes a connection to a MongoDB data source */ + input?: MongoDbConnectionInfo; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * An array containing a single MongoDbClusterInfo object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly output?: MongoDbClusterInfo[]; +}; + +/** Properties for the task that validates connection to SQL Server and also validates source server requirements */ +export type ConnectToSourceSqlServerTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToSource.SqlServer"; + /** Task input */ + input?: ConnectToSourceSqlServerTaskInput; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; +}; + +/** Properties for the task that validates connection to SQL Server and source server requirements for online migration */ +export type ConnectToSourceSqlServerSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToSource.SqlServer.Sync"; + /** Task input */ + input?: ConnectToSourceSqlServerTaskInput; /** - * Key value pairs of client data to attach meta data information to task + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; +}; + +/** Properties for the task that validates connection to PostgreSQL server and source server requirements for online migration */ +export type ConnectToSourcePostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToSource.PostgreSql.Sync"; + /** Task input */ + input?: ConnectToSourcePostgreSqlSyncTaskInput; + /** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly output?: ConnectToSourcePostgreSqlSyncTaskOutput[]; +}; + +/** Properties for the task that validates MySQL database connection */ +export type ConnectToSourceMySqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToSource.MySql"; + /** Task input */ + input?: ConnectToSourceMySqlTaskInput; + /** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly output?: ConnectToSourceNonSqlTaskOutput[]; +}; + +/** Properties for the task that validates Oracle database connection */ +export type ConnectToSourceOracleSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToSource.Oracle.Sync"; + /** Task input */ + input?: ConnectToSourceOracleSyncTaskInput; /** - * Task input + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly output?: ConnectToSourceOracleSyncTaskOutput[]; +}; + +/** Properties for the task that validates connection to SQL DB and target server requirements */ +export type ConnectToTargetSqlDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.SqlDb"; + /** Task input */ input?: ConnectToTargetSqlDbTaskInput; /** * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly output?: ConnectToTargetSqlDbTaskOutput[]; -} +}; -/** - * Output for the task that validates Oracle database connection - */ -export interface ConnectToSourceOracleSyncTaskOutput { +/** Properties for the task that validates connection to SQL DB and target server requirements for online migration */ +export type ConnectToTargetSqlDbSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.SqlDb.Sync"; + /** Task input */ + input?: ConnectToTargetSqlDbSyncTaskInput; /** - * Version of the source server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerVersion?: string; + readonly output?: ConnectToTargetSqlDbTaskOutput[]; +}; + +/** Properties for the task that validates connection to Azure Database For PostgreSQL server and target server requirements for online migration */ +export type ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.AzureDbForPostgreSql.Sync"; + /** Task input */ + input?: ConnectToTargetAzureDbForPostgreSqlSyncTaskInput; /** - * List of schemas on source server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: string[]; + readonly output?: ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput[]; +}; + +/** Properties for the task that validates connection to Azure Database For PostgreSQL server and target server requirements for online migration for Oracle source. */ +export type ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync"; + /** Task input */ + input?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput; /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerBrandVersion?: string; + readonly output?: ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput[]; +}; + +/** Properties for the task that collects user tables for the given list of databases */ +export type GetUserTablesSqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetUserTables.Sql"; + /** Task input */ + input?: GetUserTablesSqlTaskInput; /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} + readonly output?: GetUserTablesSqlTaskOutput[]; +}; -/** - * Input for the task that validates Oracle database connection - */ -export interface ConnectToSourceOracleSyncTaskInput { +/** Properties for the task that collects user tables for the given list of databases */ +export type GetUserTablesSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetUserTables.AzureSqlDb.Sync"; + /** Task input */ + input?: GetUserTablesSqlSyncTaskInput; + /** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly output?: GetUserTablesSqlSyncTaskOutput[]; +}; + +/** Properties for the task that collects user tables for the given list of Oracle schemas */ +export type GetUserTablesOracleTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetUserTablesOracle"; + /** Task input */ + input?: GetUserTablesOracleTaskInput; /** - * Information for connecting to Oracle source + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: OracleConnectionInfo; -} + readonly output?: GetUserTablesOracleTaskOutput[]; +}; -/** - * Properties for the task that validates Oracle database connection - */ -export interface ConnectToSourceOracleSyncTaskProperties { +/** Properties for the task that collects user tables for the given list of databases */ +export type GetUserTablesPostgreSqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetUserTablesPostgreSql"; + /** Task input */ + input?: GetUserTablesPostgreSqlTaskInput; /** - * Polymorphic Discriminator + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToSource.Oracle.Sync"; + readonly output?: GetUserTablesPostgreSqlTaskOutput[]; +}; + +/** Properties for the task that collects user tables for the given list of databases */ +export type GetUserTablesMySqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetUserTablesMySql"; + /** Task input */ + input?: GetUserTablesMySqlTaskInput; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly output?: GetUserTablesMySqlTaskOutput[]; +}; + +/** Properties for the task that validates connection to Azure SQL Database Managed Instance */ +export type ConnectToTargetSqlMITaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.AzureSqlDbMI"; + /** Task input */ + input?: ConnectToTargetSqlMITaskInput; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly output?: ConnectToTargetSqlMITaskOutput[]; +}; + +/** Properties for the task that validates connection to Azure SQL Database Managed Instance */ +export type ConnectToTargetSqlMISyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.AzureSqlDbMI.Sync.LRS"; + /** Task input */ + input?: ConnectToTargetSqlMISyncTaskInput; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly output?: ConnectToTargetSqlMISyncTaskOutput[]; +}; + +/** Properties for the task that validates connection to Azure Database for MySQL and target server requirements */ +export type ConnectToTargetAzureDbForMySqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ConnectToTarget.AzureDbForMySql"; + /** Task input */ + input?: ConnectToTargetAzureDbForMySqlTaskInput; /** - * Key value pairs of client data to attach meta data information to task + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly output?: ConnectToTargetAzureDbForMySqlTaskOutput[]; +}; + +/** Properties for the task that migrates data between MongoDB data sources */ +export type MigrateMongoDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.MongoDb"; + /** Describes how a MongoDB data migration should be performed */ + input?: MongoDbMigrationSettings; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly output?: MongoDbProgressUnion[]; +}; + +/** Properties for task that migrates SQL Server databases to Azure SQL Database Managed Instance */ +export type MigrateSqlServerSqlMITaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.SqlServer.AzureSqlDbMI"; + /** Task input */ + input?: MigrateSqlServerSqlMITaskInput; /** - * Task input + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToSourceOracleSyncTaskInput; + readonly output?: MigrateSqlServerSqlMITaskOutputUnion[]; + /** task id */ + taskId?: string; +}; + +/** Properties for task that migrates SQL Server databases to Azure SQL Database Managed Instance sync scenario */ +export type MigrateSqlServerSqlMISyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS"; + /** Task input */ + input?: MigrateSqlServerSqlMISyncTaskInput; /** * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToSourceOracleSyncTaskOutput[]; -} + readonly output?: MigrateSqlServerSqlMISyncTaskOutputUnion[]; +}; -/** - * Output for the task that validates connection to PostgreSQL and source server requirements - */ -export interface ConnectToSourcePostgreSqlSyncTaskOutput { +/** Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database */ +export type MigrateSqlServerSqlDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.SqlServer.SqlDb"; + /** Task input */ + input?: MigrateSqlServerSqlDbTaskInput; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly output?: MigrateSqlServerSqlDbTaskOutputUnion[]; + /** task id */ + taskId?: string; + /** whether the task can be cloned or not */ + isCloneable?: boolean; +}; + +/** Properties for the task that migrates on-prem SQL Server databases to Azure SQL Database for online migrations */ +export type MigrateSqlServerSqlDbSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.SqlServer.AzureSqlDb.Sync"; + /** Task input */ + input?: MigrateSqlServerSqlDbSyncTaskInput; /** - * Version of the source server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerVersion?: string; + readonly output?: MigrateSqlServerSqlDbSyncTaskOutputUnion[]; +}; + +/** Properties for the task that migrates MySQL databases to Azure Database for MySQL for online migrations */ +export type MigrateMySqlAzureDbForMySqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.MySql.AzureDbForMySql.Sync"; + /** Task input */ + input?: MigrateMySqlAzureDbForMySqlSyncTaskInput; /** - * List of databases on source server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: string[]; + readonly output?: MigrateMySqlAzureDbForMySqlSyncTaskOutputUnion[]; +}; + +/** Properties for the task that migrates MySQL databases to Azure Database for MySQL for offline migrations */ +export type MigrateMySqlAzureDbForMySqlOfflineTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.MySql.AzureDbForMySql"; + /** Task input */ + input?: MigrateMySqlAzureDbForMySqlOfflineTaskInput; /** - * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerBrandVersion?: string; + readonly output?: MigrateMySqlAzureDbForMySqlOfflineTaskOutputUnion[]; +}; + +/** Properties for the task that migrates PostgreSQL databases to Azure Database for PostgreSQL for online migrations */ +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2"; + /** Task input */ + input?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput; /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} + readonly output?: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputUnion[]; + /** task id */ + taskId?: string; + /** DateTime in UTC when the task was created */ + createdOn?: string; +}; -/** - * Input for the task that validates connection to PostgreSQL and source server requirements - */ -export interface ConnectToSourcePostgreSqlSyncTaskInput { +/** Properties for the task that migrates Oracle to Azure Database for PostgreSQL for online migrations */ +export type MigrateOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.Oracle.AzureDbForPostgreSql.Sync"; + /** Task input */ + input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; /** - * Connection information for source PostgreSQL server + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: PostgreSqlConnectionInfo; -} + readonly output?: MigrateOracleAzureDbPostgreSqlSyncTaskOutputUnion[]; +}; -/** - * Properties for the task that validates connection to PostgreSQL server and source server - * requirements for online migration - */ -export interface ConnectToSourcePostgreSqlSyncTaskProperties { +/** Properties for task that validates migration input for SQL to Azure SQL DB sync migrations */ +export type ValidateMigrationInputSqlServerSqlDbSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ValidateMigrationInput.SqlServer.SqlDb.Sync"; + /** Task input */ + input?: ValidateSyncMigrationInputSqlServerTaskInput; /** - * Polymorphic Discriminator + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToSource.PostgreSql.Sync"; + readonly output?: ValidateSyncMigrationInputSqlServerTaskOutput[]; +}; + +/** Properties for task that validates migration input for SQL to Azure SQL Database Managed Instance */ +export type ValidateMigrationInputSqlServerSqlMITaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI"; + /** Task input */ + input?: ValidateMigrationInputSqlServerSqlMITaskInput; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly output?: ValidateMigrationInputSqlServerSqlMITaskOutput[]; +}; + +/** Properties for task that validates migration input for SQL to Azure SQL Database Managed Instance sync scenario */ +export type ValidateMigrationInputSqlServerSqlMISyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS"; + /** Task input */ + input?: ValidateMigrationInputSqlServerSqlMISyncTaskInput; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly output?: ValidateMigrationInputSqlServerSqlMISyncTaskOutput[]; +}; + +/** Properties for the task that validates a migration between MongoDB data sources */ +export type ValidateMongoDbTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Validate.MongoDb"; + /** Describes how a MongoDB data migration should be performed */ + input?: MongoDbMigrationSettings; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * An array containing a single MongoDbMigrationProgress object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly output?: MongoDbMigrationProgress[]; +}; + +/** Properties for the task that validates a migration for Oracle to Azure Database for PostgreSQL for online migrations */ +export type ValidateOracleAzureDbForPostgreSqlSyncTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Validate.Oracle.AzureDbPostgreSql.Sync"; + /** Input for the task that migrates Oracle databases to Azure Database for PostgreSQL for online migrations */ + input?: MigrateOracleAzureDbPostgreSqlSyncTaskInput; /** - * Key value pairs of client data to attach meta data information to task + * An array containing a single validation error response object + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly output?: ValidateOracleAzureDbPostgreSqlSyncTaskOutput[]; +}; + +/** Properties for the task that gets TDE certificates in Base64 encoded format. */ +export type GetTdeCertificatesSqlTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "GetTDECertificates.Sql"; + /** Task input */ + input?: GetTdeCertificatesSqlTaskInput; /** - * Task input + * Task output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToSourcePostgreSqlSyncTaskInput; + readonly output?: GetTdeCertificatesSqlTaskOutput[]; +}; + +/** Properties for task that migrates SSIS packages from SQL Server databases to Azure SQL Database Managed Instance. */ +export type MigrateSsisTaskProperties = ProjectTaskProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + taskType: "Migrate.Ssis"; + /** Task input */ + input?: MigrateSsisTaskInput; /** * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToSourcePostgreSqlSyncTaskOutput[]; -} + readonly output?: MigrateSsisTaskOutputUnion[]; +}; -/** - * Information about migration eligibility of a server object - */ -export interface MigrationEligibilityInfo { +/** Properties for the command that completes sync migration for a database. */ +export type MigrateSyncCompleteCommandProperties = CommandProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: "Migrate.Sync.Complete.Database"; + /** Command input */ + input?: MigrateSyncCompleteCommandInput; /** - * Whether object is eligible for migration or not. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Command output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly isEligibleForMigration?: boolean; + readonly output?: MigrateSyncCompleteCommandOutput; +}; + +/** Properties for the command that completes online migration for an Azure SQL Database Managed Instance. */ +export type MigrateMISyncCompleteCommandProperties = CommandProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: "Migrate.SqlServer.AzureDbSqlMi.Complete"; + /** Command input */ + input?: MigrateMISyncCompleteCommandInput; /** - * Information about eligibility failure for the server object. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Command output. This is ignored if submitted. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationMessages?: string[]; -} + readonly output?: MigrateMISyncCompleteCommandOutput; +}; -/** - * Contains the possible cases for ConnectToSourceSqlServerTaskOutput. - */ -export type ConnectToSourceSqlServerTaskOutputUnion = ConnectToSourceSqlServerTaskOutput | ConnectToSourceSqlServerTaskOutputAgentJobLevel | ConnectToSourceSqlServerTaskOutputLoginLevel | ConnectToSourceSqlServerTaskOutputDatabaseLevel | ConnectToSourceSqlServerTaskOutputTaskLevel; +/** Properties for the command that cancels a migration in whole or in part */ +export type MongoDbCancelCommand = CommandProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: "cancel"; + /** Command input */ + input?: MongoDbCommandInput; +}; -/** - * Output for the task that validates connection to SQL Server and also validates source server - * requirements - */ -export interface ConnectToSourceSqlServerTaskOutput { - /** - * Polymorphic Discriminator - */ - resultType: "ConnectToSourceSqlServerTaskOutput"; +/** Properties for the command that finishes a migration in whole or in part */ +export type MongoDbFinishCommand = CommandProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: "finish"; + /** Command input */ + input?: MongoDbFinishCommandInput; +}; + +/** Properties for the command that restarts a migration in whole or in part */ +export type MongoDbRestartCommand = CommandProperties & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + commandType: "restart"; + /** Command input */ + input?: MongoDbCommandInput; +}; + +/** A task resource */ +export type ProjectTask = Resource & { + /** HTTP strong entity tag value. This is ignored if submitted. */ + etag?: string; + /** Custom task properties */ + properties?: ProjectTaskPropertiesUnion; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; -} + readonly systemData?: SystemData; +}; -/** - * Agent Job level output for the task that validates connection to SQL Server and also validates - * source server requirements - */ -export interface ConnectToSourceSqlServerTaskOutputAgentJobLevel { +/** A file resource */ +export type ProjectFile = Resource & { + /** HTTP strong entity tag value. This is ignored if submitted. */ + etag?: string; + /** Custom file properties */ + properties?: ProjectFileProperties; /** - * Polymorphic Discriminator + * Metadata pertaining to creation and last modification of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "AgentJobLevelOutput"; + readonly systemData?: SystemData; +}; + +/** Describes a connection to a MongoDB data source */ +export type MongoDbConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "MongoDbConnectionInfo"; + /** A MongoDB connection string or blob container URL. The user name and password can be specified here or in the userName and password properties */ + connectionString: string; + /** Data source */ + dataSource?: string; + /** Whether to encrypt the connection */ + encryptConnection?: boolean; + /** server brand version */ + serverBrandVersion?: string; + enforceSSL?: boolean; + /** port for server */ + port?: number; + /** Additional connection settings */ + additionalSettings?: string; +}; + +/** Information for connecting to SQL database server */ +export type SqlConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "SqlConnectionInfo"; + /** Data source in the format Protocol:MachineName\SQLServerInstanceName,PortNumber */ + dataSource: string; + /** name of the server */ + serverName?: string; + /** port for server */ + port?: string; + /** Represents the ID of an HTTP resource represented by an Azure resource provider. */ + resourceId?: string; + /** Authentication type to use for connection */ + authentication?: AuthenticationType; + /** Whether to encrypt the connection */ + encryptConnection?: boolean; + /** Additional connection settings */ + additionalSettings?: string; + /** Whether to trust the server certificate */ + trustServerCertificate?: boolean; + /** Server platform type for connection */ + platform?: SqlSourcePlatform; +}; + +/** Information for connecting to MySQL server */ +export type MySqlConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "MySqlConnectionInfo"; + /** Name of the server */ + serverName: string; + /** Data source */ + dataSource?: string; + /** Port for Server */ + port: number; + /** Whether to encrypt the connection */ + encryptConnection?: boolean; +}; + +/** Information for connecting to Oracle server */ +export type OracleConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "OracleConnectionInfo"; + /** EZConnect or TNSName connection string. */ + dataSource: string; +}; + +/** Information for connecting to PostgreSQL server */ +export type PostgreSqlConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "PostgreSqlConnectionInfo"; + /** Name of the server */ + serverName: string; + /** Data source */ + dataSource?: string; + /** server version */ + serverVersion?: string; + /** Name of the database */ + databaseName?: string; + /** Port for Server */ + port: number; + /** Whether to encrypt the connection */ + encryptConnection?: boolean; + /** Whether to trust the server certificate */ + trustServerCertificate?: boolean; +}; + +/** Properties required to create a connection to Azure SQL database Managed instance */ +export type MiSqlConnectionInfo = ConnectionInfo & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + type: "MiSqlConnectionInfo"; + /** Resource id for Azure SQL database Managed instance */ + managedInstanceResourceId: string; +}; + +/** Task level output for the task that validates connection to SQL Server and also validates source server requirements */ +export type ConnectToSourceSqlServerTaskOutputTaskLevel = ConnectToSourceSqlServerTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TaskLevelOutput"; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source databases as a map from database name to database id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly databases?: string; /** - * Agent Job name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source logins as a map from login name to login id. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly name?: string; + readonly logins?: string; /** - * The type of Agent Job. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source agent jobs as a map from agent job name to id. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly jobCategory?: string; + readonly agentJobs?: string; /** - * The state of the original Agent Job. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Mapping from database name to TDE certificate name, if applicable + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly isEnabled?: boolean; + readonly databaseTdeCertificateMapping?: string; /** - * The owner of the Agent Job - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly jobOwner?: string; + readonly sourceServerVersion?: string; /** - * UTC Date and time when the Agent Job was last executed. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly lastExecutedOn?: Date; + readonly sourceServerBrandVersion?: string; /** * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly validationErrors?: ReportableException[]; +}; + +/** Database level output for the task that validates connection to SQL Server and also validates source server requirements */ +export type ConnectToSourceSqlServerTaskOutputDatabaseLevel = ConnectToSourceSqlServerTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Information about eligibility of agent job for migration. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly migrationEligibility?: MigrationEligibilityInfo; -} - -/** - * Login level output for the task that validates connection to SQL Server and also validates - * source server requirements - */ -export interface ConnectToSourceSqlServerTaskOutputLoginLevel { + readonly name?: string; /** - * Polymorphic Discriminator + * Size of the file in megabytes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "LoginLevelOutput"; + readonly sizeMB?: number; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The list of database files + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly databaseFiles?: DatabaseFileInfo[]; + /** + * SQL Server compatibility level of database + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly compatibilityLevel?: DatabaseCompatLevel; + /** + * State of the database + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly databaseState?: DatabaseState; +}; + +/** Login level output for the task that validates connection to SQL Server and also validates source server requirements */ +export type ConnectToSourceSqlServerTaskOutputLoginLevel = ConnectToSourceSqlServerTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "LoginLevelOutput"; /** * Login name. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly name?: string; /** - * The type of login. Possible values include: 'WindowsUser', 'WindowsGroup', 'SqlLogin', - * 'Certificate', 'AsymmetricKey', 'ExternalUser', 'ExternalGroup' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * The type of login. + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly loginType?: LoginType; /** * The default database for the login. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly defaultDatabase?: string; /** * The state of the login. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly isEnabled?: boolean; /** * Information about eligibility of login for migration. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly migrationEligibility?: MigrationEligibilityInfo; -} +}; -/** - * Database file specific information - */ -export interface DatabaseFileInfo { +/** Agent Job level output for the task that validates connection to SQL Server and also validates source server requirements */ +export type ConnectToSourceSqlServerTaskOutputAgentJobLevel = ConnectToSourceSqlServerTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "AgentJobLevelOutput"; /** - * Name of the database + * Agent Job name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseName?: string; + readonly name?: string; /** - * Unique identifier for database file + * The type of Agent Job. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - id?: string; + readonly jobCategory?: string; /** - * Logical name of the file + * The state of the original Agent Job. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - logicalName?: string; + readonly isEnabled?: boolean; /** - * Operating-system full path of the file + * The owner of the Agent Job + * NOTE: This property will not be serialized. It can only be populated by the server. */ - physicalFullName?: string; + readonly jobOwner?: string; /** - * Suggested full path of the file for restoring + * UTC Date and time when the Agent Job was last executed. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - restoreFullName?: string; + readonly lastExecutedOn?: Date; /** - * Database file type. Possible values include: 'Rows', 'Log', 'Filestream', 'NotSupported', - * 'Fulltext' + * Validation errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fileType?: DatabaseFileType; + readonly validationErrors?: ReportableException[]; /** - * Size of the file in megabytes + * Information about eligibility of agent job for migration. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sizeMB?: number; -} + readonly migrationEligibility?: MigrationEligibilityInfo; +}; -/** - * Database level output for the task that validates connection to SQL Server and also validates - * source server requirements - */ -export interface ConnectToSourceSqlServerTaskOutputDatabaseLevel { - /** - * Polymorphic Discriminator - */ - resultType: "DatabaseLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; - /** - * Database name - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly name?: string; - /** - * Size of the file in megabytes - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly sizeMB?: number; - /** - * The list of database files - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseFiles?: DatabaseFileInfo[]; - /** - * SQL Server compatibility level of database. Possible values include: 'CompatLevel80', - * 'CompatLevel90', 'CompatLevel100', 'CompatLevel110', 'CompatLevel120', 'CompatLevel130', - * 'CompatLevel140' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly compatibilityLevel?: DatabaseCompatLevel; - /** - * State of the database. Possible values include: 'Online', 'Restoring', 'Recovering', - * 'RecoveryPending', 'Suspect', 'Emergency', 'Offline', 'Copying', 'OfflineSecondary' - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseState?: DatabaseState; -} +/** Input for task that migrates Schema for SQL Server databases to Azure SQL databases */ +export type MigrateSchemaSqlServerSqlDbTaskInput = SqlMigrationTaskInput & { + /** Databases to migrate */ + selectedDatabases: MigrateSchemaSqlServerSqlDbDatabaseInput[]; + /** encrypted key for secure fields */ + encryptedKeyForSecureFields?: string; + /** Migration start time */ + startedOn?: string; +}; -/** - * Task level output for the task that validates connection to SQL Server and also validates source - * server requirements - */ -export interface ConnectToSourceSqlServerTaskOutputTaskLevel { - /** - * Polymorphic Discriminator - */ - resultType: "TaskLevelOutput"; - /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly id?: string; +/** Input for the task that migrates on-prem SQL Server databases to Azure SQL Database for online migrations */ +export type MigrateSqlServerSqlDbSyncTaskInput = SqlMigrationTaskInput & { + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlDbSyncDatabaseInput[]; + /** Validation options */ + validationOptions?: MigrationValidationOptions; +}; + +/** Input for the task that migrates on-prem SQL Server databases to Azure SQL Database */ +export type MigrateSqlServerSqlDbTaskInput = SqlMigrationTaskInput & { + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlDbDatabaseInput[]; /** - * Source databases as a map from database name to database id - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Options for enabling various post migration validations. Available options, + * 1.) Data Integrity Check: Performs a checksum based comparison on source and target tables after the migration to ensure the correctness of the data. + * 2.) Schema Validation: Performs a thorough schema comparison between the source and target tables and provides a list of differences between the source and target database, 3.) Query Analysis: Executes a set of queries picked up automatically either from the Query Plan Cache or Query Store and execute them and compares the execution time between the source and target database. */ - readonly databases?: { [propertyName: string]: string }; + validationOptions?: MigrationValidationOptions; + /** Date and time relative to UTC when the migration was started on */ + startedOn?: string; + /** encrypted key for secure fields */ + encryptedKeyForSecureFields?: string; +}; + +/** Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance. */ +export type MigrateSqlServerSqlMITaskInput = SqlMigrationTaskInput & { + /** Databases to migrate */ + selectedDatabases: MigrateSqlServerSqlMIDatabaseInput[]; + /** Date and time relative to UTC when the migration was started on */ + startedOn?: string; + /** Logins to migrate. */ + selectedLogins?: string[]; + /** Agent Jobs to migrate. */ + selectedAgentJobs?: string[]; + /** Backup file share information for all selected databases. */ + backupFileShare?: FileShare; + /** SAS URI of Azure Storage Account Container to be used for storing backup files. */ + backupBlobShare: BlobShare; + /** Backup Mode to specify whether to use existing backup or create new backup. If using existing backups, backup file paths are required to be provided in selectedDatabases. */ + backupMode?: BackupMode; + /** Azure Active Directory domain name in the format of 'contoso.com' for federated Azure AD or 'contoso.onmicrosoft.com' for managed domain, required if and only if Windows logins are selected */ + aadDomainName?: string; +}; + +/** Input for task that migrates SSIS packages from SQL Server to Azure SQL Database Managed Instance. */ +export type MigrateSsisTaskInput = SqlMigrationTaskInput & { + /** SSIS package migration information. */ + ssisMigrationInfo: SsisMigrationInfo; +}; + +export type MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel = MigrateSchemaSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * Source logins as a map from login name to login id. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Overall state of the schema migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly logins?: { [propertyName: string]: string }; + readonly state?: MigrationState; /** - * Source agent jobs as a map from agent job name to id. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly agentJobs?: { [propertyName: string]: string }; + readonly startedOn?: Date; /** - * Mapping from database name to TDE certificate name, if applicable - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databaseTdeCertificateMapping?: { [propertyName: string]: string }; + readonly endedOn?: Date; /** * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly sourceServerVersion?: string; /** * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly sourceServerBrandVersion?: string; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Input for the task that validates connection to SQL Server and also validates source server - * requirements - */ -export interface ConnectToSourceSqlServerTaskInput { - /** - * Connection information for Source SQL Server - */ - sourceConnectionInfo: SqlConnectionInfo; - /** - * Permission group for validations. Possible values include: 'Default', - * 'MigrationFromSqlServerToAzureDB', 'MigrationFromSqlServerToAzureMI', - * 'MigrationFromMySQLToAzureDBForMySQL' - */ - checkPermissionsGroup?: ServerLevelPermissionsGroup; - /** - * Flag for whether to collect databases from source server. Default value: true. - */ - collectDatabases?: boolean; - /** - * Flag for whether to collect logins from source server. Default value: false. - */ - collectLogins?: boolean; - /** - * Flag for whether to collect agent jobs from source server. Default value: false. - */ - collectAgentJobs?: boolean; - /** - * Flag for whether to collect TDE Certificate names from source server. Default value: false. + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - collectTdeCertificateInfo?: boolean; + readonly targetServerVersion?: string; /** - * Flag for whether to validate SSIS catalog is reachable on the source server. Default value: - * false. + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - validateSsisCatalogOnly?: boolean; -} + readonly targetServerBrandVersion?: string; +}; -/** - * Properties for the task that validates connection to SQL Server and source server requirements - * for online migration - */ -export interface ConnectToSourceSqlServerSyncTaskProperties { +export type MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel = MigrateSchemaSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Polymorphic Discriminator + * The name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToSource.SqlServer.Sync"; + readonly databaseName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * State of the schema migration for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly state?: MigrationState; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Schema migration stage for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly stage?: SchemaMigrationStage; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly startedOn?: Date; /** - * Key value pairs of client data to attach meta data information to task + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly endedOn?: Date; /** - * Task input + * Prefix string to use for querying errors for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToSourceSqlServerTaskInput; + readonly databaseErrorResultPrefix?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Prefix string to use for querying schema errors for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; -} - -/** - * Properties for the task that validates connection to SQL Server and also validates source server - * requirements - */ -export interface ConnectToSourceSqlServerTaskProperties { + readonly schemaErrorResultPrefix?: string; /** - * Polymorphic Discriminator + * Number of successful operations for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToSource.SqlServer"; + readonly numberOfSuccessfulOperations?: number; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of failed operations for this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly numberOfFailedOperations?: number; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Identifier for the file resource containing the schema of this database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly fileId?: string; +}; + +export type MigrateSchemaSqlServerSqlDbTaskOutputError = MigrateSchemaSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "SchemaErrorOutput"; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Schema command which failed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly commandText?: string; /** - * Key value pairs of client data to attach meta data information to task + * Reason of failure + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly errorText?: string; +}; + +export type MigrateSchemaSqlTaskOutputError = MigrateSchemaSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * Task input + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToSourceSqlServerTaskInput; + readonly error?: ReportableException; +}; + +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToSourceSqlServerTaskOutputUnion[]; -} - -/** - * Describes a MongoDB shard key - */ -export interface MongoDbShardKeyInfo { + readonly startedOn?: Date; /** - * The fields within the shard key + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fields: MongoDbShardKeyField[]; + readonly endedOn?: Date; /** - * Whether the shard key is unique + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isUnique: boolean; -} - -/** - * Describes a database or collection within a MongoDB data source - */ -export interface MongoDbObjectInfo { + readonly sourceServerVersion?: string; /** - * The average document size, or -1 if the average size is unknown + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - averageDocumentSize: number; + readonly sourceServer?: string; /** - * The estimated total data size, in bytes, or -1 if the size is unknown. + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - dataSize: number; + readonly targetServerVersion?: string; /** - * The estimated total number of documents, or -1 if the document count is unknown + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - documentCount: number; + readonly targetServer?: string; +}; + +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * The unqualified name of the database or collection + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name: string; + readonly databaseName?: string; /** - * The qualified name of the database or collection. For a collection, this is the - * database-qualified name. + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - qualifiedName: string; -} - -/** - * Describes a supported collection within a MongoDB database - */ -export interface MongoDbCollectionInfo extends MongoDbObjectInfo { + readonly startedOn?: Date; /** - * The name of the database containing the collection + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseName: string; + readonly endedOn?: Date; /** - * Whether the collection is a capped collection (i.e. whether it has a fixed size and acts like - * a circular buffer) + * Migration state that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isCapped: boolean; + readonly migrationState?: SyncDatabaseMigrationReportingState; /** - * Whether the collection is system collection + * Number of incoming changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isSystemCollection: boolean; + readonly incomingChanges?: number; /** - * Whether the collection is a view of another collection + * Number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - isView: boolean; + readonly appliedChanges?: number; /** - * The shard key on the collection, or null if the collection is not sharded + * Number of cdc inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - shardKey?: MongoDbShardKeyInfo; + readonly cdcInsertCounter?: number; /** - * Whether the database has sharding enabled. Note that the migration task will enable sharding - * on the target if necessary. + * Number of cdc deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - supportsSharding: boolean; + readonly cdcDeleteCounter?: number; /** - * The name of the collection that this is a view of, if IsView is true + * Number of cdc updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - viewOf?: string; -} - -/** - * Describes a database within a MongoDB data source - */ -export interface MongoDbDatabaseInfo extends MongoDbObjectInfo { + readonly cdcUpdateCounter?: number; /** - * A list of supported collections in a MongoDB database + * Number of tables completed in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - collections: MongoDbCollectionInfo[]; + readonly fullLoadCompletedTables?: number; /** - * Whether the database has sharding enabled. Note that the migration task will enable sharding - * on the target if necessary. + * Number of tables loading in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - supportsSharding: boolean; -} - -/** - * Describes a MongoDB data source - */ -export interface MongoDbClusterInfo { + readonly fullLoadLoadingTables?: number; /** - * A list of non-system databases in the cluster + * Number of tables queued in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databases: MongoDbDatabaseInfo[]; + readonly fullLoadQueuedTables?: number; /** - * Whether the cluster supports sharded collections + * Number of tables errored in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - supportsSharding: boolean; + readonly fullLoadErroredTables?: number; /** - * The type of data source. Possible values include: 'BlobContainer', 'CosmosDb', 'MongoDb' + * Indicates if initial load (full load) has been completed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - type: MongoDbClusterType; + readonly initializationCompleted?: boolean; /** - * The version of the data source in the form x.y.z (e.g. 3.6.7). Not used if Type is - * BlobContainer. + * CDC apply latency + * NOTE: This property will not be serialized. It can only be populated by the server. */ - version: string; -} + readonly latency?: number; +}; -/** - * Properties for the task that validates the connection to and provides information about a - * MongoDB server - */ -export interface ConnectToMongoDbTaskProperties { +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * Polymorphic Discriminator + * Name of the table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Connect.MongoDb"; + readonly tableName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly databaseName?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly cdcInsertCounter?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly cdcUpdateCounter?: string; /** - * Key value pairs of client data to attach meta data information to task + * Number of applied deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; - input?: MongoDbConnectionInfo; + readonly cdcDeleteCounter?: string; /** - * An array containing a single MongoDbClusterInfo object - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Estimate to finish full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: MongoDbClusterInfo[]; -} - -/** - * A task resource - */ -export interface ProjectTask extends Resource { + readonly fullLoadEstFinishTime?: Date; /** - * HTTP strong entity tag value. This is ignored if submitted. + * Full load start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - etag?: string; + readonly fullLoadStartedOn?: Date; /** - * Custom task properties + * Full load end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - properties?: ProjectTaskPropertiesUnion; -} - -/** - * An Azure SKU instance - */ -export interface ServiceSku { + readonly fullLoadEndedOn?: Date; /** - * The unique name of the SKU, such as 'P3' + * Number of rows applied in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly fullLoadTotalRows?: number; /** - * The tier of the SKU, such as 'Basic', 'General Purpose', or 'Business Critical' + * Current state of the table migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tier?: string; + readonly state?: SyncTableMigrationState; /** - * The SKU family, used when the service has multiple performance classes within a tier, such as - * 'A', 'D', etc. for virtual machines + * Total number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - family?: string; + readonly totalChangesApplied?: number; /** - * The size of the SKU, used when the name alone does not denote a service size or when a SKU has - * multiple performance classes within a family, e.g. 'A1' for virtual machines + * Number of data errors occurred + * NOTE: This property will not be serialized. It can only be populated by the server. */ - size?: string; + readonly dataErrorsCounter?: number; /** - * The capacity of the SKU, if it supports scaling + * Last modified time on target + * NOTE: This property will not be serialized. It can only be populated by the server. */ - capacity?: number; -} + readonly lastModifiedTime?: Date; +}; -/** - * A Database Migration Service resource - */ -export interface DataMigrationService extends TrackedResource { +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputError = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; + /** + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ReportableException; +}; + +export type MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError = MigrateMySqlAzureDbForMySqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelErrorOutput"; + /** Error message */ + errorMessage?: string; + /** List of error events. */ + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * HTTP strong entity tag value. Ignored if submitted + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - etag?: string; + readonly startedOn?: Date; /** - * The resource kind. Only 'vm' (the default) is supported. + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - kind?: string; + readonly endedOn?: Date; /** - * The resource's provisioning state. Possible values include: 'Accepted', 'Deleting', - * 'Deploying', 'Stopped', 'Stopping', 'Starting', 'FailedToStart', 'FailedToStop', 'Succeeded', - * 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: ServiceProvisioningState; + readonly sourceServerVersion?: string; /** - * The public key of the service, used to encrypt secrets sent to the service + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - publicKey?: string; + readonly sourceServer?: string; /** - * The ID of the Microsoft.Network/virtualNetworks/subnets resource to which the service should - * be joined + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - virtualSubnetId: string; + readonly targetServerVersion?: string; /** - * Service SKU + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sku?: ServiceSku; -} - -/** - * A resource type and proposed name - */ -export interface NameAvailabilityRequest { + readonly targetServer?: string; /** - * The proposed resource name + * Source server type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly sourceServerType?: ScenarioSource; /** - * The resource type chain (e.g. virtualMachines/extensions) + * Target server type. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - type?: string; -} - -/** - * Project Database Details - */ -export interface DatabaseInfo { + readonly targetServerType?: ScenarioTarget; /** - * Name of the database + * Migration status + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceDatabaseName: string; -} + readonly state?: ReplicateMigrationState; + /** Number of databases to include */ + databaseCount?: number; +}; -/** - * A project resource - */ -export interface Project extends TrackedResource { +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Source platform for the project. Possible values include: 'SQL', 'MySQL', 'PostgreSql', - * 'MongoDb', 'Unknown' + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourcePlatform: ProjectSourcePlatform; + readonly databaseName?: string; /** - * Target platform for the project. Possible values include: 'SQLDB', 'SQLMI', 'AzureDbForMySql', - * 'AzureDbForPostgreSql', 'MongoDb', 'Unknown' + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetPlatform: ProjectTargetPlatform; + readonly startedOn?: Date; /** - * UTC Date and time when project was created - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly creationTime?: Date; + readonly endedOn?: Date; /** - * Information for connecting to source + * Migration state that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo?: ConnectionInfoUnion; + readonly migrationState?: SyncDatabaseMigrationReportingState; /** - * Information for connecting to target + * Number of incoming changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo?: ConnectionInfoUnion; + readonly incomingChanges?: number; /** - * List of DatabaseInfo + * Number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databasesInfo?: DatabaseInfo[]; + readonly appliedChanges?: number; /** - * The project's provisioning state. Possible values include: 'Deleting', 'Succeeded' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of cdc inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly provisioningState?: ProjectProvisioningState; -} - -/** - * Error information. - */ -export interface ApiError { + readonly cdcInsertCounter?: number; /** - * Error information in OData format + * Number of cdc deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - error?: ODataError; -} - -/** - * File storage information. - */ -export interface FileStorageInfo { + readonly cdcDeleteCounter?: number; /** - * A URI that can be used to access the file content. + * Number of cdc updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - uri?: string; - headers?: { [propertyName: string]: string }; -} - -/** - * Localized display text - */ -export interface ServiceOperationDisplay { + readonly cdcUpdateCounter?: number; /** - * The localized resource provider name + * Number of tables completed in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - provider?: string; + readonly fullLoadCompletedTables?: number; /** - * The localized resource type name + * Number of tables loading in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resource?: string; + readonly fullLoadLoadingTables?: number; /** - * The localized operation name + * Number of tables queued in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - operation?: string; + readonly fullLoadQueuedTables?: number; /** - * The localized operation description + * Number of tables errored in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - description?: string; -} - -/** - * Description of an action supported by the Database Migration Service - */ -export interface ServiceOperation { + readonly fullLoadErroredTables?: number; /** - * The fully qualified action name, e.g. Microsoft.DataMigration/services/read + * Indicates if initial load (full load) has been completed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly initializationCompleted?: boolean; /** - * Localized display text + * CDC apply latency + * NOTE: This property will not be serialized. It can only be populated by the server. */ - display?: ServiceOperationDisplay; -} + readonly latency?: number; +}; -/** - * The name of the quota - */ -export interface QuotaName { - /** - * The localized name of the quota - */ - localizedValue?: string; +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * The unlocalized name (or ID) of the quota + * Name of the table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - value?: string; -} - -/** - * Describes a quota for or usage details about a resource - */ -export interface Quota { + readonly tableName?: string; /** - * The current value of the quota. If null or missing, the current value cannot be determined in - * the context of the request. + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - currentValue?: number; + readonly databaseName?: string; /** - * The resource ID of the quota object + * Number of applied inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - id?: string; + readonly cdcInsertCounter?: number; /** - * The maximum value of the quota. If null or missing, the quota has no maximum, in which case it - * merely tracks usage. + * Number of applied updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - limit?: number; + readonly cdcUpdateCounter?: number; /** - * The name of the quota + * Number of applied deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: QuotaName; + readonly cdcDeleteCounter?: number; /** - * The unit for the quota, such as Count, Bytes, BytesPerSecond, etc. + * Estimate to finish full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - unit?: string; -} - -/** - * Indicates whether a proposed resource name is available - */ -export interface NameAvailabilityResponse { + readonly fullLoadEstFinishTime?: Date; /** - * If true, the name is valid and available. If false, 'reason' describes why not. + * Full load start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - nameAvailable?: boolean; + readonly fullLoadStartedOn?: Date; /** - * The reason why the name is not available, if nameAvailable is false. Possible values include: - * 'AlreadyExists', 'Invalid' + * Full load end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - reason?: NameCheckFailureReason; + readonly fullLoadEndedOn?: Date; /** - * The localized reason why the name is not available, if nameAvailable is false + * Number of rows applied in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - message?: string; -} - -/** - * SKU name, tier, etc. - */ -export interface AvailableServiceSkuSku { + readonly fullLoadTotalRows?: number; /** - * The name of the SKU + * Current state of the table migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly state?: SyncTableMigrationState; /** - * SKU family + * Total number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - family?: string; + readonly totalChangesApplied?: number; /** - * SKU size + * Number of data errors occurred + * NOTE: This property will not be serialized. It can only be populated by the server. */ - size?: string; + readonly dataErrorsCounter?: number; /** - * The tier of the SKU, such as "Basic", "General Purpose", or "Business Critical" + * Last modified time on target + * NOTE: This property will not be serialized. It can only be populated by the server. */ - tier?: string; -} + readonly lastModifiedTime?: Date; +}; -/** - * A description of the scaling capacities of the SKU - */ -export interface AvailableServiceSkuCapacity { +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * The minimum capacity, usually 0 or 1. + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - minimum?: number; + readonly error?: ReportableException; + /** List of error events */ + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +export type MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError = MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelErrorOutput"; + /** Error message */ + errorMessage?: string; + /** List of error events. */ + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +export type MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * The maximum capacity + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - maximum?: number; + readonly startedOn?: Date; /** - * The default capacity + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - default?: number; + readonly endedOn?: Date; /** - * The scalability approach. Possible values include: 'none', 'manual', 'automatic' + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - scaleType?: ServiceScalability; -} - -/** - * Describes the available service SKU. - */ -export interface AvailableServiceSku { + readonly sourceServerVersion?: string; /** - * The resource type, including the provider namespace + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resourceType?: string; + readonly sourceServer?: string; /** - * SKU name, tier, etc. + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sku?: AvailableServiceSkuSku; + readonly targetServerVersion?: string; /** - * A description of the scaling capacities of the SKU + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - capacity?: AvailableServiceSkuCapacity; -} - -/** - * Service health status - */ -export interface DataMigrationServiceStatusResponse { + readonly targetServer?: string; /** - * The DMS instance agent version + * Count of databases + * NOTE: This property will not be serialized. It can only be populated by the server. */ - agentVersion?: string; + readonly databaseCount?: number; +}; + +export type MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * The machine-readable status, such as 'Initializing', 'Offline', 'Online', 'Deploying', - * 'Deleting', 'Stopped', 'Stopping', 'Starting', 'FailedToStart', 'FailedToStop' or 'Failed' + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - status?: string; + readonly databaseName?: string; /** - * The services virtual machine size, such as 'Standard_D2_v2' + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - vmSize?: string; + readonly startedOn?: Date; /** - * The list of supported task types + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - supportedTaskTypes?: string[]; -} - -/** - * Describes scaling information of a SKU. - */ -export interface ResourceSkuRestrictions { + readonly endedOn?: Date; /** - * The type of restrictions. Possible values include: 'location' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration state that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: ResourceSkuRestrictionsType; + readonly migrationState?: SyncDatabaseMigrationReportingState; /** - * The value of restrictions. If the restriction type is set to location. This would be different - * locations where the SKU is restricted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of incoming changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly values?: string[]; + readonly incomingChanges?: number; /** - * The reason code for restriction. Possible values include: 'QuotaId', - * 'NotAvailableForSubscription' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly reasonCode?: ResourceSkuRestrictionsReasonCode; -} - -/** - * Describes The SKU capabilities object. - */ -export interface ResourceSkuCapabilities { + readonly appliedChanges?: number; /** - * An invariant to describe the feature. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of cdc inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly name?: string; + readonly cdcInsertCounter?: number; /** - * An invariant if the feature is measured by quantity. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of cdc deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: string; -} - -/** - * Describes metadata for retrieving price info. - */ -export interface ResourceSkuCosts { + readonly cdcDeleteCounter?: number; /** - * Used for querying price from commerce. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of cdc updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly meterID?: string; + readonly cdcUpdateCounter?: number; /** - * The multiplier is needed to extend the base metered cost. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of tables completed in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly quantity?: number; + readonly fullLoadCompletedTables?: number; /** - * An invariant to show the extended unit. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of tables loading in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly extendedUnit?: string; -} - -/** - * Describes scaling information of a SKU. - */ -export interface ResourceSkuCapacity { + readonly fullLoadLoadingTables?: number; /** - * The minimum capacity. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of tables queued in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly minimum?: number; + readonly fullLoadQueuedTables?: number; /** - * The maximum capacity. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of tables errored in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly maximum?: number; + readonly fullLoadErroredTables?: number; /** - * The default capacity. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Indicates if initial load (full load) has been completed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly default?: number; + readonly initializationCompleted?: boolean; /** - * The scale type applicable to the SKU. Possible values include: 'Automatic', 'Manual', 'None' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * CDC apply latency + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly scaleType?: ResourceSkuCapacityScaleType; -} + readonly latency?: number; +}; -/** - * Describes an available DMS SKU. - */ -export interface ResourceSku { +export type MigrateSqlServerSqlDbSyncTaskOutputTableLevel = MigrateSqlServerSqlDbSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * The type of resource the SKU applies to. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resourceType?: string; + readonly tableName?: string; /** - * The name of SKU. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly name?: string; + readonly databaseName?: string; /** - * Specifies the tier of DMS in a scale set. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly tier?: string; + readonly cdcInsertCounter?: number; /** - * The Size of the SKU. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly size?: string; + readonly cdcUpdateCounter?: number; /** - * The Family of this particular SKU. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly family?: string; + readonly cdcDeleteCounter?: number; /** - * The Kind of resources that are supported in this SKU. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Estimate to finish full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly kind?: string; + readonly fullLoadEstFinishTime?: Date; /** - * Not used. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Full load start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly capacity?: ResourceSkuCapacity; + readonly fullLoadStartedOn?: Date; /** - * The set of locations that the SKU is available. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Full load end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly locations?: string[]; + readonly fullLoadEndedOn?: Date; /** - * The api versions that support this SKU. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of rows applied in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly apiVersions?: string[]; + readonly fullLoadTotalRows?: number; /** - * Metadata for retrieving price info. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of the table migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly costs?: ResourceSkuCosts[]; + readonly state?: SyncTableMigrationState; /** - * A name value pair to describe the capability. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Total number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly capabilities?: ResourceSkuCapabilities[]; + readonly totalChangesApplied?: number; /** - * The restrictions because of which SKU cannot be used. This is empty if there are no - * restrictions. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of data errors occurred + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly restrictions?: ResourceSkuRestrictions[]; -} + readonly dataErrorsCounter?: number; + /** + * Last modified time on target + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastModifiedTime?: Date; +}; -/** - * Input for the task that validates MySQL database connection - */ -export interface ConnectToSourceMySqlTaskInput { +export type MigrateSqlServerSqlDbSyncTaskOutputError = MigrateSqlServerSqlDbSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * Information for connecting to MySQL source + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - sourceConnectionInfo: MySqlConnectionInfo; + readonly error?: ReportableException; +}; + +export type MigrateSqlServerSqlDbSyncTaskOutputDatabaseError = MigrateSqlServerSqlDbSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelErrorOutput"; + /** Error message */ + errorMessage?: string; + /** List of error events. */ + events?: SyncMigrationDatabaseErrorEvent[]; +}; + +export type MigrateSqlServerSqlDbTaskOutputMigrationLevel = MigrateSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * Target Platform for the migration. Possible values include: 'SqlServer', 'AzureDbForMySQL' + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetPlatform?: MySqlTargetPlatformType; + readonly startedOn?: Date; /** - * Permission group for validations. Possible values include: 'Default', - * 'MigrationFromSqlServerToAzureDB', 'MigrationFromSqlServerToAzureMI', - * 'MigrationFromMySQLToAzureDBForMySQL' + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - checkPermissionsGroup?: ServerLevelPermissionsGroup; -} - -/** - * Server properties for MySQL type source - */ -export interface ServerProperties { + readonly endedOn?: Date; /** - * Name of the server platform - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Duration of task execution in seconds. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverPlatform?: string; + readonly durationInSeconds?: number; /** - * Name of the server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current status of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverName?: string; + readonly status?: MigrationStatus; /** - * Version of the database server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverVersion?: string; + readonly statusMessage?: string; /** - * Edition of the database server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverEdition?: string; + readonly message?: string; /** - * Version of the operating system - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Selected databases as a map from database name to database id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverOperatingSystemVersion?: string; + readonly databases?: string; /** - * Number of databases in the server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Summary of database results in the migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverDatabaseCount?: number; -} - -/** - * Output for connect to MySQL type source - */ -export interface ConnectToSourceNonSqlTaskOutput { + readonly databaseSummary?: string; + /** Migration Validation Results */ + migrationValidationResult?: MigrationValidationResult; + /** Migration Report Result, provides unique url for downloading your migration report. */ + migrationReportResult?: MigrationReportResult; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly sourceServerVersion?: string; /** - * Server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly sourceServerBrandVersion?: string; /** - * Server properties - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly serverProperties?: ServerProperties; + readonly targetServerVersion?: string; /** - * List of databases on the server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databases?: string[]; + readonly targetServerBrandVersion?: string; /** - * Validation errors associated with the task - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} + readonly exceptionsAndWarnings?: ReportableException[]; +}; -/** - * Properties for the task that validates MySQL database connection - */ -export interface ConnectToSourceMySqlTaskProperties { +export type MigrateSqlServerSqlDbTaskOutputDatabaseLevel = MigrateSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Polymorphic Discriminator + * Name of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "ConnectToSource.MySql"; + readonly databaseName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly startedOn?: Date; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly endedOn?: Date; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly state?: MigrationState; /** - * Key value pairs of client data to attach meta data information to task + * Migration stage that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly stage?: DatabaseMigrationStage; + /** + * Status message + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly statusMessage?: string; /** - * Task input + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: ConnectToSourceMySqlTaskInput; + readonly message?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of objects + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: ConnectToSourceNonSqlTaskOutput[]; -} - -/** - * Settings for migrating schema from source to target - */ -export interface SchemaMigrationSetting { + readonly numberOfObjects?: number; /** - * Option on how to migrate the schema. Possible values include: 'None', 'ExtractFromSource', - * 'UseStorageFile' + * Number of successfully completed objects + * NOTE: This property will not be serialized. It can only be populated by the server. */ - schemaOption?: SchemaMigrationOption; + readonly numberOfObjectsCompleted?: number; /** - * Resource Identifier of a file resource containing the uploaded schema file + * Number of database/object errors. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fileId?: string; -} - -/** - * Database input for migrate schema Sql Server to Azure SQL Server scenario - */ -export interface MigrateSchemaSqlServerSqlDbDatabaseInput { + readonly errorCount?: number; /** - * Name of source database + * Wildcard string prefix to use for querying all errors of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly errorPrefix?: string; /** - * Name of target database + * Wildcard string prefix to use for querying all sub-tem results of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetDatabaseName?: string; + readonly resultPrefix?: string; /** - * Database schema migration settings + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - schemaSetting?: SchemaMigrationSetting; -} - -/** - * Input for task that migrates Schema for SQL Server databases to Azure SQL databases - */ -export interface MigrateSchemaSqlServerSqlDbTaskInput extends SqlMigrationTaskInput { + readonly exceptionsAndWarnings?: ReportableException[]; /** - * Databases to migrate + * Summary of object results in the migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedDatabases: MigrateSchemaSqlServerSqlDbDatabaseInput[]; -} - -/** - * Contains the possible cases for MigrateSchemaSqlServerSqlDbTaskOutput. - */ -export type MigrateSchemaSqlServerSqlDbTaskOutputUnion = MigrateSchemaSqlServerSqlDbTaskOutput | MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel | MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel | MigrateSchemaSqlServerSqlDbTaskOutputError | MigrateSchemaSqlTaskOutputError; + readonly objectSummary?: string; +}; -/** - * Output for the task that migrates Schema for SQL Server databases to Azure SQL databases - */ -export interface MigrateSchemaSqlServerSqlDbTaskOutput { +export type MigrateSqlServerSqlDbTaskOutputTableLevel = MigrateSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * Polymorphic Discriminator + * Name of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "MigrateSchemaSqlServerSqlDbTaskOutput"; + readonly objectName?: string; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; -} - -/** - * Properties for task that migrates Schema for SQL Server databases to Azure SQL databases - */ -export interface MigrateSchemaSqlServerSqlDbTaskProperties { + readonly startedOn?: Date; /** - * Polymorphic Discriminator + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "MigrateSchemaSqlServerSqlDb"; + readonly endedOn?: Date; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly state?: MigrationState; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly statusMessage?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly itemsCount?: number; /** - * Key value pairs of client data to attach meta data information to task + * Number of successfully completed items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; + readonly itemsCompletedCount?: number; /** - * Task input + * Wildcard string prefix to use for querying all errors of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MigrateSchemaSqlServerSqlDbTaskInput; + readonly errorPrefix?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Wildcard string prefix to use for querying all sub-tem results of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: MigrateSchemaSqlServerSqlDbTaskOutputUnion[]; -} + readonly resultPrefix?: string; +}; -/** - * An interface representing MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel. - */ -export interface MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel { +export type MigrateSqlServerSqlDbTaskOutputError = MigrateSqlServerSqlDbTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; + /** + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ReportableException; +}; + +export type MigrateSqlServerSqlDbTaskOutputValidationResult = MigrateSqlServerSqlDbTaskOutput & + MigrationValidationResult & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationValidationOutput"; + }; + +export type MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult = MigrateSqlServerSqlDbTaskOutput & + MigrationValidationDatabaseLevelResult & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationDatabaseLevelValidationOutput"; + }; + +/** Summary of database results in the migration */ +export type DatabaseSummaryResult = DataItemMigrationSummaryResult & { /** - * Polymorphic Discriminator + * Size of the database in megabytes + * NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly sizeMB?: number; +}; + +/** Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online scenario. */ +export type MigrateSqlServerSqlMISyncTaskInput = SqlServerSqlMISyncTaskInput & {}; + +/** Input for task that migrates SQL Server databases to Azure SQL Database Managed Instance online scenario. */ +export type ValidateMigrationInputSqlServerSqlMISyncTaskInput = SqlServerSqlMISyncTaskInput & {}; + +export type MigrateSqlServerSqlMISyncTaskOutputMigrationLevel = MigrateSqlServerSqlMISyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ resultType: "MigrationLevelOutput"; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Count of databases + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly databaseCount?: number; /** - * Overall state of the schema migration. Possible values include: 'None', 'InProgress', - * 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly state?: MigrationState; /** * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly startedOn?: Date; /** * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly endedOn?: Date; + /** + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly sourceServerName?: string; /** * Source server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly sourceServerVersion?: string; /** * Source server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly sourceServerBrandVersion?: string; + /** + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly targetServerName?: string; /** * Target server version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly targetServerVersion?: string; /** * Target server brand version - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly targetServerBrandVersion?: string; -} - -/** - * An interface representing MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel. - */ -export interface MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel { /** - * Polymorphic Discriminator + * Number of database level errors + * NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly databaseErrorCount?: number; +}; + +export type MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel = MigrateSqlServerSqlMISyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ resultType: "DatabaseLevelOutput"; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly sourceDatabaseName?: string; /** - * The name of the database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databaseName?: string; + readonly migrationState?: DatabaseMigrationState; /** - * State of the schema migration for this database. Possible values include: 'None', - * 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', 'Stopped' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: MigrationState; + readonly startedOn?: Date; /** - * Schema migration stage for this database. Possible values include: 'NotStarted', - * 'ValidatingInputs', 'CollectingObjects', 'DownloadingScript', 'GeneratingScript', - * 'UploadingScript', 'DeployingSchema', 'Completed', 'CompletedWithWarnings', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Database migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly stage?: SchemaMigrationStage; + readonly endedOn?: Date; + /** + * Details of full backup set + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly fullBackupSetInfo?: BackupSetInfo; + /** + * Last applied backup set information + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastRestoredBackupSetInfo?: BackupSetInfo; + /** + * Backup sets that are currently active (Either being uploaded or getting restored) + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly activeBackupSets?: BackupSetInfo[]; + /** + * Name of container created in the Azure Storage account where backups are copied to + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly containerName?: string; + /** + * prefix string to use for querying errors for this database + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly errorPrefix?: string; + /** + * Whether full backup has been applied to the target database or not + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly isFullBackupRestored?: boolean; + /** + * Migration exceptions and warnings + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +export type MigrateSqlServerSqlMISyncTaskOutputError = MigrateSqlServerSqlMISyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; + /** + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ReportableException; +}; + +export type MigrateSqlServerSqlMITaskOutputMigrationLevel = MigrateSqlServerSqlMITaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly startedOn?: Date; /** * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly endedOn?: Date; /** - * Prefix string to use for querying errors for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current status of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly databaseErrorResultPrefix?: string; + readonly status?: MigrationStatus; /** - * Prefix string to use for querying schema errors for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly schemaErrorResultPrefix?: string; + readonly state?: MigrationState; /** - * Number of successful operations for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Selected agent jobs as a map from name to id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly numberOfSuccessfulOperations?: number; + readonly agentJobs?: string; /** - * Number of failed operations for this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Selected logins as a map from name to id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly numberOfFailedOperations?: number; + readonly logins?: string; /** - * Identifier for the file resource containing the schema of this database - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly fileId?: string; -} - -/** - * An interface representing MigrateSchemaSqlServerSqlDbTaskOutputError. - */ -export interface MigrateSchemaSqlServerSqlDbTaskOutputError { + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; /** - * Polymorphic Discriminator + * Map of server role migration results. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "SchemaErrorOutput"; + readonly serverRoleResults?: string; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * List of orphaned users. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly orphanedUsersInfo?: OrphanedUserInfo[]; /** - * Schema command which failed - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Selected databases as a map from database name to database id + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commandText?: string; + readonly databases?: string; /** - * Reason of failure - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errorText?: string; -} - -/** - * An interface representing MigrateSchemaSqlTaskOutputError. - */ -export interface MigrateSchemaSqlTaskOutputError { + readonly sourceServerVersion?: string; /** - * Polymorphic Discriminator + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - resultType: "ErrorOutput"; + readonly sourceServerBrandVersion?: string; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly targetServerVersion?: string; /** - * Migration error - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly error?: ReportableException; -} - -/** - * Describes the input to the 'cancel' and 'restart' MongoDB migration commands - */ -export interface MongoDbCommandInput { + readonly targetServerBrandVersion?: string; /** - * The qualified name of a database or collection to act upon, or null to act upon the entire - * migration + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - objectName?: string; -} + readonly exceptionsAndWarnings?: ReportableException[]; +}; -/** - * Properties for the command that cancels a migration in whole or in part - */ -export interface MongoDbCancelCommand { +export type MigrateSqlServerSqlMITaskOutputDatabaseLevel = MigrateSqlServerSqlMITaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Polymorphic Discriminator + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "cancel"; + readonly databaseName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Size of the database in megabytes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly sizeMB?: number; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly state?: MigrationState; /** - * Command input + * Current stage of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MongoDbCommandInput; -} - -/** - * Describes the input to the 'finish' MongoDB migration command - */ -export interface MongoDbFinishCommandInput extends MongoDbCommandInput { + readonly stage?: DatabaseMigrationStage; /** - * If true, replication for the affected objects will be stopped immediately. If false, the - * migrator will finish replaying queued events before finishing the replication. + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - immediate: boolean; -} - -/** - * Properties for the command that finishes a migration in whole or in part - */ -export interface MongoDbFinishCommand { + readonly startedOn?: Date; /** - * Polymorphic Discriminator + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "finish"; + readonly endedOn?: Date; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly message?: string; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration exceptions and warnings + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +export type MigrateSqlServerSqlMITaskOutputAgentJobLevel = MigrateSqlServerSqlMITaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "AgentJobLevelOutput"; /** - * Command input + * Agent Job name. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MongoDbFinishCommandInput; -} - -/** - * Properties for the command that restarts a migration in whole or in part - */ -export interface MongoDbRestartCommand { + readonly name?: string; /** - * Polymorphic Discriminator + * The state of the original Agent Job. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - commandType: "restart"; + readonly isEnabled?: boolean; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly state?: MigrationState; /** - * The state of the command. This is ignored if submitted. Possible values include: 'Unknown', - * 'Accepted', 'Running', 'Succeeded', 'Failed' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: CommandState; + readonly startedOn?: Date; /** - * Command input + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - input?: MongoDbCommandInput; -} - -/** - * Information about an Oracle OCI driver. - */ -export interface OracleOCIDriverInfo { + readonly endedOn?: Date; /** - * The name of the driver package - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly driverName?: string; + readonly message?: string; /** - * The size in bytes of the driver package - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration errors and warnings per job + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly driverSize?: string; + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +export type MigrateSqlServerSqlMITaskOutputLoginLevel = MigrateSqlServerSqlMITaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "LoginLevelOutput"; /** - * The MD5 Base64 encoded checksum for the driver package. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Login name. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly archiveChecksum?: string; + readonly loginName?: string; /** - * The checksum for the driver package provided by Oracle. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of login + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly oracleChecksum?: string; + readonly state?: MigrationState; /** - * Version listed in the OCI assembly 'oci.dll' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current stage of login + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly assemblyVersion?: string; + readonly stage?: LoginMigrationStage; /** - * List of Oracle database versions supported by this driver. Only major minor of the version is - * listed. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Login migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly supportedOracleVersions?: string[]; -} - -/** - * Input for the service task to check for OCI drivers. - */ -export interface CheckOCIDriverTaskInput { + readonly startedOn?: Date; /** - * Version of the source server to check against. Optional. + * Login migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverVersion?: string; -} - -/** - * Output for the service task to check for OCI drivers. - */ -export interface CheckOCIDriverTaskOutput { + readonly endedOn?: Date; /** - * Information about the installed driver if found and valid. + * Login migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - installedDriver?: OracleOCIDriverInfo; + readonly message?: string; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Login migration errors and warnings per login + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} + readonly exceptionsAndWarnings?: ReportableException[]; +}; -/** - * Input for the service task to upload an OCI driver. - */ -export interface UploadOCIDriverTaskInput { +export type MigrateSqlServerSqlMITaskOutputError = MigrateSqlServerSqlMITaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * File share information for the OCI driver archive. + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - driverShare?: FileShare; -} + readonly error?: ReportableException; +}; -/** - * Output for the service task to upload an OCI driver. - */ -export interface UploadOCIDriverTaskOutput { +export type MigrateSsisTaskOutputMigrationLevel = MigrateSsisTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * The name of the driver package that was validated and uploaded. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly driverPackageName?: string; + readonly startedOn?: Date; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Input for the service task to install an OCI driver. - */ -export interface InstallOCIDriverTaskInput { + readonly endedOn?: Date; /** - * Name of the uploaded driver package to install. + * Current status of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - driverPackageName?: string; -} - -/** - * Output for the service task to install an OCI driver. - */ -export interface InstallOCIDriverTaskOutput { + readonly status?: MigrationStatus; /** - * Validation errors - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly validationErrors?: ReportableException[]; -} - -/** - * Properties for the task that checks for OCI drivers. - */ -export interface CheckOCIDriverTaskProperties { + readonly message?: string; /** - * Polymorphic Discriminator + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Service.Check.OCI"; + readonly sourceServerVersion?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly sourceServerBrandVersion?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly targetServerVersion?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly targetServerBrandVersion?: string; /** - * Key value pairs of client data to attach meta data information to task + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; - input?: CheckOCIDriverTaskInput; + readonly exceptionsAndWarnings?: ReportableException[]; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Stage of SSIS migration. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: CheckOCIDriverTaskOutput[]; -} + readonly stage?: SsisMigrationStage; +}; -/** - * Properties for the task that uploads an OCI driver. - */ -export interface UploadOCIDriverTaskProperties { +export type MigrateSsisTaskOutputProjectLevel = MigrateSsisTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "SsisProjectLevelOutput"; /** - * Polymorphic Discriminator + * Name of the folder + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Service.Upload.OCI"; + readonly folderName?: string; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the project + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly projectName?: string; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly state?: MigrationState; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Stage of SSIS migration. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly stage?: SsisMigrationStage; /** - * Key value pairs of client data to attach meta data information to task + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; - input?: UploadOCIDriverTaskInput; + readonly startedOn?: Date; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: UploadOCIDriverTaskOutput[]; -} + readonly endedOn?: Date; + /** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; + /** + * Migration exceptions and warnings + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly exceptionsAndWarnings?: ReportableException[]; +}; + +/** Describes the input to the 'finish' MongoDB migration command */ +export type MongoDbFinishCommandInput = MongoDbCommandInput & { + /** If true, replication for the affected objects will be stopped immediately. If false, the migrator will finish replaying queued events before finishing the replication. */ + immediate: boolean; +}; + +/** Describes a supported collection within a MongoDB database */ +export type MongoDbCollectionInfo = MongoDbObjectInfo & { + /** The name of the database containing the collection */ + databaseName: string; + /** Whether the collection is a capped collection (i.e. whether it has a fixed size and acts like a circular buffer) */ + isCapped: boolean; + /** Whether the collection is system collection */ + isSystemCollection: boolean; + /** Whether the collection is a view of another collection */ + isView: boolean; + /** The shard key on the collection, or null if the collection is not sharded */ + shardKey?: MongoDbShardKeyInfo; + /** Whether the database has sharding enabled. Note that the migration task will enable sharding on the target if necessary. */ + supportsSharding: boolean; + /** The name of the collection that this is a view of, if IsView is true */ + viewOf?: string; +}; -/** - * Properties for the task that installs an OCI driver. - */ -export interface InstallOCIDriverTaskProperties { +/** Describes a database within a MongoDB data source */ +export type MongoDbDatabaseInfo = MongoDbObjectInfo & { + /** A list of supported collections in a MongoDB database */ + collections: MongoDbCollectionInfo[]; + /** Whether the database has sharding enabled. Note that the migration task will enable sharding on the target if necessary. */ + supportsSharding: boolean; +}; + +/** Describes the progress of a collection */ +export type MongoDbCollectionProgress = MongoDbProgress & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "Collection"; +}; + +/** Describes the progress of a database */ +export type MongoDbDatabaseProgress = MongoDbProgress & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "Database"; + /** The progress of the collections in the database. The keys are the unqualified names of the collections */ + collections?: { [propertyName: string]: MongoDbCollectionProgress }; +}; + +/** Describes the progress of the overall migration */ +export type MongoDbMigrationProgress = MongoDbProgress & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "Migration"; + /** The progress of the databases in the migration. The keys are the names of the databases */ + databases?: { [propertyName: string]: MongoDbDatabaseProgress }; +}; + +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * Polymorphic Discriminator + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType: "Service.Install.OCI"; + readonly startedOn?: Date; /** - * Array of errors. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: ODataError[]; + readonly endedOn?: Date; /** - * The state of the task. This is ignored if submitted. Possible values include: 'Unknown', - * 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', 'FailedInputValidation', 'Faulted' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly state?: TaskState; + readonly sourceServerVersion?: string; /** - * Array of command properties. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly commands?: CommandPropertiesUnion[]; + readonly sourceServer?: string; /** - * Key value pairs of client data to attach meta data information to task + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - clientData?: { [propertyName: string]: string }; - input?: InstallOCIDriverTaskInput; + readonly targetServerVersion?: string; /** - * Task output. This is ignored if submitted. - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server name + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly output?: InstallOCIDriverTaskOutput[]; -} + readonly targetServer?: string; +}; -/** - * Information about a single database - */ -export interface Database { - /** - * Unique identifier for the database - */ - id?: string; +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; - /** - * SQL Server compatibility level of database. Possible values include: 'CompatLevel80', - * 'CompatLevel90', 'CompatLevel100', 'CompatLevel110', 'CompatLevel120', 'CompatLevel130', - * 'CompatLevel140' - */ - compatibilityLevel?: DatabaseCompatLevel; + readonly databaseName?: string; /** - * Collation name of the database + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - collation?: string; + readonly startedOn?: Date; /** - * Name of the server + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverName?: string; + readonly endedOn?: Date; /** - * Fully qualified name + * Migration state that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fqdn?: string; + readonly migrationState?: SyncDatabaseMigrationReportingState; /** - * Install id of the database + * Number of incoming changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - installId?: string; + readonly incomingChanges?: number; /** - * Version of the server + * Number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverVersion?: string; + readonly appliedChanges?: number; /** - * Edition of the server + * Number of cdc inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverEdition?: string; + readonly cdcInsertCounter?: number; /** - * Product level of the server (RTM, SP, CTP). + * Number of cdc deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverLevel?: string; + readonly cdcDeleteCounter?: number; /** - * Default path of the data files + * Number of cdc updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverDefaultDataPath?: string; + readonly cdcUpdateCounter?: number; /** - * Default path of the log files + * Number of tables completed in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverDefaultLogPath?: string; + readonly fullLoadCompletedTables?: number; /** - * Default path of the backup folder + * Number of tables loading in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverDefaultBackupPath?: string; + readonly fullLoadLoadingTables?: number; /** - * Number of cores on the server + * Number of tables queued in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverCoreCount?: number; + readonly fullLoadQueuedTables?: number; /** - * Number of cores on the server that have VISIBLE ONLINE status + * Number of tables errored in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverVisibleOnlineCoreCount?: number; + readonly fullLoadErroredTables?: number; /** - * State of the database. Possible values include: 'Online', 'Restoring', 'Recovering', - * 'RecoveryPending', 'Suspect', 'Emergency', 'Offline', 'Copying', 'OfflineSecondary' + * Indicates if initial load (full load) has been completed + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseState?: DatabaseState; + readonly initializationCompleted?: boolean; /** - * The unique Server Id + * CDC apply latency + * NOTE: This property will not be serialized. It can only be populated by the server. */ - serverId?: string; -} + readonly latency?: number; +}; -/** - * A representation of the name of an object in a database - */ -export interface DatabaseObjectName { - /** - * The unescaped name of the database containing the object - * **NOTE: This property will not be serialized. It can only be populated by the server.** - */ - readonly databaseName?: string; +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * The unescaped name of the object - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the table + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly objectName?: string; + readonly tableName?: string; /** - * The unescaped name of the schema containing the object - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly schemaName?: string; + readonly databaseName?: string; /** - * Type of the object in the database. Possible values include: 'StoredProcedures', 'Table', - * 'User', 'View', 'Function' + * Number of applied inserts + * NOTE: This property will not be serialized. It can only be populated by the server. */ - objectType?: ObjectType; -} - -/** - * Metadata for tables selected in migration project - */ -export interface MigrationTableMetadata { + readonly cdcInsertCounter?: number; /** - * Source table name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied updates + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceTableName?: string; + readonly cdcUpdateCounter?: number; /** - * Target table name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of applied deletes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetTableName?: string; -} - -/** - * Common metadata for migration projects - */ -export interface DataMigrationProjectMetadata { + readonly cdcDeleteCounter?: number; /** - * Source server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Estimate to finish full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerName?: string; + readonly fullLoadEstFinishTime?: Date; /** - * Source server port number - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Full load start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerPort?: string; + readonly fullLoadStartedOn?: Date; /** - * Source username - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Full load end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceUsername?: string; + readonly fullLoadEndedOn?: Date; /** - * Target server name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of rows applied in full load + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerName?: string; + readonly fullLoadTotalRows?: number; /** - * Target username - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of the table migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetUsername?: string; + readonly state?: SyncTableMigrationState; /** - * Target database name - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Total number of applied changes + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetDbName?: string; + readonly totalChangesApplied?: number; /** - * Whether target connection is Windows authentication - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of data errors occurred + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetUsingWinAuth?: boolean; + readonly dataErrorsCounter?: number; /** - * List of tables selected for migration - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Last modified time on target + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly selectedMigrationTables?: MigrationTableMetadata[]; -} + readonly lastModifiedTime?: Date; +}; -/** - * Input for the task that reads configuration from project artifacts - */ -export interface GetProjectDetailsNonSqlTaskInput { - /** - * Name of the migration project - */ - projectName: string; +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputError = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * A URL that points to the location to access project artifacts + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - projectLocation: string; -} + readonly error?: ReportableException; +}; -/** - * Defines metadata for table to be migrated - */ -export interface NonSqlDataMigrationTable { - /** - * Source table name - */ - sourceName?: string; -} +export type MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError = MigrateOracleAzureDbPostgreSqlSyncTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelErrorOutput"; + /** Error message */ + errorMessage?: string; + /** List of error events. */ + events?: SyncMigrationDatabaseErrorEvent[]; +}; -/** - * Base class for non sql migration task input - */ -export interface NonSqlMigrationTaskInput { +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "MigrationLevelOutput"; /** - * Information for connecting to target + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetConnectionInfo: SqlConnectionInfo; + readonly startedOn?: Date; /** - * Target database name + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - targetDatabaseName: string; + readonly endedOn?: Date; /** - * Name of the migration project + * Duration of task execution in seconds. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - projectName: string; + readonly durationInSeconds?: number; /** - * A URL that points to the drop location to access project artifacts + * Current status of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - projectLocation: string; + readonly status?: MigrationStatus; /** - * Metadata of the tables selected for migration + * Migration status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - selectedTables: NonSqlDataMigrationTable[]; -} - -/** - * Migration Task errors - */ -export interface DataMigrationError { + readonly statusMessage?: string; /** - * Error description - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly message?: string; + /** Selected databases as a map from database name to database id */ + databases?: string; /** - * Possible values include: 'Default', 'Warning', 'Error' - */ - type?: ErrorType; -} - -/** - * Object used to report the data migration results of a table - */ -export interface NonSqlDataMigrationTableResult { - /** - * Result code of the data migration. Possible values include: 'Initial', 'Completed', - * 'ObjectNotExistsInSource', 'ObjectNotExistsInTarget', 'TargetObjectIsInaccessible', - * 'FatalError' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Summary of database results in the migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly resultCode?: DataMigrationResultCode; + readonly databaseSummary?: string; + /** Migration Report Result, provides unique url for downloading your migration report. */ + migrationReportResult?: MigrationReportResult; /** - * Name of the source table - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceName?: string; + readonly sourceServerVersion?: string; /** - * Name of the target table - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Source server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetName?: string; + readonly sourceServerBrandVersion?: string; /** - * Number of rows in the source table - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceRowCount?: number; + readonly targetServerVersion?: string; /** - * Number of rows in the target table - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Target server brand version + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetRowCount?: number; + readonly targetServerBrandVersion?: string; /** - * Time taken to migrate the data - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly elapsedTimeInMiliseconds?: number; + readonly exceptionsAndWarnings?: ReportableException[]; /** - * List of errors, if any, during migration - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Last time the storage was updated + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly errors?: DataMigrationError[]; -} - -/** - * Base class for non sql migration task output - */ -export interface NonSqlMigrationTaskOutput { + readonly lastStorageUpdate?: Date; +}; + +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "DatabaseLevelOutput"; /** - * Result identifier - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Name of the database + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly id?: string; + readonly databaseName?: string; /** * Migration start time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly startedOn?: Date; /** * Migration end time - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly endedOn?: Date; /** - * Current state of migration. Possible values include: 'Default', 'Connecting', - * 'SourceAndTargetSelected', 'SelectLogins', 'Configured', 'Running', 'Error', 'Stopped', - * 'Completed', 'CompletedWithWarnings' - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly status?: MigrationStatus; + readonly state?: MigrationState; /** - * Results of the migration. The key contains the table name and the value the table result - * object - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration stage that this database is in + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly dataMigrationTableResults?: { [propertyName: string]: NonSqlDataMigrationTableResult }; + readonly stage?: DatabaseMigrationStage; /** - * Message about the progress of the migration - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly progressMessage?: string; + readonly statusMessage?: string; /** - * Name of source server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Migration progress message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly sourceServerName?: string; + readonly message?: string; /** - * Name of target server - * **NOTE: This property will not be serialized. It can only be populated by the server.** + * Number of objects + * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly targetServerName?: string; -} - -/** - * Database file specific information for input - */ -export interface DatabaseFileInput { + readonly numberOfObjects?: number; /** - * Unique identifier for database file + * Number of successfully completed objects + * NOTE: This property will not be serialized. It can only be populated by the server. */ - id?: string; + readonly numberOfObjectsCompleted?: number; /** - * Logical name of the file + * Number of database/object errors. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - logicalName?: string; + readonly errorCount?: number; /** - * Operating-system full path of the file + * Wildcard string prefix to use for querying all errors of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - physicalFullName?: string; + readonly errorPrefix?: string; /** - * Suggested full path of the file for restoring + * Wildcard string prefix to use for querying all sub-tem results of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - restoreFullName?: string; + readonly resultPrefix?: string; /** - * Database file type. Possible values include: 'Rows', 'Log', 'Filestream', 'NotSupported', - * 'Fulltext' + * Migration exceptions and warnings. + * NOTE: This property will not be serialized. It can only be populated by the server. */ - fileType?: DatabaseFileType; -} + readonly exceptionsAndWarnings?: ReportableException[]; + /** + * Last time the storage was updated + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastStorageUpdate?: Date; + /** + * Summary of object results in the migration + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly objectSummary?: string; +}; -/** - * Database specific information for SQL to SQL migration task inputs - */ -export interface MigrateSqlServerSqlServerDatabaseInput { +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "TableLevelOutput"; /** - * Name of the database + * Name of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - name?: string; + readonly objectName?: string; /** - * Name of the database at destination + * Migration start time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - restoreDatabaseName?: string; + readonly startedOn?: Date; /** - * The backup and restore folder + * Migration end time + * NOTE: This property will not be serialized. It can only be populated by the server. */ - backupAndRestoreFolder?: string; + readonly endedOn?: Date; /** - * The list of database files + * Current state of migration + * NOTE: This property will not be serialized. It can only be populated by the server. */ - databaseFiles?: DatabaseFileInput[]; -} - -/** - * Optional Parameters. - */ -export interface ServicesDeleteMethodOptionalParams extends msRest.RequestOptionsBase { + readonly state?: MigrationState; /** - * Delete the resource even if it contains running tasks + * Status message + * NOTE: This property will not be serialized. It can only be populated by the server. */ - deleteRunningTasks?: boolean; -} - -/** - * Optional Parameters. - */ -export interface ServicesBeginDeleteMethodOptionalParams extends msRest.RequestOptionsBase { + readonly statusMessage?: string; /** - * Delete the resource even if it contains running tasks + * Number of items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - deleteRunningTasks?: boolean; -} - -/** - * Optional Parameters. - */ -export interface TasksListOptionalParams extends msRest.RequestOptionsBase { + readonly itemsCount?: number; /** - * Filter tasks by task type + * Number of successfully completed items + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType?: string; -} - -/** - * Optional Parameters. - */ -export interface TasksGetOptionalParams extends msRest.RequestOptionsBase { + readonly itemsCompletedCount?: number; /** - * Expand the response + * Wildcard string prefix to use for querying all errors of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - expand?: string; -} - -/** - * Optional Parameters. - */ -export interface TasksDeleteMethodOptionalParams extends msRest.RequestOptionsBase { + readonly errorPrefix?: string; /** - * Delete the resource even if it contains running tasks + * Wildcard string prefix to use for querying all sub-tem results of the item + * NOTE: This property will not be serialized. It can only be populated by the server. */ - deleteRunningTasks?: boolean; -} - -/** - * Optional Parameters. - */ -export interface ServiceTasksListOptionalParams extends msRest.RequestOptionsBase { + readonly resultPrefix?: string; /** - * Filter tasks by task type + * Last time the storage was updated + * NOTE: This property will not be serialized. It can only be populated by the server. */ - taskType?: string; -} + readonly lastStorageUpdate?: Date; +}; -/** - * Optional Parameters. - */ -export interface ServiceTasksGetOptionalParams extends msRest.RequestOptionsBase { +export type MigrateMySqlAzureDbForMySqlOfflineTaskOutputError = MigrateMySqlAzureDbForMySqlOfflineTaskOutput & { + /** Polymorphic discriminator, which specifies the different types this object can be */ + resultType: "ErrorOutput"; /** - * Expand the response + * Migration error + * NOTE: This property will not be serialized. It can only be populated by the server. */ - expand?: string; + readonly error?: ReportableException; +}; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + User = "User", + Application = "Application", + ManagedIdentity = "ManagedIdentity", + Key = "Key" } /** - * Optional Parameters. + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** */ -export interface ServiceTasksDeleteMethodOptionalParams extends msRest.RequestOptionsBase { - /** - * Delete the resource even if it contains running tasks - */ - deleteRunningTasks?: boolean; +export type CreatedByType = string; + +/** Known values of {@link ResourceType} that the service accepts. */ +export enum KnownResourceType { + SqlMi = "SqlMi", + SqlVm = "SqlVm" } /** - * Optional Parameters. + * Defines values for ResourceType. \ + * {@link KnownResourceType} can be used interchangeably with ResourceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SqlMi** \ + * **SqlVm** */ -export interface ProjectsDeleteMethodOptionalParams extends msRest.RequestOptionsBase { - /** - * Delete the resource even if it contains running tasks - */ - deleteRunningTasks?: boolean; +export type ResourceType = string; + +/** Known values of {@link OperationOrigin} that the service accepts. */ +export enum KnownOperationOrigin { + User = "user", + System = "system" } /** - * An interface representing DataMigrationServiceClientOptions. + * Defines values for OperationOrigin. \ + * {@link KnownOperationOrigin} can be used interchangeably with OperationOrigin, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **user** \ + * **system** */ -export interface DataMigrationServiceClientOptions extends AzureServiceClientOptions { - baseUri?: string; +export type OperationOrigin = string; + +/** Known values of {@link ResourceSkuCapacityScaleType} that the service accepts. */ +export enum KnownResourceSkuCapacityScaleType { + Automatic = "Automatic", + Manual = "Manual", + None = "None" +} + +/** + * Defines values for ResourceSkuCapacityScaleType. \ + * {@link KnownResourceSkuCapacityScaleType} can be used interchangeably with ResourceSkuCapacityScaleType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Automatic** \ + * **Manual** \ + * **None** + */ +export type ResourceSkuCapacityScaleType = string; + +/** Known values of {@link ResourceSkuRestrictionsType} that the service accepts. */ +export enum KnownResourceSkuRestrictionsType { + Location = "location" +} + +/** + * Defines values for ResourceSkuRestrictionsType. \ + * {@link KnownResourceSkuRestrictionsType} can be used interchangeably with ResourceSkuRestrictionsType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **location** + */ +export type ResourceSkuRestrictionsType = string; + +/** Known values of {@link ResourceSkuRestrictionsReasonCode} that the service accepts. */ +export enum KnownResourceSkuRestrictionsReasonCode { + QuotaId = "QuotaId", + NotAvailableForSubscription = "NotAvailableForSubscription" +} + +/** + * Defines values for ResourceSkuRestrictionsReasonCode. \ + * {@link KnownResourceSkuRestrictionsReasonCode} can be used interchangeably with ResourceSkuRestrictionsReasonCode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **QuotaId** \ + * **NotAvailableForSubscription** + */ +export type ResourceSkuRestrictionsReasonCode = string; + +/** Known values of {@link ServiceProvisioningState} that the service accepts. */ +export enum KnownServiceProvisioningState { + Accepted = "Accepted", + Deleting = "Deleting", + Deploying = "Deploying", + Stopped = "Stopped", + Stopping = "Stopping", + Starting = "Starting", + FailedToStart = "FailedToStart", + FailedToStop = "FailedToStop", + Succeeded = "Succeeded", + Failed = "Failed" +} + +/** + * Defines values for ServiceProvisioningState. \ + * {@link KnownServiceProvisioningState} can be used interchangeably with ServiceProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Accepted** \ + * **Deleting** \ + * **Deploying** \ + * **Stopped** \ + * **Stopping** \ + * **Starting** \ + * **FailedToStart** \ + * **FailedToStop** \ + * **Succeeded** \ + * **Failed** + */ +export type ServiceProvisioningState = string; + +/** Known values of {@link ServiceScalability} that the service accepts. */ +export enum KnownServiceScalability { + None = "none", + Manual = "manual", + Automatic = "automatic" +} + +/** + * Defines values for ServiceScalability. \ + * {@link KnownServiceScalability} can be used interchangeably with ServiceScalability, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **none** \ + * **manual** \ + * **automatic** + */ +export type ServiceScalability = string; + +/** Known values of {@link TaskType} that the service accepts. */ +export enum KnownTaskType { + ConnectMongoDb = "Connect.MongoDb", + ConnectToSourceSqlServer = "ConnectToSource.SqlServer", + ConnectToSourceSqlServerSync = "ConnectToSource.SqlServer.Sync", + ConnectToSourcePostgreSqlSync = "ConnectToSource.PostgreSql.Sync", + ConnectToSourceMySql = "ConnectToSource.MySql", + ConnectToSourceOracleSync = "ConnectToSource.Oracle.Sync", + ConnectToTargetSqlDb = "ConnectToTarget.SqlDb", + ConnectToTargetSqlDbSync = "ConnectToTarget.SqlDb.Sync", + ConnectToTargetAzureDbForPostgreSqlSync = "ConnectToTarget.AzureDbForPostgreSql.Sync", + ConnectToTargetOracleAzureDbForPostgreSqlSync = "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync", + ConnectToTargetAzureSqlDbMI = "ConnectToTarget.AzureSqlDbMI", + ConnectToTargetAzureSqlDbMISyncLRS = "ConnectToTarget.AzureSqlDbMI.Sync.LRS", + ConnectToTargetAzureDbForMySql = "ConnectToTarget.AzureDbForMySql", + GetUserTablesSql = "GetUserTables.Sql", + GetUserTablesAzureSqlDbSync = "GetUserTables.AzureSqlDb.Sync", + GetUserTablesOracle = "GetUserTablesOracle", + GetUserTablesPostgreSql = "GetUserTablesPostgreSql", + GetUserTablesMySql = "GetUserTablesMySql", + MigrateMongoDb = "Migrate.MongoDb", + MigrateSqlServerAzureSqlDbMI = "Migrate.SqlServer.AzureSqlDbMI", + MigrateSqlServerAzureSqlDbMISyncLRS = "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS", + MigrateSqlServerSqlDb = "Migrate.SqlServer.SqlDb", + MigrateSqlServerAzureSqlDbSync = "Migrate.SqlServer.AzureSqlDb.Sync", + MigrateMySqlAzureDbForMySqlSync = "Migrate.MySql.AzureDbForMySql.Sync", + MigrateMySqlAzureDbForMySql = "Migrate.MySql.AzureDbForMySql", + MigratePostgreSqlAzureDbForPostgreSqlSyncV2 = "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2", + MigrateOracleAzureDbForPostgreSqlSync = "Migrate.Oracle.AzureDbForPostgreSql.Sync", + ValidateMigrationInputSqlServerSqlDbSync = "ValidateMigrationInput.SqlServer.SqlDb.Sync", + ValidateMigrationInputSqlServerAzureSqlDbMI = "ValidateMigrationInput.SqlServer.AzureSqlDbMI", + ValidateMigrationInputSqlServerAzureSqlDbMISyncLRS = "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS", + ValidateMongoDb = "Validate.MongoDb", + ValidateOracleAzureDbPostgreSqlSync = "Validate.Oracle.AzureDbPostgreSql.Sync", + GetTDECertificatesSql = "GetTDECertificates.Sql", + MigrateSsis = "Migrate.Ssis", + ServiceCheckOCI = "Service.Check.OCI", + ServiceUploadOCI = "Service.Upload.OCI", + ServiceInstallOCI = "Service.Install.OCI", + MigrateSchemaSqlServerSqlDb = "MigrateSchemaSqlServerSqlDb" +} + +/** + * Defines values for TaskType. \ + * {@link KnownTaskType} can be used interchangeably with TaskType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Connect.MongoDb** \ + * **ConnectToSource.SqlServer** \ + * **ConnectToSource.SqlServer.Sync** \ + * **ConnectToSource.PostgreSql.Sync** \ + * **ConnectToSource.MySql** \ + * **ConnectToSource.Oracle.Sync** \ + * **ConnectToTarget.SqlDb** \ + * **ConnectToTarget.SqlDb.Sync** \ + * **ConnectToTarget.AzureDbForPostgreSql.Sync** \ + * **ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync** \ + * **ConnectToTarget.AzureSqlDbMI** \ + * **ConnectToTarget.AzureSqlDbMI.Sync.LRS** \ + * **ConnectToTarget.AzureDbForMySql** \ + * **GetUserTables.Sql** \ + * **GetUserTables.AzureSqlDb.Sync** \ + * **GetUserTablesOracle** \ + * **GetUserTablesPostgreSql** \ + * **GetUserTablesMySql** \ + * **Migrate.MongoDb** \ + * **Migrate.SqlServer.AzureSqlDbMI** \ + * **Migrate.SqlServer.AzureSqlDbMI.Sync.LRS** \ + * **Migrate.SqlServer.SqlDb** \ + * **Migrate.SqlServer.AzureSqlDb.Sync** \ + * **Migrate.MySql.AzureDbForMySql.Sync** \ + * **Migrate.MySql.AzureDbForMySql** \ + * **Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2** \ + * **Migrate.Oracle.AzureDbForPostgreSql.Sync** \ + * **ValidateMigrationInput.SqlServer.SqlDb.Sync** \ + * **ValidateMigrationInput.SqlServer.AzureSqlDbMI** \ + * **ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS** \ + * **Validate.MongoDb** \ + * **Validate.Oracle.AzureDbPostgreSql.Sync** \ + * **GetTDECertificates.Sql** \ + * **Migrate.Ssis** \ + * **Service.Check.OCI** \ + * **Service.Upload.OCI** \ + * **Service.Install.OCI** \ + * **MigrateSchemaSqlServerSqlDb** + */ +export type TaskType = string; + +/** Known values of {@link TaskState} that the service accepts. */ +export enum KnownTaskState { + Unknown = "Unknown", + Queued = "Queued", + Running = "Running", + Canceled = "Canceled", + Succeeded = "Succeeded", + Failed = "Failed", + FailedInputValidation = "FailedInputValidation", + Faulted = "Faulted" +} + +/** + * Defines values for TaskState. \ + * {@link KnownTaskState} can be used interchangeably with TaskState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown** \ + * **Queued** \ + * **Running** \ + * **Canceled** \ + * **Succeeded** \ + * **Failed** \ + * **FailedInputValidation** \ + * **Faulted** + */ +export type TaskState = string; + +/** Known values of {@link CommandType} that the service accepts. */ +export enum KnownCommandType { + MigrateSyncCompleteDatabase = "Migrate.Sync.Complete.Database", + MigrateSqlServerAzureDbSqlMiComplete = "Migrate.SqlServer.AzureDbSqlMi.Complete", + Cancel = "cancel", + Finish = "finish", + Restart = "restart" +} + +/** + * Defines values for CommandType. \ + * {@link KnownCommandType} can be used interchangeably with CommandType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Migrate.Sync.Complete.Database** \ + * **Migrate.SqlServer.AzureDbSqlMi.Complete** \ + * **cancel** \ + * **finish** \ + * **restart** + */ +export type CommandType = string; + +/** Known values of {@link CommandState} that the service accepts. */ +export enum KnownCommandState { + Unknown = "Unknown", + Accepted = "Accepted", + Running = "Running", + Succeeded = "Succeeded", + Failed = "Failed" +} + +/** + * Defines values for CommandState. \ + * {@link KnownCommandState} can be used interchangeably with CommandState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown** \ + * **Accepted** \ + * **Running** \ + * **Succeeded** \ + * **Failed** + */ +export type CommandState = string; + +/** Known values of {@link NameCheckFailureReason} that the service accepts. */ +export enum KnownNameCheckFailureReason { + AlreadyExists = "AlreadyExists", + Invalid = "Invalid" +} + +/** + * Defines values for NameCheckFailureReason. \ + * {@link KnownNameCheckFailureReason} can be used interchangeably with NameCheckFailureReason, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AlreadyExists** \ + * **Invalid** + */ +export type NameCheckFailureReason = string; + +/** Known values of {@link ProjectSourcePlatform} that the service accepts. */ +export enum KnownProjectSourcePlatform { + SQL = "SQL", + MySQL = "MySQL", + PostgreSql = "PostgreSql", + MongoDb = "MongoDb", + Unknown = "Unknown" } /** - * @interface - * The DMS List SKUs operation response. - * @extends Array + * Defines values for ProjectSourcePlatform. \ + * {@link KnownProjectSourcePlatform} can be used interchangeably with ProjectSourcePlatform, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SQL** \ + * **MySQL** \ + * **PostgreSql** \ + * **MongoDb** \ + * **Unknown** + */ +export type ProjectSourcePlatform = string; + +/** Known values of {@link ProjectTargetPlatform} that the service accepts. */ +export enum KnownProjectTargetPlatform { + Sqldb = "SQLDB", + Sqlmi = "SQLMI", + AzureDbForMySql = "AzureDbForMySql", + AzureDbForPostgreSql = "AzureDbForPostgreSql", + MongoDb = "MongoDb", + Unknown = "Unknown" +} + +/** + * Defines values for ProjectTargetPlatform. \ + * {@link KnownProjectTargetPlatform} can be used interchangeably with ProjectTargetPlatform, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SQLDB** \ + * **SQLMI** \ + * **AzureDbForMySql** \ + * **AzureDbForPostgreSql** \ + * **MongoDb** \ + * **Unknown** + */ +export type ProjectTargetPlatform = string; + +/** Known values of {@link ProjectProvisioningState} that the service accepts. */ +export enum KnownProjectProvisioningState { + Deleting = "Deleting", + Succeeded = "Succeeded" +} + +/** + * Defines values for ProjectProvisioningState. \ + * {@link KnownProjectProvisioningState} can be used interchangeably with ProjectProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Deleting** \ + * **Succeeded** */ -export interface ResourceSkusResult extends Array { - /** - * The uri to fetch the next page of DMS SKUs. Call ListNext() with this to fetch the next page - * of DMS SKUs. - */ - nextLink?: string; +export type ProjectProvisioningState = string; + +/** Known values of {@link AuthenticationType} that the service accepts. */ +export enum KnownAuthenticationType { + None = "None", + WindowsAuthentication = "WindowsAuthentication", + SqlAuthentication = "SqlAuthentication", + ActiveDirectoryIntegrated = "ActiveDirectoryIntegrated", + ActiveDirectoryPassword = "ActiveDirectoryPassword" } - -/** - * @interface - * OData page of available SKUs - * @extends Array + +/** + * Defines values for AuthenticationType. \ + * {@link KnownAuthenticationType} can be used interchangeably with AuthenticationType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **WindowsAuthentication** \ + * **SqlAuthentication** \ + * **ActiveDirectoryIntegrated** \ + * **ActiveDirectoryPassword** */ -export interface ServiceSkuList extends Array { - /** - * URL to load the next page of service SKUs - */ - nextLink?: string; +export type AuthenticationType = string; + +/** Known values of {@link SqlSourcePlatform} that the service accepts. */ +export enum KnownSqlSourcePlatform { + SqlOnPrem = "SqlOnPrem" } -/** - * @interface - * OData page of service objects - * @extends Array - */ -export interface DataMigrationServiceList extends Array { - /** - * URL to load the next page of services - */ - nextLink?: string; +/** + * Defines values for SqlSourcePlatform. \ + * {@link KnownSqlSourcePlatform} can be used interchangeably with SqlSourcePlatform, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SqlOnPrem** + */ +export type SqlSourcePlatform = string; + +/** Known values of {@link BackupType} that the service accepts. */ +export enum KnownBackupType { + Database = "Database", + TransactionLog = "TransactionLog", + File = "File", + DifferentialDatabase = "DifferentialDatabase", + DifferentialFile = "DifferentialFile", + Partial = "Partial", + DifferentialPartial = "DifferentialPartial" +} + +/** + * Defines values for BackupType. \ + * {@link KnownBackupType} can be used interchangeably with BackupType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Database** \ + * **TransactionLog** \ + * **File** \ + * **DifferentialDatabase** \ + * **DifferentialFile** \ + * **Partial** \ + * **DifferentialPartial** + */ +export type BackupType = string; + +/** Known values of {@link BackupFileStatus} that the service accepts. */ +export enum KnownBackupFileStatus { + Arrived = "Arrived", + Queued = "Queued", + Uploading = "Uploading", + Uploaded = "Uploaded", + Restoring = "Restoring", + Restored = "Restored", + Cancelled = "Cancelled" +} + +/** + * Defines values for BackupFileStatus. \ + * {@link KnownBackupFileStatus} can be used interchangeably with BackupFileStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Arrived** \ + * **Queued** \ + * **Uploading** \ + * **Uploaded** \ + * **Restoring** \ + * **Restored** \ + * **Cancelled** + */ +export type BackupFileStatus = string; + +/** Known values of {@link MySqlTargetPlatformType} that the service accepts. */ +export enum KnownMySqlTargetPlatformType { + SqlServer = "SqlServer", + AzureDbForMySQL = "AzureDbForMySQL" +} + +/** + * Defines values for MySqlTargetPlatformType. \ + * {@link KnownMySqlTargetPlatformType} can be used interchangeably with MySqlTargetPlatformType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SqlServer** \ + * **AzureDbForMySQL** + */ +export type MySqlTargetPlatformType = string; + +/** Known values of {@link DatabaseFileType} that the service accepts. */ +export enum KnownDatabaseFileType { + Rows = "Rows", + Log = "Log", + Filestream = "Filestream", + NotSupported = "NotSupported", + Fulltext = "Fulltext" +} + +/** + * Defines values for DatabaseFileType. \ + * {@link KnownDatabaseFileType} can be used interchangeably with DatabaseFileType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Rows** \ + * **Log** \ + * **Filestream** \ + * **NotSupported** \ + * **Fulltext** + */ +export type DatabaseFileType = string; + +/** Known values of {@link DatabaseCompatLevel} that the service accepts. */ +export enum KnownDatabaseCompatLevel { + CompatLevel80 = "CompatLevel80", + CompatLevel90 = "CompatLevel90", + CompatLevel100 = "CompatLevel100", + CompatLevel110 = "CompatLevel110", + CompatLevel120 = "CompatLevel120", + CompatLevel130 = "CompatLevel130", + CompatLevel140 = "CompatLevel140" +} + +/** + * Defines values for DatabaseCompatLevel. \ + * {@link KnownDatabaseCompatLevel} can be used interchangeably with DatabaseCompatLevel, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CompatLevel80** \ + * **CompatLevel90** \ + * **CompatLevel100** \ + * **CompatLevel110** \ + * **CompatLevel120** \ + * **CompatLevel130** \ + * **CompatLevel140** + */ +export type DatabaseCompatLevel = string; + +/** Known values of {@link DatabaseState} that the service accepts. */ +export enum KnownDatabaseState { + Online = "Online", + Restoring = "Restoring", + Recovering = "Recovering", + RecoveryPending = "RecoveryPending", + Suspect = "Suspect", + Emergency = "Emergency", + Offline = "Offline", + Copying = "Copying", + OfflineSecondary = "OfflineSecondary" +} + +/** + * Defines values for DatabaseState. \ + * {@link KnownDatabaseState} can be used interchangeably with DatabaseState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Online** \ + * **Restoring** \ + * **Recovering** \ + * **RecoveryPending** \ + * **Suspect** \ + * **Emergency** \ + * **Offline** \ + * **Copying** \ + * **OfflineSecondary** + */ +export type DatabaseState = string; + +/** Known values of {@link LoginType} that the service accepts. */ +export enum KnownLoginType { + WindowsUser = "WindowsUser", + WindowsGroup = "WindowsGroup", + SqlLogin = "SqlLogin", + Certificate = "Certificate", + AsymmetricKey = "AsymmetricKey", + ExternalUser = "ExternalUser", + ExternalGroup = "ExternalGroup" +} + +/** + * Defines values for LoginType. \ + * {@link KnownLoginType} can be used interchangeably with LoginType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **WindowsUser** \ + * **WindowsGroup** \ + * **SqlLogin** \ + * **Certificate** \ + * **AsymmetricKey** \ + * **ExternalUser** \ + * **ExternalGroup** + */ +export type LoginType = string; + +/** Known values of {@link SchemaMigrationOption} that the service accepts. */ +export enum KnownSchemaMigrationOption { + None = "None", + ExtractFromSource = "ExtractFromSource", + UseStorageFile = "UseStorageFile" +} + +/** + * Defines values for SchemaMigrationOption. \ + * {@link KnownSchemaMigrationOption} can be used interchangeably with SchemaMigrationOption, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **ExtractFromSource** \ + * **UseStorageFile** + */ +export type SchemaMigrationOption = string; + +/** Known values of {@link MigrationState} that the service accepts. */ +export enum KnownMigrationState { + None = "None", + InProgress = "InProgress", + Failed = "Failed", + Warning = "Warning", + Completed = "Completed", + Skipped = "Skipped", + Stopped = "Stopped" +} + +/** + * Defines values for MigrationState. \ + * {@link KnownMigrationState} can be used interchangeably with MigrationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **InProgress** \ + * **Failed** \ + * **Warning** \ + * **Completed** \ + * **Skipped** \ + * **Stopped** + */ +export type MigrationState = string; + +/** Known values of {@link SchemaMigrationStage} that the service accepts. */ +export enum KnownSchemaMigrationStage { + NotStarted = "NotStarted", + ValidatingInputs = "ValidatingInputs", + CollectingObjects = "CollectingObjects", + DownloadingScript = "DownloadingScript", + GeneratingScript = "GeneratingScript", + UploadingScript = "UploadingScript", + DeployingSchema = "DeployingSchema", + Completed = "Completed", + CompletedWithWarnings = "CompletedWithWarnings", + Failed = "Failed" +} + +/** + * Defines values for SchemaMigrationStage. \ + * {@link KnownSchemaMigrationStage} can be used interchangeably with SchemaMigrationStage, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotStarted** \ + * **ValidatingInputs** \ + * **CollectingObjects** \ + * **DownloadingScript** \ + * **GeneratingScript** \ + * **UploadingScript** \ + * **DeployingSchema** \ + * **Completed** \ + * **CompletedWithWarnings** \ + * **Failed** + */ +export type SchemaMigrationStage = string; + +/** Known values of {@link SyncDatabaseMigrationReportingState} that the service accepts. */ +export enum KnownSyncDatabaseMigrationReportingState { + Undefined = "UNDEFINED", + Configuring = "CONFIGURING", + Initialiazing = "INITIALIAZING", + Starting = "STARTING", + Running = "RUNNING", + ReadyTOComplete = "READY_TO_COMPLETE", + Completing = "COMPLETING", + Complete = "COMPLETE", + Cancelling = "CANCELLING", + Cancelled = "CANCELLED", + Failed = "FAILED", + Validating = "VALIDATING", + ValidationComplete = "VALIDATION_COMPLETE", + ValidationFailed = "VALIDATION_FAILED", + RestoreINProgress = "RESTORE_IN_PROGRESS", + RestoreCompleted = "RESTORE_COMPLETED", + BackupINProgress = "BACKUP_IN_PROGRESS", + BackupCompleted = "BACKUP_COMPLETED" +} + +/** + * Defines values for SyncDatabaseMigrationReportingState. \ + * {@link KnownSyncDatabaseMigrationReportingState} can be used interchangeably with SyncDatabaseMigrationReportingState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **UNDEFINED** \ + * **CONFIGURING** \ + * **INITIALIAZING** \ + * **STARTING** \ + * **RUNNING** \ + * **READY_TO_COMPLETE** \ + * **COMPLETING** \ + * **COMPLETE** \ + * **CANCELLING** \ + * **CANCELLED** \ + * **FAILED** \ + * **VALIDATING** \ + * **VALIDATION_COMPLETE** \ + * **VALIDATION_FAILED** \ + * **RESTORE_IN_PROGRESS** \ + * **RESTORE_COMPLETED** \ + * **BACKUP_IN_PROGRESS** \ + * **BACKUP_COMPLETED** + */ +export type SyncDatabaseMigrationReportingState = string; + +/** Known values of {@link SyncTableMigrationState} that the service accepts. */ +export enum KnownSyncTableMigrationState { + BeforeLoad = "BEFORE_LOAD", + FullLoad = "FULL_LOAD", + Completed = "COMPLETED", + Canceled = "CANCELED", + Error = "ERROR", + Failed = "FAILED" +} + +/** + * Defines values for SyncTableMigrationState. \ + * {@link KnownSyncTableMigrationState} can be used interchangeably with SyncTableMigrationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **BEFORE_LOAD** \ + * **FULL_LOAD** \ + * **COMPLETED** \ + * **CANCELED** \ + * **ERROR** \ + * **FAILED** + */ +export type SyncTableMigrationState = string; + +/** Known values of {@link ScenarioSource} that the service accepts. */ +export enum KnownScenarioSource { + Access = "Access", + DB2 = "DB2", + MySQL = "MySQL", + Oracle = "Oracle", + SQL = "SQL", + Sybase = "Sybase", + PostgreSQL = "PostgreSQL", + MongoDB = "MongoDB", + Sqlrds = "SQLRDS", + MySqlrds = "MySQLRDS", + PostgreSqlrds = "PostgreSQLRDS" +} + +/** + * Defines values for ScenarioSource. \ + * {@link KnownScenarioSource} can be used interchangeably with ScenarioSource, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Access** \ + * **DB2** \ + * **MySQL** \ + * **Oracle** \ + * **SQL** \ + * **Sybase** \ + * **PostgreSQL** \ + * **MongoDB** \ + * **SQLRDS** \ + * **MySQLRDS** \ + * **PostgreSQLRDS** + */ +export type ScenarioSource = string; + +/** Known values of {@link ScenarioTarget} that the service accepts. */ +export enum KnownScenarioTarget { + SQLServer = "SQLServer", + Sqldb = "SQLDB", + Sqldw = "SQLDW", + Sqlmi = "SQLMI", + AzureDBForMySql = "AzureDBForMySql", + AzureDBForPostgresSQL = "AzureDBForPostgresSQL", + MongoDB = "MongoDB" +} + +/** + * Defines values for ScenarioTarget. \ + * {@link KnownScenarioTarget} can be used interchangeably with ScenarioTarget, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SQLServer** \ + * **SQLDB** \ + * **SQLDW** \ + * **SQLMI** \ + * **AzureDBForMySql** \ + * **AzureDBForPostgresSQL** \ + * **MongoDB** + */ +export type ScenarioTarget = string; + +/** Known values of {@link ReplicateMigrationState} that the service accepts. */ +export enum KnownReplicateMigrationState { + Undefined = "UNDEFINED", + Validating = "VALIDATING", + Pending = "PENDING", + Complete = "COMPLETE", + ActionRequired = "ACTION_REQUIRED", + Failed = "FAILED" +} + +/** + * Defines values for ReplicateMigrationState. \ + * {@link KnownReplicateMigrationState} can be used interchangeably with ReplicateMigrationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **UNDEFINED** \ + * **VALIDATING** \ + * **PENDING** \ + * **COMPLETE** \ + * **ACTION_REQUIRED** \ + * **FAILED** + */ +export type ReplicateMigrationState = string; + +/** Known values of {@link MigrationStatus} that the service accepts. */ +export enum KnownMigrationStatus { + Default = "Default", + Connecting = "Connecting", + SourceAndTargetSelected = "SourceAndTargetSelected", + SelectLogins = "SelectLogins", + Configured = "Configured", + Running = "Running", + Error = "Error", + Stopped = "Stopped", + Completed = "Completed", + CompletedWithWarnings = "CompletedWithWarnings" +} + +/** + * Defines values for MigrationStatus. \ + * {@link KnownMigrationStatus} can be used interchangeably with MigrationStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default** \ + * **Connecting** \ + * **SourceAndTargetSelected** \ + * **SelectLogins** \ + * **Configured** \ + * **Running** \ + * **Error** \ + * **Stopped** \ + * **Completed** \ + * **CompletedWithWarnings** + */ +export type MigrationStatus = string; + +/** Known values of {@link ValidationStatus} that the service accepts. */ +export enum KnownValidationStatus { + Default = "Default", + NotStarted = "NotStarted", + Initialized = "Initialized", + InProgress = "InProgress", + Completed = "Completed", + CompletedWithIssues = "CompletedWithIssues", + Stopped = "Stopped", + Failed = "Failed" +} + +/** + * Defines values for ValidationStatus. \ + * {@link KnownValidationStatus} can be used interchangeably with ValidationStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default** \ + * **NotStarted** \ + * **Initialized** \ + * **InProgress** \ + * **Completed** \ + * **CompletedWithIssues** \ + * **Stopped** \ + * **Failed** + */ +export type ValidationStatus = string; + +/** Known values of {@link DatabaseMigrationStage} that the service accepts. */ +export enum KnownDatabaseMigrationStage { + None = "None", + Initialize = "Initialize", + Backup = "Backup", + FileCopy = "FileCopy", + Restore = "Restore", + Completed = "Completed" +} + +/** + * Defines values for DatabaseMigrationStage. \ + * {@link KnownDatabaseMigrationStage} can be used interchangeably with DatabaseMigrationStage, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **Initialize** \ + * **Backup** \ + * **FileCopy** \ + * **Restore** \ + * **Completed** + */ +export type DatabaseMigrationStage = string; + +/** Known values of {@link Severity} that the service accepts. */ +export enum KnownSeverity { + Message = "Message", + Warning = "Warning", + Error = "Error" +} + +/** + * Defines values for Severity. \ + * {@link KnownSeverity} can be used interchangeably with Severity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Message** \ + * **Warning** \ + * **Error** + */ +export type Severity = string; + +/** Known values of {@link ObjectType} that the service accepts. */ +export enum KnownObjectType { + StoredProcedures = "StoredProcedures", + Table = "Table", + User = "User", + View = "View", + Function = "Function" +} + +/** + * Defines values for ObjectType. \ + * {@link KnownObjectType} can be used interchangeably with ObjectType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **StoredProcedures** \ + * **Table** \ + * **User** \ + * **View** \ + * **Function** + */ +export type ObjectType = string; + +/** Known values of {@link UpdateActionType} that the service accepts. */ +export enum KnownUpdateActionType { + DeletedOnTarget = "DeletedOnTarget", + ChangedOnTarget = "ChangedOnTarget", + AddedOnTarget = "AddedOnTarget" +} + +/** + * Defines values for UpdateActionType. \ + * {@link KnownUpdateActionType} can be used interchangeably with UpdateActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **DeletedOnTarget** \ + * **ChangedOnTarget** \ + * **AddedOnTarget** + */ +export type UpdateActionType = string; + +/** Known values of {@link DatabaseMigrationState} that the service accepts. */ +export enum KnownDatabaseMigrationState { + Undefined = "UNDEFINED", + Initial = "INITIAL", + FullBackupUploadStart = "FULL_BACKUP_UPLOAD_START", + LOGShippingStart = "LOG_SHIPPING_START", + UploadLOGFilesStart = "UPLOAD_LOG_FILES_START", + CutoverStart = "CUTOVER_START", + PostCutoverComplete = "POST_CUTOVER_COMPLETE", + Completed = "COMPLETED", + Cancelled = "CANCELLED", + Failed = "FAILED" +} + +/** + * Defines values for DatabaseMigrationState. \ + * {@link KnownDatabaseMigrationState} can be used interchangeably with DatabaseMigrationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **UNDEFINED** \ + * **INITIAL** \ + * **FULL_BACKUP_UPLOAD_START** \ + * **LOG_SHIPPING_START** \ + * **UPLOAD_LOG_FILES_START** \ + * **CUTOVER_START** \ + * **POST_CUTOVER_COMPLETE** \ + * **COMPLETED** \ + * **CANCELLED** \ + * **FAILED** + */ +export type DatabaseMigrationState = string; + +/** Known values of {@link BackupMode} that the service accepts. */ +export enum KnownBackupMode { + CreateBackup = "CreateBackup", + ExistingBackup = "ExistingBackup" } /** - * @interface - * OData page of tasks - * @extends Array + * Defines values for BackupMode. \ + * {@link KnownBackupMode} can be used interchangeably with BackupMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CreateBackup** \ + * **ExistingBackup** */ -export interface TaskList extends Array { - /** - * URL to load the next page of tasks - */ - nextLink?: string; -} +export type BackupMode = string; -/** - * @interface - * OData page of project resources - * @extends Array +/** Known values of {@link LoginMigrationStage} that the service accepts. */ +export enum KnownLoginMigrationStage { + None = "None", + Initialize = "Initialize", + LoginMigration = "LoginMigration", + EstablishUserMapping = "EstablishUserMapping", + AssignRoleMembership = "AssignRoleMembership", + AssignRoleOwnership = "AssignRoleOwnership", + EstablishServerPermissions = "EstablishServerPermissions", + EstablishObjectPermissions = "EstablishObjectPermissions", + Completed = "Completed" +} + +/** + * Defines values for LoginMigrationStage. \ + * {@link KnownLoginMigrationStage} can be used interchangeably with LoginMigrationStage, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **Initialize** \ + * **LoginMigration** \ + * **EstablishUserMapping** \ + * **AssignRoleMembership** \ + * **AssignRoleOwnership** \ + * **EstablishServerPermissions** \ + * **EstablishObjectPermissions** \ + * **Completed** */ -export interface ProjectList extends Array { - /** - * URL to load the next page of projects - */ - nextLink?: string; +export type LoginMigrationStage = string; + +/** Known values of {@link SsisStoreType} that the service accepts. */ +export enum KnownSsisStoreType { + SsisCatalog = "SsisCatalog" } /** - * @interface - * OData page of quota objects - * @extends Array + * Defines values for SsisStoreType. \ + * {@link KnownSsisStoreType} can be used interchangeably with SsisStoreType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SsisCatalog** */ -export interface QuotaList extends Array { - /** - * URL to load the next page of quotas, or null or missing if this is the last page - */ - nextLink?: string; +export type SsisStoreType = string; + +/** Known values of {@link SsisMigrationOverwriteOption} that the service accepts. */ +export enum KnownSsisMigrationOverwriteOption { + Ignore = "Ignore", + Overwrite = "Overwrite" } /** - * @interface - * OData page of action (operation) objects - * @extends Array + * Defines values for SsisMigrationOverwriteOption. \ + * {@link KnownSsisMigrationOverwriteOption} can be used interchangeably with SsisMigrationOverwriteOption, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Ignore** \ + * **Overwrite** */ -export interface ServiceOperationList extends Array { - /** - * URL to load the next page of actions - */ - nextLink?: string; +export type SsisMigrationOverwriteOption = string; + +/** Known values of {@link SsisMigrationStage} that the service accepts. */ +export enum KnownSsisMigrationStage { + None = "None", + Initialize = "Initialize", + InProgress = "InProgress", + Completed = "Completed" } /** - * @interface - * OData page of files - * @extends Array + * Defines values for SsisMigrationStage. \ + * {@link KnownSsisMigrationStage} can be used interchangeably with SsisMigrationStage, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **Initialize** \ + * **InProgress** \ + * **Completed** */ -export interface FileList extends Array { - /** - * URL to load the next page of files - */ - nextLink?: string; +export type SsisMigrationStage = string; + +/** Known values of {@link MongoDbShardKeyOrder} that the service accepts. */ +export enum KnownMongoDbShardKeyOrder { + Forward = "Forward", + Reverse = "Reverse", + Hashed = "Hashed" } /** - * Defines values for CommandState. - * Possible values include: 'Unknown', 'Accepted', 'Running', 'Succeeded', 'Failed' - * @readonly - * @enum {string} + * Defines values for MongoDbShardKeyOrder. \ + * {@link KnownMongoDbShardKeyOrder} can be used interchangeably with MongoDbShardKeyOrder, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Forward** \ + * **Reverse** \ + * **Hashed** */ -export type CommandState = 'Unknown' | 'Accepted' | 'Running' | 'Succeeded' | 'Failed'; +export type MongoDbShardKeyOrder = string; -/** - * Defines values for SsisMigrationStage. - * Possible values include: 'None', 'Initialize', 'InProgress', 'Completed' - * @readonly - * @enum {string} - */ -export type SsisMigrationStage = 'None' | 'Initialize' | 'InProgress' | 'Completed'; +/** Known values of {@link MongoDbClusterType} that the service accepts. */ +export enum KnownMongoDbClusterType { + BlobContainer = "BlobContainer", + CosmosDb = "CosmosDb", + MongoDb = "MongoDb" +} /** - * Defines values for MigrationState. - * Possible values include: 'None', 'InProgress', 'Failed', 'Warning', 'Completed', 'Skipped', - * 'Stopped' - * @readonly - * @enum {string} + * Defines values for MongoDbClusterType. \ + * {@link KnownMongoDbClusterType} can be used interchangeably with MongoDbClusterType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **BlobContainer** \ + * **CosmosDb** \ + * **MongoDb** */ -export type MigrationState = 'None' | 'InProgress' | 'Failed' | 'Warning' | 'Completed' | 'Skipped' | 'Stopped'; +export type MongoDbClusterType = string; -/** - * Defines values for MigrationStatus. - * Possible values include: 'Default', 'Connecting', 'SourceAndTargetSelected', 'SelectLogins', - * 'Configured', 'Running', 'Error', 'Stopped', 'Completed', 'CompletedWithWarnings' - * @readonly - * @enum {string} - */ -export type MigrationStatus = 'Default' | 'Connecting' | 'SourceAndTargetSelected' | 'SelectLogins' | 'Configured' | 'Running' | 'Error' | 'Stopped' | 'Completed' | 'CompletedWithWarnings'; +/** Known values of {@link MongoDbErrorType} that the service accepts. */ +export enum KnownMongoDbErrorType { + Error = "Error", + ValidationError = "ValidationError", + Warning = "Warning" +} /** - * Defines values for SsisMigrationOverwriteOption. - * Possible values include: 'Ignore', 'Overwrite' - * @readonly - * @enum {string} + * Defines values for MongoDbErrorType. \ + * {@link KnownMongoDbErrorType} can be used interchangeably with MongoDbErrorType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Error** \ + * **ValidationError** \ + * **Warning** */ -export type SsisMigrationOverwriteOption = 'Ignore' | 'Overwrite'; +export type MongoDbErrorType = string; -/** - * Defines values for SsisStoreType. - * Possible values include: 'SsisCatalog' - * @readonly - * @enum {string} - */ -export type SsisStoreType = 'SsisCatalog'; +/** Known values of {@link MongoDbProgressResultType} that the service accepts. */ +export enum KnownMongoDbProgressResultType { + Migration = "Migration", + Database = "Database", + Collection = "Collection" +} /** - * Defines values for SqlSourcePlatform. - * Possible values include: 'SqlOnPrem' - * @readonly - * @enum {string} - */ -export type SqlSourcePlatform = 'SqlOnPrem'; + * Defines values for MongoDbProgressResultType. \ + * {@link KnownMongoDbProgressResultType} can be used interchangeably with MongoDbProgressResultType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Migration** \ + * **Database** \ + * **Collection** + */ +export type MongoDbProgressResultType = string; + +/** Known values of {@link MongoDbMigrationState} that the service accepts. */ +export enum KnownMongoDbMigrationState { + NotStarted = "NotStarted", + ValidatingInput = "ValidatingInput", + Initializing = "Initializing", + Restarting = "Restarting", + Copying = "Copying", + InitialReplay = "InitialReplay", + Replaying = "Replaying", + Finalizing = "Finalizing", + Complete = "Complete", + Canceled = "Canceled", + Failed = "Failed" +} + +/** + * Defines values for MongoDbMigrationState. \ + * {@link KnownMongoDbMigrationState} can be used interchangeably with MongoDbMigrationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotStarted** \ + * **ValidatingInput** \ + * **Initializing** \ + * **Restarting** \ + * **Copying** \ + * **InitialReplay** \ + * **Replaying** \ + * **Finalizing** \ + * **Complete** \ + * **Canceled** \ + * **Failed** + */ +export type MongoDbMigrationState = string; + +/** Known values of {@link MongoDbReplication} that the service accepts. */ +export enum KnownMongoDbReplication { + Disabled = "Disabled", + OneTime = "OneTime", + Continuous = "Continuous" +} + +/** + * Defines values for MongoDbReplication. \ + * {@link KnownMongoDbReplication} can be used interchangeably with MongoDbReplication, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled** \ + * **OneTime** \ + * **Continuous** + */ +export type MongoDbReplication = string; + +/** Known values of {@link DataMigrationResultCode} that the service accepts. */ +export enum KnownDataMigrationResultCode { + Initial = "Initial", + Completed = "Completed", + ObjectNotExistsInSource = "ObjectNotExistsInSource", + ObjectNotExistsInTarget = "ObjectNotExistsInTarget", + TargetObjectIsInaccessible = "TargetObjectIsInaccessible", + FatalError = "FatalError" +} + +/** + * Defines values for DataMigrationResultCode. \ + * {@link KnownDataMigrationResultCode} can be used interchangeably with DataMigrationResultCode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Initial** \ + * **Completed** \ + * **ObjectNotExistsInSource** \ + * **ObjectNotExistsInTarget** \ + * **TargetObjectIsInaccessible** \ + * **FatalError** + */ +export type DataMigrationResultCode = string; + +/** Known values of {@link ErrorType} that the service accepts. */ +export enum KnownErrorType { + Default = "Default", + Warning = "Warning", + Error = "Error" +} + +/** + * Defines values for ErrorType. \ + * {@link KnownErrorType} can be used interchangeably with ErrorType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default** \ + * **Warning** \ + * **Error** + */ +export type ErrorType = string; +/** Defines values for ServerLevelPermissionsGroup. */ +export type ServerLevelPermissionsGroup = + | "Default" + | "MigrationFromSqlServerToAzureDB" + | "MigrationFromSqlServerToAzureMI" + | "MigrationFromMySQLToAzureDBForMySQL"; + +/** Optional parameters. */ +export interface DatabaseMigrationsSqlMiGetOptionalParams + extends coreClient.OperationOptions { + /** Optional migration operation ID. If this is provided, then details of migration operation for that ID are retrieved. If not provided (default), then details related to most recent or current operation are retrieved. */ + migrationOperationId?: string; + /** The child resources to include in the response. */ + expand?: string; +} -/** - * Defines values for AuthenticationType. - * Possible values include: 'None', 'WindowsAuthentication', 'SqlAuthentication', - * 'ActiveDirectoryIntegrated', 'ActiveDirectoryPassword' - * @readonly - * @enum {string} - */ -export type AuthenticationType = 'None' | 'WindowsAuthentication' | 'SqlAuthentication' | 'ActiveDirectoryIntegrated' | 'ActiveDirectoryPassword'; +/** Contains response data for the get operation. */ +export type DatabaseMigrationsSqlMiGetResponse = DatabaseMigrationSqlMi; -/** - * Defines values for MongoDbErrorType. - * Possible values include: 'Error', 'ValidationError', 'Warning' - * @readonly - * @enum {string} - */ -export type MongoDbErrorType = 'Error' | 'ValidationError' | 'Warning'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for MongoDbMigrationState. - * Possible values include: 'NotStarted', 'ValidatingInput', 'Initializing', 'Restarting', - * 'Copying', 'InitialReplay', 'Replaying', 'Finalizing', 'Complete', 'Canceled', 'Failed' - * @readonly - * @enum {string} - */ -export type MongoDbMigrationState = 'NotStarted' | 'ValidatingInput' | 'Initializing' | 'Restarting' | 'Copying' | 'InitialReplay' | 'Replaying' | 'Finalizing' | 'Complete' | 'Canceled' | 'Failed'; +/** Contains response data for the createOrUpdate operation. */ +export type DatabaseMigrationsSqlMiCreateOrUpdateResponse = DatabaseMigrationSqlMi; -/** - * Defines values for MongoDbShardKeyOrder. - * Possible values include: 'Forward', 'Reverse', 'Hashed' - * @readonly - * @enum {string} - */ -export type MongoDbShardKeyOrder = 'Forward' | 'Reverse' | 'Hashed'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlMiCancelOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for MongoDbReplication. - * Possible values include: 'Disabled', 'OneTime', 'Continuous' - * @readonly - * @enum {string} - */ -export type MongoDbReplication = 'Disabled' | 'OneTime' | 'Continuous'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlMiCutoverOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for BackupType. - * Possible values include: 'Database', 'TransactionLog', 'File', 'DifferentialDatabase', - * 'DifferentialFile', 'Partial', 'DifferentialPartial' - * @readonly - * @enum {string} - */ -export type BackupType = 'Database' | 'TransactionLog' | 'File' | 'DifferentialDatabase' | 'DifferentialFile' | 'Partial' | 'DifferentialPartial'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlVmGetOptionalParams + extends coreClient.OperationOptions { + /** Optional migration operation ID. If this is provided, then details of migration operation for that ID are retrieved. If not provided (default), then details related to most recent or current operation are retrieved. */ + migrationOperationId?: string; + /** The child resources to include in the response. */ + expand?: string; +} -/** - * Defines values for BackupMode. - * Possible values include: 'CreateBackup', 'ExistingBackup' - * @readonly - * @enum {string} - */ -export type BackupMode = 'CreateBackup' | 'ExistingBackup'; +/** Contains response data for the get operation. */ +export type DatabaseMigrationsSqlVmGetResponse = DatabaseMigrationSqlVm; -/** - * Defines values for SyncTableMigrationState. - * Possible values include: 'BEFORE_LOAD', 'FULL_LOAD', 'COMPLETED', 'CANCELED', 'ERROR', 'FAILED' - * @readonly - * @enum {string} - */ -export type SyncTableMigrationState = 'BEFORE_LOAD' | 'FULL_LOAD' | 'COMPLETED' | 'CANCELED' | 'ERROR' | 'FAILED'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for SyncDatabaseMigrationReportingState. - * Possible values include: 'UNDEFINED', 'CONFIGURING', 'INITIALIAZING', 'STARTING', 'RUNNING', - * 'READY_TO_COMPLETE', 'COMPLETING', 'COMPLETE', 'CANCELLING', 'CANCELLED', 'FAILED' - * @readonly - * @enum {string} - */ -export type SyncDatabaseMigrationReportingState = 'UNDEFINED' | 'CONFIGURING' | 'INITIALIAZING' | 'STARTING' | 'RUNNING' | 'READY_TO_COMPLETE' | 'COMPLETING' | 'COMPLETE' | 'CANCELLING' | 'CANCELLED' | 'FAILED'; +/** Contains response data for the createOrUpdate operation. */ +export type DatabaseMigrationsSqlVmCreateOrUpdateResponse = DatabaseMigrationSqlVm; -/** - * Defines values for ValidationStatus. - * Possible values include: 'Default', 'NotStarted', 'Initialized', 'InProgress', 'Completed', - * 'CompletedWithIssues', 'Stopped', 'Failed' - * @readonly - * @enum {string} - */ -export type ValidationStatus = 'Default' | 'NotStarted' | 'Initialized' | 'InProgress' | 'Completed' | 'CompletedWithIssues' | 'Stopped' | 'Failed'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlVmCancelOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for Severity. - * Possible values include: 'Message', 'Warning', 'Error' - * @readonly - * @enum {string} - */ -export type Severity = 'Message' | 'Warning' | 'Error'; +/** Optional parameters. */ +export interface DatabaseMigrationsSqlVmCutoverOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for UpdateActionType. - * Possible values include: 'DeletedOnTarget', 'ChangedOnTarget', 'AddedOnTarget' - * @readonly - * @enum {string} - */ -export type UpdateActionType = 'DeletedOnTarget' | 'ChangedOnTarget' | 'AddedOnTarget'; +/** Optional parameters. */ +export interface OperationsListOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ObjectType. - * Possible values include: 'StoredProcedures', 'Table', 'User', 'View', 'Function' - * @readonly - * @enum {string} - */ -export type ObjectType = 'StoredProcedures' | 'Table' | 'User' | 'View' | 'Function'; +/** Contains response data for the list operation. */ +export type OperationsListResponse = OperationListResult; -/** - * Defines values for DatabaseMigrationStage. - * Possible values include: 'None', 'Initialize', 'Backup', 'FileCopy', 'Restore', 'Completed' - * @readonly - * @enum {string} - */ -export type DatabaseMigrationStage = 'None' | 'Initialize' | 'Backup' | 'FileCopy' | 'Restore' | 'Completed'; +/** Optional parameters. */ +export interface OperationsListNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for BackupFileStatus. - * Possible values include: 'Arrived', 'Queued', 'Uploading', 'Uploaded', 'Restoring', 'Restored', - * 'Cancelled' - * @readonly - * @enum {string} - */ -export type BackupFileStatus = 'Arrived' | 'Queued' | 'Uploading' | 'Uploaded' | 'Restoring' | 'Restored' | 'Cancelled'; +/** Contains response data for the listNext operation. */ +export type OperationsListNextResponse = OperationListResult; -/** - * Defines values for DatabaseMigrationState. - * Possible values include: 'UNDEFINED', 'INITIAL', 'FULL_BACKUP_UPLOAD_START', - * 'LOG_SHIPPING_START', 'UPLOAD_LOG_FILES_START', 'CUTOVER_START', 'POST_CUTOVER_COMPLETE', - * 'COMPLETED', 'CANCELLED', 'FAILED' - * @readonly - * @enum {string} - */ -export type DatabaseMigrationState = 'UNDEFINED' | 'INITIAL' | 'FULL_BACKUP_UPLOAD_START' | 'LOG_SHIPPING_START' | 'UPLOAD_LOG_FILES_START' | 'CUTOVER_START' | 'POST_CUTOVER_COMPLETE' | 'COMPLETED' | 'CANCELLED' | 'FAILED'; +/** Optional parameters. */ +export interface SqlMigrationServicesGetOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for LoginMigrationStage. - * Possible values include: 'None', 'Initialize', 'LoginMigration', 'EstablishUserMapping', - * 'AssignRoleMembership', 'AssignRoleOwnership', 'EstablishServerPermissions', - * 'EstablishObjectPermissions', 'Completed' - * @readonly - * @enum {string} - */ -export type LoginMigrationStage = 'None' | 'Initialize' | 'LoginMigration' | 'EstablishUserMapping' | 'AssignRoleMembership' | 'AssignRoleOwnership' | 'EstablishServerPermissions' | 'EstablishObjectPermissions' | 'Completed'; +/** Contains response data for the get operation. */ +export type SqlMigrationServicesGetResponse = SqlMigrationService; -/** - * Defines values for LoginType. - * Possible values include: 'WindowsUser', 'WindowsGroup', 'SqlLogin', 'Certificate', - * 'AsymmetricKey', 'ExternalUser', 'ExternalGroup' - * @readonly - * @enum {string} - */ -export type LoginType = 'WindowsUser' | 'WindowsGroup' | 'SqlLogin' | 'Certificate' | 'AsymmetricKey' | 'ExternalUser' | 'ExternalGroup'; +/** Optional parameters. */ +export interface SqlMigrationServicesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for DatabaseState. - * Possible values include: 'Online', 'Restoring', 'Recovering', 'RecoveryPending', 'Suspect', - * 'Emergency', 'Offline', 'Copying', 'OfflineSecondary' - * @readonly - * @enum {string} - */ -export type DatabaseState = 'Online' | 'Restoring' | 'Recovering' | 'RecoveryPending' | 'Suspect' | 'Emergency' | 'Offline' | 'Copying' | 'OfflineSecondary'; +/** Contains response data for the createOrUpdate operation. */ +export type SqlMigrationServicesCreateOrUpdateResponse = SqlMigrationService; -/** - * Defines values for DatabaseCompatLevel. - * Possible values include: 'CompatLevel80', 'CompatLevel90', 'CompatLevel100', 'CompatLevel110', - * 'CompatLevel120', 'CompatLevel130', 'CompatLevel140' - * @readonly - * @enum {string} - */ -export type DatabaseCompatLevel = 'CompatLevel80' | 'CompatLevel90' | 'CompatLevel100' | 'CompatLevel110' | 'CompatLevel120' | 'CompatLevel130' | 'CompatLevel140'; +/** Optional parameters. */ +export interface SqlMigrationServicesDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for DatabaseFileType. - * Possible values include: 'Rows', 'Log', 'Filestream', 'NotSupported', 'Fulltext' - * @readonly - * @enum {string} - */ -export type DatabaseFileType = 'Rows' | 'Log' | 'Filestream' | 'NotSupported' | 'Fulltext'; +/** Optional parameters. */ +export interface SqlMigrationServicesUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Defines values for ServerLevelPermissionsGroup. - * Possible values include: 'Default', 'MigrationFromSqlServerToAzureDB', - * 'MigrationFromSqlServerToAzureMI', 'MigrationFromMySQLToAzureDBForMySQL' - * @readonly - * @enum {string} - */ -export type ServerLevelPermissionsGroup = 'Default' | 'MigrationFromSqlServerToAzureDB' | 'MigrationFromSqlServerToAzureMI' | 'MigrationFromMySQLToAzureDBForMySQL'; +/** Contains response data for the update operation. */ +export type SqlMigrationServicesUpdateResponse = SqlMigrationService; -/** - * Defines values for MongoDbClusterType. - * Possible values include: 'BlobContainer', 'CosmosDb', 'MongoDb' - * @readonly - * @enum {string} - */ -export type MongoDbClusterType = 'BlobContainer' | 'CosmosDb' | 'MongoDb'; +/** Optional parameters. */ +export interface SqlMigrationServicesListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for TaskState. - * Possible values include: 'Unknown', 'Queued', 'Running', 'Canceled', 'Succeeded', 'Failed', - * 'FailedInputValidation', 'Faulted' - * @readonly - * @enum {string} - */ -export type TaskState = 'Unknown' | 'Queued' | 'Running' | 'Canceled' | 'Succeeded' | 'Failed' | 'FailedInputValidation' | 'Faulted'; +/** Contains response data for the listByResourceGroup operation. */ +export type SqlMigrationServicesListByResourceGroupResponse = SqlMigrationListResult; -/** - * Defines values for ServiceProvisioningState. - * Possible values include: 'Accepted', 'Deleting', 'Deploying', 'Stopped', 'Stopping', 'Starting', - * 'FailedToStart', 'FailedToStop', 'Succeeded', 'Failed' - * @readonly - * @enum {string} - */ -export type ServiceProvisioningState = 'Accepted' | 'Deleting' | 'Deploying' | 'Stopped' | 'Stopping' | 'Starting' | 'FailedToStart' | 'FailedToStop' | 'Succeeded' | 'Failed'; +/** Optional parameters. */ +export interface SqlMigrationServicesListAuthKeysOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ProjectTargetPlatform. - * Possible values include: 'SQLDB', 'SQLMI', 'AzureDbForMySql', 'AzureDbForPostgreSql', 'MongoDb', - * 'Unknown' - * @readonly - * @enum {string} - */ -export type ProjectTargetPlatform = 'SQLDB' | 'SQLMI' | 'AzureDbForMySql' | 'AzureDbForPostgreSql' | 'MongoDb' | 'Unknown'; +/** Contains response data for the listAuthKeys operation. */ +export type SqlMigrationServicesListAuthKeysResponse = AuthenticationKeys; -/** - * Defines values for ProjectSourcePlatform. - * Possible values include: 'SQL', 'MySQL', 'PostgreSql', 'MongoDb', 'Unknown' - * @readonly - * @enum {string} - */ -export type ProjectSourcePlatform = 'SQL' | 'MySQL' | 'PostgreSql' | 'MongoDb' | 'Unknown'; +/** Optional parameters. */ +export interface SqlMigrationServicesRegenerateAuthKeysOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ProjectProvisioningState. - * Possible values include: 'Deleting', 'Succeeded' - * @readonly - * @enum {string} - */ -export type ProjectProvisioningState = 'Deleting' | 'Succeeded'; +/** Contains response data for the regenerateAuthKeys operation. */ +export type SqlMigrationServicesRegenerateAuthKeysResponse = RegenAuthKeys; -/** - * Defines values for NameCheckFailureReason. - * Possible values include: 'AlreadyExists', 'Invalid' - * @readonly - * @enum {string} - */ -export type NameCheckFailureReason = 'AlreadyExists' | 'Invalid'; +/** Optional parameters. */ +export interface SqlMigrationServicesDeleteNodeOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ServiceScalability. - * Possible values include: 'none', 'manual', 'automatic' - * @readonly - * @enum {string} - */ -export type ServiceScalability = 'none' | 'manual' | 'automatic'; +/** Contains response data for the deleteNode operation. */ +export type SqlMigrationServicesDeleteNodeResponse = DeleteNode; -/** - * Defines values for ResourceSkuRestrictionsType. - * Possible values include: 'location' - * @readonly - * @enum {string} - */ -export type ResourceSkuRestrictionsType = 'location'; +/** Optional parameters. */ +export interface SqlMigrationServicesListMigrationsOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ResourceSkuRestrictionsReasonCode. - * Possible values include: 'QuotaId', 'NotAvailableForSubscription' - * @readonly - * @enum {string} - */ -export type ResourceSkuRestrictionsReasonCode = 'QuotaId' | 'NotAvailableForSubscription'; +/** Contains response data for the listMigrations operation. */ +export type SqlMigrationServicesListMigrationsResponse = DatabaseMigrationListResult; -/** - * Defines values for ResourceSkuCapacityScaleType. - * Possible values include: 'Automatic', 'Manual', 'None' - * @readonly - * @enum {string} - */ -export type ResourceSkuCapacityScaleType = 'Automatic' | 'Manual' | 'None'; +/** Optional parameters. */ +export interface SqlMigrationServicesListMonitoringDataOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for MySqlTargetPlatformType. - * Possible values include: 'SqlServer', 'AzureDbForMySQL' - * @readonly - * @enum {string} - */ -export type MySqlTargetPlatformType = 'SqlServer' | 'AzureDbForMySQL'; +/** Contains response data for the listMonitoringData operation. */ +export type SqlMigrationServicesListMonitoringDataResponse = IntegrationRuntimeMonitoringData; -/** - * Defines values for SchemaMigrationOption. - * Possible values include: 'None', 'ExtractFromSource', 'UseStorageFile' - * @readonly - * @enum {string} - */ -export type SchemaMigrationOption = 'None' | 'ExtractFromSource' | 'UseStorageFile'; +/** Optional parameters. */ +export interface SqlMigrationServicesListBySubscriptionOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for SchemaMigrationStage. - * Possible values include: 'NotStarted', 'ValidatingInputs', 'CollectingObjects', - * 'DownloadingScript', 'GeneratingScript', 'UploadingScript', 'DeployingSchema', 'Completed', - * 'CompletedWithWarnings', 'Failed' - * @readonly - * @enum {string} - */ -export type SchemaMigrationStage = 'NotStarted' | 'ValidatingInputs' | 'CollectingObjects' | 'DownloadingScript' | 'GeneratingScript' | 'UploadingScript' | 'DeployingSchema' | 'Completed' | 'CompletedWithWarnings' | 'Failed'; +/** Contains response data for the listBySubscription operation. */ +export type SqlMigrationServicesListBySubscriptionResponse = SqlMigrationListResult; + +/** Optional parameters. */ +export interface SqlMigrationServicesListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type SqlMigrationServicesListByResourceGroupNextResponse = SqlMigrationListResult; + +/** Optional parameters. */ +export interface SqlMigrationServicesListMigrationsNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for DataMigrationResultCode. - * Possible values include: 'Initial', 'Completed', 'ObjectNotExistsInSource', - * 'ObjectNotExistsInTarget', 'TargetObjectIsInaccessible', 'FatalError' - * @readonly - * @enum {string} - */ -export type DataMigrationResultCode = 'Initial' | 'Completed' | 'ObjectNotExistsInSource' | 'ObjectNotExistsInTarget' | 'TargetObjectIsInaccessible' | 'FatalError'; +/** Contains response data for the listMigrationsNext operation. */ +export type SqlMigrationServicesListMigrationsNextResponse = DatabaseMigrationListResult; -/** - * Defines values for ErrorType. - * Possible values include: 'Default', 'Warning', 'Error' - * @readonly - * @enum {string} - */ -export type ErrorType = 'Default' | 'Warning' | 'Error'; +/** Optional parameters. */ +export interface SqlMigrationServicesListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Defines values for ResultType. - * Possible values include: 'Migration', 'Database', 'Collection' - * @readonly - * @enum {string} - */ -export type ResultType = 'Migration' | 'Database' | 'Collection'; +/** Contains response data for the listBySubscriptionNext operation. */ +export type SqlMigrationServicesListBySubscriptionNextResponse = SqlMigrationListResult; -/** - * Contains response data for the listSkus operation. - */ -export type ResourceSkusListSkusResponse = ResourceSkusResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ResourceSkusListSkusOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ResourceSkusResult; - }; -}; +/** Contains response data for the listSkus operation. */ +export type ResourceSkusListSkusResponse = ResourceSkusResult; -/** - * Contains response data for the listSkusNext operation. - */ -export type ResourceSkusListSkusNextResponse = ResourceSkusResult & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ResourceSkusListSkusNextOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ResourceSkusResult; - }; -}; +/** Contains response data for the listSkusNext operation. */ +export type ResourceSkusListSkusNextResponse = ResourceSkusResult; -/** - * Contains response data for the createOrUpdate operation. - */ -export type ServicesCreateOrUpdateResponse = DataMigrationService & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServicesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationService; - }; -}; +/** Contains response data for the createOrUpdate operation. */ +export type ServicesCreateOrUpdateResponse = DataMigrationService; -/** - * Contains response data for the get operation. - */ -export type ServicesGetResponse = DataMigrationService & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServicesGetOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationService; - }; -}; +/** Contains response data for the get operation. */ +export type ServicesGetResponse = DataMigrationService; -/** - * Contains response data for the update operation. - */ -export type ServicesUpdateResponse = DataMigrationService & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServicesDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delete the resource even if it contains running tasks */ + deleteRunningTasks?: boolean; + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationService; - }; -}; +/** Optional parameters. */ +export interface ServicesUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Contains response data for the checkStatus operation. - */ -export type ServicesCheckStatusResponse = DataMigrationServiceStatusResponse & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the update operation. */ +export type ServicesUpdateResponse = DataMigrationService; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationServiceStatusResponse; - }; -}; +/** Optional parameters. */ +export interface ServicesCheckStatusOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listSkus operation. - */ -export type ServicesListSkusResponse = ServiceSkuList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the checkStatus operation. */ +export type ServicesCheckStatusResponse = DataMigrationServiceStatusResponse; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ServiceSkuList; - }; -}; +/** Optional parameters. */ +export interface ServicesStartOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} -/** - * Contains response data for the checkChildrenNameAvailability operation. - */ -export type ServicesCheckChildrenNameAvailabilityResponse = NameAvailabilityResponse & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServicesStopOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: NameAvailabilityResponse; - }; -}; +/** Optional parameters. */ +export interface ServicesListSkusOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listByResourceGroup operation. - */ -export type ServicesListByResourceGroupResponse = DataMigrationServiceList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listSkus operation. */ +export type ServicesListSkusResponse = ServiceSkuList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationServiceList; - }; -}; +/** Optional parameters. */ +export interface ServicesCheckChildrenNameAvailabilityOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the list operation. - */ -export type ServicesListResponse = DataMigrationServiceList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the checkChildrenNameAvailability operation. */ +export type ServicesCheckChildrenNameAvailabilityResponse = NameAvailabilityResponse; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationServiceList; - }; -}; +/** Optional parameters. */ +export interface ServicesListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the checkNameAvailability operation. - */ -export type ServicesCheckNameAvailabilityResponse = NameAvailabilityResponse & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listByResourceGroup operation. */ +export type ServicesListByResourceGroupResponse = DataMigrationServiceList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: NameAvailabilityResponse; - }; -}; +/** Optional parameters. */ +export interface ServicesListOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the beginCreateOrUpdate operation. - */ -export type ServicesBeginCreateOrUpdateResponse = DataMigrationService & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the list operation. */ +export type ServicesListResponse = DataMigrationServiceList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationService; - }; -}; +/** Optional parameters. */ +export interface ServicesCheckNameAvailabilityOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the beginUpdate operation. - */ -export type ServicesBeginUpdateResponse = DataMigrationService & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the checkNameAvailability operation. */ +export type ServicesCheckNameAvailabilityResponse = NameAvailabilityResponse; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationService; - }; -}; +/** Optional parameters. */ +export interface ServicesListSkusNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listSkusNext operation. - */ -export type ServicesListSkusNextResponse = ServiceSkuList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listSkusNext operation. */ +export type ServicesListSkusNextResponse = ServiceSkuList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ServiceSkuList; - }; -}; +/** Optional parameters. */ +export interface ServicesListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listByResourceGroupNext operation. - */ -export type ServicesListByResourceGroupNextResponse = DataMigrationServiceList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listByResourceGroupNext operation. */ +export type ServicesListByResourceGroupNextResponse = DataMigrationServiceList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationServiceList; - }; -}; +/** Optional parameters. */ +export interface ServicesListNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listNext operation. - */ -export type ServicesListNextResponse = DataMigrationServiceList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listNext operation. */ +export type ServicesListNextResponse = DataMigrationServiceList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: DataMigrationServiceList; - }; -}; +/** Optional parameters. */ +export interface TasksListOptionalParams extends coreClient.OperationOptions { + /** Filter tasks by task type */ + taskType?: string; +} -/** - * Contains response data for the list operation. - */ -export type TasksListResponse = TaskList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the list operation. */ +export type TasksListResponse = TaskList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: TaskList; - }; -}; +/** Optional parameters. */ +export interface TasksCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the createOrUpdate operation. - */ -export type TasksCreateOrUpdateResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the createOrUpdate operation. */ +export type TasksCreateOrUpdateResponse = ProjectTask; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Optional parameters. */ +export interface TasksGetOptionalParams extends coreClient.OperationOptions { + /** Expand the response */ + expand?: string; +} -/** - * Contains response data for the get operation. - */ -export type TasksGetResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the get operation. */ +export type TasksGetResponse = ProjectTask; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Optional parameters. */ +export interface TasksDeleteOptionalParams extends coreClient.OperationOptions { + /** Delete the resource even if it contains running tasks */ + deleteRunningTasks?: boolean; +} -/** - * Contains response data for the update operation. - */ -export type TasksUpdateResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface TasksUpdateOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Contains response data for the update operation. */ +export type TasksUpdateResponse = ProjectTask; -/** - * Contains response data for the cancel operation. - */ -export type TasksCancelResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface TasksCancelOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Contains response data for the cancel operation. */ +export type TasksCancelResponse = ProjectTask; -/** - * Contains response data for the command operation. - */ -export type TasksCommandResponse = CommandPropertiesUnion & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface TasksCommandOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: CommandPropertiesUnion; - }; -}; +/** Contains response data for the command operation. */ +export type TasksCommandResponse = CommandPropertiesUnion; -/** - * Contains response data for the listNext operation. - */ -export type TasksListNextResponse = TaskList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface TasksListNextOptionalParams + extends coreClient.OperationOptions { + /** Filter tasks by task type */ + taskType?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: TaskList; - }; -}; +/** Contains response data for the listNext operation. */ +export type TasksListNextResponse = TaskList; -/** - * Contains response data for the list operation. - */ -export type ServiceTasksListResponse = TaskList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServiceTasksListOptionalParams + extends coreClient.OperationOptions { + /** Filter tasks by task type */ + taskType?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: TaskList; - }; -}; +/** Contains response data for the list operation. */ +export type ServiceTasksListResponse = TaskList; -/** - * Contains response data for the createOrUpdate operation. - */ -export type ServiceTasksCreateOrUpdateResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServiceTasksCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Contains response data for the createOrUpdate operation. */ +export type ServiceTasksCreateOrUpdateResponse = ProjectTask; -/** - * Contains response data for the get operation. - */ -export type ServiceTasksGetResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServiceTasksGetOptionalParams + extends coreClient.OperationOptions { + /** Expand the response */ + expand?: string; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Contains response data for the get operation. */ +export type ServiceTasksGetResponse = ProjectTask; -/** - * Contains response data for the update operation. - */ -export type ServiceTasksUpdateResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ServiceTasksDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delete the resource even if it contains running tasks */ + deleteRunningTasks?: boolean; +} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Optional parameters. */ +export interface ServiceTasksUpdateOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the cancel operation. - */ -export type ServiceTasksCancelResponse = ProjectTask & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the update operation. */ +export type ServiceTasksUpdateResponse = ProjectTask; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectTask; - }; -}; +/** Optional parameters. */ +export interface ServiceTasksCancelOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listNext operation. - */ -export type ServiceTasksListNextResponse = TaskList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the cancel operation. */ +export type ServiceTasksCancelResponse = ProjectTask; - /** - * The response body as parsed JSON or XML - */ - parsedBody: TaskList; - }; -}; +/** Optional parameters. */ +export interface ServiceTasksListNextOptionalParams + extends coreClient.OperationOptions { + /** Filter tasks by task type */ + taskType?: string; +} -/** - * Contains response data for the list operation. - */ -export type ProjectsListResponse = ProjectList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listNext operation. */ +export type ServiceTasksListNextResponse = TaskList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectList; - }; -}; +/** Optional parameters. */ +export interface ProjectsListOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the createOrUpdate operation. - */ -export type ProjectsCreateOrUpdateResponse = Project & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the list operation. */ +export type ProjectsListResponse = ProjectList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Project; - }; -}; +/** Optional parameters. */ +export interface ProjectsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the get operation. - */ -export type ProjectsGetResponse = Project & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the createOrUpdate operation. */ +export type ProjectsCreateOrUpdateResponse = Project; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Project; - }; -}; +/** Optional parameters. */ +export interface ProjectsGetOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the update operation. - */ -export type ProjectsUpdateResponse = Project & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the get operation. */ +export type ProjectsGetResponse = Project; - /** - * The response body as parsed JSON or XML - */ - parsedBody: Project; - }; -}; +/** Optional parameters. */ +export interface ProjectsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delete the resource even if it contains running tasks */ + deleteRunningTasks?: boolean; +} -/** - * Contains response data for the listNext operation. - */ -export type ProjectsListNextResponse = ProjectList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ProjectsUpdateOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectList; - }; -}; +/** Contains response data for the update operation. */ +export type ProjectsUpdateResponse = Project; -/** - * Contains response data for the list operation. - */ -export type UsagesListResponse = QuotaList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface ProjectsListNextOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: QuotaList; - }; -}; +/** Contains response data for the listNext operation. */ +export type ProjectsListNextResponse = ProjectList; -/** - * Contains response data for the listNext operation. - */ -export type UsagesListNextResponse = QuotaList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface UsagesListOptionalParams extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: QuotaList; - }; -}; +/** Contains response data for the list operation. */ +export type UsagesListResponse = QuotaList; -/** - * Contains response data for the list operation. - */ -export type OperationsListResponse = ServiceOperationList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface UsagesListNextOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ServiceOperationList; - }; -}; +/** Contains response data for the listNext operation. */ +export type UsagesListNextResponse = QuotaList; -/** - * Contains response data for the listNext operation. - */ -export type OperationsListNextResponse = ServiceOperationList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface FilesListOptionalParams extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ServiceOperationList; - }; -}; +/** Contains response data for the list operation. */ +export type FilesListResponse = FileList; -/** - * Contains response data for the list operation. - */ -export type FilesListResponse = FileList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface FilesGetOptionalParams extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: FileList; - }; -}; +/** Contains response data for the get operation. */ +export type FilesGetResponse = ProjectFile; -/** - * Contains response data for the get operation. - */ -export type FilesGetResponse = ProjectFile & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface FilesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectFile; - }; -}; +/** Contains response data for the createOrUpdate operation. */ +export type FilesCreateOrUpdateResponse = ProjectFile; -/** - * Contains response data for the createOrUpdate operation. - */ -export type FilesCreateOrUpdateResponse = ProjectFile & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Optional parameters. */ +export interface FilesDeleteOptionalParams + extends coreClient.OperationOptions {} - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectFile; - }; -}; +/** Optional parameters. */ +export interface FilesUpdateOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the update operation. - */ -export type FilesUpdateResponse = ProjectFile & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the update operation. */ +export type FilesUpdateResponse = ProjectFile; - /** - * The response body as parsed JSON or XML - */ - parsedBody: ProjectFile; - }; -}; +/** Optional parameters. */ +export interface FilesReadOptionalParams extends coreClient.OperationOptions {} -/** - * Contains response data for the read operation. - */ -export type FilesReadResponse = FileStorageInfo & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the read operation. */ +export type FilesReadResponse = FileStorageInfo; - /** - * The response body as parsed JSON or XML - */ - parsedBody: FileStorageInfo; - }; -}; +/** Optional parameters. */ +export interface FilesReadWriteOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the readWrite operation. - */ -export type FilesReadWriteResponse = FileStorageInfo & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the readWrite operation. */ +export type FilesReadWriteResponse = FileStorageInfo; - /** - * The response body as parsed JSON or XML - */ - parsedBody: FileStorageInfo; - }; -}; +/** Optional parameters. */ +export interface FilesListNextOptionalParams + extends coreClient.OperationOptions {} -/** - * Contains response data for the listNext operation. - */ -export type FilesListNextResponse = FileList & { - /** - * The underlying HTTP response. - */ - _response: msRest.HttpResponse & { - /** - * The response body as text (string format) - */ - bodyAsText: string; +/** Contains response data for the listNext operation. */ +export type FilesListNextResponse = FileList; - /** - * The response body as parsed JSON or XML - */ - parsedBody: FileList; - }; -}; +/** Optional parameters. */ +export interface DataMigrationManagementClientOptionalParams + extends coreClient.ServiceClientOptions { + /** server parameter */ + $host?: string; + /** Api Version */ + apiVersion?: string; + /** Overrides client endpoint. */ + endpoint?: string; +} diff --git a/sdk/datamigration/arm-datamigration/src/models/mappers.ts b/sdk/datamigration/arm-datamigration/src/models/mappers.ts index f2bf55c66195..fdcb6b5f5a0d 100644 --- a/sdk/datamigration/arm-datamigration/src/models/mappers.ts +++ b/sdk/datamigration/arm-datamigration/src/models/mappers.ts @@ -1,111 +1,166 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js"; -import * as msRest from "@azure/ms-rest-js"; +import * as coreClient from "@azure/core-client"; -export const CloudError = CloudErrorMapper; -export const BaseResource = BaseResourceMapper; - -export const Resource: msRest.CompositeMapper = { - serializedName: "Resource", +export const SystemData: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Resource", + className: "SystemData", modelProperties: { - id: { - readOnly: true, - serializedName: "id", + createdBy: { + serializedName: "createdBy", type: { name: "String" } }, - name: { - readOnly: true, - serializedName: "name", + createdByType: { + serializedName: "createdByType", type: { name: "String" } }, - type: { - readOnly: true, - serializedName: "type", + createdAt: { + serializedName: "createdAt", + type: { + name: "DateTime" + } + }, + lastModifiedBy: { + serializedName: "lastModifiedBy", + type: { + name: "String" + } + }, + lastModifiedByType: { + serializedName: "lastModifiedByType", type: { name: "String" } + }, + lastModifiedAt: { + serializedName: "lastModifiedAt", + type: { + name: "DateTime" + } } } } }; -export const TrackedResource: msRest.CompositeMapper = { - serializedName: "TrackedResource", +export const MigrationStatusDetails: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TrackedResource", + className: "MigrationStatusDetails", modelProperties: { - ...Resource.type.modelProperties, - tags: { - serializedName: "tags", + migrationState: { + serializedName: "migrationState", + readOnly: true, type: { - name: "Dictionary", - value: { + name: "String" + } + }, + fullBackupSetInfo: { + serializedName: "fullBackupSetInfo", + type: { + name: "Composite", + className: "SqlBackupSetInfo" + } + }, + lastRestoredBackupSetInfo: { + serializedName: "lastRestoredBackupSetInfo", + type: { + name: "Composite", + className: "SqlBackupSetInfo" + } + }, + activeBackupSets: { + serializedName: "activeBackupSets", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SqlBackupSetInfo" + } + } + } + }, + invalidFiles: { + serializedName: "invalidFiles", + readOnly: true, + type: { + name: "Sequence", + element: { type: { name: "String" } } } }, - location: { - required: true, - serializedName: "location", + blobContainerName: { + serializedName: "blobContainerName", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const ProjectFileProperties: msRest.CompositeMapper = { - serializedName: "ProjectFileProperties", - type: { - name: "Composite", - className: "ProjectFileProperties", - modelProperties: { - extension: { - serializedName: "extension", + }, + isFullBackupRestored: { + serializedName: "isFullBackupRestored", + readOnly: true, + type: { + name: "Boolean" + } + }, + restoreBlockingReason: { + serializedName: "restoreBlockingReason", + readOnly: true, type: { name: "String" } }, - filePath: { - serializedName: "filePath", + completeRestoreErrorMessage: { + serializedName: "completeRestoreErrorMessage", + readOnly: true, type: { name: "String" } }, - lastModified: { + fileUploadBlockingErrors: { + serializedName: "fileUploadBlockingErrors", readOnly: true, - serializedName: "lastModified", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - mediaType: { - serializedName: "mediaType", + currentRestoringFilename: { + serializedName: "currentRestoringFilename", + readOnly: true, type: { name: "String" } }, - size: { + lastRestoredFilename: { + serializedName: "lastRestoredFilename", + readOnly: true, + type: { + name: "String" + } + }, + pendingLogBackupsCount: { + serializedName: "pendingLogBackupsCount", readOnly: true, - serializedName: "size", type: { name: "Number" } @@ -114,56 +169,95 @@ export const ProjectFileProperties: msRest.CompositeMapper = { } }; -export const ProjectFile: msRest.CompositeMapper = { - serializedName: "ProjectFile", +export const SqlBackupSetInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ProjectFile", + className: "SqlBackupSetInfo", modelProperties: { - ...Resource.type.modelProperties, - etag: { - serializedName: "etag", + backupSetId: { + serializedName: "backupSetId", + readOnly: true, type: { - name: "String" + name: "Uuid" } }, - properties: { - serializedName: "properties", + firstLSN: { + serializedName: "firstLSN", + readOnly: true, type: { - name: "Composite", - className: "ProjectFileProperties" + name: "String" } - } - } - } -}; - -export const ODataError: msRest.CompositeMapper = { - serializedName: "ODataError", - type: { - name: "Composite", - className: "ODataError", - modelProperties: { - code: { - serializedName: "code", + }, + lastLSN: { + serializedName: "lastLSN", + readOnly: true, type: { name: "String" } }, - message: { - serializedName: "message", + backupType: { + serializedName: "backupType", + readOnly: true, type: { name: "String" } }, - details: { - serializedName: "details", + listOfBackupFiles: { + serializedName: "listOfBackupFiles", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ODataError" + className: "SqlBackupFileInfo" + } + } + } + }, + backupStartDate: { + serializedName: "backupStartDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + backupFinishDate: { + serializedName: "backupFinishDate", + readOnly: true, + type: { + name: "DateTime" + } + }, + isBackupRestored: { + serializedName: "isBackupRestored", + readOnly: true, + type: { + name: "Boolean" + } + }, + hasBackupChecksums: { + serializedName: "hasBackupChecksums", + readOnly: true, + type: { + name: "Boolean" + } + }, + familyCount: { + serializedName: "familyCount", + readOnly: true, + type: { + name: "Number" + } + }, + ignoreReasons: { + serializedName: "ignoreReasons", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String" } } } @@ -172,125 +266,136 @@ export const ODataError: msRest.CompositeMapper = { } }; -export const ReportableException: msRest.CompositeMapper = { - serializedName: "ReportableException", +export const SqlBackupFileInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ReportableException", + className: "SqlBackupFileInfo", modelProperties: { - message: { - serializedName: "message", + fileName: { + serializedName: "fileName", + readOnly: true, type: { name: "String" } }, - actionableMessage: { - serializedName: "actionableMessage", + status: { + serializedName: "status", + readOnly: true, type: { name: "String" } }, - filePath: { - serializedName: "filePath", + totalSize: { + serializedName: "totalSize", + readOnly: true, type: { - name: "String" + name: "Number" } }, - lineNumber: { - serializedName: "lineNumber", + dataRead: { + serializedName: "dataRead", + readOnly: true, type: { - name: "String" + name: "Number" } }, - hResult: { - serializedName: "hResult", + dataWritten: { + serializedName: "dataWritten", + readOnly: true, type: { name: "Number" } }, - stackTrace: { - serializedName: "stackTrace", + copyThroughput: { + serializedName: "copyThroughput", + readOnly: true, type: { - name: "String" + name: "Number" + } + }, + copyDuration: { + serializedName: "copyDuration", + readOnly: true, + type: { + name: "Number" + } + }, + familySequenceNumber: { + serializedName: "familySequenceNumber", + readOnly: true, + type: { + name: "Number" } } } } }; -export const MigrateMISyncCompleteCommandOutput: msRest.CompositeMapper = { - serializedName: "MigrateMISyncCompleteCommandOutput", +export const BackupConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateMISyncCompleteCommandOutput", + className: "BackupConfiguration", modelProperties: { - errors: { - serializedName: "errors", + sourceLocation: { + serializedName: "sourceLocation", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Composite", + className: "SourceLocation" + } + }, + targetLocation: { + serializedName: "targetLocation", + type: { + name: "Composite", + className: "TargetLocation" } } } } }; -export const MigrateMISyncCompleteCommandInput: msRest.CompositeMapper = { - serializedName: "MigrateMISyncCompleteCommandInput", +export const SourceLocation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateMISyncCompleteCommandInput", + className: "SourceLocation", modelProperties: { - sourceDatabaseName: { - required: true, - serializedName: "sourceDatabaseName", + fileShare: { + serializedName: "fileShare", type: { - name: "String" + name: "Composite", + className: "SqlFileShare" + } + }, + azureBlob: { + serializedName: "azureBlob", + type: { + name: "Composite", + className: "AzureBlob" } } } } }; -export const CommandProperties: msRest.CompositeMapper = { - serializedName: "CommandProperties", +export const SqlFileShare: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "commandType", - clientName: "commandType" - }, - uberParent: "CommandProperties", - className: "CommandProperties", + className: "SqlFileShare", modelProperties: { - errors: { - readOnly: true, - serializedName: "errors", + path: { + serializedName: "path", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ODataError" - } - } + name: "String" } }, - state: { - readOnly: true, - serializedName: "state", + username: { + serializedName: "username", type: { name: "String" } }, - commandType: { - required: true, - serializedName: "commandType", + password: { + serializedName: "password", type: { name: "String" } @@ -299,300 +404,222 @@ export const CommandProperties: msRest.CompositeMapper = { } }; -export const MigrateMISyncCompleteCommandProperties: msRest.CompositeMapper = { - serializedName: "Migrate.SqlServer.AzureDbSqlMi.Complete", +export const AzureBlob: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, - uberParent: "CommandProperties", - className: "MigrateMISyncCompleteCommandProperties", + className: "AzureBlob", modelProperties: { - ...CommandProperties.type.modelProperties, - input: { - serializedName: "input", + storageAccountResourceId: { + serializedName: "storageAccountResourceId", type: { - name: "Composite", - className: "MigrateMISyncCompleteCommandInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", - type: { - name: "Composite", - className: "MigrateMISyncCompleteCommandOutput" - } - } - } - } -}; - -export const MigrateSyncCompleteCommandOutput: msRest.CompositeMapper = { - serializedName: "MigrateSyncCompleteCommandOutput", - type: { - name: "Composite", - className: "MigrateSyncCompleteCommandOutput", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", + accountKey: { + serializedName: "accountKey", type: { name: "String" } }, - errors: { - readOnly: true, - serializedName: "errors", + blobContainerName: { + serializedName: "blobContainerName", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } } } } }; -export const MigrateSyncCompleteCommandInput: msRest.CompositeMapper = { - serializedName: "MigrateSyncCompleteCommandInput", +export const TargetLocation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSyncCompleteCommandInput", + className: "TargetLocation", modelProperties: { - databaseName: { - required: true, - serializedName: "databaseName", + storageAccountResourceId: { + serializedName: "storageAccountResourceId", type: { name: "String" } }, - commitTimeStamp: { - serializedName: "commitTimeStamp", + accountKey: { + serializedName: "accountKey", type: { - name: "DateTime" + name: "String" } } } } }; -export const MigrateSyncCompleteCommandProperties: msRest.CompositeMapper = { - serializedName: "Migrate.Sync.Complete.Database", +export const OfflineConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, - uberParent: "CommandProperties", - className: "MigrateSyncCompleteCommandProperties", + className: "OfflineConfiguration", modelProperties: { - ...CommandProperties.type.modelProperties, - input: { - serializedName: "input", + offline: { + serializedName: "offline", type: { - name: "Composite", - className: "MigrateSyncCompleteCommandInput" + name: "Boolean" } }, - output: { - readOnly: true, - serializedName: "output", + lastBackupName: { + serializedName: "lastBackupName", type: { - name: "Composite", - className: "MigrateSyncCompleteCommandOutput" + name: "String" } } } } }; -export const MigrateSsisTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSsisTaskOutput", +export const DatabaseMigrationProperties: coreClient.CompositeMapper = { type: { name: "Composite", + className: "DatabaseMigrationProperties", + uberParent: "DatabaseMigrationProperties", polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" + serializedName: "kind", + clientName: "kind" }, - uberParent: "MigrateSsisTaskOutput", - className: "MigrateSsisTaskOutput", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - resultType: { + kind: { + serializedName: "kind", required: true, - serializedName: "resultType", - type: { - name: "String" - } - } - } - } -}; - -export const MigrateSsisTaskOutputProjectLevel: msRest.CompositeMapper = { - serializedName: "SsisProjectLevelOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateSsisTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSsisTaskOutput", - className: "MigrateSsisTaskOutputProjectLevel", - modelProperties: { - ...MigrateSsisTaskOutput.type.modelProperties, - folderName: { - readOnly: true, - serializedName: "folderName", type: { name: "String" } }, - projectName: { - readOnly: true, - serializedName: "projectName", + scope: { + serializedName: "scope", type: { name: "String" } }, - state: { + provisioningState: { + serializedName: "provisioningState", readOnly: true, - serializedName: "state", type: { name: "String" } }, - stage: { + migrationStatus: { + serializedName: "migrationStatus", readOnly: true, - serializedName: "stage", type: { name: "String" } }, startedOn: { - readOnly: true, serializedName: "startedOn", + readOnly: true, type: { name: "DateTime" } }, endedOn: { - readOnly: true, serializedName: "endedOn", + readOnly: true, type: { name: "DateTime" } }, - message: { - readOnly: true, - serializedName: "message", + sourceSqlConnection: { + serializedName: "sourceSqlConnection", + type: { + name: "Composite", + className: "SqlConnectionInformation" + } + }, + sourceDatabaseName: { + serializedName: "sourceDatabaseName", type: { name: "String" } }, - exceptionsAndWarnings: { - readOnly: true, - serializedName: "exceptionsAndWarnings", + migrationService: { + serializedName: "migrationService", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" + } + }, + migrationOperationId: { + serializedName: "migrationOperationId", + type: { + name: "String" + } + }, + migrationFailureError: { + serializedName: "migrationFailureError", + type: { + name: "Composite", + className: "ErrorInfo" } } } } }; -export const MigrateSsisTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const SqlConnectionInformation: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSsisTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSsisTaskOutput", - className: "MigrateSsisTaskOutputMigrationLevel", + className: "SqlConnectionInformation", modelProperties: { - ...MigrateSsisTaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - status: { - readOnly: true, - serializedName: "status", + dataSource: { + serializedName: "dataSource", type: { name: "String" } }, - message: { - readOnly: true, - serializedName: "message", + authentication: { + serializedName: "authentication", type: { name: "String" } }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + userName: { + serializedName: "userName", type: { name: "String" } }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", + password: { + serializedName: "password", type: { name: "String" } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + encryptConnection: { + serializedName: "encryptConnection", type: { - name: "String" + name: "Boolean" } }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", + trustServerCertificate: { + serializedName: "trustServerCertificate", type: { - name: "String" + name: "Boolean" } - }, - exceptionsAndWarnings: { + } + } + } +}; + +export const ErrorInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorInfo", + modelProperties: { + code: { + serializedName: "code", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } }, - stage: { + message: { + serializedName: "message", readOnly: true, - serializedName: "stage", type: { name: "String" } @@ -601,26 +628,28 @@ export const MigrateSsisTaskOutputMigrationLevel: msRest.CompositeMapper = { } }; -export const SsisMigrationInfo: msRest.CompositeMapper = { - serializedName: "SsisMigrationInfo", +export const ProxyResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SsisMigrationInfo", + className: "ProxyResource", modelProperties: { - ssisStoreType: { - serializedName: "ssisStoreType", + id: { + serializedName: "id", + readOnly: true, type: { name: "String" } }, - projectOverwriteOption: { - serializedName: "projectOverwriteOption", + name: { + serializedName: "name", + readOnly: true, type: { name: "String" } }, - environmentOverwriteOption: { - serializedName: "environmentOverwriteOption", + type: { + serializedName: "type", + readOnly: true, type: { name: "String" } @@ -629,52 +658,42 @@ export const SsisMigrationInfo: msRest.CompositeMapper = { } }; -export const ConnectionInfo: msRest.CompositeMapper = { - serializedName: "ConnectionInfo", +export const MigrationOperationInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "type", - clientName: "type" - }, - uberParent: "ConnectionInfo", - className: "ConnectionInfo", + className: "MigrationOperationInput", modelProperties: { - userName: { - serializedName: "userName", - type: { - name: "String" - } - }, - password: { - serializedName: "password", - type: { - name: "String" - } - }, - type: { - required: true, - serializedName: "type", + migrationOperationId: { + serializedName: "migrationOperationId", type: { - name: "String" + name: "Uuid" } } } } }; -export const MiSqlConnectionInfo: msRest.CompositeMapper = { - serializedName: "MiSqlConnectionInfo", +export const OperationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "MiSqlConnectionInfo", + className: "OperationListResult", modelProperties: { - ...ConnectionInfo.type.modelProperties, - managedInstanceResourceId: { - required: true, - serializedName: "managedInstanceResourceId", + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "OperationsDefinition" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, type: { name: "String" } @@ -683,51 +702,81 @@ export const MiSqlConnectionInfo: msRest.CompositeMapper = { } }; -export const PostgreSqlConnectionInfo: msRest.CompositeMapper = { - serializedName: "PostgreSqlConnectionInfo", +export const OperationsDefinition: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "PostgreSqlConnectionInfo", + className: "OperationsDefinition", modelProperties: { - ...ConnectionInfo.type.modelProperties, - serverName: { - required: true, - serializedName: "serverName", + name: { + serializedName: "name", + readOnly: true, type: { name: "String" } }, - databaseName: { - serializedName: "databaseName", + isDataAction: { + serializedName: "isDataAction", + type: { + name: "Boolean" + } + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "OperationsDisplayDefinition" + } + }, + origin: { + serializedName: "origin", + readOnly: true, type: { name: "String" } }, - port: { - required: true, - serializedName: "port", + properties: { + serializedName: "properties", + readOnly: true, type: { - name: "Number" + name: "Dictionary", + value: { + type: { name: "Dictionary", value: { type: { name: "any" } } } + } } } } } }; -export const OracleConnectionInfo: msRest.CompositeMapper = { - serializedName: "OracleConnectionInfo", +export const OperationsDisplayDefinition: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "OracleConnectionInfo", + className: "OperationsDisplayDefinition", modelProperties: { - ...ConnectionInfo.type.modelProperties, - dataSource: { - required: true, - serializedName: "dataSource", + provider: { + serializedName: "provider", + readOnly: true, + type: { + name: "String" + } + }, + resource: { + serializedName: "resource", + readOnly: true, + type: { + name: "String" + } + }, + operation: { + serializedName: "operation", + readOnly: true, + type: { + name: "String" + } + }, + description: { + serializedName: "description", + readOnly: true, type: { name: "String" } @@ -736,97 +785,114 @@ export const OracleConnectionInfo: msRest.CompositeMapper = { } }; -export const MySqlConnectionInfo: msRest.CompositeMapper = { - serializedName: "MySqlConnectionInfo", +export const TrackedResource: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "MySqlConnectionInfo", + className: "TrackedResource", modelProperties: { - ...ConnectionInfo.type.modelProperties, - serverName: { - required: true, - serializedName: "serverName", + location: { + serializedName: "location", type: { name: "String" } }, - port: { - required: true, - serializedName: "port", + tags: { + serializedName: "tags", type: { - name: "Number" + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" + } + }, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" } } } } }; -export const MongoDbConnectionInfo: msRest.CompositeMapper = { - serializedName: "MongoDbConnectionInfo", +export const SqlMigrationServiceUpdate: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "MongoDbConnectionInfo", + className: "SqlMigrationServiceUpdate", modelProperties: { - ...ConnectionInfo.type.modelProperties, - connectionString: { - required: true, - serializedName: "connectionString", + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const SqlConnectionInfo: msRest.CompositeMapper = { - serializedName: "SqlConnectionInfo", +export const SqlMigrationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, - uberParent: "ConnectionInfo", - className: "SqlConnectionInfo", + className: "SqlMigrationListResult", modelProperties: { - ...ConnectionInfo.type.modelProperties, - dataSource: { - required: true, - serializedName: "dataSource", + value: { + serializedName: "value", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SqlMigrationService" + } + } } }, - authentication: { - serializedName: "authentication", + nextLink: { + serializedName: "nextLink", + readOnly: true, type: { name: "String" } - }, - encryptConnection: { - serializedName: "encryptConnection", - defaultValue: true, - type: { - name: "Boolean" - } - }, - additionalSettings: { - serializedName: "additionalSettings", + } + } + } +}; + +export const AuthenticationKeys: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AuthenticationKeys", + modelProperties: { + authKey1: { + serializedName: "authKey1", type: { name: "String" } }, - trustServerCertificate: { - serializedName: "trustServerCertificate", - defaultValue: false, - type: { - name: "Boolean" - } - }, - platform: { - serializedName: "platform", + authKey2: { + serializedName: "authKey2", type: { name: "String" } @@ -835,109 +901,75 @@ export const SqlConnectionInfo: msRest.CompositeMapper = { } }; -export const SqlMigrationTaskInput: msRest.CompositeMapper = { - serializedName: "SqlMigrationTaskInput", +export const RegenAuthKeys: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlMigrationTaskInput", + className: "RegenAuthKeys", modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + keyName: { + serializedName: "keyName", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + authKey1: { + serializedName: "authKey1", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" + } + }, + authKey2: { + serializedName: "authKey2", + type: { + name: "String" } } } } }; -export const MigrateSsisTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSsisTaskInput", +export const DeleteNode: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSsisTaskInput", + className: "DeleteNode", modelProperties: { - ...SqlMigrationTaskInput.type.modelProperties, - ssisMigrationInfo: { - required: true, - serializedName: "ssisMigrationInfo", + nodeName: { + serializedName: "nodeName", type: { - name: "Composite", - className: "SsisMigrationInfo" + name: "String" + } + }, + integrationRuntimeName: { + serializedName: "integrationRuntimeName", + type: { + name: "String" } } } } }; -export const ProjectTaskProperties: msRest.CompositeMapper = { - serializedName: "ProjectTaskProperties", +export const DatabaseMigrationListResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "taskType", - clientName: "taskType" - }, - uberParent: "ProjectTaskProperties", - className: "ProjectTaskProperties", + className: "DatabaseMigrationListResult", modelProperties: { - errors: { + value: { + serializedName: "value", readOnly: true, - serializedName: "errors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ODataError" + className: "DatabaseMigration" } } } }, - state: { - readOnly: true, - serializedName: "state", - type: { - name: "String" - } - }, - commands: { + nextLink: { + serializedName: "nextLink", readOnly: true, - serializedName: "commands", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CommandProperties" - } - } - } - }, - clientData: { - serializedName: "clientData", - type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } - } - }, - taskType: { - required: true, - serializedName: "taskType", type: { name: "String" } @@ -946,31 +978,27 @@ export const ProjectTaskProperties: msRest.CompositeMapper = { } }; -export const MigrateSsisTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.Ssis", +export const IntegrationRuntimeMonitoringData: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSsisTaskProperties", + className: "IntegrationRuntimeMonitoringData", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + name: { + serializedName: "name", + readOnly: true, type: { - name: "Composite", - className: "MigrateSsisTaskInput" + name: "String" } }, - output: { + nodes: { + serializedName: "nodes", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSsisTaskOutput" + className: "NodeMonitoringData" } } } @@ -979,370 +1007,289 @@ export const MigrateSsisTaskProperties: msRest.CompositeMapper = { } }; -export const GetTdeCertificatesSqlTaskOutput: msRest.CompositeMapper = { - serializedName: "GetTdeCertificatesSqlTaskOutput", +export const NodeMonitoringData: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetTdeCertificatesSqlTaskOutput", + className: "NodeMonitoringData", modelProperties: { - base64EncodedCertificates: { + additionalProperties: { + serializedName: "additionalProperties", readOnly: true, - serializedName: "base64EncodedCertificates", type: { name: "Dictionary", value: { - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } + type: { name: "Dictionary", value: { type: { name: "any" } } } } } }, - validationErrors: { + nodeName: { + serializedName: "nodeName", readOnly: true, - serializedName: "validationErrors", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } - } - } - } - } -}; - -export const SelectedCertificateInput: msRest.CompositeMapper = { - serializedName: "SelectedCertificateInput", - type: { - name: "Composite", - className: "SelectedCertificateInput", - modelProperties: { - certificateName: { - required: true, - serializedName: "certificateName", type: { name: "String" } }, - password: { - required: true, - serializedName: "password", - type: { - name: "String" - } - } - } - } -}; - -export const FileShare: msRest.CompositeMapper = { - serializedName: "FileShare", - type: { - name: "Composite", - className: "FileShare", - modelProperties: { - userName: { - serializedName: "userName", + availableMemoryInMB: { + serializedName: "availableMemoryInMB", + readOnly: true, type: { - name: "String" + name: "Number" } }, - password: { - serializedName: "password", + cpuUtilization: { + serializedName: "cpuUtilization", + readOnly: true, type: { - name: "String" + name: "Number" } }, - path: { - required: true, - serializedName: "path", - type: { - name: "String" - } - } - } - } -}; - -export const GetTdeCertificatesSqlTaskInput: msRest.CompositeMapper = { - serializedName: "GetTdeCertificatesSqlTaskInput", - type: { - name: "Composite", - className: "GetTdeCertificatesSqlTaskInput", - modelProperties: { - connectionInfo: { - required: true, - serializedName: "connectionInfo", + concurrentJobsLimit: { + serializedName: "concurrentJobsLimit", + readOnly: true, type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "Number" } }, - backupFileShare: { - required: true, - serializedName: "backupFileShare", + concurrentJobsRunning: { + serializedName: "concurrentJobsRunning", + readOnly: true, type: { - name: "Composite", - className: "FileShare" + name: "Number" } }, - selectedCertificates: { - required: true, - serializedName: "selectedCertificates", + maxConcurrentJobs: { + serializedName: "maxConcurrentJobs", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SelectedCertificateInput" - } - } + name: "Number" } - } - } - } -}; - -export const GetTdeCertificatesSqlTaskProperties: msRest.CompositeMapper = { - serializedName: "GetTDECertificates.Sql", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "GetTdeCertificatesSqlTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + sentBytes: { + serializedName: "sentBytes", + readOnly: true, type: { - name: "Composite", - className: "GetTdeCertificatesSqlTaskInput" + name: "Number" } }, - output: { + receivedBytes: { + serializedName: "receivedBytes", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetTdeCertificatesSqlTaskOutput" - } - } + name: "Number" } } } } }; -export const ValidateOracleAzureDbPostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ValidateOracleAzureDbPostgreSqlSyncTaskOutput", +export const ResourceSkusResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateOracleAzureDbPostgreSqlSyncTaskOutput", + className: "ResourceSkusResult", modelProperties: { - validationErrors: { - readOnly: true, - serializedName: "validationErrors", + value: { + serializedName: "value", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "ResourceSku" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const MigrateOracleAzureDbPostgreSqlSyncDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateOracleAzureDbPostgreSqlSyncDatabaseInput", +export const ResourceSku: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncDatabaseInput", + className: "ResourceSku", modelProperties: { - caseManipulation: { - serializedName: "caseManipulation", + resourceType: { + serializedName: "resourceType", + readOnly: true, type: { name: "String" } }, name: { serializedName: "name", + readOnly: true, type: { name: "String" } }, - schemaName: { - serializedName: "schemaName", + tier: { + serializedName: "tier", + readOnly: true, type: { name: "String" } }, - tableMap: { - serializedName: "tableMap", + size: { + serializedName: "size", + readOnly: true, type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - targetDatabaseName: { - serializedName: "targetDatabaseName", + family: { + serializedName: "family", + readOnly: true, type: { name: "String" } }, - migrationSetting: { - serializedName: "migrationSetting", + kind: { + serializedName: "kind", + readOnly: true, type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - sourceSetting: { - serializedName: "sourceSetting", + capacity: { + serializedName: "capacity", type: { - name: "Dictionary", - value: { + name: "Composite", + className: "ResourceSkuCapacity" + } + }, + locations: { + serializedName: "locations", + readOnly: true, + type: { + name: "Sequence", + element: { type: { name: "String" } } } }, - targetSetting: { - serializedName: "targetSetting", + apiVersions: { + serializedName: "apiVersions", + readOnly: true, type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "String" } } } - } - } - } -}; - -export const MigrateOracleAzureDbPostgreSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateOracleAzureDbPostgreSqlSyncTaskInput", - type: { - name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput", - modelProperties: { - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + }, + costs: { + serializedName: "costs", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncDatabaseInput" + className: "ResourceSkuCosts" } } } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + capabilities: { + serializedName: "capabilities", + readOnly: true, type: { - name: "Composite", - className: "PostgreSqlConnectionInfo" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceSkuCapabilities" + } + } } }, - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + restrictions: { + serializedName: "restrictions", + readOnly: true, type: { - name: "Composite", - className: "OracleConnectionInfo" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceSkuRestrictions" + } + } } } } } }; -export const ValidateOracleAzureDbForPostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Validate.Oracle.AzureDbPostgreSql.Sync", +export const ResourceSkuCapacity: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ValidateOracleAzureDbForPostgreSqlSyncTaskProperties", + className: "ResourceSkuCapacity", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + minimum: { + serializedName: "minimum", + readOnly: true, type: { - name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput" + name: "Number" } }, - output: { + maximum: { + serializedName: "maximum", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ValidateOracleAzureDbPostgreSqlSyncTaskOutput" - } - } + name: "Number" + } + }, + default: { + serializedName: "default", + readOnly: true, + type: { + name: "Number" + } + }, + scaleType: { + serializedName: "scaleType", + readOnly: true, + type: { + name: "String" } } } } }; -export const MongoDbError: msRest.CompositeMapper = { - serializedName: "MongoDbError", +export const ResourceSkuCosts: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbError", + className: "ResourceSkuCosts", modelProperties: { - code: { - serializedName: "code", + meterID: { + serializedName: "meterID", + readOnly: true, type: { name: "String" } }, - count: { - serializedName: "count", + quantity: { + serializedName: "quantity", + readOnly: true, type: { name: "Number" } }, - message: { - serializedName: "message", - type: { - name: "String" - } - }, - type: { - serializedName: "type", + extendedUnit: { + serializedName: "extendedUnit", + readOnly: true, type: { name: "String" } @@ -1351,108 +1298,151 @@ export const MongoDbError: msRest.CompositeMapper = { } }; -export const MongoDbProgress: msRest.CompositeMapper = { - serializedName: "MongoDbProgress", +export const ResourceSkuCapabilities: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbProgress", + className: "ResourceSkuCapabilities", modelProperties: { - bytesCopied: { - required: true, - serializedName: "bytesCopied", + name: { + serializedName: "name", + readOnly: true, type: { - name: "Number" + name: "String" } }, - documentsCopied: { - required: true, - serializedName: "documentsCopied", + value: { + serializedName: "value", + readOnly: true, type: { - name: "Number" + name: "String" } - }, - elapsedTime: { - required: true, - serializedName: "elapsedTime", + } + } + } +}; + +export const ResourceSkuRestrictions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceSkuRestrictions", + modelProperties: { + type: { + serializedName: "type", + readOnly: true, type: { name: "String" } }, - errors: { - required: true, - serializedName: "errors", + values: { + serializedName: "values", + readOnly: true, type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "Composite", - className: "MongoDbError" + name: "String" } } } }, - eventsPending: { - required: true, - serializedName: "eventsPending", + reasonCode: { + serializedName: "reasonCode", + readOnly: true, type: { - name: "Number" + name: "String" } - }, - eventsReplayed: { - required: true, - serializedName: "eventsReplayed", + } + } + } +}; + +export const ApiError: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ApiError", + modelProperties: { + error: { + serializedName: "error", type: { - name: "Number" + name: "Composite", + className: "ODataError" } }, - lastEventTime: { - serializedName: "lastEventTime", + systemData: { + serializedName: "systemData", type: { - name: "DateTime" + name: "Composite", + className: "SystemData" } - }, - lastReplayTime: { - serializedName: "lastReplayTime", + } + } + } +}; + +export const ODataError: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ODataError", + modelProperties: { + code: { + serializedName: "code", type: { - name: "DateTime" + name: "String" } }, - name: { - serializedName: "name", + message: { + serializedName: "message", type: { name: "String" } }, - qualifiedName: { - serializedName: "qualifiedName", + details: { + serializedName: "details", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ODataError" + } + } + } + } + } + } +}; + +export const ServiceSku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceSku", + modelProperties: { + name: { + serializedName: "name", type: { name: "String" } }, - resultType: { - required: true, - serializedName: "resultType", + tier: { + serializedName: "tier", type: { name: "String" } }, - state: { - required: true, - serializedName: "state", + family: { + serializedName: "family", type: { name: "String" } }, - totalBytes: { - required: true, - serializedName: "totalBytes", + size: { + serializedName: "size", type: { - name: "Number" + name: "String" } }, - totalDocuments: { - required: true, - serializedName: "totalDocuments", + capacity: { + serializedName: "capacity", type: { name: "Number" } @@ -1461,32 +1451,36 @@ export const MongoDbProgress: msRest.CompositeMapper = { } }; -export const MongoDbCollectionProgress: msRest.CompositeMapper = { - serializedName: "Collection", +export const DataMigrationServiceStatusResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbCollectionProgress", + className: "DataMigrationServiceStatusResponse", modelProperties: { - ...MongoDbProgress.type.modelProperties - } - } -}; - -export const MongoDbDatabaseProgress: msRest.CompositeMapper = { - serializedName: "Database", - type: { - name: "Composite", - className: "MongoDbDatabaseProgress", - modelProperties: { - ...MongoDbProgress.type.modelProperties, - collections: { - serializedName: "collections", + agentVersion: { + serializedName: "agentVersion", type: { - name: "Dictionary", - value: { + name: "String" + } + }, + status: { + serializedName: "status", + type: { + name: "String" + } + }, + vmSize: { + serializedName: "vmSize", + type: { + name: "String" + } + }, + supportedTaskTypes: { + serializedName: "supportedTaskTypes", + type: { + name: "Sequence", + element: { type: { - name: "Composite", - className: "MongoDbCollectionProgress" + name: "String" } } } @@ -1495,320 +1489,300 @@ export const MongoDbDatabaseProgress: msRest.CompositeMapper = { } }; -export const MongoDbMigrationProgress: msRest.CompositeMapper = { - serializedName: "Migration", +export const ServiceSkuList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbMigrationProgress", + className: "ServiceSkuList", modelProperties: { - ...MongoDbProgress.type.modelProperties, - databases: { - serializedName: "databases", + value: { + serializedName: "value", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "Composite", - className: "MongoDbDatabaseProgress" + className: "AvailableServiceSku" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const MongoDbThrottlingSettings: msRest.CompositeMapper = { - serializedName: "MongoDbThrottlingSettings", +export const AvailableServiceSku: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbThrottlingSettings", + className: "AvailableServiceSku", modelProperties: { - minFreeCpu: { - serializedName: "minFreeCpu", + resourceType: { + serializedName: "resourceType", type: { - name: "Number" + name: "String" } }, - minFreeMemoryMb: { - serializedName: "minFreeMemoryMb", + sku: { + serializedName: "sku", type: { - name: "Number" + name: "Composite", + className: "AvailableServiceSkuSku" } }, - maxParallelism: { - serializedName: "maxParallelism", + capacity: { + serializedName: "capacity", type: { - name: "Number" + name: "Composite", + className: "AvailableServiceSkuCapacity" } } } } }; -export const MongoDbShardKeyField: msRest.CompositeMapper = { - serializedName: "MongoDbShardKeyField", +export const AvailableServiceSkuSku: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbShardKeyField", + className: "AvailableServiceSkuSku", modelProperties: { name: { - required: true, serializedName: "name", type: { name: "String" } }, - order: { - required: true, - serializedName: "order", + family: { + serializedName: "family", type: { name: "String" } - } - } - } -}; - -export const MongoDbShardKeySetting: msRest.CompositeMapper = { - serializedName: "MongoDbShardKeySetting", - type: { - name: "Composite", - className: "MongoDbShardKeySetting", - modelProperties: { - fields: { - required: true, - serializedName: "fields", + }, + size: { + serializedName: "size", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MongoDbShardKeyField" - } - } + name: "String" } }, - isUnique: { - required: true, - serializedName: "isUnique", + tier: { + serializedName: "tier", type: { - name: "Boolean" + name: "String" } } } } }; -export const MongoDbCollectionSettings: msRest.CompositeMapper = { - serializedName: "MongoDbCollectionSettings", +export const AvailableServiceSkuCapacity: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbCollectionSettings", + className: "AvailableServiceSkuCapacity", modelProperties: { - canDelete: { - serializedName: "canDelete", + minimum: { + serializedName: "minimum", type: { - name: "Boolean" + name: "Number" } }, - shardKey: { - serializedName: "shardKey", + maximum: { + serializedName: "maximum", type: { - name: "Composite", - className: "MongoDbShardKeySetting" + name: "Number" } }, - targetRUs: { - serializedName: "targetRUs", + default: { + serializedName: "default", type: { name: "Number" } + }, + scaleType: { + serializedName: "scaleType", + type: { + name: "String" + } } } } }; -export const MongoDbDatabaseSettings: msRest.CompositeMapper = { - serializedName: "MongoDbDatabaseSettings", +export const TaskList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbDatabaseSettings", + className: "TaskList", modelProperties: { - collections: { - required: true, - serializedName: "collections", + value: { + serializedName: "value", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "Composite", - className: "MongoDbCollectionSettings" + className: "ProjectTask" } } } }, - targetRUs: { - serializedName: "targetRUs", + nextLink: { + serializedName: "nextLink", type: { - name: "Number" + name: "String" } } } } }; -export const MongoDbMigrationSettings: msRest.CompositeMapper = { - serializedName: "MongoDbMigrationSettings", +export const ProjectTaskProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDbMigrationSettings", + className: "ProjectTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: { + serializedName: "taskType", + clientName: "taskType" + }, modelProperties: { - boostRUs: { - serializedName: "boostRUs", + taskType: { + serializedName: "taskType", + required: true, type: { - name: "Number" + name: "String" } }, - databases: { - required: true, - serializedName: "databases", + errors: { + serializedName: "errors", + readOnly: true, type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "Composite", - className: "MongoDbDatabaseSettings" + className: "ODataError" } } } }, - replication: { - serializedName: "replication", + state: { + serializedName: "state", + readOnly: true, type: { name: "String" } }, - source: { - required: true, - serializedName: "source", - type: { - name: "Composite", - className: "MongoDbConnectionInfo" - } - }, - target: { - required: true, - serializedName: "target", + commands: { + serializedName: "commands", + readOnly: true, type: { - name: "Composite", - className: "MongoDbConnectionInfo" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CommandProperties" + } + } } }, - throttling: { - serializedName: "throttling", + clientData: { + serializedName: "clientData", type: { - name: "Composite", - className: "MongoDbThrottlingSettings" + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const ValidateMongoDbTaskProperties: msRest.CompositeMapper = { - serializedName: "Validate.MongoDb", +export const CommandProperties: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ValidateMongoDbTaskProperties", + className: "CommandProperties", + uberParent: "CommandProperties", + polymorphicDiscriminator: { + serializedName: "commandType", + clientName: "commandType" + }, modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + commandType: { + serializedName: "commandType", + required: true, type: { - name: "Composite", - className: "MongoDbMigrationSettings" + name: "String" } }, - output: { + errors: { + serializedName: "errors", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoDbMigrationProgress" + className: "ODataError" } } } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } } } } }; -export const ValidateMigrationInputSqlServerSqlMISyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInputSqlServerSqlMISyncTaskOutput", +export const Resource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMISyncTaskOutput", + className: "Resource", modelProperties: { id: { - readOnly: true, serializedName: "id", + readOnly: true, type: { name: "String" } }, name: { - readOnly: true, serializedName: "name", + readOnly: true, type: { name: "String" } }, - validationErrors: { + type: { + serializedName: "type", readOnly: true, - serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } } } } }; -export const AzureActiveDirectoryApp: msRest.CompositeMapper = { - serializedName: "AzureActiveDirectoryApp", +export const NameAvailabilityRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AzureActiveDirectoryApp", + className: "NameAvailabilityRequest", modelProperties: { - applicationId: { - required: true, - serializedName: "applicationId", - type: { - name: "String" - } - }, - appKey: { - required: true, - serializedName: "appKey", + name: { + serializedName: "name", type: { name: "String" } }, - tenantId: { - required: true, - serializedName: "tenantId", + type: { + serializedName: "type", type: { name: "String" } @@ -1817,400 +1791,402 @@ export const AzureActiveDirectoryApp: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlMIDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlMIDatabaseInput", +export const NameAvailabilityResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlMIDatabaseInput", + className: "NameAvailabilityResponse", modelProperties: { - name: { - required: true, - serializedName: "name", + nameAvailable: { + serializedName: "nameAvailable", type: { - name: "String" + name: "Boolean" } }, - restoreDatabaseName: { - required: true, - serializedName: "restoreDatabaseName", + reason: { + serializedName: "reason", type: { name: "String" } }, - backupFileShare: { - serializedName: "backupFileShare", + message: { + serializedName: "message", type: { - name: "Composite", - className: "FileShare" + name: "String" } - }, - backupFilePaths: { - serializedName: "backupFilePaths", + } + } + } +}; + +export const DataMigrationServiceList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DataMigrationServiceList", + modelProperties: { + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "DataMigrationService" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const SqlServerSqlMISyncTaskInput: msRest.CompositeMapper = { - serializedName: "SqlServerSqlMISyncTaskInput", +export const ProjectList: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlServerSqlMISyncTaskInput", + className: "ProjectList", modelProperties: { - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSqlServerSqlMIDatabaseInput" + className: "Project" } } } }, - backupFileShare: { - serializedName: "backupFileShare", - type: { - name: "Composite", - className: "FileShare" - } - }, - storageResourceId: { - required: true, - serializedName: "storageResourceId", + nextLink: { + serializedName: "nextLink", type: { name: "String" } - }, - sourceConnectionInfo: { + } + } + } +}; + +export const ConnectionInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: { + serializedName: "type", + clientName: "type" + }, + modelProperties: { + type: { + serializedName: "type", required: true, - serializedName: "sourceConnectionInfo", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + userName: { + serializedName: "userName", type: { - name: "Composite", - className: "MiSqlConnectionInfo" + name: "String" } }, - azureApp: { - required: true, - serializedName: "azureApp", + password: { + serializedName: "password", type: { - name: "Composite", - className: "AzureActiveDirectoryApp" + name: "String" } } } } }; -export const ValidateMigrationInputSqlServerSqlMISyncTaskInput: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInputSqlServerSqlMISyncTaskInput", +export const DatabaseInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMISyncTaskInput", + className: "DatabaseInfo", modelProperties: { - ...SqlServerSqlMISyncTaskInput.type.modelProperties + sourceDatabaseName: { + serializedName: "sourceDatabaseName", + required: true, + type: { + name: "String" + } + } } } }; -export const ValidateMigrationInputSqlServerSqlMISyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS", +export const QuotaList: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ValidateMigrationInputSqlServerSqlMISyncTaskProperties", + className: "QuotaList", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMISyncTaskInput" - } - }, - output: { - readOnly: true, - serializedName: "output", + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMISyncTaskOutput" + className: "Quota" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const DatabaseBackupInfo: msRest.CompositeMapper = { - serializedName: "DatabaseBackupInfo", +export const Quota: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseBackupInfo", + className: "Quota", modelProperties: { - databaseName: { - readOnly: true, - serializedName: "databaseName", + currentValue: { + serializedName: "currentValue", type: { - name: "String" + name: "Number" } }, - backupType: { - readOnly: true, - serializedName: "backupType", + id: { + serializedName: "id", type: { name: "String" } }, - backupFiles: { - readOnly: true, - serializedName: "backupFiles", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - position: { - readOnly: true, - serializedName: "position", + limit: { + serializedName: "limit", type: { name: "Number" } }, - isDamaged: { - readOnly: true, - serializedName: "isDamaged", - type: { - name: "Boolean" - } - }, - isCompressed: { - readOnly: true, - serializedName: "isCompressed", - type: { - name: "Boolean" - } - }, - familyCount: { - readOnly: true, - serializedName: "familyCount", + name: { + serializedName: "name", type: { - name: "Number" + name: "Composite", + className: "QuotaName" } }, - backupFinishDate: { - readOnly: true, - serializedName: "backupFinishDate", + unit: { + serializedName: "unit", type: { - name: "DateTime" + name: "String" } } } } }; -export const ValidateMigrationInputSqlServerSqlMITaskOutput: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInputSqlServerSqlMITaskOutput", +export const QuotaName: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMITaskOutput", + className: "QuotaName", modelProperties: { - id: { - readOnly: true, - serializedName: "id", + localizedValue: { + serializedName: "localizedValue", type: { name: "String" } }, - name: { - readOnly: true, - serializedName: "name", + value: { + serializedName: "value", type: { name: "String" } - }, - restoreDatabaseNameErrors: { - readOnly: true, - serializedName: "restoreDatabaseNameErrors", + } + } + } +}; + +export const FileList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FileList", + modelProperties: { + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "ProjectFile" } } } }, - backupFolderErrors: { - readOnly: true, - serializedName: "backupFolderErrors", + nextLink: { + serializedName: "nextLink", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" + } + } + } + } +}; + +export const ProjectFileProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProjectFileProperties", + modelProperties: { + extension: { + serializedName: "extension", + type: { + name: "String" } }, - backupShareCredentialsErrors: { - readOnly: true, - serializedName: "backupShareCredentialsErrors", + filePath: { + serializedName: "filePath", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } }, - backupStorageAccountErrors: { + lastModified: { + serializedName: "lastModified", readOnly: true, - serializedName: "backupStorageAccountErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "DateTime" } }, - existingBackupErrors: { - readOnly: true, - serializedName: "existingBackupErrors", + mediaType: { + serializedName: "mediaType", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } }, - databaseBackupInfo: { - serializedName: "databaseBackupInfo", + size: { + serializedName: "size", + readOnly: true, type: { - name: "Composite", - className: "DatabaseBackupInfo" + name: "Number" } } } } }; -export const BlobShare: msRest.CompositeMapper = { - serializedName: "BlobShare", +export const FileStorageInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "BlobShare", + className: "FileStorageInfo", modelProperties: { - sasUri: { - required: true, - serializedName: "sasUri", + uri: { + serializedName: "uri", type: { name: "String" } + }, + headers: { + serializedName: "headers", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } } } } }; -export const ValidateMigrationInputSqlServerSqlMITaskInput: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInputSqlServerSqlMITaskInput", +export const MigrateSyncCompleteCommandInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMITaskInput", + className: "MigrateSyncCompleteCommandInput", modelProperties: { - sourceConnectionInfo: { + databaseName: { + serializedName: "databaseName", required: true, - serializedName: "sourceConnectionInfo", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + commitTimeStamp: { + serializedName: "commitTimeStamp", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "DateTime" + } + } + } + } +}; + +export const MigrateSyncCompleteCommandOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSyncCompleteCommandOutput", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" } }, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + errors: { + serializedName: "errors", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSqlServerSqlMIDatabaseInput" + className: "ReportableException" } } } + } + } + } +}; + +export const ReportableException: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ReportableException", + modelProperties: { + message: { + serializedName: "message", + type: { + name: "String" + } }, - selectedLogins: { - serializedName: "selectedLogins", + actionableMessage: { + serializedName: "actionableMessage", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - backupFileShare: { - serializedName: "backupFileShare", + filePath: { + serializedName: "filePath", type: { - name: "Composite", - className: "FileShare" + name: "String" } }, - backupBlobShare: { - required: true, - serializedName: "backupBlobShare", + lineNumber: { + serializedName: "lineNumber", type: { - name: "Composite", - className: "BlobShare" + name: "String" } }, - backupMode: { - serializedName: "backupMode", + hResult: { + serializedName: "hResult", + type: { + name: "Number" + } + }, + stackTrace: { + serializedName: "stackTrace", type: { name: "String" } @@ -2219,31 +2195,35 @@ export const ValidateMigrationInputSqlServerSqlMITaskInput: msRest.CompositeMapp } }; -export const ValidateMigrationInputSqlServerSqlMITaskProperties: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInput.SqlServer.AzureSqlDbMI", +export const MigrateMISyncCompleteCommandInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ValidateMigrationInputSqlServerSqlMITaskProperties", + className: "MigrateMISyncCompleteCommandInput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + sourceDatabaseName: { + serializedName: "sourceDatabaseName", + required: true, type: { - name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMITaskInput" + name: "String" } - }, - output: { - readOnly: true, - serializedName: "output", + } + } + } +}; + +export const MigrateMISyncCompleteCommandOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateMISyncCompleteCommandOutput", + modelProperties: { + errors: { + serializedName: "errors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ValidateMigrationInputSqlServerSqlMITaskOutput" + className: "ReportableException" } } } @@ -2252,245 +2232,283 @@ export const ValidateMigrationInputSqlServerSqlMITaskProperties: msRest.Composit } }; -export const ValidateSyncMigrationInputSqlServerTaskOutput: msRest.CompositeMapper = { - serializedName: "ValidateSyncMigrationInputSqlServerTaskOutput", +export const AzureActiveDirectoryApp: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateSyncMigrationInputSqlServerTaskOutput", + className: "AzureActiveDirectoryApp", modelProperties: { - id: { - readOnly: true, - serializedName: "id", + applicationId: { + serializedName: "applicationId", + required: true, type: { name: "String" } }, - name: { - readOnly: true, - serializedName: "name", + appKey: { + serializedName: "appKey", + required: true, type: { name: "String" } }, - validationErrors: { - readOnly: true, - serializedName: "validationErrors", + tenantId: { + serializedName: "tenantId", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } } } } }; -export const MigrateSqlServerSqlDbSyncDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbSyncDatabaseInput", +export const BackupSetInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlDbSyncDatabaseInput", + className: "BackupSetInfo", modelProperties: { - id: { - serializedName: "id", + backupSetId: { + serializedName: "backupSetId", type: { name: "String" } }, - name: { - serializedName: "name", + firstLsn: { + serializedName: "firstLsn", type: { name: "String" } }, - targetDatabaseName: { - serializedName: "targetDatabaseName", + lastLsn: { + serializedName: "lastLsn", type: { name: "String" } }, - schemaName: { - serializedName: "schemaName", + lastModifiedTime: { + serializedName: "lastModifiedTime", type: { - name: "String" + name: "DateTime" } }, - tableMap: { - serializedName: "tableMap", + backupType: { + serializedName: "backupType", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - migrationSetting: { - serializedName: "migrationSetting", + listOfBackupFiles: { + serializedName: "listOfBackupFiles", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: "BackupFileInfo" } } } }, - sourceSetting: { - serializedName: "sourceSetting", + databaseName: { + serializedName: "databaseName", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - targetSetting: { - serializedName: "targetSetting", + backupStartDate: { + serializedName: "backupStartDate", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "DateTime" + } + }, + backupFinishedDate: { + serializedName: "backupFinishedDate", + type: { + name: "DateTime" + } + }, + isBackupRestored: { + serializedName: "isBackupRestored", + type: { + name: "Boolean" } } } } }; -export const ValidateSyncMigrationInputSqlServerTaskInput: msRest.CompositeMapper = { - serializedName: "ValidateSyncMigrationInputSqlServerTaskInput", +export const BackupFileInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidateSyncMigrationInputSqlServerTaskInput", + className: "BackupFileInfo", modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + fileLocation: { + serializedName: "fileLocation", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + familySequenceNumber: { + serializedName: "familySequenceNumber", type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "Number" } }, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + status: { + serializedName: "status", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlDbSyncDatabaseInput" - } - } + name: "String" } } } } }; -export const ValidateMigrationInputSqlServerSqlDbSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ValidateMigrationInput.SqlServer.SqlDb.Sync", +export const OrphanedUserInfo: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ValidateMigrationInputSqlServerSqlDbSyncTaskProperties", + className: "OrphanedUserInfo", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + name: { + serializedName: "name", type: { - name: "Composite", - className: "ValidateSyncMigrationInputSqlServerTaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + databaseName: { + serializedName: "databaseName", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ValidateSyncMigrationInputSqlServerTaskOutput" - } - } + name: "String" } } } } }; -export const SyncMigrationDatabaseErrorEvent: msRest.CompositeMapper = { - serializedName: "SyncMigrationDatabaseErrorEvent", +export const ConnectToSourceMySqlTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SyncMigrationDatabaseErrorEvent", + className: "ConnectToSourceMySqlTaskInput", modelProperties: { - timestampString: { - readOnly: true, - serializedName: "timestampString", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "String" + name: "Composite", + className: "MySqlConnectionInfo" } }, - eventTypeString: { - readOnly: true, - serializedName: "eventTypeString", + targetPlatform: { + serializedName: "targetPlatform", type: { name: "String" } }, - eventText: { - readOnly: true, - serializedName: "eventText", + checkPermissionsGroup: { + serializedName: "checkPermissionsGroup", type: { - name: "String" + name: "Enum", + allowedValues: [ + "Default", + "MigrationFromSqlServerToAzureDB", + "MigrationFromSqlServerToAzureMI", + "MigrationFromMySQLToAzureDBForMySQL" + ] + } + }, + isOfflineMigration: { + defaultValue: false, + serializedName: "isOfflineMigration", + type: { + name: "Boolean" + } + } + } + } +}; + +export const ConnectToSourceSqlServerTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskInput", + modelProperties: { + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo" + } + }, + checkPermissionsGroup: { + serializedName: "checkPermissionsGroup", + type: { + name: "Enum", + allowedValues: [ + "Default", + "MigrationFromSqlServerToAzureDB", + "MigrationFromSqlServerToAzureMI", + "MigrationFromMySQLToAzureDBForMySQL" + ] + } + }, + collectDatabases: { + defaultValue: true, + serializedName: "collectDatabases", + type: { + name: "Boolean" + } + }, + collectLogins: { + defaultValue: false, + serializedName: "collectLogins", + type: { + name: "Boolean" + } + }, + collectAgentJobs: { + defaultValue: false, + serializedName: "collectAgentJobs", + type: { + name: "Boolean" + } + }, + collectTdeCertificateInfo: { + defaultValue: false, + serializedName: "collectTdeCertificateInfo", + type: { + name: "Boolean" + } + }, + validateSsisCatalogOnly: { + defaultValue: false, + serializedName: "validateSsisCatalogOnly", + type: { + name: "Boolean" } } } } }; -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", +export const ConnectToSourceSqlServerTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", + className: "ConnectToSourceSqlServerTaskOutput", + uberParent: "ConnectToSourceSqlServerTaskOutput", polymorphicDiscriminator: { serializedName: "resultType", clientName: "resultType" }, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", modelProperties: { id: { - readOnly: true, serializedName: "id", + readOnly: true, type: { name: "String" } }, resultType: { - required: true, serializedName: "resultType", + required: true, type: { name: "String" } @@ -2499,718 +2517,701 @@ export const MigrateOracleAzureDbPostgreSqlSyncTaskOutput: msRest.CompositeMappe } }; -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError: msRest.CompositeMapper = { - serializedName: "DatabaseLevelErrorOutput", +export const DatabaseFileInfo: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError", + className: "DatabaseFileInfo", modelProperties: { - ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, - errorMessage: { - serializedName: "errorMessage", + databaseName: { + serializedName: "databaseName", type: { name: "String" } }, - events: { - serializedName: "events", + id: { + serializedName: "id", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SyncMigrationDatabaseErrorEvent" - } - } + name: "String" } - } - } - } -}; - -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputError", - modelProperties: { - ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, - error: { - readOnly: true, - serializedName: "error", + }, + logicalName: { + serializedName: "logicalName", type: { - name: "Composite", - className: "ReportableException" + name: "String" } - } - } - } -}; - -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel: msRest.CompositeMapper = { - serializedName: "TableLevelOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel", - modelProperties: { - ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, - tableName: { - readOnly: true, - serializedName: "tableName", + }, + physicalFullName: { + serializedName: "physicalFullName", type: { name: "String" } }, - databaseName: { - readOnly: true, - serializedName: "databaseName", + restoreFullName: { + serializedName: "restoreFullName", type: { name: "String" } }, - cdcInsertCounter: { - readOnly: true, - serializedName: "cdcInsertCounter", + fileType: { + serializedName: "fileType", type: { - name: "Number" + name: "String" } }, - cdcUpdateCounter: { - readOnly: true, - serializedName: "cdcUpdateCounter", + sizeMB: { + serializedName: "sizeMB", type: { name: "Number" } - }, - cdcDeleteCounter: { + } + } + } +}; + +export const MigrationEligibilityInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrationEligibilityInfo", + modelProperties: { + isEligibleForMigration: { + serializedName: "isEligibleForMigration", readOnly: true, - serializedName: "cdcDeleteCounter", type: { - name: "Number" + name: "Boolean" } }, - fullLoadEstFinishTime: { + validationMessages: { + serializedName: "validationMessages", readOnly: true, - serializedName: "fullLoadEstFinishTime", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "String" + } + } } - }, - fullLoadStartedOn: { + } + } + } +}; + +export const ConnectToSourcePostgreSqlSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToSourcePostgreSqlSyncTaskInput", + modelProperties: { + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", + type: { + name: "Composite", + className: "PostgreSqlConnectionInfo" + } + } + } + } +}; + +export const ConnectToSourcePostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToSourcePostgreSqlSyncTaskOutput", + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "fullLoadStartedOn", type: { - name: "DateTime" + name: "String" } }, - fullLoadEndedOn: { + sourceServerVersion: { + serializedName: "sourceServerVersion", readOnly: true, - serializedName: "fullLoadEndedOn", type: { - name: "DateTime" + name: "String" } }, - fullLoadTotalRows: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "fullLoadTotalRows", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - state: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "state", type: { name: "String" } }, - totalChangesApplied: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "totalChangesApplied", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } + } + } + } + } +}; + +export const ConnectToTargetAzureDbForMySqlTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetAzureDbForMySqlTaskInput", + modelProperties: { + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", + type: { + name: "Composite", + className: "MySqlConnectionInfo" } }, - dataErrorsCounter: { - readOnly: true, - serializedName: "dataErrorsCounter", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "Number" + name: "Composite", + className: "MySqlConnectionInfo" } }, - lastModifiedTime: { - readOnly: true, - serializedName: "lastModifiedTime", + isOfflineMigration: { + defaultValue: false, + serializedName: "isOfflineMigration", type: { - name: "DateTime" + name: "Boolean" } } } } }; -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const ConnectToTargetAzureDbForMySqlTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel", + className: "ConnectToTargetAzureDbForMySqlTaskOutput", modelProperties: { - ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, - databaseName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - startedOn: { + serverVersion: { + serializedName: "serverVersion", readOnly: true, - serializedName: "startedOn", type: { - name: "DateTime" + name: "String" } }, - endedOn: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - migrationState: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "migrationState", type: { name: "String" } }, - incomingChanges: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "incomingChanges", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - appliedChanges: { - readOnly: true, - serializedName: "appliedChanges", + } + } + } +}; + +export const ConnectToTargetSqlDbTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetSqlDbTaskInput", + modelProperties: { + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "Number" + name: "Composite", + className: "SqlConnectionInfo" } - }, - cdcInsertCounter: { + } + } + } +}; + +export const ConnectToTargetSqlDbTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetSqlDbTaskOutput", + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "cdcInsertCounter", type: { - name: "Number" + name: "String" } }, - cdcDeleteCounter: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "cdcDeleteCounter", type: { - name: "Number" + name: "String" } }, - cdcUpdateCounter: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "cdcUpdateCounter", type: { - name: "Number" + name: "String" } }, - fullLoadCompletedTables: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "fullLoadCompletedTables", type: { - name: "Number" + name: "String" } - }, - fullLoadLoadingTables: { - readOnly: true, - serializedName: "fullLoadLoadingTables", - type: { - name: "Number" + } + } + } +}; + +export const ConnectToTargetSqlMISyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetSqlMISyncTaskInput", + modelProperties: { + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "MiSqlConnectionInfo" } }, - fullLoadQueuedTables: { - readOnly: true, - serializedName: "fullLoadQueuedTables", + azureApp: { + serializedName: "azureApp", type: { - name: "Number" + name: "Composite", + className: "AzureActiveDirectoryApp" } - }, - fullLoadErroredTables: { + } + } + } +}; + +export const ConnectToTargetSqlMISyncTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetSqlMISyncTaskOutput", + modelProperties: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "fullLoadErroredTables", type: { - name: "Number" + name: "String" } }, - initializationCompleted: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "initializationCompleted", type: { - name: "Boolean" + name: "String" } }, - latency: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "latency", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } } } } }; -export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const ConnectToTargetSqlMITaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel", + className: "ConnectToTargetSqlMITaskInput", modelProperties: { - ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "SqlConnectionInfo" } }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + collectLogins: { + defaultValue: true, + serializedName: "collectLogins", type: { - name: "DateTime" + name: "Boolean" } }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + collectAgentJobs: { + defaultValue: true, + serializedName: "collectAgentJobs", type: { - name: "String" + name: "Boolean" } }, - sourceServer: { + validateSsisCatalogOnly: { + defaultValue: false, + serializedName: "validateSsisCatalogOnly", + type: { + name: "Boolean" + } + } + } + } +}; + +export const ConnectToTargetSqlMITaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ConnectToTargetSqlMITaskOutput", + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "sourceServer", type: { name: "String" } }, targetServerVersion: { - readOnly: true, serializedName: "targetServerVersion", + readOnly: true, type: { name: "String" } }, - targetServer: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "targetServer", type: { name: "String" } - } - } - } -}; - -export const MigrateOracleAzureDbForPostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.Oracle.AzureDbForPostgreSql.Sync", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateOracleAzureDbForPostgreSqlSyncTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput" - } }, - output: { + logins: { + serializedName: "logins", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput" + name: "String" } } } - } - } - } -}; - -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - type: { - name: "Composite", - polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" - }, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - modelProperties: { - id: { + }, + agentJobs: { + serializedName: "agentJobs", readOnly: true, - serializedName: "id", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - resultType: { - required: true, - serializedName: "resultType", + validationErrors: { + serializedName: "validationErrors", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError: msRest.CompositeMapper = { - serializedName: "DatabaseLevelErrorOutput", +export const ConnectToTargetSqlDbSyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError", + className: "ConnectToTargetSqlDbSyncTaskInput", modelProperties: { - ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.modelProperties, - errorMessage: { - serializedName: "errorMessage", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "String" + name: "Composite", + className: "SqlConnectionInfo" } }, - events: { - serializedName: "events", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SyncMigrationDatabaseErrorEvent" - } - } + name: "Composite", + className: "SqlConnectionInfo" } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", +export const ConnectToTargetAzureDbForPostgreSqlSyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError", + className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskInput", modelProperties: { - ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.modelProperties, - error: { - readOnly: true, - serializedName: "error", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { name: "Composite", - className: "ReportableException" + className: "PostgreSqlConnectionInfo" + } + }, + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "PostgreSqlConnectionInfo" } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel: msRest.CompositeMapper = { - serializedName: "TableLevelOutput", +export const ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel", + className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput", modelProperties: { - ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.modelProperties, - tableName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "tableName", type: { name: "String" } }, - databaseName: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - cdcInsertCounter: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "cdcInsertCounter", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - cdcUpdateCounter: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "cdcUpdateCounter", type: { - name: "Number" + name: "String" } }, - cdcDeleteCounter: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "cdcDeleteCounter", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - fullLoadEstFinishTime: { - readOnly: true, - serializedName: "fullLoadEstFinishTime", - type: { - name: "DateTime" - } - }, - fullLoadStartedOn: { - readOnly: true, - serializedName: "fullLoadStartedOn", - type: { - name: "DateTime" - } - }, - fullLoadEndedOn: { - readOnly: true, - serializedName: "fullLoadEndedOn", - type: { - name: "DateTime" - } - }, - fullLoadTotalRows: { - readOnly: true, - serializedName: "fullLoadTotalRows", - type: { - name: "Number" - } - }, - state: { - readOnly: true, - serializedName: "state", - type: { - name: "String" - } - }, - totalChangesApplied: { - readOnly: true, - serializedName: "totalChangesApplied", - type: { - name: "Number" - } - }, - dataErrorsCounter: { - readOnly: true, - serializedName: "dataErrorsCounter", + } + } + } +}; + +export const GetUserTablesMySqlTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesMySqlTaskInput", + modelProperties: { + connectionInfo: { + serializedName: "connectionInfo", type: { - name: "Number" + name: "Composite", + className: "MySqlConnectionInfo" } }, - lastModifiedTime: { - readOnly: true, - serializedName: "lastModifiedTime", + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "String" + } + } } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const GetUserTablesMySqlTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel", + className: "GetUserTablesMySqlTaskOutput", modelProperties: { - ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.modelProperties, - databaseName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - migrationState: { + databasesToTables: { + serializedName: "databasesToTables", readOnly: true, - serializedName: "migrationState", type: { name: "String" } }, - incomingChanges: { - readOnly: true, - serializedName: "incomingChanges", - type: { - name: "Number" - } - }, - appliedChanges: { - readOnly: true, - serializedName: "appliedChanges", - type: { - name: "Number" - } - }, - cdcInsertCounter: { - readOnly: true, - serializedName: "cdcInsertCounter", - type: { - name: "Number" - } - }, - cdcDeleteCounter: { - readOnly: true, - serializedName: "cdcDeleteCounter", - type: { - name: "Number" - } - }, - cdcUpdateCounter: { - readOnly: true, - serializedName: "cdcUpdateCounter", - type: { - name: "Number" - } - }, - fullLoadCompletedTables: { - readOnly: true, - serializedName: "fullLoadCompletedTables", - type: { - name: "Number" - } - }, - fullLoadLoadingTables: { - readOnly: true, - serializedName: "fullLoadLoadingTables", - type: { - name: "Number" - } - }, - fullLoadQueuedTables: { - readOnly: true, - serializedName: "fullLoadQueuedTables", - type: { - name: "Number" - } - }, - fullLoadErroredTables: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "fullLoadErroredTables", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - initializationCompleted: { + } + } + } +}; + +export const DatabaseTable: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DatabaseTable", + modelProperties: { + hasRows: { + serializedName: "hasRows", readOnly: true, - serializedName: "initializationCompleted", type: { name: "Boolean" } }, - latency: { + name: { + serializedName: "name", readOnly: true, - serializedName: "latency", type: { - name: "Number" + name: "String" } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const GetTdeCertificatesSqlTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel", + className: "GetTdeCertificatesSqlTaskInput", modelProperties: { - ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", + connectionInfo: { + serializedName: "connectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "SqlConnectionInfo" } }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + backupFileShare: { + serializedName: "backupFileShare", type: { - name: "DateTime" + name: "Composite", + className: "FileShare" } }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + selectedCertificates: { + serializedName: "selectedCertificates", + required: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SelectedCertificateInput" + } + } } - }, - sourceServer: { - readOnly: true, - serializedName: "sourceServer", + } + } + } +}; + +export const FileShare: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FileShare", + modelProperties: { + userName: { + serializedName: "userName", type: { name: "String" } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + password: { + serializedName: "password", type: { name: "String" } }, - targetServer: { - readOnly: true, - serializedName: "targetServer", + path: { + serializedName: "path", + required: true, type: { name: "String" } @@ -3219,51 +3220,95 @@ export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel: } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput", +export const SelectedCertificateInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput", + className: "SelectedCertificateInput", modelProperties: { - name: { - serializedName: "name", + certificateName: { + serializedName: "certificateName", + required: true, type: { name: "String" } }, - targetDatabaseName: { - serializedName: "targetDatabaseName", + password: { + serializedName: "password", + required: true, type: { name: "String" } - }, - migrationSetting: { - serializedName: "migrationSetting", + } + } + } +}; + +export const GetTdeCertificatesSqlTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetTdeCertificatesSqlTaskOutput", + modelProperties: { + base64EncodedCertificates: { + serializedName: "base64EncodedCertificates", + readOnly: true, type: { - name: "Dictionary", - value: { + name: "String" + } + }, + validationErrors: { + serializedName: "validationErrors", + readOnly: true, + type: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } + } + } + } +}; + +export const GetUserTablesSqlSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesSqlSyncTaskInput", + modelProperties: { + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo" + } }, - sourceSetting: { - serializedName: "sourceSetting", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "Dictionary", - value: { + name: "Composite", + className: "SqlConnectionInfo" + } + }, + selectedSourceDatabases: { + serializedName: "selectedSourceDatabases", + required: true, + type: { + name: "Sequence", + element: { type: { name: "String" } } } }, - targetSetting: { - serializedName: "targetSetting", + selectedTargetDatabases: { + serializedName: "selectedTargetDatabases", + required: true, type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "String" } @@ -3274,70 +3319,105 @@ export const MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput: msRest.Comp } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput", +export const GetUserTablesSqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput", + className: "GetUserTablesSqlSyncTaskOutput", modelProperties: { - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + databasesToSourceTables: { + serializedName: "databasesToSourceTables", + readOnly: true, + type: { + name: "String" + } + }, + databasesToTargetTables: { + serializedName: "databasesToTargetTables", + readOnly: true, + type: { + name: "String" + } + }, + tableValidationErrors: { + serializedName: "tableValidationErrors", + readOnly: true, + type: { + name: "String" + } + }, + validationErrors: { + serializedName: "validationErrors", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput" + className: "ReportableException" } } } - }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + } + } + } +}; + +export const GetUserTablesSqlTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesSqlTaskInput", + modelProperties: { + connectionInfo: { + serializedName: "connectionInfo", type: { name: "Composite", - className: "PostgreSqlConnectionInfo" + className: "SqlConnectionInfo" } }, - sourceConnectionInfo: { + selectedDatabases: { + serializedName: "selectedDatabases", required: true, - serializedName: "sourceConnectionInfo", type: { - name: "Composite", - className: "PostgreSqlConnectionInfo" + name: "Sequence", + element: { + type: { + name: "String" + } + } } } } } }; -export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.PostgreSql.AzureDbForPostgreSql.Sync", +export const GetUserTablesSqlTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties", + className: "GetUserTablesSqlTaskOutput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Composite", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput" + name: "String" } }, - output: { + databasesToTables: { + serializedName: "databasesToTables", + readOnly: true, + type: { + name: "String" + } + }, + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput" + className: "ReportableException" } } } @@ -3346,356 +3426,394 @@ export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties: msRest.Com } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", +export const MigrateSchemaSqlServerSqlDbDatabaseInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" - }, - uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + className: "MigrateSchemaSqlServerSqlDbDatabaseInput", modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, id: { - readOnly: true, serializedName: "id", type: { name: "String" } }, - resultType: { - required: true, - serializedName: "resultType", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { name: "String" } + }, + schemaSetting: { + serializedName: "schemaSetting", + type: { + name: "Composite", + className: "SchemaMigrationSetting" + } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError: msRest.CompositeMapper = { - serializedName: "DatabaseLevelErrorOutput", +export const SchemaMigrationSetting: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError", + className: "SchemaMigrationSetting", modelProperties: { - ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, - errorMessage: { - serializedName: "errorMessage", + schemaOption: { + serializedName: "schemaOption", type: { name: "String" } }, - events: { - serializedName: "events", + fileId: { + serializedName: "fileId", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SyncMigrationDatabaseErrorEvent" - } - } + name: "String" + } + }, + fileName: { + serializedName: "fileName", + type: { + name: "String" } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", +export const SqlMigrationTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputError", + className: "SqlMigrationTaskInput", modelProperties: { - ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, - error: { - readOnly: true, - serializedName: "error", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { name: "Composite", - className: "ReportableException" + className: "SqlConnectionInfo" + } + }, + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo" } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel: msRest.CompositeMapper = { - serializedName: "TableLevelOutput", +export const MigrateSchemaSqlServerSqlDbTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel", + className: "MigrateSchemaSqlServerSqlDbTaskOutput", + uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { - ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, - tableName: { - readOnly: true, - serializedName: "tableName", - type: { - name: "String" - } - }, - databaseName: { - readOnly: true, - serializedName: "databaseName", - type: { - name: "String" - } - }, - cdcInsertCounter: { + id: { + serializedName: "id", readOnly: true, - serializedName: "cdcInsertCounter", type: { name: "String" } }, - cdcUpdateCounter: { - readOnly: true, - serializedName: "cdcUpdateCounter", + resultType: { + serializedName: "resultType", + required: true, type: { name: "String" } - }, - cdcDeleteCounter: { - readOnly: true, - serializedName: "cdcDeleteCounter", + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskInput", + modelProperties: { + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "String" + name: "Composite", + className: "MySqlConnectionInfo" } }, - fullLoadEstFinishTime: { - readOnly: true, - serializedName: "fullLoadEstFinishTime", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "MySqlConnectionInfo" } }, - fullLoadStartedOn: { - readOnly: true, - serializedName: "fullLoadStartedOn", + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncDatabaseInput" + } + } } - }, - fullLoadEndedOn: { - readOnly: true, - serializedName: "fullLoadEndedOn", + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncDatabaseInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncDatabaseInput", + modelProperties: { + name: { + serializedName: "name", type: { - name: "DateTime" + name: "String" } }, - fullLoadTotalRows: { - readOnly: true, - serializedName: "fullLoadTotalRows", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { - name: "Number" + name: "String" } }, - state: { - readOnly: true, - serializedName: "state", + migrationSetting: { + serializedName: "migrationSetting", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - totalChangesApplied: { - readOnly: true, - serializedName: "totalChangesApplied", + sourceSetting: { + serializedName: "sourceSetting", type: { - name: "Number" + name: "Dictionary", + value: { type: { name: "String" } } } }, - dataErrorsCounter: { - readOnly: true, - serializedName: "dataErrorsCounter", + targetSetting: { + serializedName: "targetSetting", type: { - name: "Number" + name: "Dictionary", + value: { type: { name: "String" } } } }, - lastModifiedTime: { - readOnly: true, - serializedName: "lastModifiedTime", + tableMap: { + serializedName: "tableMap", type: { - name: "DateTime" + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const MigrateMySqlAzureDbForMySqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { - ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, - databaseName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", + resultType: { + serializedName: "resultType", + required: true, type: { - name: "DateTime" + name: "String" } - }, - endedOn: { + } + } + } +}; + +export const SyncMigrationDatabaseErrorEvent: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent", + modelProperties: { + timestampString: { + serializedName: "timestampString", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "String" } }, - migrationState: { + eventTypeString: { + serializedName: "eventTypeString", readOnly: true, - serializedName: "migrationState", type: { name: "String" } }, - incomingChanges: { + eventText: { + serializedName: "eventText", readOnly: true, - serializedName: "incomingChanges", type: { - name: "Number" + name: "String" } - }, - appliedChanges: { - readOnly: true, - serializedName: "appliedChanges", + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput", + modelProperties: { + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: + "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput" + } + } } }, - cdcInsertCounter: { - readOnly: true, - serializedName: "cdcInsertCounter", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "Number" + name: "Composite", + className: "PostgreSqlConnectionInfo" } }, - cdcDeleteCounter: { - readOnly: true, - serializedName: "cdcDeleteCounter", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "Number" + name: "Composite", + className: "PostgreSqlConnectionInfo" } }, - cdcUpdateCounter: { - readOnly: true, - serializedName: "cdcUpdateCounter", + encryptedKeyForSecureFields: { + serializedName: "encryptedKeyForSecureFields", type: { - name: "Number" + name: "String" } - }, - fullLoadCompletedTables: { - readOnly: true, - serializedName: "fullLoadCompletedTables", + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput", + modelProperties: { + name: { + serializedName: "name", type: { - name: "Number" + name: "String" } }, - fullLoadLoadingTables: { - readOnly: true, - serializedName: "fullLoadLoadingTables", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { - name: "Number" + name: "String" } }, - fullLoadQueuedTables: { - readOnly: true, - serializedName: "fullLoadQueuedTables", + migrationSetting: { + serializedName: "migrationSetting", type: { - name: "Number" + name: "Dictionary", + value: { type: { name: "String" } } } }, - fullLoadErroredTables: { - readOnly: true, - serializedName: "fullLoadErroredTables", + sourceSetting: { + serializedName: "sourceSetting", type: { - name: "Number" + name: "Dictionary", + value: { type: { name: "String" } } } }, - initializationCompleted: { - readOnly: true, - serializedName: "initializationCompleted", + targetSetting: { + serializedName: "targetSetting", type: { - name: "Boolean" + name: "Dictionary", + value: { type: { name: "String" } } } }, - latency: { - readOnly: true, - serializedName: "latency", + selectedTables: { + serializedName: "selectedTables", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: + "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput" + } + } } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseTableInput", modelProperties: { - ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", + name: { + serializedName: "name", type: { - name: "DateTime" + name: "String" } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", - type: { - name: "String" - } - }, - sourceServer: { - readOnly: true, - serializedName: "sourceServer", - type: { - name: "String" - } - }, - targetServerVersion: { + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "targetServerVersion", type: { name: "String" } }, - targetServer: { - readOnly: true, - serializedName: "targetServer", + resultType: { + serializedName: "resultType", + required: true, type: { name: "String" } @@ -3704,12 +3822,17 @@ export const MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel: msRest.Com } }; -export const MigrateMySqlAzureDbForMySqlSyncDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateMySqlAzureDbForMySqlSyncDatabaseInput", +export const MigrateSqlServerSqlDbSyncDatabaseInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateMySqlAzureDbForMySqlSyncDatabaseInput", + className: "MigrateSqlServerSqlDbSyncDatabaseInput", modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, name: { serializedName: "name", type: { @@ -3722,136 +3845,166 @@ export const MigrateMySqlAzureDbForMySqlSyncDatabaseInput: msRest.CompositeMappe name: "String" } }, + schemaName: { + serializedName: "schemaName", + type: { + name: "String" + } + }, + tableMap: { + serializedName: "tableMap", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, migrationSetting: { serializedName: "migrationSetting", type: { name: "Dictionary", - value: { - type: { - name: "String" - } - } + value: { type: { name: "String" } } } }, sourceSetting: { serializedName: "sourceSetting", type: { name: "Dictionary", - value: { - type: { - name: "String" - } - } + value: { type: { name: "String" } } } }, targetSetting: { serializedName: "targetSetting", type: { name: "Dictionary", - value: { - type: { - name: "String" - } - } + value: { type: { name: "String" } } } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateMySqlAzureDbForMySqlSyncTaskInput", +export const MigrationValidationOptions: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateMySqlAzureDbForMySqlSyncTaskInput", + className: "MigrationValidationOptions", modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + enableSchemaValidation: { + serializedName: "enableSchemaValidation", type: { - name: "Composite", - className: "MySqlConnectionInfo" + name: "Boolean" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + enableDataIntegrityValidation: { + serializedName: "enableDataIntegrityValidation", type: { - name: "Composite", - className: "MySqlConnectionInfo" + name: "Boolean" } }, - selectedDatabases: { + enableQueryAnalysisValidation: { + serializedName: "enableQueryAnalysisValidation", + type: { + name: "Boolean" + } + } + } + } +}; + +export const MigrateSqlServerSqlDbSyncTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskOutput", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" + } + }, + resultType: { + serializedName: "resultType", required: true, - serializedName: "selectedDatabases", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateMySqlAzureDbForMySqlSyncDatabaseInput" - } - } + name: "String" } } } } }; -export const MigrateMySqlAzureDbForMySqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.MySql.AzureDbForMySql.Sync", +export const MigrateSqlServerSqlDbDatabaseInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateMySqlAzureDbForMySqlSyncTaskProperties", + className: "MigrateSqlServerSqlDbDatabaseInput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + name: { + serializedName: "name", type: { - name: "Composite", - className: "MigrateMySqlAzureDbForMySqlSyncTaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateMySqlAzureDbForMySqlSyncTaskOutput" - } - } + name: "String" + } + }, + makeSourceDbReadOnly: { + serializedName: "makeSourceDbReadOnly", + type: { + name: "Boolean" + } + }, + tableMap: { + serializedName: "tableMap", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + schemaSetting: { + serializedName: "schemaSetting", + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + id: { + serializedName: "id", + type: { + name: "String" } } } } }; -export const MigrateSqlServerSqlDbSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbSyncTaskOutput", +export const MigrateSqlServerSqlDbTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", + className: "MigrateSqlServerSqlDbTaskOutput", + uberParent: "MigrateSqlServerSqlDbTaskOutput", polymorphicDiscriminator: { serializedName: "resultType", clientName: "resultType" }, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutput", modelProperties: { id: { - readOnly: true, serializedName: "id", + readOnly: true, type: { name: "String" } }, resultType: { - required: true, serializedName: "resultType", + required: true, type: { name: "String" } @@ -3860,448 +4013,378 @@ export const MigrateSqlServerSqlDbSyncTaskOutput: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlDbSyncTaskOutputDatabaseError: msRest.CompositeMapper = { - serializedName: "DatabaseLevelErrorOutput", +export const MigrationValidationResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutputDatabaseError", + className: "MigrationValidationResult", modelProperties: { - ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, - errorMessage: { - serializedName: "errorMessage", + id: { + serializedName: "id", + readOnly: true, type: { name: "String" } }, - events: { - serializedName: "events", + migrationId: { + serializedName: "migrationId", + readOnly: true, type: { - name: "Sequence", - element: { + name: "String" + } + }, + summaryResults: { + serializedName: "summaryResults", + type: { + name: "Dictionary", + value: { type: { name: "Composite", - className: "SyncMigrationDatabaseErrorEvent" + className: "MigrationValidationDatabaseSummaryResult" } } } - } - } - } -}; - -export const MigrateSqlServerSqlDbSyncTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutputError", - modelProperties: { - ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, - error: { + }, + status: { + serializedName: "status", readOnly: true, - serializedName: "error", type: { - name: "Composite", - className: "ReportableException" + name: "String" } } } } }; -export const MigrateSqlServerSqlDbSyncTaskOutputTableLevel: msRest.CompositeMapper = { - serializedName: "TableLevelOutput", +export const MigrationValidationDatabaseSummaryResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutputTableLevel", + className: "MigrationValidationDatabaseSummaryResult", modelProperties: { - ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, - tableName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "tableName", type: { name: "String" } }, - databaseName: { + migrationId: { + serializedName: "migrationId", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - cdcInsertCounter: { + sourceDatabaseName: { + serializedName: "sourceDatabaseName", readOnly: true, - serializedName: "cdcInsertCounter", type: { - name: "Number" + name: "String" } }, - cdcUpdateCounter: { - readOnly: true, - serializedName: "cdcUpdateCounter", - type: { - name: "Number" - } - }, - cdcDeleteCounter: { - readOnly: true, - serializedName: "cdcDeleteCounter", - type: { - name: "Number" - } - }, - fullLoadEstFinishTime: { + targetDatabaseName: { + serializedName: "targetDatabaseName", readOnly: true, - serializedName: "fullLoadEstFinishTime", type: { - name: "DateTime" + name: "String" } }, - fullLoadStartedOn: { + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "fullLoadStartedOn", type: { name: "DateTime" } }, - fullLoadEndedOn: { + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "fullLoadEndedOn", type: { name: "DateTime" } }, - fullLoadTotalRows: { - readOnly: true, - serializedName: "fullLoadTotalRows", - type: { - name: "Number" - } - }, - state: { + status: { + serializedName: "status", readOnly: true, - serializedName: "state", type: { name: "String" } - }, - totalChangesApplied: { - readOnly: true, - serializedName: "totalChangesApplied", - type: { - name: "Number" - } - }, - dataErrorsCounter: { - readOnly: true, - serializedName: "dataErrorsCounter", + } + } + } +}; + +export const MigrationReportResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrationReportResult", + modelProperties: { + id: { + serializedName: "id", type: { - name: "Number" + name: "String" } }, - lastModifiedTime: { - readOnly: true, - serializedName: "lastModifiedTime", + reportUrl: { + serializedName: "reportUrl", type: { - name: "DateTime" + name: "String" } } } } }; -export const MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const DataItemMigrationSummaryResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel", + className: "DataItemMigrationSummaryResult", modelProperties: { - ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, - databaseName: { + name: { + serializedName: "name", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, startedOn: { - readOnly: true, serializedName: "startedOn", + readOnly: true, type: { name: "DateTime" } }, endedOn: { - readOnly: true, serializedName: "endedOn", + readOnly: true, type: { name: "DateTime" } }, - migrationState: { + state: { + serializedName: "state", readOnly: true, - serializedName: "migrationState", type: { name: "String" } }, - incomingChanges: { - readOnly: true, - serializedName: "incomingChanges", - type: { - name: "Number" - } - }, - appliedChanges: { + statusMessage: { + serializedName: "statusMessage", readOnly: true, - serializedName: "appliedChanges", type: { - name: "Number" + name: "String" } }, - cdcInsertCounter: { + itemsCount: { + serializedName: "itemsCount", readOnly: true, - serializedName: "cdcInsertCounter", type: { name: "Number" } }, - cdcDeleteCounter: { + itemsCompletedCount: { + serializedName: "itemsCompletedCount", readOnly: true, - serializedName: "cdcDeleteCounter", type: { name: "Number" } }, - cdcUpdateCounter: { + errorPrefix: { + serializedName: "errorPrefix", readOnly: true, - serializedName: "cdcUpdateCounter", type: { - name: "Number" + name: "String" } }, - fullLoadCompletedTables: { + resultPrefix: { + serializedName: "resultPrefix", readOnly: true, - serializedName: "fullLoadCompletedTables", type: { - name: "Number" + name: "String" } - }, - fullLoadLoadingTables: { + } + } + } +}; + +export const MigrationValidationDatabaseLevelResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrationValidationDatabaseLevelResult", + modelProperties: { + id: { + serializedName: "id", readOnly: true, - serializedName: "fullLoadLoadingTables", type: { - name: "Number" + name: "String" } }, - fullLoadQueuedTables: { + migrationId: { + serializedName: "migrationId", readOnly: true, - serializedName: "fullLoadQueuedTables", type: { - name: "Number" + name: "String" } }, - fullLoadErroredTables: { + sourceDatabaseName: { + serializedName: "sourceDatabaseName", readOnly: true, - serializedName: "fullLoadErroredTables", type: { - name: "Number" + name: "String" } }, - initializationCompleted: { + targetDatabaseName: { + serializedName: "targetDatabaseName", readOnly: true, - serializedName: "initializationCompleted", type: { - name: "Boolean" + name: "String" } }, - latency: { - readOnly: true, - serializedName: "latency", - type: { - name: "Number" - } - } - } - } -}; - -export const MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", - className: "MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel", - modelProperties: { - ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, startedOn: { - readOnly: true, serializedName: "startedOn", + readOnly: true, type: { name: "DateTime" } }, endedOn: { - readOnly: true, serializedName: "endedOn", + readOnly: true, type: { name: "DateTime" } }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + dataIntegrityValidationResult: { + serializedName: "dataIntegrityValidationResult", type: { - name: "String" + name: "Composite", + className: "DataIntegrityValidationResult" } }, - sourceServer: { - readOnly: true, - serializedName: "sourceServer", + schemaValidationResult: { + serializedName: "schemaValidationResult", type: { - name: "String" + name: "Composite", + className: "SchemaComparisonValidationResult" } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + queryAnalysisValidationResult: { + serializedName: "queryAnalysisValidationResult", type: { - name: "String" + name: "Composite", + className: "QueryAnalysisValidationResult" } }, - targetServer: { + status: { + serializedName: "status", readOnly: true, - serializedName: "targetServer", type: { name: "String" } - }, - databaseCount: { - readOnly: true, - serializedName: "databaseCount", - type: { - name: "Number" - } } } } }; -export const MigrationValidationOptions: msRest.CompositeMapper = { - serializedName: "MigrationValidationOptions", +export const DataIntegrityValidationResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrationValidationOptions", + className: "DataIntegrityValidationResult", modelProperties: { - enableSchemaValidation: { - serializedName: "enableSchemaValidation", - type: { - name: "Boolean" - } - }, - enableDataIntegrityValidation: { - serializedName: "enableDataIntegrityValidation", + failedObjects: { + serializedName: "failedObjects", type: { - name: "Boolean" + name: "Dictionary", + value: { type: { name: "String" } } } }, - enableQueryAnalysisValidation: { - serializedName: "enableQueryAnalysisValidation", + validationErrors: { + serializedName: "validationErrors", type: { - name: "Boolean" + name: "Composite", + className: "ValidationError" } } } } }; -export const MigrateSqlServerSqlDbSyncTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbSyncTaskInput", +export const ValidationError: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlDbSyncTaskInput", + className: "ValidationError", modelProperties: { - ...SqlMigrationTaskInput.type.modelProperties, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + text: { + serializedName: "text", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlDbSyncDatabaseInput" - } - } + name: "String" } }, - validationOptions: { - serializedName: "validationOptions", + severity: { + serializedName: "severity", type: { - name: "Composite", - className: "MigrationValidationOptions" + name: "String" } } } } }; -export const MigrateSqlServerSqlDbSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.SqlServer.AzureSqlDb.Sync", +export const SchemaComparisonValidationResult: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSqlServerSqlDbSyncTaskProperties", + className: "SchemaComparisonValidationResult", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + schemaDifferences: { + serializedName: "schemaDifferences", type: { name: "Composite", - className: "MigrateSqlServerSqlDbSyncTaskInput" + className: "SchemaComparisonValidationResultType" } }, - output: { - readOnly: true, - serializedName: "output", + validationErrors: { + serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlDbSyncTaskOutput" - } - } + name: "Composite", + className: "ValidationError" + } + }, + sourceDatabaseObjectCount: { + serializedName: "sourceDatabaseObjectCount", + type: { + name: "Dictionary", + value: { type: { name: "Number" } } + } + }, + targetDatabaseObjectCount: { + serializedName: "targetDatabaseObjectCount", + type: { + name: "Dictionary", + value: { type: { name: "Number" } } } } } } }; -export const ValidationError: msRest.CompositeMapper = { - serializedName: "ValidationError", +export const SchemaComparisonValidationResultType: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ValidationError", + className: "SchemaComparisonValidationResultType", modelProperties: { - text: { - serializedName: "text", + objectName: { + serializedName: "objectName", type: { name: "String" } }, - severity: { - serializedName: "severity", + objectType: { + serializedName: "objectType", + type: { + name: "String" + } + }, + updateAction: { + serializedName: "updateAction", type: { name: "String" } @@ -4310,37 +4393,65 @@ export const ValidationError: msRest.CompositeMapper = { } }; -export const WaitStatistics: msRest.CompositeMapper = { - serializedName: "WaitStatistics", +export const QueryAnalysisValidationResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "WaitStatistics", + className: "QueryAnalysisValidationResult", modelProperties: { - waitType: { - serializedName: "waitType", + queryResults: { + serializedName: "queryResults", + type: { + name: "Composite", + className: "QueryExecutionResult" + } + }, + validationErrors: { + serializedName: "validationErrors", + type: { + name: "Composite", + className: "ValidationError" + } + } + } + } +}; + +export const QueryExecutionResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "QueryExecutionResult", + modelProperties: { + queryText: { + serializedName: "queryText", type: { name: "String" } }, - waitTimeMs: { - serializedName: "waitTimeMs", - defaultValue: 0, + statementsInBatch: { + serializedName: "statementsInBatch", type: { name: "Number" } }, - waitCount: { - serializedName: "waitCount", + sourceResult: { + serializedName: "sourceResult", type: { - name: "Number" + name: "Composite", + className: "ExecutionStatistics" + } + }, + targetResult: { + serializedName: "targetResult", + type: { + name: "Composite", + className: "ExecutionStatistics" } } } } }; -export const ExecutionStatistics: msRest.CompositeMapper = { - serializedName: "ExecutionStatistics", +export const ExecutionStatistics: coreClient.CompositeMapper = { type: { name: "Composite", className: "ExecutionStatistics", @@ -4367,12 +4478,7 @@ export const ExecutionStatistics: msRest.CompositeMapper = { serializedName: "waitStats", type: { name: "Dictionary", - value: { - type: { - name: "Composite", - className: "WaitStatistics" - } - } + value: { type: { name: "Composite", className: "WaitStatistics" } } } }, hasErrors: { @@ -4396,243 +4502,174 @@ export const ExecutionStatistics: msRest.CompositeMapper = { } }; -export const QueryExecutionResult: msRest.CompositeMapper = { - serializedName: "QueryExecutionResult", +export const WaitStatistics: coreClient.CompositeMapper = { type: { name: "Composite", - className: "QueryExecutionResult", + className: "WaitStatistics", modelProperties: { - queryText: { - serializedName: "queryText", + waitType: { + serializedName: "waitType", type: { name: "String" } }, - statementsInBatch: { - serializedName: "statementsInBatch", + waitTimeMs: { + defaultValue: 0, + serializedName: "waitTimeMs", type: { name: "Number" } }, - sourceResult: { - serializedName: "sourceResult", - type: { - name: "Composite", - className: "ExecutionStatistics" - } - }, - targetResult: { - serializedName: "targetResult", + waitCount: { + serializedName: "waitCount", type: { - name: "Composite", - className: "ExecutionStatistics" + name: "Number" } } } } }; -export const QueryAnalysisValidationResult: msRest.CompositeMapper = { - serializedName: "QueryAnalysisValidationResult", +export const SqlServerSqlMISyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "QueryAnalysisValidationResult", + className: "SqlServerSqlMISyncTaskInput", modelProperties: { - queryResults: { - serializedName: "queryResults", + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "Composite", - className: "QueryExecutionResult" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlMIDatabaseInput" + } + } } }, - validationErrors: { - serializedName: "validationErrors", + backupFileShare: { + serializedName: "backupFileShare", type: { name: "Composite", - className: "ValidationError" + className: "FileShare" } - } - } - } -}; - -export const SchemaComparisonValidationResultType: msRest.CompositeMapper = { - serializedName: "SchemaComparisonValidationResultType", - type: { - name: "Composite", - className: "SchemaComparisonValidationResultType", - modelProperties: { - objectName: { - serializedName: "objectName", + }, + storageResourceId: { + serializedName: "storageResourceId", + required: true, type: { name: "String" } }, - objectType: { - serializedName: "objectType", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "String" + name: "Composite", + className: "SqlConnectionInfo" } }, - updateAction: { - serializedName: "updateAction", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "String" + name: "Composite", + className: "MiSqlConnectionInfo" + } + }, + azureApp: { + serializedName: "azureApp", + type: { + name: "Composite", + className: "AzureActiveDirectoryApp" } } } } }; -export const SchemaComparisonValidationResult: msRest.CompositeMapper = { - serializedName: "SchemaComparisonValidationResult", +export const MigrateSqlServerSqlMIDatabaseInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SchemaComparisonValidationResult", + className: "MigrateSqlServerSqlMIDatabaseInput", modelProperties: { - schemaDifferences: { - serializedName: "schemaDifferences", + name: { + serializedName: "name", + required: true, type: { - name: "Composite", - className: "SchemaComparisonValidationResultType" + name: "String" } }, - validationErrors: { - serializedName: "validationErrors", + restoreDatabaseName: { + serializedName: "restoreDatabaseName", + required: true, + type: { + name: "String" + } + }, + backupFileShare: { + serializedName: "backupFileShare", type: { name: "Composite", - className: "ValidationError" + className: "FileShare" } }, - sourceDatabaseObjectCount: { - serializedName: "sourceDatabaseObjectCount", + backupFilePaths: { + serializedName: "backupFilePaths", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "Number" + name: "String" } } } }, - targetDatabaseObjectCount: { - serializedName: "targetDatabaseObjectCount", + id: { + serializedName: "id", type: { - name: "Dictionary", - value: { - type: { - name: "Number" - } - } + name: "String" } } } } }; -export const DataIntegrityValidationResult: msRest.CompositeMapper = { - serializedName: "DataIntegrityValidationResult", +export const MigrateSqlServerSqlMISyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataIntegrityValidationResult", + className: "MigrateSqlServerSqlMISyncTaskOutput", + uberParent: "MigrateSqlServerSqlMISyncTaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { - failedObjects: { - serializedName: "failedObjects", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - validationErrors: { - serializedName: "validationErrors", + resultType: { + serializedName: "resultType", + required: true, type: { - name: "Composite", - className: "ValidationError" + name: "String" } } } } }; -export const MigrationValidationDatabaseLevelResult: msRest.CompositeMapper = { - serializedName: "MigrationValidationDatabaseLevelResult", +export const BlobShare: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrationValidationDatabaseLevelResult", + className: "BlobShare", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - migrationId: { - readOnly: true, - serializedName: "migrationId", - type: { - name: "String" - } - }, - sourceDatabaseName: { - readOnly: true, - serializedName: "sourceDatabaseName", - type: { - name: "String" - } - }, - targetDatabaseName: { - readOnly: true, - serializedName: "targetDatabaseName", - type: { - name: "String" - } - }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - dataIntegrityValidationResult: { - readOnly: true, - serializedName: "dataIntegrityValidationResult", - type: { - name: "Composite", - className: "DataIntegrityValidationResult" - } - }, - schemaValidationResult: { - readOnly: true, - serializedName: "schemaValidationResult", - type: { - name: "Composite", - className: "SchemaComparisonValidationResult" - } - }, - queryAnalysisValidationResult: { - readOnly: true, - serializedName: "queryAnalysisValidationResult", - type: { - name: "Composite", - className: "QueryAnalysisValidationResult" - } - }, - status: { - readOnly: true, - serializedName: "status", + sasUri: { + serializedName: "sasUri", + required: true, type: { name: "String" } @@ -4641,57 +4678,26 @@ export const MigrationValidationDatabaseLevelResult: msRest.CompositeMapper = { } }; -export const MigrationValidationDatabaseSummaryResult: msRest.CompositeMapper = { - serializedName: "MigrationValidationDatabaseSummaryResult", +export const MigrateSqlServerSqlMITaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrationValidationDatabaseSummaryResult", + className: "MigrateSqlServerSqlMITaskOutput", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { id: { - readOnly: true, serializedName: "id", - type: { - name: "String" - } - }, - migrationId: { - readOnly: true, - serializedName: "migrationId", - type: { - name: "String" - } - }, - sourceDatabaseName: { - readOnly: true, - serializedName: "sourceDatabaseName", - type: { - name: "String" - } - }, - targetDatabaseName: { readOnly: true, - serializedName: "targetDatabaseName", type: { name: "String" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - status: { - readOnly: true, - serializedName: "status", + resultType: { + serializedName: "resultType", + required: true, type: { name: "String" } @@ -4700,41 +4706,25 @@ export const MigrationValidationDatabaseSummaryResult: msRest.CompositeMapper = } }; -export const MigrationValidationResult: msRest.CompositeMapper = { - serializedName: "MigrationValidationResult", +export const SsisMigrationInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrationValidationResult", + className: "SsisMigrationInfo", modelProperties: { - id: { - readOnly: true, - serializedName: "id", + ssisStoreType: { + serializedName: "ssisStoreType", type: { name: "String" } }, - migrationId: { - readOnly: true, - serializedName: "migrationId", + projectOverwriteOption: { + serializedName: "projectOverwriteOption", type: { name: "String" } }, - summaryResults: { - serializedName: "summaryResults", - type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "MigrationValidationDatabaseSummaryResult" - } - } - } - }, - status: { - readOnly: true, - serializedName: "status", + environmentOverwriteOption: { + serializedName: "environmentOverwriteOption", type: { name: "String" } @@ -4743,27 +4733,26 @@ export const MigrationValidationResult: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlDbTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbTaskOutput", +export const MigrateSsisTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", + className: "MigrateSsisTaskOutput", + uberParent: "MigrateSsisTaskOutput", polymorphicDiscriminator: { serializedName: "resultType", clientName: "resultType" }, - uberParent: "MigrateSqlServerSqlDbTaskOutput", - className: "MigrateSqlServerSqlDbTaskOutput", modelProperties: { id: { - readOnly: true, serializedName: "id", + readOnly: true, type: { name: "String" } }, resultType: { - required: true, serializedName: "resultType", + required: true, type: { name: "String" } @@ -4772,95 +4761,56 @@ export const MigrateSqlServerSqlDbTaskOutput: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlDbTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", +export const MongoDbCommandInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbTaskOutput", - className: "MigrateSqlServerSqlDbTaskOutputError", + className: "MongoDbCommandInput", modelProperties: { - ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, - error: { - readOnly: true, - serializedName: "error", + objectName: { + serializedName: "objectName", type: { - name: "Composite", - className: "ReportableException" + name: "String" } } } } }; -export const MigrateSqlServerSqlDbTaskOutputTableLevel: msRest.CompositeMapper = { - serializedName: "TableLevelOutput", +export const MongoDbClusterInfo: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbTaskOutput", - className: "MigrateSqlServerSqlDbTaskOutputTableLevel", + className: "MongoDbClusterInfo", modelProperties: { - ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, - objectName: { - readOnly: true, - serializedName: "objectName", - type: { - name: "String" - } - }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - state: { - readOnly: true, - serializedName: "state", - type: { - name: "String" - } - }, - statusMessage: { - readOnly: true, - serializedName: "statusMessage", - type: { - name: "String" - } - }, - itemsCount: { - readOnly: true, - serializedName: "itemsCount", + databases: { + serializedName: "databases", + required: true, type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MongoDbDatabaseInfo" + } + } } }, - itemsCompletedCount: { - readOnly: true, - serializedName: "itemsCompletedCount", + supportsSharding: { + serializedName: "supportsSharding", + required: true, type: { - name: "Number" + name: "Boolean" } }, - errorPrefix: { - readOnly: true, - serializedName: "errorPrefix", + type: { + serializedName: "type", + required: true, type: { name: "String" } }, - resultPrefix: { - readOnly: true, - serializedName: "resultPrefix", + version: { + serializedName: "version", + required: true, type: { name: "String" } @@ -4869,71 +4819,94 @@ export const MigrateSqlServerSqlDbTaskOutputTableLevel: msRest.CompositeMapper = } }; -export const DataItemMigrationSummaryResult: msRest.CompositeMapper = { - serializedName: "DataItemMigrationSummaryResult", +export const MongoDbShardKeyInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataItemMigrationSummaryResult", + className: "MongoDbShardKeyInfo", modelProperties: { - name: { - readOnly: true, - serializedName: "name", + fields: { + serializedName: "fields", + required: true, type: { - name: "String" - } - }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MongoDbShardKeyField" + } + } } }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + isUnique: { + serializedName: "isUnique", + required: true, type: { - name: "DateTime" + name: "Boolean" } - }, - state: { - readOnly: true, - serializedName: "state", + } + } + } +}; + +export const MongoDbShardKeyField: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDbShardKeyField", + modelProperties: { + name: { + serializedName: "name", + required: true, type: { name: "String" } }, - statusMessage: { - readOnly: true, - serializedName: "statusMessage", + order: { + serializedName: "order", + required: true, type: { name: "String" } + } + } + } +}; + +export const MongoDbObjectInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDbObjectInfo", + modelProperties: { + averageDocumentSize: { + serializedName: "averageDocumentSize", + required: true, + type: { + name: "Number" + } }, - itemsCount: { - readOnly: true, - serializedName: "itemsCount", + dataSize: { + serializedName: "dataSize", + required: true, type: { name: "Number" } }, - itemsCompletedCount: { - readOnly: true, - serializedName: "itemsCompletedCount", + documentCount: { + serializedName: "documentCount", + required: true, type: { name: "Number" } }, - errorPrefix: { - readOnly: true, - serializedName: "errorPrefix", + name: { + serializedName: "name", + required: true, type: { name: "String" } }, - resultPrefix: { - readOnly: true, - serializedName: "resultPrefix", + qualifiedName: { + serializedName: "qualifiedName", + required: true, type: { name: "String" } @@ -4942,143 +4915,140 @@ export const DataItemMigrationSummaryResult: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlDbTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const MongoDbProgress: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbTaskOutput", - className: "MigrateSqlServerSqlDbTaskOutputDatabaseLevel", + className: "MongoDbProgress", + uberParent: "MongoDbProgress", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { - ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, - databaseName: { - readOnly: true, - serializedName: "databaseName", + bytesCopied: { + serializedName: "bytesCopied", + required: true, type: { - name: "String" + name: "Number" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", + documentsCopied: { + serializedName: "documentsCopied", + required: true, type: { - name: "DateTime" + name: "Number" } }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + elapsedTime: { + serializedName: "elapsedTime", + required: true, type: { - name: "DateTime" + name: "String" } }, - state: { - readOnly: true, - serializedName: "state", + errors: { + serializedName: "errors", + required: true, type: { - name: "String" + name: "Dictionary", + value: { type: { name: "Composite", className: "MongoDbError" } } } }, - stage: { - readOnly: true, - serializedName: "stage", + eventsPending: { + serializedName: "eventsPending", + required: true, type: { - name: "String" + name: "Number" } }, - statusMessage: { - readOnly: true, - serializedName: "statusMessage", + eventsReplayed: { + serializedName: "eventsReplayed", + required: true, type: { - name: "String" + name: "Number" } }, - message: { - readOnly: true, - serializedName: "message", + lastEventTime: { + serializedName: "lastEventTime", type: { - name: "String" + name: "DateTime" } }, - numberOfObjects: { - readOnly: true, - serializedName: "numberOfObjects", + lastReplayTime: { + serializedName: "lastReplayTime", type: { - name: "Number" + name: "DateTime" } }, - numberOfObjectsCompleted: { - readOnly: true, - serializedName: "numberOfObjectsCompleted", + name: { + serializedName: "name", type: { - name: "Number" + name: "String" } }, - errorCount: { - readOnly: true, - serializedName: "errorCount", + qualifiedName: { + serializedName: "qualifiedName", type: { - name: "Number" + name: "String" } }, - errorPrefix: { - readOnly: true, - serializedName: "errorPrefix", + resultType: { + serializedName: "resultType", + required: true, type: { name: "String" } }, - resultPrefix: { - readOnly: true, - serializedName: "resultPrefix", + state: { + serializedName: "state", + required: true, type: { name: "String" } }, - exceptionsAndWarnings: { - readOnly: true, - serializedName: "exceptionsAndWarnings", + totalBytes: { + serializedName: "totalBytes", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Number" } }, - objectSummary: { - readOnly: true, - serializedName: "objectSummary", + totalDocuments: { + serializedName: "totalDocuments", + required: true, type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "DataItemMigrationSummaryResult" - } - } + name: "Number" } } } } }; -export const MigrationReportResult: msRest.CompositeMapper = { - serializedName: "MigrationReportResult", +export const MongoDbError: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrationReportResult", + className: "MongoDbError", modelProperties: { - id: { - serializedName: "id", + code: { + serializedName: "code", type: { name: "String" } }, - reportUrl: { - serializedName: "reportUrl", + count: { + serializedName: "count", + type: { + name: "Number" + } + }, + message: { + serializedName: "message", + type: { + name: "String" + } + }, + type: { + serializedName: "type", type: { name: "String" } @@ -5087,16 +5057,26 @@ export const MigrationReportResult: msRest.CompositeMapper = { } }; -export const DatabaseSummaryResult: msRest.CompositeMapper = { - serializedName: "DatabaseSummaryResult", +export const MongoDbCollectionSettings: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseSummaryResult", + className: "MongoDbCollectionSettings", modelProperties: { - ...DataItemMigrationSummaryResult.type.modelProperties, - sizeMB: { - readOnly: true, - serializedName: "sizeMB", + canDelete: { + serializedName: "canDelete", + type: { + name: "Boolean" + } + }, + shardKey: { + serializedName: "shardKey", + type: { + name: "Composite", + className: "MongoDbShardKeySetting" + } + }, + targetRUs: { + serializedName: "targetRUs", type: { name: "Number" } @@ -5105,236 +5085,195 @@ export const DatabaseSummaryResult: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlDbTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const MongoDbShardKeySetting: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlDbTaskOutput", - className: "MigrateSqlServerSqlDbTaskOutputMigrationLevel", + className: "MongoDbShardKeySetting", modelProperties: { - ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + fields: { + serializedName: "fields", + required: true, type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MongoDbShardKeyField" + } + } } }, - durationInSeconds: { - readOnly: true, - serializedName: "durationInSeconds", + isUnique: { + serializedName: "isUnique", + required: true, type: { - name: "Number" + name: "Boolean" } - }, - status: { - readOnly: true, - serializedName: "status", + } + } + } +}; + +export const MongoDbDatabaseSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDbDatabaseSettings", + modelProperties: { + collections: { + serializedName: "collections", + required: true, type: { - name: "String" + name: "Dictionary", + value: { + type: { name: "Composite", className: "MongoDbCollectionSettings" } + } } }, - statusMessage: { - readOnly: true, - serializedName: "statusMessage", + targetRUs: { + serializedName: "targetRUs", type: { - name: "String" + name: "Number" } - }, - message: { - readOnly: true, - serializedName: "message", + } + } + } +}; + +export const MongoDbMigrationSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDbMigrationSettings", + modelProperties: { + boostRUs: { + serializedName: "boostRUs", type: { - name: "String" + name: "Number" } }, databases: { - readOnly: true, serializedName: "databases", + required: true, type: { name: "Dictionary", value: { - type: { - name: "String" - } + type: { name: "Composite", className: "MongoDbDatabaseSettings" } } } }, - databaseSummary: { - readOnly: true, - serializedName: "databaseSummary", + replication: { + serializedName: "replication", type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "DatabaseSummaryResult" - } - } + name: "String" } }, - migrationValidationResult: { - serializedName: "migrationValidationResult", + source: { + serializedName: "source", type: { name: "Composite", - className: "MigrationValidationResult" + className: "MongoDbConnectionInfo" } }, - migrationReportResult: { - serializedName: "migrationReportResult", + target: { + serializedName: "target", type: { name: "Composite", - className: "MigrationReportResult" - } - }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", - type: { - name: "String" - } - }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", - type: { - name: "String" - } - }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", - type: { - name: "String" - } - }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", - type: { - name: "String" + className: "MongoDbConnectionInfo" } }, - exceptionsAndWarnings: { - readOnly: true, - serializedName: "exceptionsAndWarnings", + throttling: { + serializedName: "throttling", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Composite", + className: "MongoDbThrottlingSettings" } } } } }; -export const MigrateSqlServerSqlDbDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbDatabaseInput", +export const MongoDbThrottlingSettings: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlDbDatabaseInput", + className: "MongoDbThrottlingSettings", modelProperties: { - name: { - serializedName: "name", - type: { - name: "String" - } - }, - targetDatabaseName: { - serializedName: "targetDatabaseName", + minFreeCpu: { + serializedName: "minFreeCpu", type: { - name: "String" + name: "Number" } }, - makeSourceDbReadOnly: { - serializedName: "makeSourceDbReadOnly", + minFreeMemoryMb: { + serializedName: "minFreeMemoryMb", type: { - name: "Boolean" + name: "Number" } }, - tableMap: { - serializedName: "tableMap", + maxParallelism: { + serializedName: "maxParallelism", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "Number" } } } } }; -export const MigrateSqlServerSqlDbTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlDbTaskInput", +export const ConnectToSourceOracleSyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlDbTaskInput", + className: "ConnectToSourceOracleSyncTaskInput", modelProperties: { - ...SqlMigrationTaskInput.type.modelProperties, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlDbDatabaseInput" - } - } - } - }, - validationOptions: { - serializedName: "validationOptions", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { name: "Composite", - className: "MigrationValidationOptions" + className: "OracleConnectionInfo" } } } } }; -export const MigrateSqlServerSqlDbTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.SqlServer.SqlDb", +export const ConnectToSourceOracleSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSqlServerSqlDbTaskProperties", + className: "ConnectToSourceOracleSyncTaskOutput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, type: { - name: "Composite", - className: "MigrateSqlServerSqlDbTaskInput" + name: "String" } }, - output: { + databases: { + serializedName: "databases", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + }, + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSqlServerSqlDbTaskOutput" + className: "ReportableException" } } } @@ -5343,250 +5282,236 @@ export const MigrateSqlServerSqlDbTaskProperties: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlMISyncTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlMISyncTaskOutput", +export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" - }, - uberParent: "MigrateSqlServerSqlMISyncTaskOutput", - className: "MigrateSqlServerSqlMISyncTaskOutput", + className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - resultType: { - required: true, - serializedName: "resultType", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "String" + name: "Composite", + className: "PostgreSqlConnectionInfo" } } } } }; -export const MigrateSqlServerSqlMISyncTaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", +export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMISyncTaskOutput", - className: "MigrateSqlServerSqlMISyncTaskOutputError", + className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput", modelProperties: { - ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, - error: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "error", type: { - name: "Composite", - className: "ReportableException" + name: "String" } - } - } - } -}; - -export const BackupFileInfo: msRest.CompositeMapper = { - serializedName: "BackupFileInfo", - type: { - name: "Composite", - className: "BackupFileInfo", - modelProperties: { - fileLocation: { - serializedName: "fileLocation", + }, + databases: { + serializedName: "databases", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", + readOnly: true, type: { name: "String" } }, - familySequenceNumber: { - serializedName: "familySequenceNumber", + validationErrors: { + serializedName: "validationErrors", + readOnly: true, type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } }, - status: { - serializedName: "status", + databaseSchemaMap: { + serializedName: "databaseSchemaMap", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: + "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem" + } + } } } } } }; -export const BackupSetInfo: msRest.CompositeMapper = { - serializedName: "BackupSetInfo", +export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem: coreClient.CompositeMapper = { type: { name: "Composite", - className: "BackupSetInfo", + className: + "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem", modelProperties: { - backupSetId: { - serializedName: "backupSetId", - type: { - name: "String" - } - }, - firstLsn: { - serializedName: "firstLsn", - type: { - name: "String" - } - }, - lastLsn: { - serializedName: "lastLsn", - type: { - name: "String" - } - }, - lastModifiedTime: { - serializedName: "lastModifiedTime", - type: { - name: "DateTime" - } - }, - backupType: { - serializedName: "backupType", + database: { + serializedName: "database", type: { name: "String" } }, - listOfBackupFiles: { - serializedName: "listOfBackupFiles", + schemas: { + serializedName: "schemas", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "BackupFileInfo" + name: "String" } } } - }, - databaseName: { - serializedName: "databaseName", - type: { - name: "String" - } - }, - backupStartDate: { - serializedName: "backupStartDate", - type: { - name: "DateTime" - } - }, - backupFinishedDate: { - serializedName: "backupFinishedDate", + } + } + } +}; + +export const GetUserTablesOracleTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesOracleTaskInput", + modelProperties: { + connectionInfo: { + serializedName: "connectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "OracleConnectionInfo" } }, - isBackupRestored: { - serializedName: "isBackupRestored", + selectedSchemas: { + serializedName: "selectedSchemas", + required: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "String" + } + } } } } } }; -export const MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const GetUserTablesOracleTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMISyncTaskOutput", - className: "MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel", + className: "GetUserTablesOracleTaskOutput", modelProperties: { - ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, - sourceDatabaseName: { - readOnly: true, - serializedName: "sourceDatabaseName", - type: { - name: "String" - } - }, - migrationState: { + schemaName: { + serializedName: "schemaName", readOnly: true, - serializedName: "migrationState", type: { name: "String" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { + tables: { + serializedName: "tables", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DatabaseTable" + } + } } }, - fullBackupSetInfo: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "fullBackupSetInfo", type: { - name: "Composite", - className: "BackupSetInfo" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - lastRestoredBackupSetInfo: { - readOnly: true, - serializedName: "lastRestoredBackupSetInfo", + } + } + } +}; + +export const GetUserTablesPostgreSqlTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesPostgreSqlTaskInput", + modelProperties: { + connectionInfo: { + serializedName: "connectionInfo", type: { name: "Composite", - className: "BackupSetInfo" + className: "PostgreSqlConnectionInfo" } }, - activeBackupSets: { - readOnly: true, - serializedName: "activeBackupSets", + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { name: "Sequence", element: { type: { - name: "Composite", - className: "BackupSetInfo" + name: "String" } } } - }, - containerName: { - readOnly: true, - serializedName: "containerName", - type: { - name: "String" - } - }, - errorPrefix: { + } + } + } +}; + +export const GetUserTablesPostgreSqlTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GetUserTablesPostgreSqlTaskOutput", + modelProperties: { + databaseName: { + serializedName: "databaseName", readOnly: true, - serializedName: "errorPrefix", type: { name: "String" } }, - isFullBackupRestored: { + tables: { + serializedName: "tables", readOnly: true, - serializedName: "isFullBackupRestored", type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DatabaseTable" + } + } } }, - exceptionsAndWarnings: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { name: "Sequence", element: { @@ -5601,161 +5526,145 @@ export const MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel: msRest.CompositeM } }; -export const MigrateSqlServerSqlMISyncTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const ValidateOracleAzureDbPostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMISyncTaskOutput", - className: "MigrateSqlServerSqlMISyncTaskOutputMigrationLevel", + className: "ValidateOracleAzureDbPostgreSqlSyncTaskOutput", modelProperties: { - ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, - databaseCount: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "databaseCount", type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - state: { - readOnly: true, - serializedName: "state", + } + } + } +}; + +export const MigrateOracleAzureDbPostgreSqlSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput", + modelProperties: { + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncDatabaseInput" + } + } } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "PostgreSqlConnectionInfo" } }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { - name: "DateTime" + name: "Composite", + className: "OracleConnectionInfo" } - }, - sourceServerName: { - readOnly: true, - serializedName: "sourceServerName", + } + } + } +}; + +export const MigrateOracleAzureDbPostgreSqlSyncDatabaseInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncDatabaseInput", + modelProperties: { + caseManipulation: { + serializedName: "caseManipulation", type: { name: "String" } }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + name: { + serializedName: "name", type: { name: "String" } }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", + schemaName: { + serializedName: "schemaName", type: { name: "String" } }, - targetServerName: { - readOnly: true, - serializedName: "targetServerName", + tableMap: { + serializedName: "tableMap", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { name: "String" } }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", + migrationSetting: { + serializedName: "migrationSetting", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - databaseErrorCount: { - readOnly: true, - serializedName: "databaseErrorCount", - type: { - name: "Number" - } - } - } - } -}; - -export const MigrateSqlServerSqlMISyncTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlMISyncTaskInput", - type: { - name: "Composite", - className: "MigrateSqlServerSqlMISyncTaskInput", - modelProperties: { - ...SqlServerSqlMISyncTaskInput.type.modelProperties - } - } -}; - -export const MigrateSqlServerSqlMISyncTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSqlServerSqlMISyncTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + sourceSetting: { + serializedName: "sourceSetting", type: { - name: "Composite", - className: "MigrateSqlServerSqlMISyncTaskInput" + name: "Dictionary", + value: { type: { name: "String" } } } }, - output: { - readOnly: true, - serializedName: "output", + targetSetting: { + serializedName: "targetSetting", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlMISyncTaskOutput" - } - } + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const MigrateSqlServerSqlMITaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlMITaskOutput", +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", polymorphicDiscriminator: { serializedName: "resultType", clientName: "resultType" }, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutput", modelProperties: { id: { - readOnly: true, serializedName: "id", + readOnly: true, type: { name: "String" } }, resultType: { - required: true, serializedName: "resultType", + required: true, type: { name: "String" } @@ -5764,87 +5673,54 @@ export const MigrateSqlServerSqlMITaskOutput: msRest.CompositeMapper = { } }; -export const MigrateSqlServerSqlMITaskOutputError: msRest.CompositeMapper = { - serializedName: "ErrorOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutputError", - modelProperties: { - ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, - error: { - readOnly: true, - serializedName: "error", - type: { - name: "Composite", - className: "ReportableException" - } - } - } - } -}; - -export const MigrateSqlServerSqlMITaskOutputLoginLevel: msRest.CompositeMapper = { - serializedName: "LoginLevelOutput", +export const OracleOCIDriverInfo: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutputLoginLevel", + className: "OracleOCIDriverInfo", modelProperties: { - ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, - loginName: { + driverName: { + serializedName: "driverName", readOnly: true, - serializedName: "loginName", type: { name: "String" } }, - state: { + driverSize: { + serializedName: "driverSize", readOnly: true, - serializedName: "state", type: { name: "String" } }, - stage: { + archiveChecksum: { + serializedName: "archiveChecksum", readOnly: true, - serializedName: "stage", type: { name: "String" } }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { + oracleChecksum: { + serializedName: "oracleChecksum", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "String" } }, - message: { + assemblyVersion: { + serializedName: "assemblyVersion", readOnly: true, - serializedName: "message", type: { name: "String" } }, - exceptionsAndWarnings: { + supportedOracleVersions: { + serializedName: "supportedOracleVersions", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "ReportableException" + name: "String" } } } @@ -5853,60 +5729,81 @@ export const MigrateSqlServerSqlMITaskOutputLoginLevel: msRest.CompositeMapper = } }; -export const MigrateSqlServerSqlMITaskOutputAgentJobLevel: msRest.CompositeMapper = { - serializedName: "AgentJobLevelOutput", +export const CheckOCIDriverTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutputAgentJobLevel", + className: "CheckOCIDriverTaskInput", modelProperties: { - ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, - name: { - readOnly: true, - serializedName: "name", + serverVersion: { + serializedName: "serverVersion", type: { name: "String" } - }, - isEnabled: { - readOnly: true, - serializedName: "isEnabled", - type: { - name: "Boolean" - } - }, - state: { - readOnly: true, - serializedName: "state", + } + } + } +}; + +export const CheckOCIDriverTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CheckOCIDriverTaskOutput", + modelProperties: { + installedDriver: { + serializedName: "installedDriver", type: { - name: "String" + name: "Composite", + className: "OracleOCIDriverInfo" } }, - startedOn: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "startedOn", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", + } + } + } +}; + +export const UploadOCIDriverTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UploadOCIDriverTaskInput", + modelProperties: { + driverShare: { + serializedName: "driverShare", type: { - name: "DateTime" + name: "Composite", + className: "FileShare" } - }, - message: { + } + } + } +}; + +export const UploadOCIDriverTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "UploadOCIDriverTaskOutput", + modelProperties: { + driverPackageName: { + serializedName: "driverPackageName", readOnly: true, - serializedName: "message", type: { name: "String" } }, - exceptionsAndWarnings: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { name: "Sequence", element: { @@ -5921,67 +5818,29 @@ export const MigrateSqlServerSqlMITaskOutputAgentJobLevel: msRest.CompositeMappe } }; -export const MigrateSqlServerSqlMITaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const InstallOCIDriverTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutputDatabaseLevel", + className: "InstallOCIDriverTaskInput", modelProperties: { - ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, - databaseName: { - readOnly: true, - serializedName: "databaseName", - type: { - name: "String" - } - }, - sizeMB: { - readOnly: true, - serializedName: "sizeMB", - type: { - name: "Number" - } - }, - state: { - readOnly: true, - serializedName: "state", - type: { - name: "String" - } - }, - stage: { - readOnly: true, - serializedName: "stage", - type: { - name: "String" - } - }, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { - readOnly: true, - serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - message: { - readOnly: true, - serializedName: "message", + driverPackageName: { + serializedName: "driverPackageName", type: { name: "String" } - }, - exceptionsAndWarnings: { + } + } + } +}; + +export const InstallOCIDriverTaskOutput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "InstallOCIDriverTaskOutput", + modelProperties: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { name: "Sequence", element: { @@ -5996,11 +5855,10 @@ export const MigrateSqlServerSqlMITaskOutputDatabaseLevel: msRest.CompositeMappe } }; -export const OrphanedUserInfo: msRest.CompositeMapper = { - serializedName: "OrphanedUserInfo", +export const ServiceOperation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OrphanedUserInfo", + className: "ServiceOperation", modelProperties: { name: { serializedName: "name", @@ -6008,335 +5866,323 @@ export const OrphanedUserInfo: msRest.CompositeMapper = { name: "String" } }, - databaseName: { - serializedName: "databaseName", + display: { + serializedName: "display", type: { - name: "String" + name: "Composite", + className: "ServiceOperationDisplay" } } } } }; -export const StartMigrationScenarioServerRoleResult: msRest.CompositeMapper = { - serializedName: "StartMigrationScenarioServerRoleResult", +export const ServiceOperationDisplay: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StartMigrationScenarioServerRoleResult", + className: "ServiceOperationDisplay", modelProperties: { - name: { - readOnly: true, - serializedName: "name", + provider: { + serializedName: "provider", type: { name: "String" } }, - state: { - readOnly: true, - serializedName: "state", + resource: { + serializedName: "resource", type: { name: "String" } }, - exceptionsAndWarnings: { - readOnly: true, - serializedName: "exceptionsAndWarnings", + operation: { + serializedName: "operation", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + } + } + } +}; + +export const ServiceOperationList: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceOperationList", + modelProperties: { + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "ServiceOperation" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const MigrateSqlServerSqlMITaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const ConnectToSourceNonSqlTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSqlServerSqlMITaskOutput", - className: "MigrateSqlServerSqlMITaskOutputMigrationLevel", + className: "ConnectToSourceNonSqlTaskOutput", modelProperties: { - ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, - startedOn: { - readOnly: true, - serializedName: "startedOn", - type: { - name: "DateTime" - } - }, - endedOn: { + id: { + serializedName: "id", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "String" } }, - status: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "status", type: { name: "String" } }, - state: { - readOnly: true, - serializedName: "state", + serverProperties: { + serializedName: "serverProperties", type: { - name: "String" + name: "Composite", + className: "ServerProperties" } }, - agentJobs: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "agentJobs", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { name: "String" } } } }, - logins: { + validationErrors: { + serializedName: "validationErrors", readOnly: true, - serializedName: "logins", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } - }, - message: { + } + } + } +}; + +export const ServerProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServerProperties", + modelProperties: { + serverPlatform: { + serializedName: "serverPlatform", readOnly: true, - serializedName: "message", type: { name: "String" } }, - serverRoleResults: { + serverName: { + serializedName: "serverName", readOnly: true, - serializedName: "serverRoleResults", type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "StartMigrationScenarioServerRoleResult" - } - } + name: "String" } }, - orphanedUsersInfo: { + serverVersion: { + serializedName: "serverVersion", readOnly: true, - serializedName: "orphanedUsersInfo", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "OrphanedUserInfo" - } - } + name: "String" } }, - databases: { + serverEdition: { + serializedName: "serverEdition", readOnly: true, - serializedName: "databases", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - sourceServerVersion: { + serverOperatingSystemVersion: { + serializedName: "serverOperatingSystemVersion", readOnly: true, - serializedName: "sourceServerVersion", type: { name: "String" } }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", - type: { - name: "String" - } - }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", - type: { - name: "String" - } - }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", - type: { - name: "String" - } - }, - exceptionsAndWarnings: { + serverDatabaseCount: { + serializedName: "serverDatabaseCount", readOnly: true, - serializedName: "exceptionsAndWarnings", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Number" } } } } }; -export const MigrateSqlServerSqlMITaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlMITaskInput", +export const MigrateMySqlAzureDbForMySqlOfflineTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MigrateSqlServerSqlMITaskInput", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskInput", modelProperties: { - ...SqlMigrationTaskInput.type.modelProperties, + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", + type: { + name: "Composite", + className: "MySqlConnectionInfo" + } + }, + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "MySqlConnectionInfo" + } + }, selectedDatabases: { - required: true, serializedName: "selectedDatabases", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSqlServerSqlMIDatabaseInput" + className: "MigrateMySqlAzureDbForMySqlOfflineDatabaseInput" } } } }, - selectedLogins: { - serializedName: "selectedLogins", + makeSourceServerReadOnly: { + defaultValue: false, + serializedName: "makeSourceServerReadOnly", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "Boolean" } }, - selectedAgentJobs: { - serializedName: "selectedAgentJobs", + startedOn: { + serializedName: "startedOn", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "DateTime" } }, - backupFileShare: { - serializedName: "backupFileShare", + optionalAgentSettings: { + serializedName: "optionalAgentSettings", type: { - name: "Composite", - className: "FileShare" + name: "Dictionary", + value: { type: { name: "String" } } } - }, - backupBlobShare: { - required: true, - serializedName: "backupBlobShare", + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlOfflineDatabaseInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlOfflineDatabaseInput", + modelProperties: { + name: { + serializedName: "name", type: { - name: "Composite", - className: "BlobShare" + name: "String" } }, - backupMode: { - serializedName: "backupMode", + targetDatabaseName: { + serializedName: "targetDatabaseName", type: { name: "String" } }, - aadDomainName: { - serializedName: "aadDomainName", + tableMap: { + serializedName: "tableMap", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const MigrateSqlServerSqlMITaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.SqlServer.AzureSqlDbMI", +export const MigrateMySqlAzureDbForMySqlOfflineTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSqlServerSqlMITaskProperties", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + uberParent: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + polymorphicDiscriminator: { + serializedName: "resultType", + clientName: "resultType" + }, modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Composite", - className: "MigrateSqlServerSqlMITaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + resultType: { + serializedName: "resultType", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSqlServerSqlMITaskOutput" - } - } + name: "String" } } } } }; -export const MigrateMongoDbTaskProperties: msRest.CompositeMapper = { - serializedName: "Migrate.MongoDb", +export const ValidateSyncMigrationInputSqlServerTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateMongoDbTaskProperties", + className: "ValidateSyncMigrationInputSqlServerTaskInput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + sourceConnectionInfo: { + serializedName: "sourceConnectionInfo", type: { name: "Composite", - className: "MongoDbMigrationSettings" + className: "SqlConnectionInfo" } }, - output: { - readOnly: true, - serializedName: "output", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo" + } + }, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoDbProgress" + className: "MigrateSqlServerSqlDbSyncDatabaseInput" } } } @@ -6345,48 +6191,28 @@ export const MigrateMongoDbTaskProperties: msRest.CompositeMapper = { } }; -export const ConnectToTargetAzureDbForMySqlTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetAzureDbForMySqlTaskOutput", +export const ValidateSyncMigrationInputSqlServerTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetAzureDbForMySqlTaskOutput", + className: "ValidateSyncMigrationInputSqlServerTaskOutput", modelProperties: { id: { - readOnly: true, serializedName: "id", - type: { - name: "String" - } - }, - serverVersion: { readOnly: true, - serializedName: "serverVersion", type: { name: "String" } }, - databases: { - readOnly: true, - serializedName: "databases", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - targetServerBrandVersion: { + name: { + serializedName: "name", readOnly: true, - serializedName: "targetServerBrandVersion", type: { name: "String" } }, validationErrors: { - readOnly: true, serializedName: "validationErrors", + readOnly: true, type: { name: "Sequence", element: { @@ -6401,88 +6227,95 @@ export const ConnectToTargetAzureDbForMySqlTaskOutput: msRest.CompositeMapper = } }; -export const ConnectToTargetAzureDbForMySqlTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetAzureDbForMySqlTaskInput", +export const ValidateMigrationInputSqlServerSqlMITaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetAzureDbForMySqlTaskInput", + className: "ValidateMigrationInputSqlServerSqlMITaskInput", modelProperties: { sourceConnectionInfo: { - required: true, serializedName: "sourceConnectionInfo", type: { name: "Composite", - className: "MySqlConnectionInfo" + className: "SqlConnectionInfo" } }, targetConnectionInfo: { - required: true, serializedName: "targetConnectionInfo", type: { name: "Composite", - className: "MySqlConnectionInfo" + className: "SqlConnectionInfo" } - } - } - } -}; - -export const ConnectToTargetAzureDbForMySqlTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.AzureDbForMySql", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetAzureDbForMySqlTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, type: { - name: "Composite", - className: "ConnectToTargetAzureDbForMySqlTaskInput" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlMIDatabaseInput" + } + } } }, - output: { - readOnly: true, - serializedName: "output", + selectedLogins: { + serializedName: "selectedLogins", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "ConnectToTargetAzureDbForMySqlTaskOutput" + name: "String" } } } + }, + backupFileShare: { + serializedName: "backupFileShare", + type: { + name: "Composite", + className: "FileShare" + } + }, + backupBlobShare: { + serializedName: "backupBlobShare", + type: { + name: "Composite", + className: "BlobShare" + } + }, + backupMode: { + serializedName: "backupMode", + type: { + name: "String" + } } } } }; -export const ConnectToTargetSqlMISyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlMISyncTaskOutput", +export const ValidateMigrationInputSqlServerSqlMITaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetSqlMISyncTaskOutput", + className: "ValidateMigrationInputSqlServerSqlMITaskOutput", modelProperties: { - targetServerVersion: { + id: { + serializedName: "id", readOnly: true, - serializedName: "targetServerVersion", type: { name: "String" } }, - targetServerBrandVersion: { + name: { + serializedName: "name", readOnly: true, - serializedName: "targetServerBrandVersion", type: { name: "String" } }, - validationErrors: { + restoreDatabaseNameErrors: { + serializedName: "restoreDatabaseNameErrors", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { @@ -6492,124 +6325,49 @@ export const ConnectToTargetSqlMISyncTaskOutput: msRest.CompositeMapper = { } } } - } - } - } -}; - -export const ConnectToTargetSqlMISyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlMISyncTaskInput", - type: { - name: "Composite", - className: "ConnectToTargetSqlMISyncTaskInput", - modelProperties: { - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", - type: { - name: "Composite", - className: "MiSqlConnectionInfo" - } - }, - azureApp: { - required: true, - serializedName: "azureApp", - type: { - name: "Composite", - className: "AzureActiveDirectoryApp" - } - } - } - } -}; - -export const ConnectToTargetSqlMISyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.AzureSqlDbMI.Sync.LRS", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetSqlMISyncTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "ConnectToTargetSqlMISyncTaskInput" - } }, - output: { + backupFolderErrors: { + serializedName: "backupFolderErrors", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToTargetSqlMISyncTaskOutput" + className: "ReportableException" } } } - } - } - } -}; - -export const ConnectToTargetSqlMITaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlMITaskOutput", - type: { - name: "Composite", - className: "ConnectToTargetSqlMITaskOutput", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", - type: { - name: "String" - } - }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", - type: { - name: "String" - } }, - logins: { + backupShareCredentialsErrors: { + serializedName: "backupShareCredentialsErrors", readOnly: true, - serializedName: "logins", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } }, - agentJobs: { + backupStorageAccountErrors: { + serializedName: "backupStorageAccountErrors", readOnly: true, - serializedName: "agentJobs", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } }, - validationErrors: { + existingBackupErrors: { + serializedName: "existingBackupErrors", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { @@ -6619,136 +6377,110 @@ export const ConnectToTargetSqlMITaskOutput: msRest.CompositeMapper = { } } } + }, + databaseBackupInfo: { + serializedName: "databaseBackupInfo", + type: { + name: "Composite", + className: "DatabaseBackupInfo" + } } } } }; -export const ConnectToTargetSqlMITaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlMITaskInput", +export const DatabaseBackupInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetSqlMITaskInput", + className: "DatabaseBackupInfo", modelProperties: { - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + databaseName: { + serializedName: "databaseName", + readOnly: true, type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - collectLogins: { - serializedName: "collectLogins", - defaultValue: true, + backupType: { + serializedName: "backupType", + readOnly: true, type: { - name: "Boolean" + name: "String" } }, - collectAgentJobs: { - serializedName: "collectAgentJobs", - defaultValue: true, + backupFiles: { + serializedName: "backupFiles", + readOnly: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - validateSsisCatalogOnly: { - serializedName: "validateSsisCatalogOnly", - defaultValue: false, + position: { + serializedName: "position", + readOnly: true, type: { - name: "Boolean" + name: "Number" } - } - } - } -}; - -export const ConnectToTargetSqlMITaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.AzureSqlDbMI", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetSqlMITaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + isDamaged: { + serializedName: "isDamaged", + readOnly: true, type: { - name: "Composite", - className: "ConnectToTargetSqlMITaskInput" + name: "Boolean" } }, - output: { + isCompressed: { + serializedName: "isCompressed", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectToTargetSqlMITaskOutput" - } - } + name: "Boolean" } - } - } - } -}; - -export const DatabaseTable: msRest.CompositeMapper = { - serializedName: "DatabaseTable", - type: { - name: "Composite", - className: "DatabaseTable", - modelProperties: { - hasRows: { + }, + familyCount: { + serializedName: "familyCount", readOnly: true, - serializedName: "hasRows", type: { - name: "Boolean" + name: "Number" } }, - name: { + backupFinishDate: { + serializedName: "backupFinishDate", readOnly: true, - serializedName: "name", type: { - name: "String" + name: "DateTime" } } } } }; -export const GetUserTablesPostgreSqlTaskOutput: msRest.CompositeMapper = { - serializedName: "GetUserTablesPostgreSqlTaskOutput", +export const ValidateMigrationInputSqlServerSqlMISyncTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesPostgreSqlTaskOutput", + className: "ValidateMigrationInputSqlServerSqlMISyncTaskOutput", modelProperties: { - databaseName: { + id: { + serializedName: "id", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, - tables: { + name: { + serializedName: "name", readOnly: true, - serializedName: "tables", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseTable" - } - } + name: "String" } }, validationErrors: { - readOnly: true, serializedName: "validationErrors", + readOnly: true, type: { name: "Sequence", element: { @@ -6763,243 +6495,216 @@ export const GetUserTablesPostgreSqlTaskOutput: msRest.CompositeMapper = { } }; -export const GetUserTablesPostgreSqlTaskInput: msRest.CompositeMapper = { - serializedName: "GetUserTablesPostgreSqlTaskInput", +export const Database: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesPostgreSqlTaskInput", + className: "Database", modelProperties: { - connectionInfo: { - required: true, - serializedName: "connectionInfo", + id: { + serializedName: "id", type: { - name: "Composite", - className: "PostgreSqlConnectionInfo" + name: "String" } }, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + name: { + serializedName: "name", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } - } - } - } -}; - -export const GetUserTablesPostgreSqlTaskProperties: msRest.CompositeMapper = { - serializedName: "GetUserTablesPostgreSql", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "GetUserTablesPostgreSqlTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + compatibilityLevel: { + serializedName: "compatibilityLevel", type: { - name: "Composite", - className: "GetUserTablesPostgreSqlTaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + collation: { + serializedName: "collation", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetUserTablesPostgreSqlTaskOutput" - } - } + name: "String" + } + }, + serverName: { + serializedName: "serverName", + type: { + name: "String" + } + }, + fqdn: { + serializedName: "fqdn", + type: { + name: "String" + } + }, + installId: { + serializedName: "installId", + type: { + name: "String" + } + }, + serverVersion: { + serializedName: "serverVersion", + type: { + name: "String" + } + }, + serverEdition: { + serializedName: "serverEdition", + type: { + name: "String" + } + }, + serverLevel: { + serializedName: "serverLevel", + type: { + name: "String" + } + }, + serverDefaultDataPath: { + serializedName: "serverDefaultDataPath", + type: { + name: "String" + } + }, + serverDefaultLogPath: { + serializedName: "serverDefaultLogPath", + type: { + name: "String" + } + }, + serverDefaultBackupPath: { + serializedName: "serverDefaultBackupPath", + type: { + name: "String" + } + }, + serverCoreCount: { + serializedName: "serverCoreCount", + type: { + name: "Number" + } + }, + serverVisibleOnlineCoreCount: { + serializedName: "serverVisibleOnlineCoreCount", + type: { + name: "Number" + } + }, + databaseState: { + serializedName: "databaseState", + type: { + name: "String" + } + }, + serverId: { + serializedName: "serverId", + type: { + name: "String" } } } } }; -export const GetUserTablesOracleTaskOutput: msRest.CompositeMapper = { - serializedName: "GetUserTablesOracleTaskOutput", +export const DatabaseObjectName: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesOracleTaskOutput", + className: "DatabaseObjectName", modelProperties: { - schemaName: { + databaseName: { + serializedName: "databaseName", readOnly: true, - serializedName: "schemaName", type: { name: "String" } }, - tables: { + objectName: { + serializedName: "objectName", readOnly: true, - serializedName: "tables", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseTable" - } - } + name: "String" } }, - validationErrors: { + schemaName: { + serializedName: "schemaName", readOnly: true, - serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" + } + }, + objectType: { + serializedName: "objectType", + type: { + name: "String" } } } } }; -export const GetUserTablesOracleTaskInput: msRest.CompositeMapper = { - serializedName: "GetUserTablesOracleTaskInput", +export const DataMigrationProjectMetadata: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesOracleTaskInput", + className: "DataMigrationProjectMetadata", modelProperties: { - connectionInfo: { - required: true, - serializedName: "connectionInfo", + sourceServerName: { + serializedName: "sourceServerName", + readOnly: true, type: { - name: "Composite", - className: "OracleConnectionInfo" + name: "String" } }, - selectedSchemas: { - required: true, - serializedName: "selectedSchemas", + sourceServerPort: { + serializedName: "sourceServerPort", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } - } - } - } -}; - -export const GetUserTablesOracleTaskProperties: msRest.CompositeMapper = { - serializedName: "GetUserTablesOracle", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "GetUserTablesOracleTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + sourceUsername: { + serializedName: "sourceUsername", + readOnly: true, type: { - name: "Composite", - className: "GetUserTablesOracleTaskInput" + name: "String" } }, - output: { + targetServerName: { + serializedName: "targetServerName", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetUserTablesOracleTaskOutput" - } - } + name: "String" } - } - } - } -}; - -export const GetUserTablesSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "GetUserTablesSqlSyncTaskOutput", - type: { - name: "Composite", - className: "GetUserTablesSqlSyncTaskOutput", - modelProperties: { - databasesToSourceTables: { + }, + targetUsername: { + serializedName: "targetUsername", readOnly: true, - serializedName: "databasesToSourceTables", type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseTable" - } - } - } - } + name: "String" } }, - databasesToTargetTables: { + targetDbName: { + serializedName: "targetDbName", readOnly: true, - serializedName: "databasesToTargetTables", type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseTable" - } - } - } - } + name: "String" } }, - tableValidationErrors: { + targetUsingWinAuth: { + serializedName: "targetUsingWinAuth", readOnly: true, - serializedName: "tableValidationErrors", type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - } + name: "Boolean" } }, - validationErrors: { + selectedMigrationTables: { + serializedName: "selectedMigrationTables", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "MigrationTableMetadata" } } } @@ -7008,129 +6713,94 @@ export const GetUserTablesSqlSyncTaskOutput: msRest.CompositeMapper = { } }; -export const GetUserTablesSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "GetUserTablesSqlSyncTaskInput", +export const MigrationTableMetadata: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesSqlSyncTaskInput", + className: "MigrationTableMetadata", modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + sourceTableName: { + serializedName: "sourceTableName", + readOnly: true, type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", - type: { - name: "Composite", - className: "SqlConnectionInfo" - } - }, - selectedSourceDatabases: { - required: true, - serializedName: "selectedSourceDatabases", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - }, - selectedTargetDatabases: { - required: true, - serializedName: "selectedTargetDatabases", + targetTableName: { + serializedName: "targetTableName", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } } } } }; -export const GetUserTablesSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "GetUserTables.AzureSqlDb.Sync", +export const GetProjectDetailsNonSqlTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "GetUserTablesSqlSyncTaskProperties", + className: "GetProjectDetailsNonSqlTaskInput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + projectName: { + serializedName: "projectName", + required: true, type: { - name: "Composite", - className: "GetUserTablesSqlSyncTaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + projectLocation: { + serializedName: "projectLocation", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetUserTablesSqlSyncTaskOutput" - } - } + name: "String" } } } } }; -export const GetUserTablesSqlTaskOutput: msRest.CompositeMapper = { - serializedName: "GetUserTablesSqlTaskOutput", +export const NonSqlMigrationTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesSqlTaskOutput", + className: "NonSqlMigrationTaskInput", modelProperties: { - id: { - readOnly: true, - serializedName: "id", + targetConnectionInfo: { + serializedName: "targetConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo" + } + }, + targetDatabaseName: { + serializedName: "targetDatabaseName", + required: true, type: { name: "String" } }, - databasesToTables: { - readOnly: true, - serializedName: "databasesToTables", + projectName: { + serializedName: "projectName", + required: true, type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseTable" - } - } - } - } + name: "String" } }, - validationErrors: { - readOnly: true, - serializedName: "validationErrors", + projectLocation: { + serializedName: "projectLocation", + required: true, + type: { + name: "String" + } + }, + selectedTables: { + serializedName: "selectedTables", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "NonSqlDataMigrationTable" } } } @@ -7139,149 +6809,142 @@ export const GetUserTablesSqlTaskOutput: msRest.CompositeMapper = { } }; -export const GetUserTablesSqlTaskInput: msRest.CompositeMapper = { - serializedName: "GetUserTablesSqlTaskInput", +export const NonSqlDataMigrationTable: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GetUserTablesSqlTaskInput", + className: "NonSqlDataMigrationTable", modelProperties: { - connectionInfo: { - required: true, - serializedName: "connectionInfo", - type: { - name: "Composite", - className: "SqlConnectionInfo" - } - }, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + sourceName: { + serializedName: "sourceName", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } } } } }; -export const GetUserTablesSqlTaskProperties: msRest.CompositeMapper = { - serializedName: "GetUserTables.Sql", +export const NonSqlMigrationTaskOutput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "GetUserTablesSqlTaskProperties", + className: "NonSqlMigrationTaskOutput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Composite", - className: "GetUserTablesSqlTaskInput" + name: "String" } }, - output: { + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetUserTablesSqlTaskOutput" - } - } + name: "DateTime" } - } - } - } -}; - -export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem: msRest.CompositeMapper = { - serializedName: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput_databaseSchemaMapItem", - type: { - name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem", - modelProperties: { - database: { - serializedName: "database", + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + status: { + serializedName: "status", + readOnly: true, type: { name: "String" } }, - schemas: { - serializedName: "schemas", + dataMigrationTableResults: { + serializedName: "dataMigrationTableResults", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" + } + }, + progressMessage: { + serializedName: "progressMessage", + readOnly: true, + type: { + name: "String" + } + }, + sourceServerName: { + serializedName: "sourceServerName", + readOnly: true, + type: { + name: "String" + } + }, + targetServerName: { + serializedName: "targetServerName", + readOnly: true, + type: { + name: "String" } } } } }; -export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput", +export const NonSqlDataMigrationTableResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput", + className: "NonSqlDataMigrationTableResult", modelProperties: { - targetServerVersion: { + resultCode: { + serializedName: "resultCode", readOnly: true, - serializedName: "targetServerVersion", type: { name: "String" } }, - databases: { + sourceName: { + serializedName: "sourceName", readOnly: true, - serializedName: "databases", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - targetServerBrandVersion: { + targetName: { + serializedName: "targetName", readOnly: true, - serializedName: "targetServerBrandVersion", type: { name: "String" } }, - validationErrors: { + sourceRowCount: { + serializedName: "sourceRowCount", readOnly: true, - serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Number" } }, - databaseSchemaMap: { - serializedName: "databaseSchemaMap", + targetRowCount: { + serializedName: "targetRowCount", + readOnly: true, + type: { + name: "Number" + } + }, + elapsedTimeInMiliseconds: { + serializedName: "elapsedTimeInMiliseconds", + readOnly: true, + type: { + name: "Number" + } + }, + errors: { + serializedName: "errors", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem" + className: "DataMigrationError" } } } @@ -7290,49 +6953,59 @@ export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput: msRest.Com } }; -export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput", +export const DataMigrationError: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput", + className: "DataMigrationError", modelProperties: { - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + message: { + serializedName: "message", + readOnly: true, type: { - name: "Composite", - className: "PostgreSqlConnectionInfo" + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "String" } } } } }; -export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync", +export const MigrateSqlServerDatabaseInput: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties", + className: "MigrateSqlServerDatabaseInput", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + name: { + serializedName: "name", type: { - name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput" + name: "String" } }, - output: { - readOnly: true, - serializedName: "output", + restoreDatabaseName: { + serializedName: "restoreDatabaseName", + type: { + name: "String" + } + }, + backupAndRestoreFolder: { + serializedName: "backupAndRestoreFolder", + type: { + name: "String" + } + }, + databaseFiles: { + serializedName: "databaseFiles", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput" + className: "DatabaseFileInput" } } } @@ -7341,48 +7014,67 @@ export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties: msRest } }; -export const ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput", +export const DatabaseFileInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput", + className: "DatabaseFileInput", modelProperties: { id: { - readOnly: true, serializedName: "id", type: { name: "String" } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + logicalName: { + serializedName: "logicalName", type: { name: "String" } }, - databases: { + physicalFullName: { + serializedName: "physicalFullName", + type: { + name: "String" + } + }, + restoreFullName: { + serializedName: "restoreFullName", + type: { + name: "String" + } + }, + fileType: { + serializedName: "fileType", + type: { + name: "String" + } + } + } + } +}; + +export const StartMigrationScenarioServerRoleResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "StartMigrationScenarioServerRoleResult", + modelProperties: { + name: { + serializedName: "name", readOnly: true, - serializedName: "databases", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - targetServerBrandVersion: { + state: { + serializedName: "state", readOnly: true, - serializedName: "targetServerBrandVersion", type: { name: "String" } }, - validationErrors: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { @@ -7397,366 +7089,442 @@ export const ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput: msRest.Composite } }; -export const ConnectToTargetAzureDbForPostgreSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetAzureDbForPostgreSqlSyncTaskInput", +export const DatabaseMigrationPropertiesSqlMi: coreClient.CompositeMapper = { + serializedName: "SqlMi", type: { name: "Composite", - className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskInput", + className: "DatabaseMigrationPropertiesSqlMi", + uberParent: "DatabaseMigrationProperties", + polymorphicDiscriminator: + DatabaseMigrationProperties.type.polymorphicDiscriminator, modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + ...DatabaseMigrationProperties.type.modelProperties, + migrationStatusDetails: { + serializedName: "migrationStatusDetails", type: { name: "Composite", - className: "PostgreSqlConnectionInfo" + className: "MigrationStatusDetails" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + targetDatabaseCollation: { + serializedName: "targetDatabaseCollation", type: { - name: "Composite", - className: "PostgreSqlConnectionInfo" + name: "String" } - } - } - } -}; - -export const ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.AzureDbForPostgreSql.Sync", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + provisioningError: { + serializedName: "provisioningError", + type: { + name: "String" + } + }, + backupConfiguration: { + serializedName: "backupConfiguration", type: { name: "Composite", - className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskInput" + className: "BackupConfiguration" } }, - output: { - readOnly: true, - serializedName: "output", + offlineConfiguration: { + serializedName: "offlineConfiguration", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput" - } - } + name: "Composite", + className: "OfflineConfiguration" } } } } }; -export const ConnectToTargetSqlDbTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlDbTaskOutput", +export const DatabaseMigrationPropertiesSqlVm: coreClient.CompositeMapper = { + serializedName: "SqlVm", type: { name: "Composite", - className: "ConnectToTargetSqlDbTaskOutput", + className: "DatabaseMigrationPropertiesSqlVm", + uberParent: "DatabaseMigrationProperties", + polymorphicDiscriminator: + DatabaseMigrationProperties.type.polymorphicDiscriminator, modelProperties: { - id: { - readOnly: true, - serializedName: "id", + ...DatabaseMigrationProperties.type.modelProperties, + migrationStatusDetails: { + serializedName: "migrationStatusDetails", type: { - name: "String" + name: "Composite", + className: "MigrationStatusDetails" } }, - databases: { - readOnly: true, - serializedName: "databases", + targetDatabaseCollation: { + serializedName: "targetDatabaseCollation", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "String" } }, - targetServerVersion: { - readOnly: true, - serializedName: "targetServerVersion", + provisioningError: { + serializedName: "provisioningError", type: { name: "String" } }, - targetServerBrandVersion: { - readOnly: true, - serializedName: "targetServerBrandVersion", + backupConfiguration: { + serializedName: "backupConfiguration", type: { - name: "String" + name: "Composite", + className: "BackupConfiguration" + } + }, + offlineConfiguration: { + serializedName: "offlineConfiguration", + type: { + name: "Composite", + className: "OfflineConfiguration" } } } } }; -export const ConnectToTargetSqlSqlDbSyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlSqlDbSyncTaskInput", +export const DatabaseMigrationSqlMi: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetSqlSqlDbSyncTaskInput", + className: "DatabaseMigrationSqlMi", modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + ...ProxyResource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { name: "Composite", - className: "SqlConnectionInfo" + className: "SystemData" } }, - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + properties: { + serializedName: "properties", type: { name: "Composite", - className: "SqlConnectionInfo" + className: "DatabaseMigrationPropertiesSqlMi" } } } } }; -export const ConnectToTargetSqlSqlDbSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.SqlDb.Sync", +export const DatabaseMigrationSqlVm: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetSqlSqlDbSyncTaskProperties", + className: "DatabaseMigrationSqlVm", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + ...ProxyResource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { name: "Composite", - className: "ConnectToTargetSqlSqlDbSyncTaskInput" + className: "SystemData" } }, - output: { - readOnly: true, - serializedName: "output", + properties: { + serializedName: "properties", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectToTargetSqlDbTaskOutput" - } - } + name: "Composite", + className: "DatabaseMigrationPropertiesSqlVm" } } } } }; -export const ConnectToTargetSqlDbTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToTargetSqlDbTaskInput", +export const DatabaseMigration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToTargetSqlDbTaskInput", + className: "DatabaseMigration", modelProperties: { - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + ...ProxyResource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { name: "Composite", - className: "SqlConnectionInfo" + className: "SystemData" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "DatabaseMigrationProperties" } } } } }; -export const ConnectToTargetSqlDbTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToTarget.SqlDb", +export const SqlMigrationService: coreClient.CompositeMapper = { type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToTargetSqlDbTaskProperties", + className: "SqlMigrationService", modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + ...TrackedResource.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { - name: "Composite", - className: "ConnectToTargetSqlDbTaskInput" + name: "String" } }, - output: { + integrationRuntimeState: { + serializedName: "properties.integrationRuntimeState", readOnly: true, - serializedName: "output", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectToTargetSqlDbTaskOutput" - } - } + name: "String" } } } } }; -export const ConnectToSourceOracleSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceOracleSyncTaskOutput", +export const DataMigrationService: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToSourceOracleSyncTaskOutput", + className: "DataMigrationService", modelProperties: { - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + ...TrackedResource.type.modelProperties, + etag: { + serializedName: "etag", type: { name: "String" } }, - databases: { - readOnly: true, - serializedName: "databases", + kind: { + serializedName: "kind", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", + sku: { + serializedName: "sku", type: { - name: "String" + name: "Composite", + className: "ServiceSku" } }, - validationErrors: { + provisioningState: { + serializedName: "properties.provisioningState", readOnly: true, - serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" + } + }, + publicKey: { + serializedName: "properties.publicKey", + type: { + name: "String" + } + }, + virtualSubnetId: { + serializedName: "properties.virtualSubnetId", + type: { + name: "String" + } + }, + virtualNicId: { + serializedName: "properties.virtualNicId", + type: { + name: "String" + } + }, + autoStopDelay: { + serializedName: "properties.autoStopDelay", + type: { + name: "String" + } + }, + deleteResourcesOnStop: { + serializedName: "properties.deleteResourcesOnStop", + type: { + name: "Boolean" } } } } }; -export const ConnectToSourceOracleSyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceOracleSyncTaskInput", +export const Project: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ConnectToSourceOracleSyncTaskInput", + className: "Project", modelProperties: { + ...TrackedResource.type.modelProperties, + eTag: { + serializedName: "eTag", + type: { + name: "String" + } + }, + sourcePlatform: { + serializedName: "properties.sourcePlatform", + type: { + name: "String" + } + }, + azureAuthenticationInfo: { + serializedName: "properties.azureAuthenticationInfo", + type: { + name: "String" + } + }, + targetPlatform: { + serializedName: "properties.targetPlatform", + type: { + name: "String" + } + }, + creationTime: { + serializedName: "properties.creationTime", + readOnly: true, + type: { + name: "DateTime" + } + }, sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + serializedName: "properties.sourceConnectionInfo", type: { name: "Composite", - className: "OracleConnectionInfo" + className: "ConnectionInfo" + } + }, + targetConnectionInfo: { + serializedName: "properties.targetConnectionInfo", + type: { + name: "Composite", + className: "ConnectionInfo" + } + }, + databasesInfo: { + serializedName: "properties.databasesInfo", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DatabaseInfo" + } + } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" } } } } }; -export const ConnectToSourceOracleSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToSource.Oracle.Sync", +export const MigrateSchemaSqlServerSqlDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "MigrateSchemaSqlServerSqlDb", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, + className: "MigrateSchemaSqlServerSqlDbTaskProperties", uberParent: "ProjectTaskProperties", - className: "ConnectToSourceOracleSyncTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { ...ProjectTaskProperties.type.modelProperties, input: { serializedName: "input", type: { name: "Composite", - className: "ConnectToSourceOracleSyncTaskInput" + className: "MigrateSchemaSqlServerSqlDbTaskInput" } }, output: { - readOnly: true, serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToSourceOracleSyncTaskOutput" + className: "MigrateSchemaSqlServerSqlDbTaskOutput" } } } + }, + createdOn: { + serializedName: "createdOn", + type: { + name: "String" + } + }, + taskId: { + serializedName: "taskId", + type: { + name: "String" + } } } } }; -export const ConnectToSourcePostgreSqlSyncTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToSourcePostgreSqlSyncTaskOutput", +export const CheckOCIDriverTaskProperties: coreClient.CompositeMapper = { + serializedName: "Service.Check.OCI", type: { name: "Composite", - className: "ConnectToSourcePostgreSqlSyncTaskOutput", + className: "CheckOCIDriverTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "CheckOCIDriverTaskInput" } }, - databases: { + output: { + serializedName: "output", readOnly: true, - serializedName: "databases", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "CheckOCIDriverTaskOutput" } } } - }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", + } + } + } +}; + +export const UploadOCIDriverTaskProperties: coreClient.CompositeMapper = { + serializedName: "Service.Upload.OCI", + type: { + name: "Composite", + className: "UploadOCIDriverTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "UploadOCIDriverTaskInput" } }, - validationErrors: { + output: { + serializedName: "output", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "UploadOCIDriverTaskOutput" } } } @@ -7765,49 +7533,66 @@ export const ConnectToSourcePostgreSqlSyncTaskOutput: msRest.CompositeMapper = { } }; -export const ConnectToSourcePostgreSqlSyncTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToSourcePostgreSqlSyncTaskInput", +export const InstallOCIDriverTaskProperties: coreClient.CompositeMapper = { + serializedName: "Service.Install.OCI", type: { name: "Composite", - className: "ConnectToSourcePostgreSqlSyncTaskInput", + className: "InstallOCIDriverTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { name: "Composite", - className: "PostgreSqlConnectionInfo" + className: "InstallOCIDriverTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InstallOCIDriverTaskOutput" + } + } } } } } }; -export const ConnectToSourcePostgreSqlSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToSource.PostgreSql.Sync", +export const ConnectToMongoDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "Connect.MongoDb", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, + className: "ConnectToMongoDbTaskProperties", uberParent: "ProjectTaskProperties", - className: "ConnectToSourcePostgreSqlSyncTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { ...ProjectTaskProperties.type.modelProperties, input: { serializedName: "input", type: { name: "Composite", - className: "ConnectToSourcePostgreSqlSyncTaskInput" + className: "MongoDbConnectionInfo" } }, output: { - readOnly: true, serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToSourcePostgreSqlSyncTaskOutput" + className: "MongoDbClusterInfo" } } } @@ -7816,27 +7601,32 @@ export const ConnectToSourcePostgreSqlSyncTaskProperties: msRest.CompositeMapper } }; -export const MigrationEligibilityInfo: msRest.CompositeMapper = { - serializedName: "MigrationEligibilityInfo", +export const ConnectToSourceSqlServerTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToSource.SqlServer", type: { name: "Composite", - className: "MigrationEligibilityInfo", + className: "ConnectToSourceSqlServerTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - isEligibleForMigration: { - readOnly: true, - serializedName: "isEligibleForMigration", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Boolean" + name: "Composite", + className: "ConnectToSourceSqlServerTaskInput" } }, - validationMessages: { + output: { + serializedName: "output", readOnly: true, - serializedName: "validationMessages", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutput" } } } @@ -7845,339 +7635,305 @@ export const MigrationEligibilityInfo: msRest.CompositeMapper = { } }; -export const ConnectToSourceSqlServerTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceSqlServerTaskOutput", +export const ConnectToSourceSqlServerSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToSource.SqlServer.Sync", type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" - }, - uberParent: "ConnectToSourceSqlServerTaskOutput", - className: "ConnectToSourceSqlServerTaskOutput", + className: "ConnectToSourceSqlServerSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - id: { - readOnly: true, - serializedName: "id", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "ConnectToSourceSqlServerTaskInput" } }, - resultType: { - required: true, - serializedName: "resultType", + output: { + serializedName: "output", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutput" + } + } } } } } }; -export const ConnectToSourceSqlServerTaskOutputAgentJobLevel: msRest.CompositeMapper = { - serializedName: "AgentJobLevelOutput", +export const ConnectToSourcePostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToSource.PostgreSql.Sync", type: { name: "Composite", - polymorphicDiscriminator: ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, - uberParent: "ConnectToSourceSqlServerTaskOutput", - className: "ConnectToSourceSqlServerTaskOutputAgentJobLevel", + className: "ConnectToSourcePostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - jobCategory: { - readOnly: true, - serializedName: "jobCategory", - type: { - name: "String" - } - }, - isEnabled: { - readOnly: true, - serializedName: "isEnabled", - type: { - name: "Boolean" - } - }, - jobOwner: { - readOnly: true, - serializedName: "jobOwner", - type: { - name: "String" - } - }, - lastExecutedOn: { - readOnly: true, - serializedName: "lastExecutedOn", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "DateTime" + name: "Composite", + className: "ConnectToSourcePostgreSqlSyncTaskInput" } }, - validationErrors: { + output: { + serializedName: "output", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "ConnectToSourcePostgreSqlSyncTaskOutput" } } } - }, - migrationEligibility: { - readOnly: true, - serializedName: "migrationEligibility", - type: { - name: "Composite", - className: "MigrationEligibilityInfo" - } } } } }; -export const ConnectToSourceSqlServerTaskOutputLoginLevel: msRest.CompositeMapper = { - serializedName: "LoginLevelOutput", +export const ConnectToSourceMySqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToSource.MySql", type: { name: "Composite", - polymorphicDiscriminator: ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, - uberParent: "ConnectToSourceSqlServerTaskOutput", - className: "ConnectToSourceSqlServerTaskOutputLoginLevel", + className: "ConnectToSourceMySqlTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - loginType: { - readOnly: true, - serializedName: "loginType", - type: { - name: "String" - } - }, - defaultDatabase: { - readOnly: true, - serializedName: "defaultDatabase", - type: { - name: "String" - } - }, - isEnabled: { - readOnly: true, - serializedName: "isEnabled", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Boolean" + name: "Composite", + className: "ConnectToSourceMySqlTaskInput" } }, - migrationEligibility: { + output: { + serializedName: "output", readOnly: true, - serializedName: "migrationEligibility", type: { - name: "Composite", - className: "MigrationEligibilityInfo" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToSourceNonSqlTaskOutput" + } + } } } } } }; -export const DatabaseFileInfo: msRest.CompositeMapper = { - serializedName: "DatabaseFileInfo", +export const ConnectToSourceOracleSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToSource.Oracle.Sync", type: { name: "Composite", - className: "DatabaseFileInfo", + className: "ConnectToSourceOracleSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - databaseName: { - serializedName: "databaseName", - type: { - name: "String" - } - }, - id: { - serializedName: "id", - type: { - name: "String" - } - }, - logicalName: { - serializedName: "logicalName", - type: { - name: "String" - } - }, - physicalFullName: { - serializedName: "physicalFullName", - type: { - name: "String" - } - }, - restoreFullName: { - serializedName: "restoreFullName", - type: { - name: "String" - } - }, - fileType: { - serializedName: "fileType", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "ConnectToSourceOracleSyncTaskInput" } }, - sizeMB: { - serializedName: "sizeMB", + output: { + serializedName: "output", + readOnly: true, type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToSourceOracleSyncTaskOutput" + } + } } } } } }; -export const ConnectToSourceSqlServerTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const ConnectToTargetSqlDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.SqlDb", type: { name: "Composite", - polymorphicDiscriminator: ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, - uberParent: "ConnectToSourceSqlServerTaskOutput", - className: "ConnectToSourceSqlServerTaskOutputDatabaseLevel", + className: "ConnectToTargetSqlDbTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - sizeMB: { - readOnly: true, - serializedName: "sizeMB", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Number" + name: "Composite", + className: "ConnectToTargetSqlDbTaskInput" } }, - databaseFiles: { + output: { + serializedName: "output", readOnly: true, - serializedName: "databaseFiles", type: { name: "Sequence", element: { type: { name: "Composite", - className: "DatabaseFileInfo" + className: "ConnectToTargetSqlDbTaskOutput" } } } - }, - compatibilityLevel: { - readOnly: true, - serializedName: "compatibilityLevel", + } + } + } +}; + +export const ConnectToTargetSqlDbSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.SqlDb.Sync", + type: { + name: "Composite", + className: "ConnectToTargetSqlDbSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "ConnectToTargetSqlDbSyncTaskInput" } }, - databaseState: { + output: { + serializedName: "output", readOnly: true, - serializedName: "databaseState", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToTargetSqlDbTaskOutput" + } + } } } } } }; -export const ConnectToSourceSqlServerTaskOutputTaskLevel: msRest.CompositeMapper = { - serializedName: "TaskLevelOutput", +export const ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.AzureDbForPostgreSql.Sync", type: { name: "Composite", - polymorphicDiscriminator: ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, - uberParent: "ConnectToSourceSqlServerTaskOutput", - className: "ConnectToSourceSqlServerTaskOutputTaskLevel", + className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, - databases: { - readOnly: true, - serializedName: "databases", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "Composite", + className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskInput" } }, - logins: { + output: { + serializedName: "output", readOnly: true, - serializedName: "logins", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: "ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput" } } } - }, - agentJobs: { - readOnly: true, - serializedName: "agentJobs", + } + } + } +}; + +export const ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync", + type: { + name: "Composite", + className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } + name: "Composite", + className: "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput" } }, - databaseTdeCertificateMapping: { + output: { + serializedName: "output", readOnly: true, - serializedName: "databaseTdeCertificateMapping", type: { - name: "Dictionary", - value: { + name: "Sequence", + element: { type: { - name: "String" + name: "Composite", + className: + "ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput" } } } - }, - sourceServerVersion: { - readOnly: true, - serializedName: "sourceServerVersion", - type: { - name: "String" - } - }, - sourceServerBrandVersion: { - readOnly: true, - serializedName: "sourceServerBrandVersion", + } + } + } +}; + +export const GetUserTablesSqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetUserTables.Sql", + type: { + name: "Composite", + className: "GetUserTablesSqlTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "GetUserTablesSqlTaskInput" } }, - validationErrors: { + output: { + serializedName: "output", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "GetUserTablesSqlTaskOutput" } } } @@ -8186,96 +7942,66 @@ export const ConnectToSourceSqlServerTaskOutputTaskLevel: msRest.CompositeMapper } }; -export const ConnectToSourceSqlServerTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceSqlServerTaskInput", +export const GetUserTablesSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetUserTables.AzureSqlDb.Sync", type: { name: "Composite", - className: "ConnectToSourceSqlServerTaskInput", + className: "GetUserTablesSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { name: "Composite", - className: "SqlConnectionInfo" - } - }, - checkPermissionsGroup: { - serializedName: "checkPermissionsGroup", - type: { - name: "Enum", - allowedValues: [ - "Default", - "MigrationFromSqlServerToAzureDB", - "MigrationFromSqlServerToAzureMI", - "MigrationFromMySQLToAzureDBForMySQL" - ] - } - }, - collectDatabases: { - serializedName: "collectDatabases", - defaultValue: true, - type: { - name: "Boolean" - } - }, - collectLogins: { - serializedName: "collectLogins", - defaultValue: false, - type: { - name: "Boolean" - } - }, - collectAgentJobs: { - serializedName: "collectAgentJobs", - defaultValue: false, - type: { - name: "Boolean" - } - }, - collectTdeCertificateInfo: { - serializedName: "collectTdeCertificateInfo", - defaultValue: false, - type: { - name: "Boolean" + className: "GetUserTablesSqlSyncTaskInput" } }, - validateSsisCatalogOnly: { - serializedName: "validateSsisCatalogOnly", - defaultValue: false, + output: { + serializedName: "output", + readOnly: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GetUserTablesSqlSyncTaskOutput" + } + } } } } } }; -export const ConnectToSourceSqlServerSyncTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToSource.SqlServer.Sync", +export const GetUserTablesOracleTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetUserTablesOracle", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, + className: "GetUserTablesOracleTaskProperties", uberParent: "ProjectTaskProperties", - className: "ConnectToSourceSqlServerSyncTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { ...ProjectTaskProperties.type.modelProperties, input: { serializedName: "input", type: { name: "Composite", - className: "ConnectToSourceSqlServerTaskInput" + className: "GetUserTablesOracleTaskInput" } }, output: { - readOnly: true, serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToSourceSqlServerTaskOutput" + className: "GetUserTablesOracleTaskOutput" } } } @@ -8284,31 +8010,32 @@ export const ConnectToSourceSqlServerSyncTaskProperties: msRest.CompositeMapper } }; -export const ConnectToSourceSqlServerTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToSource.SqlServer", +export const GetUserTablesPostgreSqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetUserTablesPostgreSql", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, + className: "GetUserTablesPostgreSqlTaskProperties", uberParent: "ProjectTaskProperties", - className: "ConnectToSourceSqlServerTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { ...ProjectTaskProperties.type.modelProperties, input: { serializedName: "input", type: { name: "Composite", - className: "ConnectToSourceSqlServerTaskInput" + className: "GetUserTablesPostgreSqlTaskInput" } }, output: { - readOnly: true, serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToSourceSqlServerTaskOutput" + className: "GetUserTablesPostgreSqlTaskOutput" } } } @@ -8317,132 +8044,208 @@ export const ConnectToSourceSqlServerTaskProperties: msRest.CompositeMapper = { } }; -export const MongoDbShardKeyInfo: msRest.CompositeMapper = { - serializedName: "MongoDbShardKeyInfo", +export const GetUserTablesMySqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetUserTablesMySql", type: { name: "Composite", - className: "MongoDbShardKeyInfo", + className: "GetUserTablesMySqlTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - fields: { - required: true, - serializedName: "fields", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "GetUserTablesMySqlTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoDbShardKeyField" + className: "GetUserTablesMySqlTaskOutput" } } } - }, - isUnique: { - required: true, - serializedName: "isUnique", - type: { - name: "Boolean" - } } } } }; -export const MongoDbObjectInfo: msRest.CompositeMapper = { - serializedName: "MongoDbObjectInfo", +export const ConnectToTargetSqlMITaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.AzureSqlDbMI", type: { name: "Composite", - className: "MongoDbObjectInfo", + className: "ConnectToTargetSqlMITaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - averageDocumentSize: { - required: true, - serializedName: "averageDocumentSize", - type: { - name: "Number" - } - }, - dataSize: { - required: true, - serializedName: "dataSize", - type: { - name: "Number" - } - }, - documentCount: { - required: true, - serializedName: "documentCount", - type: { - name: "Number" - } - }, - name: { - required: true, - serializedName: "name", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "ConnectToTargetSqlMITaskInput" } }, - qualifiedName: { - required: true, - serializedName: "qualifiedName", + output: { + serializedName: "output", + readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToTargetSqlMITaskOutput" + } + } } } } } }; -export const MongoDbCollectionInfo: msRest.CompositeMapper = { - serializedName: "MongoDbCollectionInfo", +export const ConnectToTargetSqlMISyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.AzureSqlDbMI.Sync.LRS", type: { name: "Composite", - className: "MongoDbCollectionInfo", + className: "ConnectToTargetSqlMISyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...MongoDbObjectInfo.type.modelProperties, - databaseName: { - required: true, - serializedName: "databaseName", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "String" + name: "Composite", + className: "ConnectToTargetSqlMISyncTaskInput" } }, - isCapped: { - required: true, - serializedName: "isCapped", + output: { + serializedName: "output", + readOnly: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToTargetSqlMISyncTaskOutput" + } + } } - }, - isSystemCollection: { - required: true, - serializedName: "isSystemCollection", + } + } + } +}; + +export const ConnectToTargetAzureDbForMySqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "ConnectToTarget.AzureDbForMySql", + type: { + name: "Composite", + className: "ConnectToTargetAzureDbForMySqlTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { - name: "Boolean" + name: "Composite", + className: "ConnectToTargetAzureDbForMySqlTaskInput" } }, - isView: { - required: true, - serializedName: "isView", + output: { + serializedName: "output", + readOnly: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectToTargetAzureDbForMySqlTaskOutput" + } + } + } + } + } + } +}; + +export const MigrateMongoDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.MongoDb", + type: { + name: "Composite", + className: "MigrateMongoDbTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MongoDbMigrationSettings" } }, - shardKey: { - serializedName: "shardKey", + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MongoDbProgress" + } + } + } + } + } + } +}; + +export const MigrateSqlServerSqlMITaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.SqlServer.AzureSqlDbMI", + type: { + name: "Composite", + className: "MigrateSqlServerSqlMITaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", type: { name: "Composite", - className: "MongoDbShardKeyInfo" + className: "MigrateSqlServerSqlMITaskInput" } }, - supportsSharding: { - required: true, - serializedName: "supportsSharding", + output: { + serializedName: "output", + readOnly: true, type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlMITaskOutput" + } + } } }, - viewOf: { - serializedName: "viewOf", + taskId: { + serializedName: "taskId", type: { name: "String" } @@ -8451,29 +8254,78 @@ export const MongoDbCollectionInfo: msRest.CompositeMapper = { } }; -export const MongoDbDatabaseInfo: msRest.CompositeMapper = { - serializedName: "MongoDbDatabaseInfo", +export const MigrateSqlServerSqlMISyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.SqlServer.AzureSqlDbMI.Sync.LRS", type: { name: "Composite", - className: "MongoDbDatabaseInfo", + className: "MigrateSqlServerSqlMISyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - ...MongoDbObjectInfo.type.modelProperties, - collections: { - required: true, - serializedName: "collections", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateSqlServerSqlMISyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoDbCollectionInfo" + className: "MigrateSqlServerSqlMISyncTaskOutput" + } + } + } + } + } + } +}; + +export const MigrateSqlServerSqlDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.SqlServer.SqlDb", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbTaskOutput" } } } }, - supportsSharding: { - required: true, - serializedName: "supportsSharding", + taskId: { + serializedName: "taskId", + type: { + name: "String" + } + }, + isCloneable: { + serializedName: "isCloneable", type: { name: "Boolean" } @@ -8482,293 +8334,2797 @@ export const MongoDbDatabaseInfo: msRest.CompositeMapper = { } }; -export const MongoDbClusterInfo: msRest.CompositeMapper = { - serializedName: "MongoDbClusterInfo", +export const MigrateSqlServerSqlDbSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.SqlServer.AzureSqlDb.Sync", type: { name: "Composite", - className: "MongoDbClusterInfo", + className: "MigrateSqlServerSqlDbSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, modelProperties: { - databases: { - required: true, - serializedName: "databases", + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoDbDatabaseInfo" + className: "MigrateSqlServerSqlDbSyncTaskOutput" + } + } + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.MySql.AzureDbForMySql.Sync", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutput" } } } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlOfflineTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.MySql.AzureDbForMySql", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskInput" + } }, - supportsSharding: { - required: true, - serializedName: "supportsSharding", + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput" + } + } + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2", + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput" + } + } + } + }, + taskId: { + serializedName: "taskId", + type: { + name: "String" + } + }, + createdOn: { + serializedName: "createdOn", + type: { + name: "String" + } + } + } + } +}; + +export const MigrateOracleAzureDbForPostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.Oracle.AzureDbForPostgreSql.Sync", + type: { + name: "Composite", + className: "MigrateOracleAzureDbForPostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput" + } + } + } + } + } + } +}; + +export const ValidateMigrationInputSqlServerSqlDbSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ValidateMigrationInput.SqlServer.SqlDb.Sync", + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlDbSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "ValidateSyncMigrationInputSqlServerTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ValidateSyncMigrationInputSqlServerTaskOutput" + } + } + } + } + } + } +}; + +export const ValidateMigrationInputSqlServerSqlMITaskProperties: coreClient.CompositeMapper = { + serializedName: "ValidateMigrationInput.SqlServer.AzureSqlDbMI", + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMITaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMITaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMITaskOutput" + } + } + } + } + } + } +}; + +export const ValidateMigrationInputSqlServerSqlMISyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS", + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMISyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMISyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ValidateMigrationInputSqlServerSqlMISyncTaskOutput" + } + } + } + } + } + } +}; + +export const ValidateMongoDbTaskProperties: coreClient.CompositeMapper = { + serializedName: "Validate.MongoDb", + type: { + name: "Composite", + className: "ValidateMongoDbTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MongoDbMigrationSettings" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MongoDbMigrationProgress" + } + } + } + } + } + } +}; + +export const ValidateOracleAzureDbForPostgreSqlSyncTaskProperties: coreClient.CompositeMapper = { + serializedName: "Validate.Oracle.AzureDbPostgreSql.Sync", + type: { + name: "Composite", + className: "ValidateOracleAzureDbForPostgreSqlSyncTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ValidateOracleAzureDbPostgreSqlSyncTaskOutput" + } + } + } + } + } + } +}; + +export const GetTdeCertificatesSqlTaskProperties: coreClient.CompositeMapper = { + serializedName: "GetTDECertificates.Sql", + type: { + name: "Composite", + className: "GetTdeCertificatesSqlTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "GetTdeCertificatesSqlTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GetTdeCertificatesSqlTaskOutput" + } + } + } + } + } + } +}; + +export const MigrateSsisTaskProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.Ssis", + type: { + name: "Composite", + className: "MigrateSsisTaskProperties", + uberParent: "ProjectTaskProperties", + polymorphicDiscriminator: + ProjectTaskProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ProjectTaskProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateSsisTaskInput" + } + }, + output: { + serializedName: "output", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSsisTaskOutput" + } + } + } + } + } + } +}; + +export const MigrateSyncCompleteCommandProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.Sync.Complete.Database", + type: { + name: "Composite", + className: "MigrateSyncCompleteCommandProperties", + uberParent: "CommandProperties", + polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, + modelProperties: { + ...CommandProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateSyncCompleteCommandInput" + } + }, + output: { + serializedName: "output", + type: { + name: "Composite", + className: "MigrateSyncCompleteCommandOutput" + } + } + } + } +}; + +export const MigrateMISyncCompleteCommandProperties: coreClient.CompositeMapper = { + serializedName: "Migrate.SqlServer.AzureDbSqlMi.Complete", + type: { + name: "Composite", + className: "MigrateMISyncCompleteCommandProperties", + uberParent: "CommandProperties", + polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, + modelProperties: { + ...CommandProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MigrateMISyncCompleteCommandInput" + } + }, + output: { + serializedName: "output", + type: { + name: "Composite", + className: "MigrateMISyncCompleteCommandOutput" + } + } + } + } +}; + +export const MongoDbCancelCommand: coreClient.CompositeMapper = { + serializedName: "cancel", + type: { + name: "Composite", + className: "MongoDbCancelCommand", + uberParent: "CommandProperties", + polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, + modelProperties: { + ...CommandProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MongoDbCommandInput" + } + } + } + } +}; + +export const MongoDbFinishCommand: coreClient.CompositeMapper = { + serializedName: "finish", + type: { + name: "Composite", + className: "MongoDbFinishCommand", + uberParent: "CommandProperties", + polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, + modelProperties: { + ...CommandProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MongoDbFinishCommandInput" + } + } + } + } +}; + +export const MongoDbRestartCommand: coreClient.CompositeMapper = { + serializedName: "restart", + type: { + name: "Composite", + className: "MongoDbRestartCommand", + uberParent: "CommandProperties", + polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, + modelProperties: { + ...CommandProperties.type.modelProperties, + input: { + serializedName: "input", + type: { + name: "Composite", + className: "MongoDbCommandInput" + } + } + } + } +}; + +export const ProjectTask: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProjectTask", + modelProperties: { + ...Resource.type.modelProperties, + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ProjectTaskProperties" + } + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + } + } + } +}; + +export const ProjectFile: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProjectFile", + modelProperties: { + ...Resource.type.modelProperties, + etag: { + serializedName: "etag", + type: { + name: "String" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ProjectFileProperties" + } + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + } + } + } +}; + +export const MongoDbConnectionInfo: coreClient.CompositeMapper = { + serializedName: "MongoDbConnectionInfo", + type: { + name: "Composite", + className: "MongoDbConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + connectionString: { + serializedName: "connectionString", + required: true, + type: { + name: "String" + } + }, + dataSource: { + serializedName: "dataSource", + type: { + name: "String" + } + }, + encryptConnection: { + serializedName: "encryptConnection", + type: { + name: "Boolean" + } + }, + serverBrandVersion: { + serializedName: "serverBrandVersion", + type: { + name: "String" + } + }, + enforceSSL: { + serializedName: "enforceSSL", + type: { + name: "Boolean" + } + }, + port: { + serializedName: "port", + type: { + name: "Number" + } + }, + additionalSettings: { + serializedName: "additionalSettings", + type: { + name: "String" + } + } + } + } +}; + +export const SqlConnectionInfo: coreClient.CompositeMapper = { + serializedName: "SqlConnectionInfo", + type: { + name: "Composite", + className: "SqlConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + dataSource: { + serializedName: "dataSource", + required: true, + type: { + name: "String" + } + }, + serverName: { + serializedName: "serverName", + type: { + name: "String" + } + }, + port: { + serializedName: "port", + type: { + name: "String" + } + }, + resourceId: { + serializedName: "resourceId", + type: { + name: "String" + } + }, + authentication: { + serializedName: "authentication", + type: { + name: "String" + } + }, + encryptConnection: { + defaultValue: true, + serializedName: "encryptConnection", + type: { + name: "Boolean" + } + }, + additionalSettings: { + serializedName: "additionalSettings", + type: { + name: "String" + } + }, + trustServerCertificate: { + defaultValue: false, + serializedName: "trustServerCertificate", + type: { + name: "Boolean" + } + }, + platform: { + serializedName: "platform", + type: { + name: "String" + } + } + } + } +}; + +export const MySqlConnectionInfo: coreClient.CompositeMapper = { + serializedName: "MySqlConnectionInfo", + type: { + name: "Composite", + className: "MySqlConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + serverName: { + serializedName: "serverName", + required: true, + type: { + name: "String" + } + }, + dataSource: { + serializedName: "dataSource", + type: { + name: "String" + } + }, + port: { + serializedName: "port", + required: true, + type: { + name: "Number" + } + }, + encryptConnection: { + defaultValue: true, + serializedName: "encryptConnection", + type: { + name: "Boolean" + } + } + } + } +}; + +export const OracleConnectionInfo: coreClient.CompositeMapper = { + serializedName: "OracleConnectionInfo", + type: { + name: "Composite", + className: "OracleConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + dataSource: { + serializedName: "dataSource", + required: true, + type: { + name: "String" + } + } + } + } +}; + +export const PostgreSqlConnectionInfo: coreClient.CompositeMapper = { + serializedName: "PostgreSqlConnectionInfo", + type: { + name: "Composite", + className: "PostgreSqlConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + serverName: { + serializedName: "serverName", + required: true, + type: { + name: "String" + } + }, + dataSource: { + serializedName: "dataSource", + type: { + name: "String" + } + }, + serverVersion: { + serializedName: "serverVersion", + type: { + name: "String" + } + }, + databaseName: { + serializedName: "databaseName", + type: { + name: "String" + } + }, + port: { + serializedName: "port", + required: true, + type: { + name: "Number" + } + }, + encryptConnection: { + defaultValue: true, + serializedName: "encryptConnection", + type: { + name: "Boolean" + } + }, + trustServerCertificate: { + defaultValue: false, + serializedName: "trustServerCertificate", + type: { + name: "Boolean" + } + } + } + } +}; + +export const MiSqlConnectionInfo: coreClient.CompositeMapper = { + serializedName: "MiSqlConnectionInfo", + type: { + name: "Composite", + className: "MiSqlConnectionInfo", + uberParent: "ConnectionInfo", + polymorphicDiscriminator: ConnectionInfo.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectionInfo.type.modelProperties, + managedInstanceResourceId: { + serializedName: "managedInstanceResourceId", + required: true, + type: { + name: "String" + } + } + } + } +}; + +export const ConnectToSourceSqlServerTaskOutputTaskLevel: coreClient.CompositeMapper = { + serializedName: "TaskLevelOutput", + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutputTaskLevel", + uberParent: "ConnectToSourceSqlServerTaskOutput", + polymorphicDiscriminator: + ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, + databases: { + serializedName: "databases", + readOnly: true, + type: { + name: "String" + } + }, + logins: { + serializedName: "logins", + readOnly: true, + type: { + name: "String" + } + }, + agentJobs: { + serializedName: "agentJobs", + readOnly: true, + type: { + name: "String" + } + }, + databaseTdeCertificateMapping: { + serializedName: "databaseTdeCertificateMapping", + readOnly: true, + type: { + name: "String" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + }, + validationErrors: { + serializedName: "validationErrors", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } + } + } + } + } +}; + +export const ConnectToSourceSqlServerTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutputDatabaseLevel", + uberParent: "ConnectToSourceSqlServerTaskOutput", + polymorphicDiscriminator: + ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + sizeMB: { + serializedName: "sizeMB", + readOnly: true, + type: { + name: "Number" + } + }, + databaseFiles: { + serializedName: "databaseFiles", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DatabaseFileInfo" + } + } + } + }, + compatibilityLevel: { + serializedName: "compatibilityLevel", + readOnly: true, + type: { + name: "String" + } + }, + databaseState: { + serializedName: "databaseState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ConnectToSourceSqlServerTaskOutputLoginLevel: coreClient.CompositeMapper = { + serializedName: "LoginLevelOutput", + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutputLoginLevel", + uberParent: "ConnectToSourceSqlServerTaskOutput", + polymorphicDiscriminator: + ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + loginType: { + serializedName: "loginType", + readOnly: true, + type: { + name: "String" + } + }, + defaultDatabase: { + serializedName: "defaultDatabase", + readOnly: true, + type: { + name: "String" + } + }, + isEnabled: { + serializedName: "isEnabled", + readOnly: true, + type: { + name: "Boolean" + } + }, + migrationEligibility: { + serializedName: "migrationEligibility", + type: { + name: "Composite", + className: "MigrationEligibilityInfo" + } + } + } + } +}; + +export const ConnectToSourceSqlServerTaskOutputAgentJobLevel: coreClient.CompositeMapper = { + serializedName: "AgentJobLevelOutput", + type: { + name: "Composite", + className: "ConnectToSourceSqlServerTaskOutputAgentJobLevel", + uberParent: "ConnectToSourceSqlServerTaskOutput", + polymorphicDiscriminator: + ConnectToSourceSqlServerTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...ConnectToSourceSqlServerTaskOutput.type.modelProperties, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + jobCategory: { + serializedName: "jobCategory", + readOnly: true, + type: { + name: "String" + } + }, + isEnabled: { + serializedName: "isEnabled", + readOnly: true, + type: { + name: "Boolean" + } + }, + jobOwner: { + serializedName: "jobOwner", + readOnly: true, + type: { + name: "String" + } + }, + lastExecutedOn: { + serializedName: "lastExecutedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + validationErrors: { + serializedName: "validationErrors", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } + } + }, + migrationEligibility: { + serializedName: "migrationEligibility", + type: { + name: "Composite", + className: "MigrationEligibilityInfo" + } + } + } + } +}; + +export const MigrateSchemaSqlServerSqlDbTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSchemaSqlServerSqlDbTaskInput", + modelProperties: { + ...SqlMigrationTaskInput.type.modelProperties, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSchemaSqlServerSqlDbDatabaseInput" + } + } + } + }, + encryptedKeyForSecureFields: { + serializedName: "encryptedKeyForSecureFields", + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSqlServerSqlDbSyncTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskInput", + modelProperties: { + ...SqlMigrationTaskInput.type.modelProperties, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncDatabaseInput" + } + } + } + }, + validationOptions: { + serializedName: "validationOptions", + type: { + name: "Composite", + className: "MigrationValidationOptions" + } + } + } + } +}; + +export const MigrateSqlServerSqlDbTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbTaskInput", + modelProperties: { + ...SqlMigrationTaskInput.type.modelProperties, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbDatabaseInput" + } + } + } + }, + validationOptions: { + serializedName: "validationOptions", + type: { + name: "Composite", + className: "MigrationValidationOptions" + } + }, + startedOn: { + serializedName: "startedOn", + type: { + name: "String" + } + }, + encryptedKeyForSecureFields: { + serializedName: "encryptedKeyForSecureFields", + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSqlServerSqlMITaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSqlServerSqlMITaskInput", + modelProperties: { + ...SqlMigrationTaskInput.type.modelProperties, + selectedDatabases: { + serializedName: "selectedDatabases", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "MigrateSqlServerSqlMIDatabaseInput" + } + } + } + }, + startedOn: { + serializedName: "startedOn", + type: { + name: "String" + } + }, + selectedLogins: { + serializedName: "selectedLogins", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + selectedAgentJobs: { + serializedName: "selectedAgentJobs", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + backupFileShare: { + serializedName: "backupFileShare", + type: { + name: "Composite", + className: "FileShare" + } + }, + backupBlobShare: { + serializedName: "backupBlobShare", + type: { + name: "Composite", + className: "BlobShare" + } + }, + backupMode: { + serializedName: "backupMode", + type: { + name: "String" + } + }, + aadDomainName: { + serializedName: "aadDomainName", + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSsisTaskInput: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MigrateSsisTaskInput", + modelProperties: { + ...SqlMigrationTaskInput.type.modelProperties, + ssisMigrationInfo: { + serializedName: "ssisMigrationInfo", + type: { + name: "Composite", + className: "SsisMigrationInfo" + } + } + } + } +}; + +export const MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", + type: { + name: "Composite", + className: "MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel", + uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: "MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel", + uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + stage: { + serializedName: "stage", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + databaseErrorResultPrefix: { + serializedName: "databaseErrorResultPrefix", + readOnly: true, + type: { + name: "String" + } + }, + schemaErrorResultPrefix: { + serializedName: "schemaErrorResultPrefix", + readOnly: true, + type: { + name: "String" + } + }, + numberOfSuccessfulOperations: { + serializedName: "numberOfSuccessfulOperations", + readOnly: true, + type: { + name: "Number" + } + }, + numberOfFailedOperations: { + serializedName: "numberOfFailedOperations", + readOnly: true, + type: { + name: "Number" + } + }, + fileId: { + serializedName: "fileId", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSchemaSqlServerSqlDbTaskOutputError: coreClient.CompositeMapper = { + serializedName: "SchemaErrorOutput", + type: { + name: "Composite", + className: "MigrateSchemaSqlServerSqlDbTaskOutputError", + uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, + commandText: { + serializedName: "commandText", + readOnly: true, + type: { + name: "String" + } + }, + errorText: { + serializedName: "errorText", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const MigrateSchemaSqlTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", + type: { + name: "Composite", + className: "MigrateSchemaSqlTaskOutputError", + uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ReportableException" + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel", + uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + sourceServer: { + serializedName: "sourceServer", + readOnly: true, + type: { + name: "String" + } + }, + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServer: { + serializedName: "targetServer", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel", + uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + migrationState: { + serializedName: "migrationState", + readOnly: true, + type: { + name: "String" + } + }, + incomingChanges: { + serializedName: "incomingChanges", + readOnly: true, + type: { + name: "Number" + } + }, + appliedChanges: { + serializedName: "appliedChanges", + readOnly: true, + type: { + name: "Number" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadCompletedTables: { + serializedName: "fullLoadCompletedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadLoadingTables: { + serializedName: "fullLoadLoadingTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadQueuedTables: { + serializedName: "fullLoadQueuedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadErroredTables: { + serializedName: "fullLoadErroredTables", + readOnly: true, + type: { + name: "Number" + } + }, + initializationCompleted: { + serializedName: "initializationCompleted", + readOnly: true, + type: { + name: "Boolean" + } + }, + latency: { + serializedName: "latency", + readOnly: true, + type: { + name: "Number" + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel", + uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, + tableName: { + serializedName: "tableName", + readOnly: true, + type: { + name: "String" + } + }, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "String" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "String" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "String" + } + }, + fullLoadEstFinishTime: { + serializedName: "fullLoadEstFinishTime", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadStartedOn: { + serializedName: "fullLoadStartedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadEndedOn: { + serializedName: "fullLoadEndedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadTotalRows: { + serializedName: "fullLoadTotalRows", + readOnly: true, + type: { + name: "Number" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + totalChangesApplied: { + serializedName: "totalChangesApplied", + readOnly: true, + type: { + name: "Number" + } + }, + dataErrorsCounter: { + serializedName: "dataErrorsCounter", + readOnly: true, + type: { + name: "Number" + } + }, + lastModifiedTime: { + serializedName: "lastModifiedTime", + readOnly: true, + type: { + name: "DateTime" + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputError", + uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ReportableException" + } + } + } + } +}; + +export const MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelErrorOutput", + type: { + name: "Composite", + className: "MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError", + uberParent: "MigrateMySqlAzureDbForMySqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateMySqlAzureDbForMySqlSyncTaskOutput.type.modelProperties, + errorMessage: { + serializedName: "errorMessage", + type: { + name: "String" + } + }, + events: { + serializedName: "events", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent" + } + } + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", + type: { + name: "Composite", + className: + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + sourceServer: { + serializedName: "sourceServer", + readOnly: true, + type: { + name: "String" + } + }, + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServer: { + serializedName: "targetServer", + readOnly: true, + type: { + name: "String" + } + }, + sourceServerType: { + serializedName: "sourceServerType", + readOnly: true, + type: { + name: "String" + } + }, + targetServerType: { + serializedName: "targetServerType", + readOnly: true, + type: { + name: "String" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + databaseCount: { + serializedName: "databaseCount", + type: { + name: "Number" + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + migrationState: { + serializedName: "migrationState", + readOnly: true, + type: { + name: "String" + } + }, + incomingChanges: { + serializedName: "incomingChanges", + readOnly: true, + type: { + name: "Number" + } + }, + appliedChanges: { + serializedName: "appliedChanges", + readOnly: true, + type: { + name: "Number" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadCompletedTables: { + serializedName: "fullLoadCompletedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadLoadingTables: { + serializedName: "fullLoadLoadingTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadQueuedTables: { + serializedName: "fullLoadQueuedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadErroredTables: { + serializedName: "fullLoadErroredTables", + readOnly: true, + type: { + name: "Number" + } + }, + initializationCompleted: { + serializedName: "initializationCompleted", + readOnly: true, + type: { + name: "Boolean" + } + }, + latency: { + serializedName: "latency", + readOnly: true, + type: { + name: "Number" + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .modelProperties, + tableName: { + serializedName: "tableName", + readOnly: true, + type: { + name: "String" + } + }, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadEstFinishTime: { + serializedName: "fullLoadEstFinishTime", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadStartedOn: { + serializedName: "fullLoadStartedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadEndedOn: { + serializedName: "fullLoadEndedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadTotalRows: { + serializedName: "fullLoadTotalRows", + readOnly: true, + type: { + name: "Number" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + totalChangesApplied: { + serializedName: "totalChangesApplied", + readOnly: true, + type: { + name: "Number" + } + }, + dataErrorsCounter: { + serializedName: "dataErrorsCounter", + readOnly: true, + type: { + name: "Number" + } + }, + lastModifiedTime: { + serializedName: "lastModifiedTime", + readOnly: true, + type: { + name: "DateTime" + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", + type: { + name: "Composite", + className: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .modelProperties, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ReportableException" + } + }, + events: { + serializedName: "events", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent" + } + } + } + } + } + } +}; + +export const MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelErrorOutput", + type: { + name: "Composite", + className: + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError", + uberParent: "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.type + .modelProperties, + errorMessage: { + serializedName: "errorMessage", + type: { + name: "String" + } + }, + events: { + serializedName: "events", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent" + } + } + } + } + } + } +}; + +export const MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + sourceServer: { + serializedName: "sourceServer", + readOnly: true, + type: { + name: "String" + } + }, + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServer: { + serializedName: "targetServer", + readOnly: true, + type: { + name: "String" + } + }, + databaseCount: { + serializedName: "databaseCount", + readOnly: true, + type: { + name: "Number" + } + } + } + } +}; + +export const MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + migrationState: { + serializedName: "migrationState", + readOnly: true, + type: { + name: "String" + } + }, + incomingChanges: { + serializedName: "incomingChanges", + readOnly: true, + type: { + name: "Number" + } + }, + appliedChanges: { + serializedName: "appliedChanges", + readOnly: true, + type: { + name: "Number" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadCompletedTables: { + serializedName: "fullLoadCompletedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadLoadingTables: { + serializedName: "fullLoadLoadingTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadQueuedTables: { + serializedName: "fullLoadQueuedTables", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadErroredTables: { + serializedName: "fullLoadErroredTables", + readOnly: true, + type: { + name: "Number" + } + }, + initializationCompleted: { + serializedName: "initializationCompleted", + readOnly: true, + type: { + name: "Boolean" + } + }, + latency: { + serializedName: "latency", + readOnly: true, + type: { + name: "Number" + } + } + } + } +}; + +export const MigrateSqlServerSqlDbSyncTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", + type: { + name: "Composite", + className: "MigrateSqlServerSqlDbSyncTaskOutputTableLevel", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, + modelProperties: { + ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, + tableName: { + serializedName: "tableName", + readOnly: true, + type: { + name: "String" + } + }, + databaseName: { + serializedName: "databaseName", + readOnly: true, + type: { + name: "String" + } + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, + type: { + name: "Number" + } + }, + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadEstFinishTime: { + serializedName: "fullLoadEstFinishTime", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadStartedOn: { + serializedName: "fullLoadStartedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadEndedOn: { + serializedName: "fullLoadEndedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadTotalRows: { + serializedName: "fullLoadTotalRows", + readOnly: true, + type: { + name: "Number" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + totalChangesApplied: { + serializedName: "totalChangesApplied", + readOnly: true, type: { - name: "Boolean" + name: "Number" } }, - type: { - required: true, - serializedName: "type", + dataErrorsCounter: { + serializedName: "dataErrorsCounter", + readOnly: true, type: { - name: "String" + name: "Number" } }, - version: { - required: true, - serializedName: "version", + lastModifiedTime: { + serializedName: "lastModifiedTime", + readOnly: true, type: { - name: "String" + name: "DateTime" } } } } }; -export const ConnectToMongoDbTaskProperties: msRest.CompositeMapper = { - serializedName: "Connect.MongoDb", +export const MigrateSqlServerSqlDbSyncTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToMongoDbTaskProperties", + className: "MigrateSqlServerSqlDbSyncTaskOutputError", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, + error: { + serializedName: "error", type: { name: "Composite", - className: "MongoDbConnectionInfo" - } - }, - output: { - readOnly: true, - serializedName: "output", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MongoDbClusterInfo" - } - } + className: "ReportableException" } } } } }; -export const ProjectTask: msRest.CompositeMapper = { - serializedName: "ProjectTask", +export const MigrateSqlServerSqlDbSyncTaskOutputDatabaseError: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelErrorOutput", type: { name: "Composite", - className: "ProjectTask", + className: "MigrateSqlServerSqlDbSyncTaskOutputDatabaseError", + uberParent: "MigrateSqlServerSqlDbSyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbSyncTaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...Resource.type.modelProperties, - etag: { - serializedName: "etag", + ...MigrateSqlServerSqlDbSyncTaskOutput.type.modelProperties, + errorMessage: { + serializedName: "errorMessage", type: { name: "String" } }, - properties: { - serializedName: "properties", + events: { + serializedName: "events", type: { - name: "Composite", - className: "ProjectTaskProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent" + } + } } } } } }; -export const ServiceSku: msRest.CompositeMapper = { - serializedName: "ServiceSku", +export const MigrateSqlServerSqlDbTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "ServiceSku", + className: "MigrateSqlServerSqlDbTaskOutputMigrationLevel", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - name: { - serializedName: "name", + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - tier: { - serializedName: "tier", + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + durationInSeconds: { + serializedName: "durationInSeconds", + readOnly: true, + type: { + name: "Number" + } + }, + status: { + serializedName: "status", + readOnly: true, type: { name: "String" } }, - family: { - serializedName: "family", + statusMessage: { + serializedName: "statusMessage", + readOnly: true, type: { name: "String" } }, - size: { - serializedName: "size", + message: { + serializedName: "message", + readOnly: true, type: { name: "String" } }, - capacity: { - serializedName: "capacity", + databases: { + serializedName: "databases", + readOnly: true, type: { - name: "Number" + name: "String" } - } - } - } -}; - -export const DataMigrationService: msRest.CompositeMapper = { - serializedName: "DataMigrationService", - type: { - name: "Composite", - className: "DataMigrationService", - modelProperties: { - ...TrackedResource.type.modelProperties, - etag: { - serializedName: "etag", + }, + databaseSummary: { + serializedName: "databaseSummary", + readOnly: true, type: { name: "String" } }, - kind: { - serializedName: "kind", + migrationValidationResult: { + serializedName: "migrationValidationResult", + type: { + name: "Composite", + className: "MigrationValidationResult" + } + }, + migrationReportResult: { + serializedName: "migrationReportResult", + type: { + name: "Composite", + className: "MigrationReportResult" + } + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, type: { name: "String" } }, - provisioningState: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "properties.provisioningState", type: { name: "String" } }, - publicKey: { - serializedName: "properties.publicKey", + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, type: { name: "String" } }, - virtualSubnetId: { - required: true, - serializedName: "properties.virtualSubnetId", + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", + readOnly: true, type: { name: "String" } }, - sku: { - serializedName: "sku", + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", + readOnly: true, type: { - name: "Composite", - className: "ServiceSku" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } } } } }; -export const NameAvailabilityRequest: msRest.CompositeMapper = { - serializedName: "NameAvailabilityRequest", +export const MigrateSqlServerSqlDbTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", type: { name: "Composite", - className: "NameAvailabilityRequest", + className: "MigrateSqlServerSqlDbTaskOutputDatabaseLevel", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - name: { - serializedName: "name", + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, type: { name: "String" } }, - type: { - serializedName: "type", + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + state: { + serializedName: "state", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const DatabaseInfo: msRest.CompositeMapper = { - serializedName: "DatabaseInfo", - type: { - name: "Composite", - className: "DatabaseInfo", - modelProperties: { - sourceDatabaseName: { - required: true, - serializedName: "sourceDatabaseName", + }, + stage: { + serializedName: "stage", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const Project: msRest.CompositeMapper = { - serializedName: "Project", - type: { - name: "Composite", - className: "Project", - modelProperties: { - ...TrackedResource.type.modelProperties, - sourcePlatform: { - required: true, - serializedName: "properties.sourcePlatform", + }, + statusMessage: { + serializedName: "statusMessage", + readOnly: true, + type: { + name: "String" + } + }, + message: { + serializedName: "message", + readOnly: true, type: { name: "String" } }, - targetPlatform: { - required: true, - serializedName: "properties.targetPlatform", + numberOfObjects: { + serializedName: "numberOfObjects", + readOnly: true, + type: { + name: "Number" + } + }, + numberOfObjectsCompleted: { + serializedName: "numberOfObjectsCompleted", + readOnly: true, type: { - name: "String" + name: "Number" } }, - creationTime: { + errorCount: { + serializedName: "errorCount", readOnly: true, - serializedName: "properties.creationTime", type: { - name: "DateTime" + name: "Number" } }, - sourceConnectionInfo: { - serializedName: "properties.sourceConnectionInfo", + errorPrefix: { + serializedName: "errorPrefix", + readOnly: true, type: { - name: "Composite", - className: "ConnectionInfo" + name: "String" } }, - targetConnectionInfo: { - serializedName: "properties.targetConnectionInfo", + resultPrefix: { + serializedName: "resultPrefix", + readOnly: true, type: { - name: "Composite", - className: "ConnectionInfo" + name: "String" } }, - databasesInfo: { - serializedName: "properties.databasesInfo", + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "DatabaseInfo" + className: "ReportableException" } } } }, - provisioningState: { + objectSummary: { + serializedName: "objectSummary", readOnly: true, - serializedName: "properties.provisioningState", type: { name: "String" } @@ -8777,121 +11133,75 @@ export const Project: msRest.CompositeMapper = { } }; -export const ApiError: msRest.CompositeMapper = { - serializedName: "ApiError", - type: { - name: "Composite", - className: "ApiError", - modelProperties: { - error: { - serializedName: "error", - type: { - name: "Composite", - className: "ODataError" - } - } - } - } -}; - -export const FileStorageInfo: msRest.CompositeMapper = { - serializedName: "FileStorageInfo", +export const MigrateSqlServerSqlDbTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", type: { name: "Composite", - className: "FileStorageInfo", + className: "MigrateSqlServerSqlDbTaskOutputTableLevel", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - uri: { - serializedName: "uri", + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + objectName: { + serializedName: "objectName", + readOnly: true, type: { name: "String" } }, - headers: { - serializedName: "headers", - type: { - name: "Dictionary", - value: { - type: { - name: "String" - } - } - } - } - } - } -}; - -export const ServiceOperationDisplay: msRest.CompositeMapper = { - serializedName: "ServiceOperation_display", - type: { - name: "Composite", - className: "ServiceOperationDisplay", - modelProperties: { - provider: { - serializedName: "provider", + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - resource: { - serializedName: "resource", + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - operation: { - serializedName: "operation", + state: { + serializedName: "state", + readOnly: true, type: { name: "String" } }, - description: { - serializedName: "description", + statusMessage: { + serializedName: "statusMessage", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const ServiceOperation: msRest.CompositeMapper = { - serializedName: "ServiceOperation", - type: { - name: "Composite", - className: "ServiceOperation", - modelProperties: { - name: { - serializedName: "name", + }, + itemsCount: { + serializedName: "itemsCount", + readOnly: true, type: { - name: "String" + name: "Number" } }, - display: { - serializedName: "display", + itemsCompletedCount: { + serializedName: "itemsCompletedCount", + readOnly: true, type: { - name: "Composite", - className: "ServiceOperationDisplay" + name: "Number" } - } - } - } -}; - -export const QuotaName: msRest.CompositeMapper = { - serializedName: "Quota_name", - type: { - name: "Composite", - className: "QuotaName", - modelProperties: { - localizedValue: { - serializedName: "localizedValue", + }, + errorPrefix: { + serializedName: "errorPrefix", + readOnly: true, type: { name: "String" } }, - value: { - serializedName: "value", + resultPrefix: { + serializedName: "resultPrefix", + readOnly: true, type: { name: "String" } @@ -8900,456 +11210,280 @@ export const QuotaName: msRest.CompositeMapper = { } }; -export const Quota: msRest.CompositeMapper = { - serializedName: "Quota", +export const MigrateSqlServerSqlDbTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", type: { name: "Composite", - className: "Quota", + className: "MigrateSqlServerSqlDbTaskOutputError", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - currentValue: { - serializedName: "currentValue", - type: { - name: "Number" - } - }, - id: { - serializedName: "id", - type: { - name: "String" - } - }, - limit: { - serializedName: "limit", - type: { - name: "Number" - } - }, - name: { - serializedName: "name", + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + error: { + serializedName: "error", type: { name: "Composite", - className: "QuotaName" - } - }, - unit: { - serializedName: "unit", - type: { - name: "String" + className: "ReportableException" } } } } }; -export const NameAvailabilityResponse: msRest.CompositeMapper = { - serializedName: "NameAvailabilityResponse", +export const MigrateSqlServerSqlDbTaskOutputValidationResult: coreClient.CompositeMapper = { + serializedName: "MigrationValidationOutput", type: { name: "Composite", - className: "NameAvailabilityResponse", + className: "MigrateSqlServerSqlDbTaskOutputValidationResult", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - nameAvailable: { - serializedName: "nameAvailable", - type: { - name: "Boolean" - } - }, - reason: { - serializedName: "reason", - type: { - name: "String" - } - }, - message: { - serializedName: "message", - type: { - name: "String" - } - } + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + ...MigrationValidationResult.type.modelProperties } } }; -export const AvailableServiceSkuSku: msRest.CompositeMapper = { - serializedName: "AvailableServiceSku_sku", +export const MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult: coreClient.CompositeMapper = { + serializedName: "MigrationDatabaseLevelValidationOutput", type: { name: "Composite", - className: "AvailableServiceSkuSku", + className: "MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult", + uberParent: "MigrateSqlServerSqlDbTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, modelProperties: { - name: { - serializedName: "name", - type: { - name: "String" - } - }, - family: { - serializedName: "family", - type: { - name: "String" - } - }, - size: { - serializedName: "size", - type: { - name: "String" - } - }, - tier: { - serializedName: "tier", - type: { - name: "String" - } - } + ...MigrateSqlServerSqlDbTaskOutput.type.modelProperties, + ...MigrationValidationDatabaseLevelResult.type.modelProperties } } }; -export const AvailableServiceSkuCapacity: msRest.CompositeMapper = { - serializedName: "AvailableServiceSku_capacity", +export const DatabaseSummaryResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AvailableServiceSkuCapacity", + className: "DatabaseSummaryResult", modelProperties: { - minimum: { - serializedName: "minimum", - type: { - name: "Number" - } - }, - maximum: { - serializedName: "maximum", - type: { - name: "Number" - } - }, - default: { - serializedName: "default", + ...DataItemMigrationSummaryResult.type.modelProperties, + sizeMB: { + serializedName: "sizeMB", + readOnly: true, type: { name: "Number" } - }, - scaleType: { - serializedName: "scaleType", - type: { - name: "String" - } } } } }; -export const AvailableServiceSku: msRest.CompositeMapper = { - serializedName: "AvailableServiceSku", +export const MigrateSqlServerSqlMISyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AvailableServiceSku", + className: "MigrateSqlServerSqlMISyncTaskInput", modelProperties: { - resourceType: { - serializedName: "resourceType", - type: { - name: "String" - } - }, - sku: { - serializedName: "sku", - type: { - name: "Composite", - className: "AvailableServiceSkuSku" - } - }, - capacity: { - serializedName: "capacity", - type: { - name: "Composite", - className: "AvailableServiceSkuCapacity" - } - } + ...SqlServerSqlMISyncTaskInput.type.modelProperties } } }; -export const DataMigrationServiceStatusResponse: msRest.CompositeMapper = { - serializedName: "DataMigrationServiceStatusResponse", +export const ValidateMigrationInputSqlServerSqlMISyncTaskInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataMigrationServiceStatusResponse", + className: "ValidateMigrationInputSqlServerSqlMISyncTaskInput", modelProperties: { - agentVersion: { - serializedName: "agentVersion", - type: { - name: "String" - } - }, - status: { - serializedName: "status", - type: { - name: "String" - } - }, - vmSize: { - serializedName: "vmSize", - type: { - name: "String" - } - }, - supportedTaskTypes: { - serializedName: "supportedTaskTypes", - type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } - } - } + ...SqlServerSqlMISyncTaskInput.type.modelProperties } } }; -export const ResourceSkuRestrictions: msRest.CompositeMapper = { - serializedName: "ResourceSkuRestrictions", +export const MigrateSqlServerSqlMISyncTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "ResourceSkuRestrictions", + className: "MigrateSqlServerSqlMISyncTaskOutputMigrationLevel", + uberParent: "MigrateSqlServerSqlMISyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, modelProperties: { - type: { + ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, + databaseCount: { + serializedName: "databaseCount", readOnly: true, - serializedName: "type", type: { - name: "String" + name: "Number" } }, - values: { + state: { + serializedName: "state", readOnly: true, - serializedName: "values", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - reasonCode: { + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "reasonCode", type: { - name: "String" + name: "DateTime" } - } - } - } -}; - -export const ResourceSkuCapabilities: msRest.CompositeMapper = { - serializedName: "ResourceSkuCapabilities", - type: { - name: "Composite", - className: "ResourceSkuCapabilities", - modelProperties: { - name: { + }, + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "name", type: { - name: "String" + name: "DateTime" } }, - value: { + sourceServerName: { + serializedName: "sourceServerName", readOnly: true, - serializedName: "value", type: { name: "String" } - } - } - } -}; - -export const ResourceSkuCosts: msRest.CompositeMapper = { - serializedName: "ResourceSkuCosts", - type: { - name: "Composite", - className: "ResourceSkuCosts", - modelProperties: { - meterID: { + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", readOnly: true, - serializedName: "meterID", type: { name: "String" } }, - quantity: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "quantity", type: { - name: "Number" + name: "String" } }, - extendedUnit: { + targetServerName: { + serializedName: "targetServerName", readOnly: true, - serializedName: "extendedUnit", type: { name: "String" } - } - } - } -}; - -export const ResourceSkuCapacity: msRest.CompositeMapper = { - serializedName: "ResourceSkuCapacity", - type: { - name: "Composite", - className: "ResourceSkuCapacity", - modelProperties: { - minimum: { - readOnly: true, - serializedName: "minimum", - type: { - name: "Number" - } }, - maximum: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "maximum", type: { - name: "Number" + name: "String" } }, - default: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "default", type: { - name: "Number" + name: "String" } }, - scaleType: { + databaseErrorCount: { + serializedName: "databaseErrorCount", readOnly: true, - serializedName: "scaleType", type: { - name: "String" + name: "Number" } } } } }; -export const ResourceSku: msRest.CompositeMapper = { - serializedName: "ResourceSku", +export const MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", type: { name: "Composite", - className: "ResourceSku", + className: "MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel", + uberParent: "MigrateSqlServerSqlMISyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, modelProperties: { - resourceType: { - readOnly: true, - serializedName: "resourceType", - type: { - name: "String" - } - }, - name: { + ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, + sourceDatabaseName: { + serializedName: "sourceDatabaseName", readOnly: true, - serializedName: "name", type: { name: "String" } }, - tier: { + migrationState: { + serializedName: "migrationState", readOnly: true, - serializedName: "tier", type: { name: "String" } }, - size: { + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "size", type: { - name: "String" + name: "DateTime" } }, - family: { + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "family", type: { - name: "String" + name: "DateTime" } }, - kind: { - readOnly: true, - serializedName: "kind", + fullBackupSetInfo: { + serializedName: "fullBackupSetInfo", type: { - name: "String" + name: "Composite", + className: "BackupSetInfo" } }, - capacity: { - readOnly: true, - serializedName: "capacity", + lastRestoredBackupSetInfo: { + serializedName: "lastRestoredBackupSetInfo", type: { name: "Composite", - className: "ResourceSkuCapacity" + className: "BackupSetInfo" } }, - locations: { + activeBackupSets: { + serializedName: "activeBackupSets", readOnly: true, - serializedName: "locations", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "BackupSetInfo" } } } }, - apiVersions: { + containerName: { + serializedName: "containerName", readOnly: true, - serializedName: "apiVersions", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - costs: { + errorPrefix: { + serializedName: "errorPrefix", readOnly: true, - serializedName: "costs", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ResourceSkuCosts" - } - } + name: "String" } - }, - capabilities: { - readOnly: true, - serializedName: "capabilities", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ResourceSkuCapabilities" - } - } + }, + isFullBackupRestored: { + serializedName: "isFullBackupRestored", + readOnly: true, + type: { + name: "Boolean" } }, - restrictions: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "restrictions", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ResourceSkuRestrictions" + className: "ReportableException" } } } @@ -9358,176 +11492,150 @@ export const ResourceSku: msRest.CompositeMapper = { } }; -export const ConnectToSourceMySqlTaskInput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceMySqlTaskInput", +export const MigrateSqlServerSqlMISyncTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", type: { name: "Composite", - className: "ConnectToSourceMySqlTaskInput", + className: "MigrateSqlServerSqlMISyncTaskOutputError", + uberParent: "MigrateSqlServerSqlMISyncTaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMISyncTaskOutput.type.polymorphicDiscriminator, modelProperties: { - sourceConnectionInfo: { - required: true, - serializedName: "sourceConnectionInfo", + ...MigrateSqlServerSqlMISyncTaskOutput.type.modelProperties, + error: { + serializedName: "error", type: { name: "Composite", - className: "MySqlConnectionInfo" - } - }, - targetPlatform: { - serializedName: "targetPlatform", - type: { - name: "String" - } - }, - checkPermissionsGroup: { - serializedName: "checkPermissionsGroup", - type: { - name: "Enum", - allowedValues: [ - "Default", - "MigrationFromSqlServerToAzureDB", - "MigrationFromSqlServerToAzureMI", - "MigrationFromMySQLToAzureDBForMySQL" - ] + className: "ReportableException" } } } } }; -export const ServerProperties: msRest.CompositeMapper = { - serializedName: "ServerProperties", +export const MigrateSqlServerSqlMITaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "ServerProperties", + className: "MigrateSqlServerSqlMITaskOutputMigrationLevel", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, modelProperties: { - serverPlatform: { + ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "serverPlatform", type: { - name: "String" + name: "DateTime" } }, - serverName: { + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "serverName", type: { - name: "String" + name: "DateTime" } }, - serverVersion: { + status: { + serializedName: "status", readOnly: true, - serializedName: "serverVersion", type: { name: "String" } }, - serverEdition: { + state: { + serializedName: "state", readOnly: true, - serializedName: "serverEdition", type: { name: "String" } }, - serverOperatingSystemVersion: { + agentJobs: { + serializedName: "agentJobs", readOnly: true, - serializedName: "serverOperatingSystemVersion", type: { name: "String" } }, - serverDatabaseCount: { - readOnly: true, - serializedName: "serverDatabaseCount", - type: { - name: "Number" - } - } - } - } -}; - -export const ConnectToSourceNonSqlTaskOutput: msRest.CompositeMapper = { - serializedName: "ConnectToSourceNonSqlTaskOutput", - type: { - name: "Composite", - className: "ConnectToSourceNonSqlTaskOutput", - modelProperties: { - id: { + logins: { + serializedName: "logins", readOnly: true, - serializedName: "id", type: { name: "String" } }, - sourceServerBrandVersion: { + message: { + serializedName: "message", readOnly: true, - serializedName: "sourceServerBrandVersion", type: { name: "String" } }, - serverProperties: { + serverRoleResults: { + serializedName: "serverRoleResults", readOnly: true, - serializedName: "serverProperties", type: { - name: "Composite", - className: "ServerProperties" + name: "String" } }, - databases: { + orphanedUsersInfo: { + serializedName: "orphanedUsersInfo", readOnly: true, - serializedName: "databases", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "OrphanedUserInfo" } } } }, - validationErrors: { + databases: { + serializedName: "databases", readOnly: true, - serializedName: "validationErrors", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "String" } - } - } - } -}; - -export const ConnectToSourceMySqlTaskProperties: msRest.CompositeMapper = { - serializedName: "ConnectToSource.MySql", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "ConnectToSourceMySqlTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", + }, + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, type: { - name: "Composite", - className: "ConnectToSourceMySqlTaskInput" + name: "String" } }, - output: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, + type: { + name: "String" + } + }, + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", + readOnly: true, + type: { + name: "String" + } + }, + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectToSourceNonSqlTaskOutput" + className: "ReportableException" } } } @@ -9536,135 +11644,74 @@ export const ConnectToSourceMySqlTaskProperties: msRest.CompositeMapper = { } }; -export const SchemaMigrationSetting: msRest.CompositeMapper = { - serializedName: "SchemaMigrationSetting", +export const MigrateSqlServerSqlMITaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", type: { name: "Composite", - className: "SchemaMigrationSetting", + className: "MigrateSqlServerSqlMITaskOutputDatabaseLevel", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, modelProperties: { - schemaOption: { - serializedName: "schemaOption", + ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, type: { name: "String" } }, - fileId: { - serializedName: "fileId", + sizeMB: { + serializedName: "sizeMB", + readOnly: true, type: { - name: "String" + name: "Number" } - } - } - } -}; - -export const MigrateSchemaSqlServerSqlDbDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateSchemaSqlServerSqlDbDatabaseInput", - type: { - name: "Composite", - className: "MigrateSchemaSqlServerSqlDbDatabaseInput", - modelProperties: { - name: { - serializedName: "name", + }, + state: { + serializedName: "state", + readOnly: true, type: { name: "String" } }, - targetDatabaseName: { - serializedName: "targetDatabaseName", + stage: { + serializedName: "stage", + readOnly: true, type: { name: "String" } }, - schemaSetting: { - serializedName: "schemaSetting", - type: { - name: "Composite", - className: "SchemaMigrationSetting" - } - } - } - } -}; - -export const MigrateSchemaSqlServerSqlDbTaskInput: msRest.CompositeMapper = { - serializedName: "MigrateSchemaSqlServerSqlDbTaskInput", - type: { - name: "Composite", - className: "MigrateSchemaSqlServerSqlDbTaskInput", - modelProperties: { - ...SqlMigrationTaskInput.type.modelProperties, - selectedDatabases: { - required: true, - serializedName: "selectedDatabases", + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrateSchemaSqlServerSqlDbDatabaseInput" - } - } + name: "DateTime" } - } - } - } -}; - -export const MigrateSchemaSqlServerSqlDbTaskOutput: msRest.CompositeMapper = { - serializedName: "MigrateSchemaSqlServerSqlDbTaskOutput", - type: { - name: "Composite", - polymorphicDiscriminator: { - serializedName: "resultType", - clientName: "resultType" - }, - uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", - className: "MigrateSchemaSqlServerSqlDbTaskOutput", - modelProperties: { - id: { + }, + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "id", type: { - name: "String" + name: "DateTime" } }, - resultType: { - required: true, - serializedName: "resultType", + message: { + serializedName: "message", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const MigrateSchemaSqlServerSqlDbTaskProperties: msRest.CompositeMapper = { - serializedName: "MigrateSchemaSqlServerSqlDb", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "MigrateSchemaSqlServerSqlDbTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "MigrateSchemaSqlServerSqlDbTaskInput" - } }, - output: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "output", type: { name: "Sequence", element: { type: { name: "Composite", - className: "MigrateSchemaSqlServerSqlDbTaskOutput" + className: "ReportableException" } } } @@ -9673,189 +11720,155 @@ export const MigrateSchemaSqlServerSqlDbTaskProperties: msRest.CompositeMapper = } }; -export const MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel: msRest.CompositeMapper = { - serializedName: "MigrationLevelOutput", +export const MigrateSqlServerSqlMITaskOutputAgentJobLevel: coreClient.CompositeMapper = { + serializedName: "AgentJobLevelOutput", type: { name: "Composite", - polymorphicDiscriminator: MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", - className: "MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel", + className: "MigrateSqlServerSqlMITaskOutputAgentJobLevel", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, - state: { + ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, + name: { + serializedName: "name", readOnly: true, - serializedName: "state", type: { name: "String" } }, - startedOn: { + isEnabled: { + serializedName: "isEnabled", readOnly: true, - serializedName: "startedOn", type: { - name: "DateTime" + name: "Boolean" } }, - endedOn: { + state: { + serializedName: "state", readOnly: true, - serializedName: "endedOn", type: { - name: "DateTime" + name: "String" } }, - sourceServerVersion: { + startedOn: { + serializedName: "startedOn", readOnly: true, - serializedName: "sourceServerVersion", type: { - name: "String" + name: "DateTime" } }, - sourceServerBrandVersion: { + endedOn: { + serializedName: "endedOn", readOnly: true, - serializedName: "sourceServerBrandVersion", type: { - name: "String" + name: "DateTime" } }, - targetServerVersion: { + message: { + serializedName: "message", readOnly: true, - serializedName: "targetServerVersion", type: { name: "String" } }, - targetServerBrandVersion: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "targetServerBrandVersion", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } } } } }; -export const MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel: msRest.CompositeMapper = { - serializedName: "DatabaseLevelOutput", +export const MigrateSqlServerSqlMITaskOutputLoginLevel: coreClient.CompositeMapper = { + serializedName: "LoginLevelOutput", type: { name: "Composite", - polymorphicDiscriminator: MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", - className: "MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel", + className: "MigrateSqlServerSqlMITaskOutputLoginLevel", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, - databaseName: { + ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, + loginName: { + serializedName: "loginName", readOnly: true, - serializedName: "databaseName", type: { name: "String" } }, state: { - readOnly: true, serializedName: "state", + readOnly: true, type: { name: "String" } }, stage: { - readOnly: true, serializedName: "stage", + readOnly: true, type: { name: "String" } }, startedOn: { - readOnly: true, serializedName: "startedOn", + readOnly: true, type: { name: "DateTime" } }, endedOn: { - readOnly: true, serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - databaseErrorResultPrefix: { - readOnly: true, - serializedName: "databaseErrorResultPrefix", - type: { - name: "String" - } - }, - schemaErrorResultPrefix: { - readOnly: true, - serializedName: "schemaErrorResultPrefix", - type: { - name: "String" - } - }, - numberOfSuccessfulOperations: { readOnly: true, - serializedName: "numberOfSuccessfulOperations", - type: { - name: "Number" - } - }, - numberOfFailedOperations: { - readOnly: true, - serializedName: "numberOfFailedOperations", type: { - name: "Number" + name: "DateTime" } }, - fileId: { - readOnly: true, - serializedName: "fileId", - type: { - name: "String" - } - } - } - } -}; - -export const MigrateSchemaSqlServerSqlDbTaskOutputError: msRest.CompositeMapper = { - serializedName: "SchemaErrorOutput", - type: { - name: "Composite", - polymorphicDiscriminator: MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", - className: "MigrateSchemaSqlServerSqlDbTaskOutputError", - modelProperties: { - ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, - commandText: { + message: { + serializedName: "message", readOnly: true, - serializedName: "commandText", type: { name: "String" } }, - errorText: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "errorText", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ReportableException" + } + } } } } } }; -export const MigrateSchemaSqlTaskOutputError: msRest.CompositeMapper = { +export const MigrateSqlServerSqlMITaskOutputError: coreClient.CompositeMapper = { serializedName: "ErrorOutput", type: { name: "Composite", - polymorphicDiscriminator: MigrateSchemaSqlServerSqlDbTaskOutput.type.polymorphicDiscriminator, - uberParent: "MigrateSchemaSqlServerSqlDbTaskOutput", - className: "MigrateSchemaSqlTaskOutputError", + className: "MigrateSqlServerSqlMITaskOutputError", + uberParent: "MigrateSqlServerSqlMITaskOutput", + polymorphicDiscriminator: + MigrateSqlServerSqlMITaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...MigrateSchemaSqlServerSqlDbTaskOutput.type.modelProperties, + ...MigrateSqlServerSqlMITaskOutput.type.modelProperties, error: { - readOnly: true, serializedName: "error", type: { name: "Composite", @@ -9866,165 +11879,88 @@ export const MigrateSchemaSqlTaskOutputError: msRest.CompositeMapper = { } }; -export const MongoDbCommandInput: msRest.CompositeMapper = { - serializedName: "MongoDbCommandInput", - type: { - name: "Composite", - className: "MongoDbCommandInput", - modelProperties: { - objectName: { - serializedName: "objectName", - type: { - name: "String" - } - } - } - } -}; - -export const MongoDbCancelCommand: msRest.CompositeMapper = { - serializedName: "cancel", - type: { - name: "Composite", - polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, - uberParent: "CommandProperties", - className: "MongoDbCancelCommand", - modelProperties: { - ...CommandProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "MongoDbCommandInput" - } - } - } - } -}; - -export const MongoDbFinishCommandInput: msRest.CompositeMapper = { - serializedName: "MongoDbFinishCommandInput", +export const MigrateSsisTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "MongoDbFinishCommandInput", + className: "MigrateSsisTaskOutputMigrationLevel", + uberParent: "MigrateSsisTaskOutput", + polymorphicDiscriminator: + MigrateSsisTaskOutput.type.polymorphicDiscriminator, modelProperties: { - ...MongoDbCommandInput.type.modelProperties, - immediate: { - required: true, - serializedName: "immediate", + ...MigrateSsisTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "Boolean" + name: "DateTime" } - } - } - } -}; - -export const MongoDbFinishCommand: msRest.CompositeMapper = { - serializedName: "finish", - type: { - name: "Composite", - polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, - uberParent: "CommandProperties", - className: "MongoDbFinishCommand", - modelProperties: { - ...CommandProperties.type.modelProperties, - input: { - serializedName: "input", + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "Composite", - className: "MongoDbFinishCommandInput" + name: "DateTime" } - } - } - } -}; - -export const MongoDbRestartCommand: msRest.CompositeMapper = { - serializedName: "restart", - type: { - name: "Composite", - polymorphicDiscriminator: CommandProperties.type.polymorphicDiscriminator, - uberParent: "CommandProperties", - className: "MongoDbRestartCommand", - modelProperties: { - ...CommandProperties.type.modelProperties, - input: { - serializedName: "input", + }, + status: { + serializedName: "status", + readOnly: true, type: { - name: "Composite", - className: "MongoDbCommandInput" + name: "String" } - } - } - } -}; - -export const OracleOCIDriverInfo: msRest.CompositeMapper = { - serializedName: "OracleOCIDriverInfo", - type: { - name: "Composite", - className: "OracleOCIDriverInfo", - modelProperties: { - driverName: { + }, + message: { + serializedName: "message", readOnly: true, - serializedName: "driverName", type: { name: "String" } }, - driverSize: { + sourceServerVersion: { + serializedName: "sourceServerVersion", readOnly: true, - serializedName: "driverSize", type: { name: "String" } }, - archiveChecksum: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "archiveChecksum", type: { name: "String" } }, - oracleChecksum: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "oracleChecksum", type: { name: "String" } }, - assemblyVersion: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "assemblyVersion", type: { name: "String" } }, - supportedOracleVersions: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "supportedOracleVersions", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } - } - } - } -}; - -export const CheckOCIDriverTaskInput: msRest.CompositeMapper = { - serializedName: "CheckOCIDriverTaskInput", - type: { - name: "Composite", - className: "CheckOCIDriverTaskInput", - modelProperties: { - serverVersion: { - serializedName: "serverVersion", + }, + stage: { + serializedName: "stage", + readOnly: true, type: { name: "String" } @@ -10033,22 +11969,68 @@ export const CheckOCIDriverTaskInput: msRest.CompositeMapper = { } }; -export const CheckOCIDriverTaskOutput: msRest.CompositeMapper = { - serializedName: "CheckOCIDriverTaskOutput", +export const MigrateSsisTaskOutputProjectLevel: coreClient.CompositeMapper = { + serializedName: "SsisProjectLevelOutput", type: { name: "Composite", - className: "CheckOCIDriverTaskOutput", + className: "MigrateSsisTaskOutputProjectLevel", + uberParent: "MigrateSsisTaskOutput", + polymorphicDiscriminator: + MigrateSsisTaskOutput.type.polymorphicDiscriminator, modelProperties: { - installedDriver: { - serializedName: "installedDriver", + ...MigrateSsisTaskOutput.type.modelProperties, + folderName: { + serializedName: "folderName", + readOnly: true, type: { - name: "Composite", - className: "OracleOCIDriverInfo" + name: "String" } }, - validationErrors: { + projectName: { + serializedName: "projectName", + readOnly: true, + type: { + name: "String" + } + }, + state: { + serializedName: "state", + readOnly: true, + type: { + name: "String" + } + }, + stage: { + serializedName: "stage", + readOnly: true, + type: { + name: "String" + } + }, + startedOn: { + serializedName: "startedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + message: { + serializedName: "message", + readOnly: true, + type: { + name: "String" + } + }, + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "validationErrors", type: { name: "Sequence", element: { @@ -10063,61 +12045,73 @@ export const CheckOCIDriverTaskOutput: msRest.CompositeMapper = { } }; -export const UploadOCIDriverTaskInput: msRest.CompositeMapper = { - serializedName: "UploadOCIDriverTaskInput", +export const MongoDbFinishCommandInput: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UploadOCIDriverTaskInput", + className: "MongoDbFinishCommandInput", modelProperties: { - driverShare: { - serializedName: "driverShare", + ...MongoDbCommandInput.type.modelProperties, + immediate: { + serializedName: "immediate", + required: true, type: { - name: "Composite", - className: "FileShare" + name: "Boolean" } } } } }; -export const UploadOCIDriverTaskOutput: msRest.CompositeMapper = { - serializedName: "UploadOCIDriverTaskOutput", +export const MongoDbCollectionInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "UploadOCIDriverTaskOutput", + className: "MongoDbCollectionInfo", modelProperties: { - driverPackageName: { - readOnly: true, - serializedName: "driverPackageName", + ...MongoDbObjectInfo.type.modelProperties, + databaseName: { + serializedName: "databaseName", + required: true, type: { name: "String" } }, - validationErrors: { - readOnly: true, - serializedName: "validationErrors", + isCapped: { + serializedName: "isCapped", + required: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ReportableException" - } - } + name: "Boolean" } - } - } - } -}; - -export const InstallOCIDriverTaskInput: msRest.CompositeMapper = { - serializedName: "InstallOCIDriverTaskInput", - type: { - name: "Composite", - className: "InstallOCIDriverTaskInput", - modelProperties: { - driverPackageName: { - serializedName: "driverPackageName", + }, + isSystemCollection: { + serializedName: "isSystemCollection", + required: true, + type: { + name: "Boolean" + } + }, + isView: { + serializedName: "isView", + required: true, + type: { + name: "Boolean" + } + }, + shardKey: { + serializedName: "shardKey", + type: { + name: "Composite", + className: "MongoDbShardKeyInfo" + } + }, + supportsSharding: { + serializedName: "supportsSharding", + required: true, + type: { + name: "Boolean" + } + }, + viewOf: { + serializedName: "viewOf", type: { name: "String" } @@ -10126,88 +12120,64 @@ export const InstallOCIDriverTaskInput: msRest.CompositeMapper = { } }; -export const InstallOCIDriverTaskOutput: msRest.CompositeMapper = { - serializedName: "InstallOCIDriverTaskOutput", +export const MongoDbDatabaseInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "InstallOCIDriverTaskOutput", + className: "MongoDbDatabaseInfo", modelProperties: { - validationErrors: { - readOnly: true, - serializedName: "validationErrors", + ...MongoDbObjectInfo.type.modelProperties, + collections: { + serializedName: "collections", + required: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ReportableException" + className: "MongoDbCollectionInfo" } } } + }, + supportsSharding: { + serializedName: "supportsSharding", + required: true, + type: { + name: "Boolean" + } } } } }; -export const CheckOCIDriverTaskProperties: msRest.CompositeMapper = { - serializedName: "Service.Check.OCI", +export const MongoDbCollectionProgress: coreClient.CompositeMapper = { + serializedName: "Collection", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "CheckOCIDriverTaskProperties", + className: "MongoDbCollectionProgress", + uberParent: "MongoDbProgress", + polymorphicDiscriminator: MongoDbProgress.type.polymorphicDiscriminator, modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "CheckOCIDriverTaskInput" - } - }, - output: { - readOnly: true, - serializedName: "output", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CheckOCIDriverTaskOutput" - } - } - } - } + ...MongoDbProgress.type.modelProperties } } }; -export const UploadOCIDriverTaskProperties: msRest.CompositeMapper = { - serializedName: "Service.Upload.OCI", - type: { - name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "UploadOCIDriverTaskProperties", - modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "UploadOCIDriverTaskInput" - } - }, - output: { - readOnly: true, - serializedName: "output", +export const MongoDbDatabaseProgress: coreClient.CompositeMapper = { + serializedName: "Database", + type: { + name: "Composite", + className: "MongoDbDatabaseProgress", + uberParent: "MongoDbProgress", + polymorphicDiscriminator: MongoDbProgress.type.polymorphicDiscriminator, + modelProperties: { + ...MongoDbProgress.type.modelProperties, + collections: { + serializedName: "collections", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "UploadOCIDriverTaskOutput" - } + name: "Dictionary", + value: { + type: { name: "Composite", className: "MongoDbCollectionProgress" } } } } @@ -10215,32 +12185,21 @@ export const UploadOCIDriverTaskProperties: msRest.CompositeMapper = { } }; -export const InstallOCIDriverTaskProperties: msRest.CompositeMapper = { - serializedName: "Service.Install.OCI", +export const MongoDbMigrationProgress: coreClient.CompositeMapper = { + serializedName: "Migration", type: { name: "Composite", - polymorphicDiscriminator: ProjectTaskProperties.type.polymorphicDiscriminator, - uberParent: "ProjectTaskProperties", - className: "InstallOCIDriverTaskProperties", + className: "MongoDbMigrationProgress", + uberParent: "MongoDbProgress", + polymorphicDiscriminator: MongoDbProgress.type.polymorphicDiscriminator, modelProperties: { - ...ProjectTaskProperties.type.modelProperties, - input: { - serializedName: "input", - type: { - name: "Composite", - className: "InstallOCIDriverTaskInput" - } - }, - output: { - readOnly: true, - serializedName: "output", + ...MongoDbProgress.type.modelProperties, + databases: { + serializedName: "databases", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InstallOCIDriverTaskOutput" - } + name: "Dictionary", + value: { + type: { name: "Composite", className: "MongoDbDatabaseProgress" } } } } @@ -10248,604 +12207,587 @@ export const InstallOCIDriverTaskProperties: msRest.CompositeMapper = { } }; -export const Database: msRest.CompositeMapper = { - serializedName: "Database", +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "Database", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - id: { - serializedName: "id", + ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - name: { - serializedName: "name", + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - compatibilityLevel: { - serializedName: "compatibilityLevel", + sourceServerVersion: { + serializedName: "sourceServerVersion", + readOnly: true, type: { name: "String" } }, - collation: { - serializedName: "collation", + sourceServer: { + serializedName: "sourceServer", + readOnly: true, type: { name: "String" } }, - serverName: { - serializedName: "serverName", + targetServerVersion: { + serializedName: "targetServerVersion", + readOnly: true, type: { name: "String" } }, - fqdn: { - serializedName: "fqdn", + targetServer: { + serializedName: "targetServer", + readOnly: true, type: { name: "String" } - }, - installId: { - serializedName: "installId", + } + } + } +}; + +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", + type: { + name: "Composite", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, + modelProperties: { + ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", + readOnly: true, type: { name: "String" } }, - serverVersion: { - serializedName: "serverVersion", + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - serverEdition: { - serializedName: "serverEdition", + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - serverLevel: { - serializedName: "serverLevel", + migrationState: { + serializedName: "migrationState", + readOnly: true, type: { name: "String" } }, - serverDefaultDataPath: { - serializedName: "serverDefaultDataPath", + incomingChanges: { + serializedName: "incomingChanges", + readOnly: true, type: { - name: "String" + name: "Number" } }, - serverDefaultLogPath: { - serializedName: "serverDefaultLogPath", + appliedChanges: { + serializedName: "appliedChanges", + readOnly: true, type: { - name: "String" + name: "Number" } }, - serverDefaultBackupPath: { - serializedName: "serverDefaultBackupPath", + cdcInsertCounter: { + serializedName: "cdcInsertCounter", + readOnly: true, type: { - name: "String" + name: "Number" } }, - serverCoreCount: { - serializedName: "serverCoreCount", + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, type: { name: "Number" } }, - serverVisibleOnlineCoreCount: { - serializedName: "serverVisibleOnlineCoreCount", + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", + readOnly: true, type: { name: "Number" } }, - databaseState: { - serializedName: "databaseState", + fullLoadCompletedTables: { + serializedName: "fullLoadCompletedTables", + readOnly: true, type: { - name: "String" + name: "Number" } }, - serverId: { - serializedName: "serverId", + fullLoadLoadingTables: { + serializedName: "fullLoadLoadingTables", + readOnly: true, type: { - name: "String" + name: "Number" } - } - } - } -}; - -export const DatabaseObjectName: msRest.CompositeMapper = { - serializedName: "DatabaseObjectName", - type: { - name: "Composite", - className: "DatabaseObjectName", - modelProperties: { - databaseName: { + }, + fullLoadQueuedTables: { + serializedName: "fullLoadQueuedTables", readOnly: true, - serializedName: "databaseName", type: { - name: "String" + name: "Number" } }, - objectName: { + fullLoadErroredTables: { + serializedName: "fullLoadErroredTables", readOnly: true, - serializedName: "objectName", type: { - name: "String" + name: "Number" } }, - schemaName: { + initializationCompleted: { + serializedName: "initializationCompleted", readOnly: true, - serializedName: "schemaName", type: { - name: "String" + name: "Boolean" } }, - objectType: { - serializedName: "objectType", + latency: { + serializedName: "latency", + readOnly: true, type: { - name: "String" + name: "Number" } } } } }; -export const MigrationTableMetadata: msRest.CompositeMapper = { - serializedName: "MigrationTableMetadata", +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", type: { name: "Composite", - className: "MigrationTableMetadata", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - sourceTableName: { + ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, + tableName: { + serializedName: "tableName", readOnly: true, - serializedName: "sourceTableName", type: { name: "String" } }, - targetTableName: { + databaseName: { + serializedName: "databaseName", readOnly: true, - serializedName: "targetTableName", type: { name: "String" } - } - } - } -}; - -export const DataMigrationProjectMetadata: msRest.CompositeMapper = { - serializedName: "DataMigrationProjectMetadata", - type: { - name: "Composite", - className: "DataMigrationProjectMetadata", - modelProperties: { - sourceServerName: { + }, + cdcInsertCounter: { + serializedName: "cdcInsertCounter", readOnly: true, - serializedName: "sourceServerName", type: { - name: "String" + name: "Number" } }, - sourceServerPort: { + cdcUpdateCounter: { + serializedName: "cdcUpdateCounter", readOnly: true, - serializedName: "sourceServerPort", type: { - name: "String" + name: "Number" } }, - sourceUsername: { + cdcDeleteCounter: { + serializedName: "cdcDeleteCounter", + readOnly: true, + type: { + name: "Number" + } + }, + fullLoadEstFinishTime: { + serializedName: "fullLoadEstFinishTime", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadStartedOn: { + serializedName: "fullLoadStartedOn", + readOnly: true, + type: { + name: "DateTime" + } + }, + fullLoadEndedOn: { + serializedName: "fullLoadEndedOn", readOnly: true, - serializedName: "sourceUsername", type: { - name: "String" + name: "DateTime" } }, - targetServerName: { + fullLoadTotalRows: { + serializedName: "fullLoadTotalRows", readOnly: true, - serializedName: "targetServerName", type: { - name: "String" + name: "Number" } }, - targetUsername: { + state: { + serializedName: "state", readOnly: true, - serializedName: "targetUsername", type: { name: "String" } }, - targetDbName: { + totalChangesApplied: { + serializedName: "totalChangesApplied", readOnly: true, - serializedName: "targetDbName", type: { - name: "String" + name: "Number" } }, - targetUsingWinAuth: { + dataErrorsCounter: { + serializedName: "dataErrorsCounter", readOnly: true, - serializedName: "targetUsingWinAuth", type: { - name: "Boolean" + name: "Number" } }, - selectedMigrationTables: { + lastModifiedTime: { + serializedName: "lastModifiedTime", readOnly: true, - serializedName: "selectedMigrationTables", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MigrationTableMetadata" - } - } + name: "DateTime" } } } } }; -export const GetProjectDetailsNonSqlTaskInput: msRest.CompositeMapper = { - serializedName: "GetProjectDetailsNonSqlTaskInput", +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", type: { name: "Composite", - className: "GetProjectDetailsNonSqlTaskInput", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputError", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - projectName: { - required: true, - serializedName: "projectName", - type: { - name: "String" - } - }, - projectLocation: { - required: true, - serializedName: "projectLocation", + ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, + error: { + serializedName: "error", type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } } }; -export const NonSqlDataMigrationTable: msRest.CompositeMapper = { - serializedName: "NonSqlDataMigrationTable", +export const MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelErrorOutput", type: { name: "Composite", - className: "NonSqlDataMigrationTable", + className: "MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError", + uberParent: "MigrateOracleAzureDbPostgreSqlSyncTaskOutput", + polymorphicDiscriminator: + MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - sourceName: { - serializedName: "sourceName", + ...MigrateOracleAzureDbPostgreSqlSyncTaskOutput.type.modelProperties, + errorMessage: { + serializedName: "errorMessage", type: { name: "String" } + }, + events: { + serializedName: "events", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SyncMigrationDatabaseErrorEvent" + } + } + } } } } }; -export const NonSqlMigrationTaskInput: msRest.CompositeMapper = { - serializedName: "NonSqlMigrationTaskInput", +export const MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel: coreClient.CompositeMapper = { + serializedName: "MigrationLevelOutput", type: { name: "Composite", - className: "NonSqlMigrationTaskInput", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel", + uberParent: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - targetConnectionInfo: { - required: true, - serializedName: "targetConnectionInfo", + ...MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type.modelProperties, + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "Composite", - className: "SqlConnectionInfo" + name: "DateTime" } }, - targetDatabaseName: { - required: true, - serializedName: "targetDatabaseName", + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - projectName: { - required: true, - serializedName: "projectName", + durationInSeconds: { + serializedName: "durationInSeconds", + readOnly: true, type: { - name: "String" + name: "Number" } }, - projectLocation: { - required: true, - serializedName: "projectLocation", + status: { + serializedName: "status", + readOnly: true, type: { name: "String" } }, - selectedTables: { - required: true, - serializedName: "selectedTables", + statusMessage: { + serializedName: "statusMessage", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "NonSqlDataMigrationTable" - } - } + name: "String" } - } - } - } -}; - -export const DataMigrationError: msRest.CompositeMapper = { - serializedName: "DataMigrationError", - type: { - name: "Composite", - className: "DataMigrationError", - modelProperties: { + }, message: { - readOnly: true, serializedName: "message", + readOnly: true, type: { name: "String" } }, - type: { - serializedName: "type", + databases: { + serializedName: "databases", type: { name: "String" } - } - } - } -}; - -export const NonSqlDataMigrationTableResult: msRest.CompositeMapper = { - serializedName: "NonSqlDataMigrationTableResult", - type: { - name: "Composite", - className: "NonSqlDataMigrationTableResult", - modelProperties: { - resultCode: { + }, + databaseSummary: { + serializedName: "databaseSummary", readOnly: true, - serializedName: "resultCode", type: { name: "String" } }, - sourceName: { - readOnly: true, - serializedName: "sourceName", + migrationReportResult: { + serializedName: "migrationReportResult", type: { - name: "String" + name: "Composite", + className: "MigrationReportResult" } }, - targetName: { + sourceServerVersion: { + serializedName: "sourceServerVersion", readOnly: true, - serializedName: "targetName", type: { name: "String" } }, - sourceRowCount: { + sourceServerBrandVersion: { + serializedName: "sourceServerBrandVersion", readOnly: true, - serializedName: "sourceRowCount", type: { - name: "Number" + name: "String" } }, - targetRowCount: { + targetServerVersion: { + serializedName: "targetServerVersion", readOnly: true, - serializedName: "targetRowCount", type: { - name: "Number" + name: "String" } }, - elapsedTimeInMiliseconds: { + targetServerBrandVersion: { + serializedName: "targetServerBrandVersion", readOnly: true, - serializedName: "elapsedTimeInMiliseconds", type: { - name: "Number" + name: "String" } }, - errors: { + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", readOnly: true, - serializedName: "errors", type: { name: "Sequence", element: { type: { name: "Composite", - className: "DataMigrationError" + className: "ReportableException" } } } + }, + lastStorageUpdate: { + serializedName: "lastStorageUpdate", + readOnly: true, + type: { + name: "DateTime" + } } } } }; -export const NonSqlMigrationTaskOutput: msRest.CompositeMapper = { - serializedName: "NonSqlMigrationTaskOutput", +export const MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel: coreClient.CompositeMapper = { + serializedName: "DatabaseLevelOutput", type: { name: "Composite", - className: "NonSqlMigrationTaskOutput", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel", + uberParent: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - id: { + ...MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type.modelProperties, + databaseName: { + serializedName: "databaseName", readOnly: true, - serializedName: "id", type: { name: "String" } }, startedOn: { - readOnly: true, serializedName: "startedOn", + readOnly: true, type: { name: "DateTime" } }, endedOn: { - readOnly: true, serializedName: "endedOn", - type: { - name: "DateTime" - } - }, - status: { - readOnly: true, - serializedName: "status", - type: { - name: "String" - } - }, - dataMigrationTableResults: { - readOnly: true, - serializedName: "dataMigrationTableResults", - type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "NonSqlDataMigrationTableResult" - } - } - } - }, - progressMessage: { readOnly: true, - serializedName: "progressMessage", type: { - name: "String" + name: "DateTime" } }, - sourceServerName: { + state: { + serializedName: "state", readOnly: true, - serializedName: "sourceServerName", type: { name: "String" } }, - targetServerName: { + stage: { + serializedName: "stage", readOnly: true, - serializedName: "targetServerName", - type: { - name: "String" - } - } - } - } -}; - -export const DatabaseFileInput: msRest.CompositeMapper = { - serializedName: "DatabaseFileInput", - type: { - name: "Composite", - className: "DatabaseFileInput", - modelProperties: { - id: { - serializedName: "id", type: { name: "String" } }, - logicalName: { - serializedName: "logicalName", + statusMessage: { + serializedName: "statusMessage", + readOnly: true, type: { name: "String" } }, - physicalFullName: { - serializedName: "physicalFullName", + message: { + serializedName: "message", + readOnly: true, type: { name: "String" } }, - restoreFullName: { - serializedName: "restoreFullName", + numberOfObjects: { + serializedName: "numberOfObjects", + readOnly: true, type: { - name: "String" + name: "Number" } }, - fileType: { - serializedName: "fileType", + numberOfObjectsCompleted: { + serializedName: "numberOfObjectsCompleted", + readOnly: true, type: { - name: "String" + name: "Number" } - } - } - } -}; - -export const MigrateSqlServerSqlServerDatabaseInput: msRest.CompositeMapper = { - serializedName: "MigrateSqlServerSqlServerDatabaseInput", - type: { - name: "Composite", - className: "MigrateSqlServerSqlServerDatabaseInput", - modelProperties: { - name: { - serializedName: "name", + }, + errorCount: { + serializedName: "errorCount", + readOnly: true, type: { - name: "String" + name: "Number" } }, - restoreDatabaseName: { - serializedName: "restoreDatabaseName", + errorPrefix: { + serializedName: "errorPrefix", + readOnly: true, type: { name: "String" } }, - backupAndRestoreFolder: { - serializedName: "backupAndRestoreFolder", + resultPrefix: { + serializedName: "resultPrefix", + readOnly: true, type: { name: "String" } }, - databaseFiles: { - serializedName: "databaseFiles", + exceptionsAndWarnings: { + serializedName: "exceptionsAndWarnings", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "DatabaseFileInput" + className: "ReportableException" } } } - } - } - } -}; - -export const ResourceSkusResult: msRest.CompositeMapper = { - serializedName: "ResourceSkusResult", - type: { - name: "Composite", - className: "ResourceSkusResult", - modelProperties: { - value: { - required: true, - serializedName: "", + }, + lastStorageUpdate: { + serializedName: "lastStorageUpdate", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ResourceSku" - } - } + name: "DateTime" } }, - nextLink: { - serializedName: "nextLink", + objectSummary: { + serializedName: "objectSummary", + readOnly: true, type: { name: "String" } @@ -10854,304 +12796,230 @@ export const ResourceSkusResult: msRest.CompositeMapper = { } }; -export const ServiceSkuList: msRest.CompositeMapper = { - serializedName: "ServiceSkuList", +export const MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel: coreClient.CompositeMapper = { + serializedName: "TableLevelOutput", type: { name: "Composite", - className: "ServiceSkuList", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel", + uberParent: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - value: { - serializedName: "", + ...MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type.modelProperties, + objectName: { + serializedName: "objectName", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AvailableServiceSku" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + startedOn: { + serializedName: "startedOn", + readOnly: true, type: { - name: "String" + name: "DateTime" } - } - } - } -}; - -export const DataMigrationServiceList: msRest.CompositeMapper = { - serializedName: "DataMigrationServiceList", - type: { - name: "Composite", - className: "DataMigrationServiceList", - modelProperties: { - value: { - serializedName: "", + }, + endedOn: { + serializedName: "endedOn", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DataMigrationService" - } - } + name: "DateTime" } }, - nextLink: { - serializedName: "nextLink", + state: { + serializedName: "state", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const TaskList: msRest.CompositeMapper = { - serializedName: "TaskList", - type: { - name: "Composite", - className: "TaskList", - modelProperties: { - value: { - serializedName: "", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ProjectTask" - } - } - } }, - nextLink: { - serializedName: "nextLink", + statusMessage: { + serializedName: "statusMessage", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const ProjectList: msRest.CompositeMapper = { - serializedName: "ProjectList", - type: { - name: "Composite", - className: "ProjectList", - modelProperties: { - value: { - serializedName: "", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Project" - } - } - } }, - nextLink: { - serializedName: "nextLink", + itemsCount: { + serializedName: "itemsCount", + readOnly: true, type: { - name: "String" + name: "Number" } - } - } - } -}; - -export const QuotaList: msRest.CompositeMapper = { - serializedName: "QuotaList", - type: { - name: "Composite", - className: "QuotaList", - modelProperties: { - value: { - serializedName: "", + }, + itemsCompletedCount: { + serializedName: "itemsCompletedCount", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Quota" - } - } + name: "Number" } }, - nextLink: { - serializedName: "nextLink", + errorPrefix: { + serializedName: "errorPrefix", + readOnly: true, type: { name: "String" } - } - } - } -}; - -export const ServiceOperationList: msRest.CompositeMapper = { - serializedName: "ServiceOperationList", - type: { - name: "Composite", - className: "ServiceOperationList", - modelProperties: { - value: { - serializedName: "", + }, + resultPrefix: { + serializedName: "resultPrefix", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ServiceOperation" - } - } + name: "String" } }, - nextLink: { - serializedName: "nextLink", + lastStorageUpdate: { + serializedName: "lastStorageUpdate", + readOnly: true, type: { - name: "String" + name: "DateTime" } } } } }; -export const FileList: msRest.CompositeMapper = { - serializedName: "FileList", +export const MigrateMySqlAzureDbForMySqlOfflineTaskOutputError: coreClient.CompositeMapper = { + serializedName: "ErrorOutput", type: { name: "Composite", - className: "FileList", + className: "MigrateMySqlAzureDbForMySqlOfflineTaskOutputError", + uberParent: "MigrateMySqlAzureDbForMySqlOfflineTaskOutput", + polymorphicDiscriminator: + MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type + .polymorphicDiscriminator, modelProperties: { - value: { - serializedName: "", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ProjectFile" - } - } - } - }, - nextLink: { - serializedName: "nextLink", + ...MigrateMySqlAzureDbForMySqlOfflineTaskOutput.type.modelProperties, + error: { + serializedName: "error", type: { - name: "String" + name: "Composite", + className: "ReportableException" } } } } }; -export const discriminators = { - 'CommandProperties.Migrate.SqlServer.AzureDbSqlMi.Complete' : MigrateMISyncCompleteCommandProperties, - 'CommandProperties.Migrate.Sync.Complete.Database' : MigrateSyncCompleteCommandProperties, - 'CommandProperties' : CommandProperties, - 'MigrateSsisTaskOutput.SsisProjectLevelOutput' : MigrateSsisTaskOutputProjectLevel, - 'MigrateSsisTaskOutput.MigrationLevelOutput' : MigrateSsisTaskOutputMigrationLevel, - 'MigrateSsisTaskOutput' : MigrateSsisTaskOutput, - 'ConnectionInfo.MiSqlConnectionInfo' : MiSqlConnectionInfo, - 'ConnectionInfo.PostgreSqlConnectionInfo' : PostgreSqlConnectionInfo, - 'ConnectionInfo.OracleConnectionInfo' : OracleConnectionInfo, - 'ConnectionInfo.MySqlConnectionInfo' : MySqlConnectionInfo, - 'ConnectionInfo.MongoDbConnectionInfo' : MongoDbConnectionInfo, - 'ConnectionInfo' : ConnectionInfo, - 'ConnectionInfo.SqlConnectionInfo' : SqlConnectionInfo, - 'ProjectTaskProperties.Migrate.Ssis' : MigrateSsisTaskProperties, - 'ProjectTaskProperties.GetTDECertificates.Sql' : GetTdeCertificatesSqlTaskProperties, - 'ProjectTaskProperties.Validate.Oracle.AzureDbPostgreSql.Sync' : ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - 'ProjectTaskProperties.Validate.MongoDb' : ValidateMongoDbTaskProperties, - 'ProjectTaskProperties.ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS' : ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - 'ProjectTaskProperties.ValidateMigrationInput.SqlServer.AzureSqlDbMI' : ValidateMigrationInputSqlServerSqlMITaskProperties, - 'ProjectTaskProperties.ValidateMigrationInput.SqlServer.SqlDb.Sync' : ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput.DatabaseLevelErrorOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput.ErrorOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput.TableLevelOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput.DatabaseLevelOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput.MigrationLevelOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - 'MigrateOracleAzureDbPostgreSqlSyncTaskOutput' : MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - 'ProjectTaskProperties.Migrate.Oracle.AzureDbForPostgreSql.Sync' : MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.DatabaseLevelErrorOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.ErrorOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.TableLevelOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.DatabaseLevelOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.MigrationLevelOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - 'MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - 'ProjectTaskProperties.Migrate.PostgreSql.AzureDbForPostgreSql.Sync' : MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput.DatabaseLevelErrorOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput.ErrorOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput.TableLevelOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput.DatabaseLevelOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput.MigrationLevelOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - 'MigrateMySqlAzureDbForMySqlSyncTaskOutput' : MigrateMySqlAzureDbForMySqlSyncTaskOutput, - 'ProjectTaskProperties.Migrate.MySql.AzureDbForMySql.Sync' : MigrateMySqlAzureDbForMySqlSyncTaskProperties, - 'MigrateSqlServerSqlDbSyncTaskOutput.DatabaseLevelErrorOutput' : MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - 'MigrateSqlServerSqlDbSyncTaskOutput.ErrorOutput' : MigrateSqlServerSqlDbSyncTaskOutputError, - 'MigrateSqlServerSqlDbSyncTaskOutput.TableLevelOutput' : MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - 'MigrateSqlServerSqlDbSyncTaskOutput.DatabaseLevelOutput' : MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - 'MigrateSqlServerSqlDbSyncTaskOutput.MigrationLevelOutput' : MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - 'MigrateSqlServerSqlDbSyncTaskOutput' : MigrateSqlServerSqlDbSyncTaskOutput, - 'ProjectTaskProperties.Migrate.SqlServer.AzureSqlDb.Sync' : MigrateSqlServerSqlDbSyncTaskProperties, - 'MigrateSqlServerSqlDbTaskOutput.ErrorOutput' : MigrateSqlServerSqlDbTaskOutputError, - 'MigrateSqlServerSqlDbTaskOutput.TableLevelOutput' : MigrateSqlServerSqlDbTaskOutputTableLevel, - 'MigrateSqlServerSqlDbTaskOutput.DatabaseLevelOutput' : MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - 'MigrateSqlServerSqlDbTaskOutput.MigrationLevelOutput' : MigrateSqlServerSqlDbTaskOutputMigrationLevel, - 'MigrateSqlServerSqlDbTaskOutput' : MigrateSqlServerSqlDbTaskOutput, - 'ProjectTaskProperties.Migrate.SqlServer.SqlDb' : MigrateSqlServerSqlDbTaskProperties, - 'MigrateSqlServerSqlMISyncTaskOutput.ErrorOutput' : MigrateSqlServerSqlMISyncTaskOutputError, - 'MigrateSqlServerSqlMISyncTaskOutput.DatabaseLevelOutput' : MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - 'MigrateSqlServerSqlMISyncTaskOutput.MigrationLevelOutput' : MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - 'MigrateSqlServerSqlMISyncTaskOutput' : MigrateSqlServerSqlMISyncTaskOutput, - 'ProjectTaskProperties.Migrate.SqlServer.AzureSqlDbMI.Sync.LRS' : MigrateSqlServerSqlMISyncTaskProperties, - 'MigrateSqlServerSqlMITaskOutput.ErrorOutput' : MigrateSqlServerSqlMITaskOutputError, - 'MigrateSqlServerSqlMITaskOutput.LoginLevelOutput' : MigrateSqlServerSqlMITaskOutputLoginLevel, - 'MigrateSqlServerSqlMITaskOutput.AgentJobLevelOutput' : MigrateSqlServerSqlMITaskOutputAgentJobLevel, - 'MigrateSqlServerSqlMITaskOutput.DatabaseLevelOutput' : MigrateSqlServerSqlMITaskOutputDatabaseLevel, - 'MigrateSqlServerSqlMITaskOutput.MigrationLevelOutput' : MigrateSqlServerSqlMITaskOutputMigrationLevel, - 'MigrateSqlServerSqlMITaskOutput' : MigrateSqlServerSqlMITaskOutput, - 'ProjectTaskProperties.Migrate.SqlServer.AzureSqlDbMI' : MigrateSqlServerSqlMITaskProperties, - 'ProjectTaskProperties.Migrate.MongoDb' : MigrateMongoDbTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.AzureDbForMySql' : ConnectToTargetAzureDbForMySqlTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.AzureSqlDbMI.Sync.LRS' : ConnectToTargetSqlMISyncTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.AzureSqlDbMI' : ConnectToTargetSqlMITaskProperties, - 'ProjectTaskProperties.GetUserTablesPostgreSql' : GetUserTablesPostgreSqlTaskProperties, - 'ProjectTaskProperties.GetUserTablesOracle' : GetUserTablesOracleTaskProperties, - 'ProjectTaskProperties.GetUserTables.AzureSqlDb.Sync' : GetUserTablesSqlSyncTaskProperties, - 'ProjectTaskProperties.GetUserTables.Sql' : GetUserTablesSqlTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync' : ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.AzureDbForPostgreSql.Sync' : ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.SqlDb.Sync' : ConnectToTargetSqlSqlDbSyncTaskProperties, - 'ProjectTaskProperties.ConnectToTarget.SqlDb' : ConnectToTargetSqlDbTaskProperties, - 'ProjectTaskProperties.ConnectToSource.Oracle.Sync' : ConnectToSourceOracleSyncTaskProperties, - 'ProjectTaskProperties.ConnectToSource.PostgreSql.Sync' : ConnectToSourcePostgreSqlSyncTaskProperties, - 'ConnectToSourceSqlServerTaskOutput.AgentJobLevelOutput' : ConnectToSourceSqlServerTaskOutputAgentJobLevel, - 'ConnectToSourceSqlServerTaskOutput.LoginLevelOutput' : ConnectToSourceSqlServerTaskOutputLoginLevel, - 'ConnectToSourceSqlServerTaskOutput.DatabaseLevelOutput' : ConnectToSourceSqlServerTaskOutputDatabaseLevel, - 'ConnectToSourceSqlServerTaskOutput.TaskLevelOutput' : ConnectToSourceSqlServerTaskOutputTaskLevel, - 'ConnectToSourceSqlServerTaskOutput' : ConnectToSourceSqlServerTaskOutput, - 'ProjectTaskProperties.ConnectToSource.SqlServer.Sync' : ConnectToSourceSqlServerSyncTaskProperties, - 'ProjectTaskProperties.ConnectToSource.SqlServer' : ConnectToSourceSqlServerTaskProperties, - 'ProjectTaskProperties.Connect.MongoDb' : ConnectToMongoDbTaskProperties, - 'ProjectTaskProperties' : ProjectTaskProperties, - 'ProjectTaskProperties.ConnectToSource.MySql' : ConnectToSourceMySqlTaskProperties, - 'MigrateSchemaSqlServerSqlDbTaskOutput' : MigrateSchemaSqlServerSqlDbTaskOutput, - 'ProjectTaskProperties.MigrateSchemaSqlServerSqlDb' : MigrateSchemaSqlServerSqlDbTaskProperties, - 'MigrateSchemaSqlServerSqlDbTaskOutput.MigrationLevelOutput' : MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - 'MigrateSchemaSqlServerSqlDbTaskOutput.DatabaseLevelOutput' : MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - 'MigrateSchemaSqlServerSqlDbTaskOutput.SchemaErrorOutput' : MigrateSchemaSqlServerSqlDbTaskOutputError, - 'MigrateSchemaSqlServerSqlDbTaskOutput.ErrorOutput' : MigrateSchemaSqlTaskOutputError, - 'CommandProperties.cancel' : MongoDbCancelCommand, - 'CommandProperties.finish' : MongoDbFinishCommand, - 'CommandProperties.restart' : MongoDbRestartCommand, - 'ProjectTaskProperties.Service.Check.OCI' : CheckOCIDriverTaskProperties, - 'ProjectTaskProperties.Service.Upload.OCI' : UploadOCIDriverTaskProperties, - 'ProjectTaskProperties.Service.Install.OCI' : InstallOCIDriverTaskProperties - +export let discriminators = { + DatabaseMigrationProperties: DatabaseMigrationProperties, + ProjectTaskProperties: ProjectTaskProperties, + CommandProperties: CommandProperties, + ConnectionInfo: ConnectionInfo, + ConnectToSourceSqlServerTaskOutput: ConnectToSourceSqlServerTaskOutput, + MigrateSchemaSqlServerSqlDbTaskOutput: MigrateSchemaSqlServerSqlDbTaskOutput, + MigrateMySqlAzureDbForMySqlSyncTaskOutput: MigrateMySqlAzureDbForMySqlSyncTaskOutput, + MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput: MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, + MigrateSqlServerSqlDbSyncTaskOutput: MigrateSqlServerSqlDbSyncTaskOutput, + MigrateSqlServerSqlDbTaskOutput: MigrateSqlServerSqlDbTaskOutput, + MigrateSqlServerSqlMISyncTaskOutput: MigrateSqlServerSqlMISyncTaskOutput, + MigrateSqlServerSqlMITaskOutput: MigrateSqlServerSqlMITaskOutput, + MigrateSsisTaskOutput: MigrateSsisTaskOutput, + MongoDbProgress: MongoDbProgress, + MigrateOracleAzureDbPostgreSqlSyncTaskOutput: MigrateOracleAzureDbPostgreSqlSyncTaskOutput, + MigrateMySqlAzureDbForMySqlOfflineTaskOutput: MigrateMySqlAzureDbForMySqlOfflineTaskOutput, + "DatabaseMigrationProperties.SqlMi": DatabaseMigrationPropertiesSqlMi, + "DatabaseMigrationProperties.SqlVm": DatabaseMigrationPropertiesSqlVm, + "ProjectTaskProperties.MigrateSchemaSqlServerSqlDb": MigrateSchemaSqlServerSqlDbTaskProperties, + "ProjectTaskProperties.Service.Check.OCI": CheckOCIDriverTaskProperties, + "ProjectTaskProperties.Service.Upload.OCI": UploadOCIDriverTaskProperties, + "ProjectTaskProperties.Service.Install.OCI": InstallOCIDriverTaskProperties, + "ProjectTaskProperties.Connect.MongoDb": ConnectToMongoDbTaskProperties, + "ProjectTaskProperties.ConnectToSource.SqlServer": ConnectToSourceSqlServerTaskProperties, + "ProjectTaskProperties.ConnectToSource.SqlServer.Sync": ConnectToSourceSqlServerSyncTaskProperties, + "ProjectTaskProperties.ConnectToSource.PostgreSql.Sync": ConnectToSourcePostgreSqlSyncTaskProperties, + "ProjectTaskProperties.ConnectToSource.MySql": ConnectToSourceMySqlTaskProperties, + "ProjectTaskProperties.ConnectToSource.Oracle.Sync": ConnectToSourceOracleSyncTaskProperties, + "ProjectTaskProperties.ConnectToTarget.SqlDb": ConnectToTargetSqlDbTaskProperties, + "ProjectTaskProperties.ConnectToTarget.SqlDb.Sync": ConnectToTargetSqlDbSyncTaskProperties, + "ProjectTaskProperties.ConnectToTarget.AzureDbForPostgreSql.Sync": ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, + "ProjectTaskProperties.ConnectToTarget.Oracle.AzureDbForPostgreSql.Sync": ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, + "ProjectTaskProperties.GetUserTables.Sql": GetUserTablesSqlTaskProperties, + "ProjectTaskProperties.GetUserTables.AzureSqlDb.Sync": GetUserTablesSqlSyncTaskProperties, + "ProjectTaskProperties.GetUserTablesOracle": GetUserTablesOracleTaskProperties, + "ProjectTaskProperties.GetUserTablesPostgreSql": GetUserTablesPostgreSqlTaskProperties, + "ProjectTaskProperties.GetUserTablesMySql": GetUserTablesMySqlTaskProperties, + "ProjectTaskProperties.ConnectToTarget.AzureSqlDbMI": ConnectToTargetSqlMITaskProperties, + "ProjectTaskProperties.ConnectToTarget.AzureSqlDbMI.Sync.LRS": ConnectToTargetSqlMISyncTaskProperties, + "ProjectTaskProperties.ConnectToTarget.AzureDbForMySql": ConnectToTargetAzureDbForMySqlTaskProperties, + "ProjectTaskProperties.Migrate.MongoDb": MigrateMongoDbTaskProperties, + "ProjectTaskProperties.Migrate.SqlServer.AzureSqlDbMI": MigrateSqlServerSqlMITaskProperties, + "ProjectTaskProperties.Migrate.SqlServer.AzureSqlDbMI.Sync.LRS": MigrateSqlServerSqlMISyncTaskProperties, + "ProjectTaskProperties.Migrate.SqlServer.SqlDb": MigrateSqlServerSqlDbTaskProperties, + "ProjectTaskProperties.Migrate.SqlServer.AzureSqlDb.Sync": MigrateSqlServerSqlDbSyncTaskProperties, + "ProjectTaskProperties.Migrate.MySql.AzureDbForMySql.Sync": MigrateMySqlAzureDbForMySqlSyncTaskProperties, + "ProjectTaskProperties.Migrate.MySql.AzureDbForMySql": MigrateMySqlAzureDbForMySqlOfflineTaskProperties, + "ProjectTaskProperties.Migrate.PostgreSql.AzureDbForPostgreSql.SyncV2": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, + "ProjectTaskProperties.Migrate.Oracle.AzureDbForPostgreSql.Sync": MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, + "ProjectTaskProperties.ValidateMigrationInput.SqlServer.SqlDb.Sync": ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, + "ProjectTaskProperties.ValidateMigrationInput.SqlServer.AzureSqlDbMI": ValidateMigrationInputSqlServerSqlMITaskProperties, + "ProjectTaskProperties.ValidateMigrationInput.SqlServer.AzureSqlDbMI.Sync.LRS": ValidateMigrationInputSqlServerSqlMISyncTaskProperties, + "ProjectTaskProperties.Validate.MongoDb": ValidateMongoDbTaskProperties, + "ProjectTaskProperties.Validate.Oracle.AzureDbPostgreSql.Sync": ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, + "ProjectTaskProperties.GetTDECertificates.Sql": GetTdeCertificatesSqlTaskProperties, + "ProjectTaskProperties.Migrate.Ssis": MigrateSsisTaskProperties, + "CommandProperties.Migrate.Sync.Complete.Database": MigrateSyncCompleteCommandProperties, + "CommandProperties.Migrate.SqlServer.AzureDbSqlMi.Complete": MigrateMISyncCompleteCommandProperties, + "CommandProperties.cancel": MongoDbCancelCommand, + "CommandProperties.finish": MongoDbFinishCommand, + "CommandProperties.restart": MongoDbRestartCommand, + "ConnectionInfo.MongoDbConnectionInfo": MongoDbConnectionInfo, + "ConnectionInfo.SqlConnectionInfo": SqlConnectionInfo, + "ConnectionInfo.MySqlConnectionInfo": MySqlConnectionInfo, + "ConnectionInfo.OracleConnectionInfo": OracleConnectionInfo, + "ConnectionInfo.PostgreSqlConnectionInfo": PostgreSqlConnectionInfo, + "ConnectionInfo.MiSqlConnectionInfo": MiSqlConnectionInfo, + "ConnectToSourceSqlServerTaskOutput.TaskLevelOutput": ConnectToSourceSqlServerTaskOutputTaskLevel, + "ConnectToSourceSqlServerTaskOutput.DatabaseLevelOutput": ConnectToSourceSqlServerTaskOutputDatabaseLevel, + "ConnectToSourceSqlServerTaskOutput.LoginLevelOutput": ConnectToSourceSqlServerTaskOutputLoginLevel, + "ConnectToSourceSqlServerTaskOutput.AgentJobLevelOutput": ConnectToSourceSqlServerTaskOutputAgentJobLevel, + "MigrateSchemaSqlServerSqlDbTaskOutput.MigrationLevelOutput": MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, + "MigrateSchemaSqlServerSqlDbTaskOutput.DatabaseLevelOutput": MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, + "MigrateSchemaSqlServerSqlDbTaskOutput.SchemaErrorOutput": MigrateSchemaSqlServerSqlDbTaskOutputError, + "MigrateSchemaSqlServerSqlDbTaskOutput.ErrorOutput": MigrateSchemaSqlTaskOutputError, + "MigrateMySqlAzureDbForMySqlSyncTaskOutput.MigrationLevelOutput": MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, + "MigrateMySqlAzureDbForMySqlSyncTaskOutput.DatabaseLevelOutput": MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, + "MigrateMySqlAzureDbForMySqlSyncTaskOutput.TableLevelOutput": MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, + "MigrateMySqlAzureDbForMySqlSyncTaskOutput.ErrorOutput": MigrateMySqlAzureDbForMySqlSyncTaskOutputError, + "MigrateMySqlAzureDbForMySqlSyncTaskOutput.DatabaseLevelErrorOutput": MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.MigrationLevelOutput": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.DatabaseLevelOutput": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.TableLevelOutput": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.ErrorOutput": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, + "MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput.DatabaseLevelErrorOutput": MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, + "MigrateSqlServerSqlDbSyncTaskOutput.MigrationLevelOutput": MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, + "MigrateSqlServerSqlDbSyncTaskOutput.DatabaseLevelOutput": MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, + "MigrateSqlServerSqlDbSyncTaskOutput.TableLevelOutput": MigrateSqlServerSqlDbSyncTaskOutputTableLevel, + "MigrateSqlServerSqlDbSyncTaskOutput.ErrorOutput": MigrateSqlServerSqlDbSyncTaskOutputError, + "MigrateSqlServerSqlDbSyncTaskOutput.DatabaseLevelErrorOutput": MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, + "MigrateSqlServerSqlDbTaskOutput.MigrationLevelOutput": MigrateSqlServerSqlDbTaskOutputMigrationLevel, + "MigrateSqlServerSqlDbTaskOutput.DatabaseLevelOutput": MigrateSqlServerSqlDbTaskOutputDatabaseLevel, + "MigrateSqlServerSqlDbTaskOutput.TableLevelOutput": MigrateSqlServerSqlDbTaskOutputTableLevel, + "MigrateSqlServerSqlDbTaskOutput.ErrorOutput": MigrateSqlServerSqlDbTaskOutputError, + "MigrateSqlServerSqlDbTaskOutput.MigrationValidationOutput": MigrateSqlServerSqlDbTaskOutputValidationResult, + "MigrateSqlServerSqlDbTaskOutput.MigrationDatabaseLevelValidationOutput": MigrateSqlServerSqlDbTaskOutputDatabaseLevelValidationResult, + "MigrateSqlServerSqlMISyncTaskOutput.MigrationLevelOutput": MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, + "MigrateSqlServerSqlMISyncTaskOutput.DatabaseLevelOutput": MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, + "MigrateSqlServerSqlMISyncTaskOutput.ErrorOutput": MigrateSqlServerSqlMISyncTaskOutputError, + "MigrateSqlServerSqlMITaskOutput.MigrationLevelOutput": MigrateSqlServerSqlMITaskOutputMigrationLevel, + "MigrateSqlServerSqlMITaskOutput.DatabaseLevelOutput": MigrateSqlServerSqlMITaskOutputDatabaseLevel, + "MigrateSqlServerSqlMITaskOutput.AgentJobLevelOutput": MigrateSqlServerSqlMITaskOutputAgentJobLevel, + "MigrateSqlServerSqlMITaskOutput.LoginLevelOutput": MigrateSqlServerSqlMITaskOutputLoginLevel, + "MigrateSqlServerSqlMITaskOutput.ErrorOutput": MigrateSqlServerSqlMITaskOutputError, + "MigrateSsisTaskOutput.MigrationLevelOutput": MigrateSsisTaskOutputMigrationLevel, + "MigrateSsisTaskOutput.SsisProjectLevelOutput": MigrateSsisTaskOutputProjectLevel, + "MongoDbProgress.Collection": MongoDbCollectionProgress, + "MongoDbProgress.Database": MongoDbDatabaseProgress, + "MongoDbProgress.Migration": MongoDbMigrationProgress, + "MigrateOracleAzureDbPostgreSqlSyncTaskOutput.MigrationLevelOutput": MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, + "MigrateOracleAzureDbPostgreSqlSyncTaskOutput.DatabaseLevelOutput": MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, + "MigrateOracleAzureDbPostgreSqlSyncTaskOutput.TableLevelOutput": MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, + "MigrateOracleAzureDbPostgreSqlSyncTaskOutput.ErrorOutput": MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, + "MigrateOracleAzureDbPostgreSqlSyncTaskOutput.DatabaseLevelErrorOutput": MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, + "MigrateMySqlAzureDbForMySqlOfflineTaskOutput.MigrationLevelOutput": MigrateMySqlAzureDbForMySqlOfflineTaskOutputMigrationLevel, + "MigrateMySqlAzureDbForMySqlOfflineTaskOutput.DatabaseLevelOutput": MigrateMySqlAzureDbForMySqlOfflineTaskOutputDatabaseLevel, + "MigrateMySqlAzureDbForMySqlOfflineTaskOutput.TableLevelOutput": MigrateMySqlAzureDbForMySqlOfflineTaskOutputTableLevel, + "MigrateMySqlAzureDbForMySqlOfflineTaskOutput.ErrorOutput": MigrateMySqlAzureDbForMySqlOfflineTaskOutputError }; diff --git a/sdk/datamigration/arm-datamigration/src/models/operationsMappers.ts b/sdk/datamigration/arm-datamigration/src/models/operationsMappers.ts deleted file mode 100644 index 3074236f242d..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/operationsMappers.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - ODataError, - ServiceOperation, - ServiceOperationDisplay, - ServiceOperationList -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/parameters.ts b/sdk/datamigration/arm-datamigration/src/models/parameters.ts index 1e3467fb21b5..eab420a209c7 100644 --- a/sdk/datamigration/arm-datamigration/src/models/parameters.ts +++ b/sdk/datamigration/arm-datamigration/src/models/parameters.ts @@ -1,52 +1,101 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; +import { + OperationParameter, + OperationURLParameter, + OperationQueryParameter +} from "@azure/core-client"; +import { + DatabaseMigrationSqlMi as DatabaseMigrationSqlMiMapper, + MigrationOperationInput as MigrationOperationInputMapper, + DatabaseMigrationSqlVm as DatabaseMigrationSqlVmMapper, + SqlMigrationService as SqlMigrationServiceMapper, + SqlMigrationServiceUpdate as SqlMigrationServiceUpdateMapper, + RegenAuthKeys as RegenAuthKeysMapper, + DeleteNode as DeleteNodeMapper, + DataMigrationService as DataMigrationServiceMapper, + NameAvailabilityRequest as NameAvailabilityRequestMapper, + ProjectTask as ProjectTaskMapper, + CommandProperties as CommandPropertiesMapper, + Project as ProjectMapper, + ProjectFile as ProjectFileMapper +} from "../models/mappers"; -export const acceptLanguage: msRest.OperationParameter = { - parameterPath: "acceptLanguage", +export const accept: OperationParameter = { + parameterPath: "accept", mapper: { - serializedName: "accept-language", - defaultValue: 'en-US', + defaultValue: "application/json", + isConstant: true, + serializedName: "Accept", type: { name: "String" } } }; -export const apiVersion: msRest.OperationQueryParameter = { - parameterPath: "apiVersion", + +export const $host: OperationURLParameter = { + parameterPath: "$host", mapper: { + serializedName: "$host", + required: true, + type: { + name: "String" + } + }, + skipEncoding: true +}; + +export const resourceGroupName: OperationURLParameter = { + parameterPath: "resourceGroupName", + mapper: { + serializedName: "resourceGroupName", required: true, - serializedName: "api-version", type: { name: "String" } } }; -export const deleteRunningTasks: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "deleteRunningTasks" - ], + +export const managedInstanceName: OperationURLParameter = { + parameterPath: "managedInstanceName", mapper: { - serializedName: "deleteRunningTasks", + serializedName: "managedInstanceName", + required: true, type: { - name: "Boolean" + name: "String" } } }; -export const expand: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "expand" - ], + +export const targetDbName: OperationURLParameter = { + parameterPath: "targetDbName", + mapper: { + serializedName: "targetDbName", + required: true, + type: { + name: "String" + } + } +}; + +export const migrationOperationId: OperationQueryParameter = { + parameterPath: ["options", "migrationOperationId"], + mapper: { + serializedName: "migrationOperationId", + type: { + name: "Uuid" + } + } +}; + +export const expand: OperationQueryParameter = { + parameterPath: ["options", "expand"], mapper: { serializedName: "$expand", type: { @@ -54,92 +103,177 @@ export const expand: msRest.OperationQueryParameter = { } } }; -export const fileName: msRest.OperationURLParameter = { - parameterPath: "fileName", + +export const subscriptionId: OperationURLParameter = { + parameterPath: "subscriptionId", mapper: { + serializedName: "subscriptionId", required: true, - serializedName: "fileName", type: { name: "String" } } }; -export const groupName: msRest.OperationURLParameter = { - parameterPath: "groupName", + +export const apiVersion: OperationQueryParameter = { + parameterPath: "apiVersion", mapper: { - required: true, - serializedName: "groupName", + defaultValue: "2021-10-30-preview", + isConstant: true, + serializedName: "api-version", type: { name: "String" } } }; -export const location: msRest.OperationURLParameter = { - parameterPath: "location", + +export const contentType: OperationParameter = { + parameterPath: ["options", "contentType"], mapper: { - required: true, - serializedName: "location", + defaultValue: "application/json", + isConstant: true, + serializedName: "Content-Type", type: { name: "String" } } }; -export const nextPageLink: msRest.OperationURLParameter = { - parameterPath: "nextPageLink", + +export const parameters: OperationParameter = { + parameterPath: "parameters", + mapper: DatabaseMigrationSqlMiMapper +}; + +export const parameters1: OperationParameter = { + parameterPath: "parameters", + mapper: MigrationOperationInputMapper +}; + +export const sqlVirtualMachineName: OperationURLParameter = { + parameterPath: "sqlVirtualMachineName", mapper: { + serializedName: "sqlVirtualMachineName", required: true, + type: { + name: "String" + } + } +}; + +export const parameters2: OperationParameter = { + parameterPath: "parameters", + mapper: DatabaseMigrationSqlVmMapper +}; + +export const nextLink: OperationURLParameter = { + parameterPath: "nextLink", + mapper: { serializedName: "nextLink", + required: true, type: { name: "String" } }, skipEncoding: true }; -export const projectName: msRest.OperationURLParameter = { - parameterPath: "projectName", + +export const sqlMigrationServiceName: OperationURLParameter = { + parameterPath: "sqlMigrationServiceName", mapper: { + serializedName: "sqlMigrationServiceName", required: true, - serializedName: "projectName", type: { name: "String" } } }; -export const serviceName: msRest.OperationURLParameter = { - parameterPath: "serviceName", + +export const parameters3: OperationParameter = { + parameterPath: "parameters", + mapper: SqlMigrationServiceMapper +}; + +export const parameters4: OperationParameter = { + parameterPath: "parameters", + mapper: SqlMigrationServiceUpdateMapper +}; + +export const parameters5: OperationParameter = { + parameterPath: "parameters", + mapper: RegenAuthKeysMapper +}; + +export const parameters6: OperationParameter = { + parameterPath: "parameters", + mapper: DeleteNodeMapper +}; + +export const parameters7: OperationParameter = { + parameterPath: "parameters", + mapper: DataMigrationServiceMapper +}; + +export const groupName: OperationURLParameter = { + parameterPath: "groupName", mapper: { + serializedName: "groupName", required: true, + type: { + name: "String" + } + } +}; + +export const serviceName: OperationURLParameter = { + parameterPath: "serviceName", + mapper: { serializedName: "serviceName", + required: true, type: { name: "String" } } }; -export const subscriptionId: msRest.OperationURLParameter = { - parameterPath: "subscriptionId", + +export const deleteRunningTasks: OperationQueryParameter = { + parameterPath: ["options", "deleteRunningTasks"], mapper: { + serializedName: "deleteRunningTasks", + type: { + name: "Boolean" + } + } +}; + +export const parameters8: OperationParameter = { + parameterPath: "parameters", + mapper: NameAvailabilityRequestMapper +}; + +export const location: OperationURLParameter = { + parameterPath: "location", + mapper: { + serializedName: "location", required: true, - serializedName: "subscriptionId", type: { name: "String" } } }; -export const taskName: msRest.OperationURLParameter = { - parameterPath: "taskName", + +export const projectName: OperationURLParameter = { + parameterPath: "projectName", mapper: { + serializedName: "projectName", required: true, - serializedName: "taskName", type: { name: "String" } } }; -export const taskType: msRest.OperationQueryParameter = { - parameterPath: [ - "options", - "taskType" - ], + +export const taskType: OperationQueryParameter = { + parameterPath: ["options", "taskType"], mapper: { serializedName: "taskType", type: { @@ -147,3 +281,45 @@ export const taskType: msRest.OperationQueryParameter = { } } }; + +export const parameters9: OperationParameter = { + parameterPath: "parameters", + mapper: ProjectTaskMapper +}; + +export const taskName: OperationURLParameter = { + parameterPath: "taskName", + mapper: { + serializedName: "taskName", + required: true, + type: { + name: "String" + } + } +}; + +export const parameters10: OperationParameter = { + parameterPath: "parameters", + mapper: CommandPropertiesMapper +}; + +export const parameters11: OperationParameter = { + parameterPath: "parameters", + mapper: ProjectMapper +}; + +export const fileName: OperationURLParameter = { + parameterPath: "fileName", + mapper: { + serializedName: "fileName", + required: true, + type: { + name: "String" + } + } +}; + +export const parameters12: OperationParameter = { + parameterPath: "parameters", + mapper: ProjectFileMapper +}; diff --git a/sdk/datamigration/arm-datamigration/src/models/projectsMappers.ts b/sdk/datamigration/arm-datamigration/src/models/projectsMappers.ts deleted file mode 100644 index aff2b842cacf..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/projectsMappers.ts +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - AzureActiveDirectoryApp, - BackupFileInfo, - BackupSetInfo, - BaseResource, - BlobShare, - CheckOCIDriverTaskInput, - CheckOCIDriverTaskOutput, - CheckOCIDriverTaskProperties, - CommandProperties, - ConnectionInfo, - ConnectToMongoDbTaskProperties, - ConnectToSourceMySqlTaskInput, - ConnectToSourceMySqlTaskProperties, - ConnectToSourceNonSqlTaskOutput, - ConnectToSourceOracleSyncTaskInput, - ConnectToSourceOracleSyncTaskOutput, - ConnectToSourceOracleSyncTaskProperties, - ConnectToSourcePostgreSqlSyncTaskInput, - ConnectToSourcePostgreSqlSyncTaskOutput, - ConnectToSourcePostgreSqlSyncTaskProperties, - ConnectToSourceSqlServerSyncTaskProperties, - ConnectToSourceSqlServerTaskInput, - ConnectToSourceSqlServerTaskOutput, - ConnectToSourceSqlServerTaskOutputAgentJobLevel, - ConnectToSourceSqlServerTaskOutputDatabaseLevel, - ConnectToSourceSqlServerTaskOutputLoginLevel, - ConnectToSourceSqlServerTaskOutputTaskLevel, - ConnectToSourceSqlServerTaskProperties, - ConnectToTargetAzureDbForMySqlTaskInput, - ConnectToTargetAzureDbForMySqlTaskOutput, - ConnectToTargetAzureDbForMySqlTaskProperties, - ConnectToTargetAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetSqlDbTaskInput, - ConnectToTargetSqlDbTaskOutput, - ConnectToTargetSqlDbTaskProperties, - ConnectToTargetSqlMISyncTaskInput, - ConnectToTargetSqlMISyncTaskOutput, - ConnectToTargetSqlMISyncTaskProperties, - ConnectToTargetSqlMITaskInput, - ConnectToTargetSqlMITaskOutput, - ConnectToTargetSqlMITaskProperties, - ConnectToTargetSqlSqlDbSyncTaskInput, - ConnectToTargetSqlSqlDbSyncTaskProperties, - DatabaseBackupInfo, - DatabaseFileInfo, - DatabaseInfo, - DatabaseSummaryResult, - DatabaseTable, - DataItemMigrationSummaryResult, - DataMigrationService, - FileShare, - GetTdeCertificatesSqlTaskInput, - GetTdeCertificatesSqlTaskOutput, - GetTdeCertificatesSqlTaskProperties, - GetUserTablesOracleTaskInput, - GetUserTablesOracleTaskOutput, - GetUserTablesOracleTaskProperties, - GetUserTablesPostgreSqlTaskInput, - GetUserTablesPostgreSqlTaskOutput, - GetUserTablesPostgreSqlTaskProperties, - GetUserTablesSqlSyncTaskInput, - GetUserTablesSqlSyncTaskOutput, - GetUserTablesSqlSyncTaskProperties, - GetUserTablesSqlTaskInput, - GetUserTablesSqlTaskOutput, - GetUserTablesSqlTaskProperties, - InstallOCIDriverTaskInput, - InstallOCIDriverTaskOutput, - InstallOCIDriverTaskProperties, - MigrateMISyncCompleteCommandInput, - MigrateMISyncCompleteCommandOutput, - MigrateMISyncCompleteCommandProperties, - MigrateMongoDbTaskProperties, - MigrateMySqlAzureDbForMySqlSyncDatabaseInput, - MigrateMySqlAzureDbForMySqlSyncTaskInput, - MigrateMySqlAzureDbForMySqlSyncTaskOutput, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - MigrateMySqlAzureDbForMySqlSyncTaskProperties, - MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - MigrateOracleAzureDbPostgreSqlSyncDatabaseInput, - MigrateOracleAzureDbPostgreSqlSyncTaskInput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - MigrateSchemaSqlServerSqlDbDatabaseInput, - MigrateSchemaSqlServerSqlDbTaskInput, - MigrateSchemaSqlServerSqlDbTaskOutput, - MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSchemaSqlServerSqlDbTaskOutputError, - MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSchemaSqlServerSqlDbTaskProperties, - MigrateSchemaSqlTaskOutputError, - MigrateSqlServerSqlDbDatabaseInput, - MigrateSqlServerSqlDbSyncDatabaseInput, - MigrateSqlServerSqlDbSyncTaskInput, - MigrateSqlServerSqlDbSyncTaskOutput, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbSyncTaskOutputError, - MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - MigrateSqlServerSqlDbSyncTaskProperties, - MigrateSqlServerSqlDbTaskInput, - MigrateSqlServerSqlDbTaskOutput, - MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbTaskOutputError, - MigrateSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSqlServerSqlDbTaskOutputTableLevel, - MigrateSqlServerSqlDbTaskProperties, - MigrateSqlServerSqlMIDatabaseInput, - MigrateSqlServerSqlMISyncTaskInput, - MigrateSqlServerSqlMISyncTaskOutput, - MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlMISyncTaskOutputError, - MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - MigrateSqlServerSqlMISyncTaskProperties, - MigrateSqlServerSqlMITaskInput, - MigrateSqlServerSqlMITaskOutput, - MigrateSqlServerSqlMITaskOutputAgentJobLevel, - MigrateSqlServerSqlMITaskOutputDatabaseLevel, - MigrateSqlServerSqlMITaskOutputError, - MigrateSqlServerSqlMITaskOutputLoginLevel, - MigrateSqlServerSqlMITaskOutputMigrationLevel, - MigrateSqlServerSqlMITaskProperties, - MigrateSsisTaskInput, - MigrateSsisTaskOutput, - MigrateSsisTaskOutputMigrationLevel, - MigrateSsisTaskOutputProjectLevel, - MigrateSsisTaskProperties, - MigrateSyncCompleteCommandInput, - MigrateSyncCompleteCommandOutput, - MigrateSyncCompleteCommandProperties, - MigrationEligibilityInfo, - MigrationReportResult, - MigrationValidationDatabaseSummaryResult, - MigrationValidationOptions, - MigrationValidationResult, - MiSqlConnectionInfo, - MongoDbCancelCommand, - MongoDbClusterInfo, - MongoDbCollectionInfo, - MongoDbCollectionProgress, - MongoDbCollectionSettings, - MongoDbCommandInput, - MongoDbConnectionInfo, - MongoDbDatabaseInfo, - MongoDbDatabaseProgress, - MongoDbDatabaseSettings, - MongoDbError, - MongoDbFinishCommand, - MongoDbFinishCommandInput, - MongoDbMigrationProgress, - MongoDbMigrationSettings, - MongoDbObjectInfo, - MongoDbProgress, - MongoDbRestartCommand, - MongoDbShardKeyField, - MongoDbShardKeyInfo, - MongoDbShardKeySetting, - MongoDbThrottlingSettings, - MySqlConnectionInfo, - ODataError, - OracleConnectionInfo, - OracleOCIDriverInfo, - OrphanedUserInfo, - PostgreSqlConnectionInfo, - Project, - ProjectFile, - ProjectFileProperties, - ProjectList, - ProjectTask, - ProjectTaskProperties, - ReportableException, - Resource, - SchemaMigrationSetting, - SelectedCertificateInput, - ServerProperties, - ServiceSku, - SqlConnectionInfo, - SqlMigrationTaskInput, - SqlServerSqlMISyncTaskInput, - SsisMigrationInfo, - StartMigrationScenarioServerRoleResult, - SyncMigrationDatabaseErrorEvent, - TrackedResource, - UploadOCIDriverTaskInput, - UploadOCIDriverTaskOutput, - UploadOCIDriverTaskProperties, - ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - ValidateMigrationInputSqlServerSqlMISyncTaskInput, - ValidateMigrationInputSqlServerSqlMISyncTaskOutput, - ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - ValidateMigrationInputSqlServerSqlMITaskInput, - ValidateMigrationInputSqlServerSqlMITaskOutput, - ValidateMigrationInputSqlServerSqlMITaskProperties, - ValidateMongoDbTaskProperties, - ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - ValidateOracleAzureDbPostgreSqlSyncTaskOutput, - ValidateSyncMigrationInputSqlServerTaskInput, - ValidateSyncMigrationInputSqlServerTaskOutput -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/resourceSkusMappers.ts b/sdk/datamigration/arm-datamigration/src/models/resourceSkusMappers.ts deleted file mode 100644 index 958464b4952f..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/resourceSkusMappers.ts +++ /dev/null @@ -1,19 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - ODataError, - ResourceSku, - ResourceSkuCapabilities, - ResourceSkuCapacity, - ResourceSkuCosts, - ResourceSkuRestrictions, - ResourceSkusResult -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/serviceTasksMappers.ts b/sdk/datamigration/arm-datamigration/src/models/serviceTasksMappers.ts deleted file mode 100644 index 17dccc4b299d..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/serviceTasksMappers.ts +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - AzureActiveDirectoryApp, - BackupFileInfo, - BackupSetInfo, - BaseResource, - BlobShare, - CheckOCIDriverTaskInput, - CheckOCIDriverTaskOutput, - CheckOCIDriverTaskProperties, - CommandProperties, - ConnectionInfo, - ConnectToMongoDbTaskProperties, - ConnectToSourceMySqlTaskInput, - ConnectToSourceMySqlTaskProperties, - ConnectToSourceNonSqlTaskOutput, - ConnectToSourceOracleSyncTaskInput, - ConnectToSourceOracleSyncTaskOutput, - ConnectToSourceOracleSyncTaskProperties, - ConnectToSourcePostgreSqlSyncTaskInput, - ConnectToSourcePostgreSqlSyncTaskOutput, - ConnectToSourcePostgreSqlSyncTaskProperties, - ConnectToSourceSqlServerSyncTaskProperties, - ConnectToSourceSqlServerTaskInput, - ConnectToSourceSqlServerTaskOutput, - ConnectToSourceSqlServerTaskOutputAgentJobLevel, - ConnectToSourceSqlServerTaskOutputDatabaseLevel, - ConnectToSourceSqlServerTaskOutputLoginLevel, - ConnectToSourceSqlServerTaskOutputTaskLevel, - ConnectToSourceSqlServerTaskProperties, - ConnectToTargetAzureDbForMySqlTaskInput, - ConnectToTargetAzureDbForMySqlTaskOutput, - ConnectToTargetAzureDbForMySqlTaskProperties, - ConnectToTargetAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetSqlDbTaskInput, - ConnectToTargetSqlDbTaskOutput, - ConnectToTargetSqlDbTaskProperties, - ConnectToTargetSqlMISyncTaskInput, - ConnectToTargetSqlMISyncTaskOutput, - ConnectToTargetSqlMISyncTaskProperties, - ConnectToTargetSqlMITaskInput, - ConnectToTargetSqlMITaskOutput, - ConnectToTargetSqlMITaskProperties, - ConnectToTargetSqlSqlDbSyncTaskInput, - ConnectToTargetSqlSqlDbSyncTaskProperties, - DatabaseBackupInfo, - DatabaseFileInfo, - DatabaseInfo, - DatabaseSummaryResult, - DatabaseTable, - DataItemMigrationSummaryResult, - DataMigrationService, - FileShare, - GetTdeCertificatesSqlTaskInput, - GetTdeCertificatesSqlTaskOutput, - GetTdeCertificatesSqlTaskProperties, - GetUserTablesOracleTaskInput, - GetUserTablesOracleTaskOutput, - GetUserTablesOracleTaskProperties, - GetUserTablesPostgreSqlTaskInput, - GetUserTablesPostgreSqlTaskOutput, - GetUserTablesPostgreSqlTaskProperties, - GetUserTablesSqlSyncTaskInput, - GetUserTablesSqlSyncTaskOutput, - GetUserTablesSqlSyncTaskProperties, - GetUserTablesSqlTaskInput, - GetUserTablesSqlTaskOutput, - GetUserTablesSqlTaskProperties, - InstallOCIDriverTaskInput, - InstallOCIDriverTaskOutput, - InstallOCIDriverTaskProperties, - MigrateMISyncCompleteCommandInput, - MigrateMISyncCompleteCommandOutput, - MigrateMISyncCompleteCommandProperties, - MigrateMongoDbTaskProperties, - MigrateMySqlAzureDbForMySqlSyncDatabaseInput, - MigrateMySqlAzureDbForMySqlSyncTaskInput, - MigrateMySqlAzureDbForMySqlSyncTaskOutput, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - MigrateMySqlAzureDbForMySqlSyncTaskProperties, - MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - MigrateOracleAzureDbPostgreSqlSyncDatabaseInput, - MigrateOracleAzureDbPostgreSqlSyncTaskInput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - MigrateSchemaSqlServerSqlDbDatabaseInput, - MigrateSchemaSqlServerSqlDbTaskInput, - MigrateSchemaSqlServerSqlDbTaskOutput, - MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSchemaSqlServerSqlDbTaskOutputError, - MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSchemaSqlServerSqlDbTaskProperties, - MigrateSchemaSqlTaskOutputError, - MigrateSqlServerSqlDbDatabaseInput, - MigrateSqlServerSqlDbSyncDatabaseInput, - MigrateSqlServerSqlDbSyncTaskInput, - MigrateSqlServerSqlDbSyncTaskOutput, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbSyncTaskOutputError, - MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - MigrateSqlServerSqlDbSyncTaskProperties, - MigrateSqlServerSqlDbTaskInput, - MigrateSqlServerSqlDbTaskOutput, - MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbTaskOutputError, - MigrateSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSqlServerSqlDbTaskOutputTableLevel, - MigrateSqlServerSqlDbTaskProperties, - MigrateSqlServerSqlMIDatabaseInput, - MigrateSqlServerSqlMISyncTaskInput, - MigrateSqlServerSqlMISyncTaskOutput, - MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlMISyncTaskOutputError, - MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - MigrateSqlServerSqlMISyncTaskProperties, - MigrateSqlServerSqlMITaskInput, - MigrateSqlServerSqlMITaskOutput, - MigrateSqlServerSqlMITaskOutputAgentJobLevel, - MigrateSqlServerSqlMITaskOutputDatabaseLevel, - MigrateSqlServerSqlMITaskOutputError, - MigrateSqlServerSqlMITaskOutputLoginLevel, - MigrateSqlServerSqlMITaskOutputMigrationLevel, - MigrateSqlServerSqlMITaskProperties, - MigrateSsisTaskInput, - MigrateSsisTaskOutput, - MigrateSsisTaskOutputMigrationLevel, - MigrateSsisTaskOutputProjectLevel, - MigrateSsisTaskProperties, - MigrateSyncCompleteCommandInput, - MigrateSyncCompleteCommandOutput, - MigrateSyncCompleteCommandProperties, - MigrationEligibilityInfo, - MigrationReportResult, - MigrationValidationDatabaseSummaryResult, - MigrationValidationOptions, - MigrationValidationResult, - MiSqlConnectionInfo, - MongoDbCancelCommand, - MongoDbClusterInfo, - MongoDbCollectionInfo, - MongoDbCollectionProgress, - MongoDbCollectionSettings, - MongoDbCommandInput, - MongoDbConnectionInfo, - MongoDbDatabaseInfo, - MongoDbDatabaseProgress, - MongoDbDatabaseSettings, - MongoDbError, - MongoDbFinishCommand, - MongoDbFinishCommandInput, - MongoDbMigrationProgress, - MongoDbMigrationSettings, - MongoDbObjectInfo, - MongoDbProgress, - MongoDbRestartCommand, - MongoDbShardKeyField, - MongoDbShardKeyInfo, - MongoDbShardKeySetting, - MongoDbThrottlingSettings, - MySqlConnectionInfo, - ODataError, - OracleConnectionInfo, - OracleOCIDriverInfo, - OrphanedUserInfo, - PostgreSqlConnectionInfo, - Project, - ProjectFile, - ProjectFileProperties, - ProjectTask, - ProjectTaskProperties, - ReportableException, - Resource, - SchemaMigrationSetting, - SelectedCertificateInput, - ServerProperties, - ServiceSku, - SqlConnectionInfo, - SqlMigrationTaskInput, - SqlServerSqlMISyncTaskInput, - SsisMigrationInfo, - StartMigrationScenarioServerRoleResult, - SyncMigrationDatabaseErrorEvent, - TaskList, - TrackedResource, - UploadOCIDriverTaskInput, - UploadOCIDriverTaskOutput, - UploadOCIDriverTaskProperties, - ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - ValidateMigrationInputSqlServerSqlMISyncTaskInput, - ValidateMigrationInputSqlServerSqlMISyncTaskOutput, - ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - ValidateMigrationInputSqlServerSqlMITaskInput, - ValidateMigrationInputSqlServerSqlMITaskOutput, - ValidateMigrationInputSqlServerSqlMITaskProperties, - ValidateMongoDbTaskProperties, - ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - ValidateOracleAzureDbPostgreSqlSyncTaskOutput, - ValidateSyncMigrationInputSqlServerTaskInput, - ValidateSyncMigrationInputSqlServerTaskOutput -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/servicesMappers.ts b/sdk/datamigration/arm-datamigration/src/models/servicesMappers.ts deleted file mode 100644 index 7d444195a34e..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/servicesMappers.ts +++ /dev/null @@ -1,241 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - AvailableServiceSku, - AvailableServiceSkuCapacity, - AvailableServiceSkuSku, - AzureActiveDirectoryApp, - BackupFileInfo, - BackupSetInfo, - BaseResource, - BlobShare, - CheckOCIDriverTaskInput, - CheckOCIDriverTaskOutput, - CheckOCIDriverTaskProperties, - CommandProperties, - ConnectionInfo, - ConnectToMongoDbTaskProperties, - ConnectToSourceMySqlTaskInput, - ConnectToSourceMySqlTaskProperties, - ConnectToSourceNonSqlTaskOutput, - ConnectToSourceOracleSyncTaskInput, - ConnectToSourceOracleSyncTaskOutput, - ConnectToSourceOracleSyncTaskProperties, - ConnectToSourcePostgreSqlSyncTaskInput, - ConnectToSourcePostgreSqlSyncTaskOutput, - ConnectToSourcePostgreSqlSyncTaskProperties, - ConnectToSourceSqlServerSyncTaskProperties, - ConnectToSourceSqlServerTaskInput, - ConnectToSourceSqlServerTaskOutput, - ConnectToSourceSqlServerTaskOutputAgentJobLevel, - ConnectToSourceSqlServerTaskOutputDatabaseLevel, - ConnectToSourceSqlServerTaskOutputLoginLevel, - ConnectToSourceSqlServerTaskOutputTaskLevel, - ConnectToSourceSqlServerTaskProperties, - ConnectToTargetAzureDbForMySqlTaskInput, - ConnectToTargetAzureDbForMySqlTaskOutput, - ConnectToTargetAzureDbForMySqlTaskProperties, - ConnectToTargetAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetSqlDbTaskInput, - ConnectToTargetSqlDbTaskOutput, - ConnectToTargetSqlDbTaskProperties, - ConnectToTargetSqlMISyncTaskInput, - ConnectToTargetSqlMISyncTaskOutput, - ConnectToTargetSqlMISyncTaskProperties, - ConnectToTargetSqlMITaskInput, - ConnectToTargetSqlMITaskOutput, - ConnectToTargetSqlMITaskProperties, - ConnectToTargetSqlSqlDbSyncTaskInput, - ConnectToTargetSqlSqlDbSyncTaskProperties, - DatabaseBackupInfo, - DatabaseFileInfo, - DatabaseInfo, - DatabaseSummaryResult, - DatabaseTable, - DataItemMigrationSummaryResult, - DataMigrationService, - DataMigrationServiceList, - DataMigrationServiceStatusResponse, - FileShare, - GetTdeCertificatesSqlTaskInput, - GetTdeCertificatesSqlTaskOutput, - GetTdeCertificatesSqlTaskProperties, - GetUserTablesOracleTaskInput, - GetUserTablesOracleTaskOutput, - GetUserTablesOracleTaskProperties, - GetUserTablesPostgreSqlTaskInput, - GetUserTablesPostgreSqlTaskOutput, - GetUserTablesPostgreSqlTaskProperties, - GetUserTablesSqlSyncTaskInput, - GetUserTablesSqlSyncTaskOutput, - GetUserTablesSqlSyncTaskProperties, - GetUserTablesSqlTaskInput, - GetUserTablesSqlTaskOutput, - GetUserTablesSqlTaskProperties, - InstallOCIDriverTaskInput, - InstallOCIDriverTaskOutput, - InstallOCIDriverTaskProperties, - MigrateMISyncCompleteCommandInput, - MigrateMISyncCompleteCommandOutput, - MigrateMISyncCompleteCommandProperties, - MigrateMongoDbTaskProperties, - MigrateMySqlAzureDbForMySqlSyncDatabaseInput, - MigrateMySqlAzureDbForMySqlSyncTaskInput, - MigrateMySqlAzureDbForMySqlSyncTaskOutput, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - MigrateMySqlAzureDbForMySqlSyncTaskProperties, - MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - MigrateOracleAzureDbPostgreSqlSyncDatabaseInput, - MigrateOracleAzureDbPostgreSqlSyncTaskInput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - MigrateSchemaSqlServerSqlDbDatabaseInput, - MigrateSchemaSqlServerSqlDbTaskInput, - MigrateSchemaSqlServerSqlDbTaskOutput, - MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSchemaSqlServerSqlDbTaskOutputError, - MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSchemaSqlServerSqlDbTaskProperties, - MigrateSchemaSqlTaskOutputError, - MigrateSqlServerSqlDbDatabaseInput, - MigrateSqlServerSqlDbSyncDatabaseInput, - MigrateSqlServerSqlDbSyncTaskInput, - MigrateSqlServerSqlDbSyncTaskOutput, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbSyncTaskOutputError, - MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - MigrateSqlServerSqlDbSyncTaskProperties, - MigrateSqlServerSqlDbTaskInput, - MigrateSqlServerSqlDbTaskOutput, - MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbTaskOutputError, - MigrateSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSqlServerSqlDbTaskOutputTableLevel, - MigrateSqlServerSqlDbTaskProperties, - MigrateSqlServerSqlMIDatabaseInput, - MigrateSqlServerSqlMISyncTaskInput, - MigrateSqlServerSqlMISyncTaskOutput, - MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlMISyncTaskOutputError, - MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - MigrateSqlServerSqlMISyncTaskProperties, - MigrateSqlServerSqlMITaskInput, - MigrateSqlServerSqlMITaskOutput, - MigrateSqlServerSqlMITaskOutputAgentJobLevel, - MigrateSqlServerSqlMITaskOutputDatabaseLevel, - MigrateSqlServerSqlMITaskOutputError, - MigrateSqlServerSqlMITaskOutputLoginLevel, - MigrateSqlServerSqlMITaskOutputMigrationLevel, - MigrateSqlServerSqlMITaskProperties, - MigrateSsisTaskInput, - MigrateSsisTaskOutput, - MigrateSsisTaskOutputMigrationLevel, - MigrateSsisTaskOutputProjectLevel, - MigrateSsisTaskProperties, - MigrateSyncCompleteCommandInput, - MigrateSyncCompleteCommandOutput, - MigrateSyncCompleteCommandProperties, - MigrationEligibilityInfo, - MigrationReportResult, - MigrationValidationDatabaseSummaryResult, - MigrationValidationOptions, - MigrationValidationResult, - MiSqlConnectionInfo, - MongoDbCancelCommand, - MongoDbClusterInfo, - MongoDbCollectionInfo, - MongoDbCollectionProgress, - MongoDbCollectionSettings, - MongoDbCommandInput, - MongoDbConnectionInfo, - MongoDbDatabaseInfo, - MongoDbDatabaseProgress, - MongoDbDatabaseSettings, - MongoDbError, - MongoDbFinishCommand, - MongoDbFinishCommandInput, - MongoDbMigrationProgress, - MongoDbMigrationSettings, - MongoDbObjectInfo, - MongoDbProgress, - MongoDbRestartCommand, - MongoDbShardKeyField, - MongoDbShardKeyInfo, - MongoDbShardKeySetting, - MongoDbThrottlingSettings, - MySqlConnectionInfo, - NameAvailabilityRequest, - NameAvailabilityResponse, - ODataError, - OracleConnectionInfo, - OracleOCIDriverInfo, - OrphanedUserInfo, - PostgreSqlConnectionInfo, - Project, - ProjectFile, - ProjectFileProperties, - ProjectTask, - ProjectTaskProperties, - ReportableException, - Resource, - SchemaMigrationSetting, - SelectedCertificateInput, - ServerProperties, - ServiceSku, - ServiceSkuList, - SqlConnectionInfo, - SqlMigrationTaskInput, - SqlServerSqlMISyncTaskInput, - SsisMigrationInfo, - StartMigrationScenarioServerRoleResult, - SyncMigrationDatabaseErrorEvent, - TrackedResource, - UploadOCIDriverTaskInput, - UploadOCIDriverTaskOutput, - UploadOCIDriverTaskProperties, - ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - ValidateMigrationInputSqlServerSqlMISyncTaskInput, - ValidateMigrationInputSqlServerSqlMISyncTaskOutput, - ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - ValidateMigrationInputSqlServerSqlMITaskInput, - ValidateMigrationInputSqlServerSqlMITaskOutput, - ValidateMigrationInputSqlServerSqlMITaskProperties, - ValidateMongoDbTaskProperties, - ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - ValidateOracleAzureDbPostgreSqlSyncTaskOutput, - ValidateSyncMigrationInputSqlServerTaskInput, - ValidateSyncMigrationInputSqlServerTaskOutput -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/tasksMappers.ts b/sdk/datamigration/arm-datamigration/src/models/tasksMappers.ts deleted file mode 100644 index 17dccc4b299d..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/tasksMappers.ts +++ /dev/null @@ -1,234 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - AzureActiveDirectoryApp, - BackupFileInfo, - BackupSetInfo, - BaseResource, - BlobShare, - CheckOCIDriverTaskInput, - CheckOCIDriverTaskOutput, - CheckOCIDriverTaskProperties, - CommandProperties, - ConnectionInfo, - ConnectToMongoDbTaskProperties, - ConnectToSourceMySqlTaskInput, - ConnectToSourceMySqlTaskProperties, - ConnectToSourceNonSqlTaskOutput, - ConnectToSourceOracleSyncTaskInput, - ConnectToSourceOracleSyncTaskOutput, - ConnectToSourceOracleSyncTaskProperties, - ConnectToSourcePostgreSqlSyncTaskInput, - ConnectToSourcePostgreSqlSyncTaskOutput, - ConnectToSourcePostgreSqlSyncTaskProperties, - ConnectToSourceSqlServerSyncTaskProperties, - ConnectToSourceSqlServerTaskInput, - ConnectToSourceSqlServerTaskOutput, - ConnectToSourceSqlServerTaskOutputAgentJobLevel, - ConnectToSourceSqlServerTaskOutputDatabaseLevel, - ConnectToSourceSqlServerTaskOutputLoginLevel, - ConnectToSourceSqlServerTaskOutputTaskLevel, - ConnectToSourceSqlServerTaskProperties, - ConnectToTargetAzureDbForMySqlTaskInput, - ConnectToTargetAzureDbForMySqlTaskOutput, - ConnectToTargetAzureDbForMySqlTaskProperties, - ConnectToTargetAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskInput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutput, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskOutputDatabaseSchemaMapItem, - ConnectToTargetOracleAzureDbForPostgreSqlSyncTaskProperties, - ConnectToTargetSqlDbTaskInput, - ConnectToTargetSqlDbTaskOutput, - ConnectToTargetSqlDbTaskProperties, - ConnectToTargetSqlMISyncTaskInput, - ConnectToTargetSqlMISyncTaskOutput, - ConnectToTargetSqlMISyncTaskProperties, - ConnectToTargetSqlMITaskInput, - ConnectToTargetSqlMITaskOutput, - ConnectToTargetSqlMITaskProperties, - ConnectToTargetSqlSqlDbSyncTaskInput, - ConnectToTargetSqlSqlDbSyncTaskProperties, - DatabaseBackupInfo, - DatabaseFileInfo, - DatabaseInfo, - DatabaseSummaryResult, - DatabaseTable, - DataItemMigrationSummaryResult, - DataMigrationService, - FileShare, - GetTdeCertificatesSqlTaskInput, - GetTdeCertificatesSqlTaskOutput, - GetTdeCertificatesSqlTaskProperties, - GetUserTablesOracleTaskInput, - GetUserTablesOracleTaskOutput, - GetUserTablesOracleTaskProperties, - GetUserTablesPostgreSqlTaskInput, - GetUserTablesPostgreSqlTaskOutput, - GetUserTablesPostgreSqlTaskProperties, - GetUserTablesSqlSyncTaskInput, - GetUserTablesSqlSyncTaskOutput, - GetUserTablesSqlSyncTaskProperties, - GetUserTablesSqlTaskInput, - GetUserTablesSqlTaskOutput, - GetUserTablesSqlTaskProperties, - InstallOCIDriverTaskInput, - InstallOCIDriverTaskOutput, - InstallOCIDriverTaskProperties, - MigrateMISyncCompleteCommandInput, - MigrateMISyncCompleteCommandOutput, - MigrateMISyncCompleteCommandProperties, - MigrateMongoDbTaskProperties, - MigrateMySqlAzureDbForMySqlSyncDatabaseInput, - MigrateMySqlAzureDbForMySqlSyncTaskInput, - MigrateMySqlAzureDbForMySqlSyncTaskOutput, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputDatabaseLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputError, - MigrateMySqlAzureDbForMySqlSyncTaskOutputMigrationLevel, - MigrateMySqlAzureDbForMySqlSyncTaskOutputTableLevel, - MigrateMySqlAzureDbForMySqlSyncTaskProperties, - MigrateOracleAzureDbForPostgreSqlSyncTaskProperties, - MigrateOracleAzureDbPostgreSqlSyncDatabaseInput, - MigrateOracleAzureDbPostgreSqlSyncTaskInput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutput, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputDatabaseLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputError, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputMigrationLevel, - MigrateOracleAzureDbPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncDatabaseInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskInput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutput, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputDatabaseLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputError, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputMigrationLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskOutputTableLevel, - MigratePostgreSqlAzureDbForPostgreSqlSyncTaskProperties, - MigrateSchemaSqlServerSqlDbDatabaseInput, - MigrateSchemaSqlServerSqlDbTaskInput, - MigrateSchemaSqlServerSqlDbTaskOutput, - MigrateSchemaSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSchemaSqlServerSqlDbTaskOutputError, - MigrateSchemaSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSchemaSqlServerSqlDbTaskProperties, - MigrateSchemaSqlTaskOutputError, - MigrateSqlServerSqlDbDatabaseInput, - MigrateSqlServerSqlDbSyncDatabaseInput, - MigrateSqlServerSqlDbSyncTaskInput, - MigrateSqlServerSqlDbSyncTaskOutput, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseError, - MigrateSqlServerSqlDbSyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbSyncTaskOutputError, - MigrateSqlServerSqlDbSyncTaskOutputMigrationLevel, - MigrateSqlServerSqlDbSyncTaskOutputTableLevel, - MigrateSqlServerSqlDbSyncTaskProperties, - MigrateSqlServerSqlDbTaskInput, - MigrateSqlServerSqlDbTaskOutput, - MigrateSqlServerSqlDbTaskOutputDatabaseLevel, - MigrateSqlServerSqlDbTaskOutputError, - MigrateSqlServerSqlDbTaskOutputMigrationLevel, - MigrateSqlServerSqlDbTaskOutputTableLevel, - MigrateSqlServerSqlDbTaskProperties, - MigrateSqlServerSqlMIDatabaseInput, - MigrateSqlServerSqlMISyncTaskInput, - MigrateSqlServerSqlMISyncTaskOutput, - MigrateSqlServerSqlMISyncTaskOutputDatabaseLevel, - MigrateSqlServerSqlMISyncTaskOutputError, - MigrateSqlServerSqlMISyncTaskOutputMigrationLevel, - MigrateSqlServerSqlMISyncTaskProperties, - MigrateSqlServerSqlMITaskInput, - MigrateSqlServerSqlMITaskOutput, - MigrateSqlServerSqlMITaskOutputAgentJobLevel, - MigrateSqlServerSqlMITaskOutputDatabaseLevel, - MigrateSqlServerSqlMITaskOutputError, - MigrateSqlServerSqlMITaskOutputLoginLevel, - MigrateSqlServerSqlMITaskOutputMigrationLevel, - MigrateSqlServerSqlMITaskProperties, - MigrateSsisTaskInput, - MigrateSsisTaskOutput, - MigrateSsisTaskOutputMigrationLevel, - MigrateSsisTaskOutputProjectLevel, - MigrateSsisTaskProperties, - MigrateSyncCompleteCommandInput, - MigrateSyncCompleteCommandOutput, - MigrateSyncCompleteCommandProperties, - MigrationEligibilityInfo, - MigrationReportResult, - MigrationValidationDatabaseSummaryResult, - MigrationValidationOptions, - MigrationValidationResult, - MiSqlConnectionInfo, - MongoDbCancelCommand, - MongoDbClusterInfo, - MongoDbCollectionInfo, - MongoDbCollectionProgress, - MongoDbCollectionSettings, - MongoDbCommandInput, - MongoDbConnectionInfo, - MongoDbDatabaseInfo, - MongoDbDatabaseProgress, - MongoDbDatabaseSettings, - MongoDbError, - MongoDbFinishCommand, - MongoDbFinishCommandInput, - MongoDbMigrationProgress, - MongoDbMigrationSettings, - MongoDbObjectInfo, - MongoDbProgress, - MongoDbRestartCommand, - MongoDbShardKeyField, - MongoDbShardKeyInfo, - MongoDbShardKeySetting, - MongoDbThrottlingSettings, - MySqlConnectionInfo, - ODataError, - OracleConnectionInfo, - OracleOCIDriverInfo, - OrphanedUserInfo, - PostgreSqlConnectionInfo, - Project, - ProjectFile, - ProjectFileProperties, - ProjectTask, - ProjectTaskProperties, - ReportableException, - Resource, - SchemaMigrationSetting, - SelectedCertificateInput, - ServerProperties, - ServiceSku, - SqlConnectionInfo, - SqlMigrationTaskInput, - SqlServerSqlMISyncTaskInput, - SsisMigrationInfo, - StartMigrationScenarioServerRoleResult, - SyncMigrationDatabaseErrorEvent, - TaskList, - TrackedResource, - UploadOCIDriverTaskInput, - UploadOCIDriverTaskOutput, - UploadOCIDriverTaskProperties, - ValidateMigrationInputSqlServerSqlDbSyncTaskProperties, - ValidateMigrationInputSqlServerSqlMISyncTaskInput, - ValidateMigrationInputSqlServerSqlMISyncTaskOutput, - ValidateMigrationInputSqlServerSqlMISyncTaskProperties, - ValidateMigrationInputSqlServerSqlMITaskInput, - ValidateMigrationInputSqlServerSqlMITaskOutput, - ValidateMigrationInputSqlServerSqlMITaskProperties, - ValidateMongoDbTaskProperties, - ValidateOracleAzureDbForPostgreSqlSyncTaskProperties, - ValidateOracleAzureDbPostgreSqlSyncTaskOutput, - ValidateSyncMigrationInputSqlServerTaskInput, - ValidateSyncMigrationInputSqlServerTaskOutput -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/models/usagesMappers.ts b/sdk/datamigration/arm-datamigration/src/models/usagesMappers.ts deleted file mode 100644 index f66421c5bc45..000000000000 --- a/sdk/datamigration/arm-datamigration/src/models/usagesMappers.ts +++ /dev/null @@ -1,16 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -export { - discriminators, - ApiError, - ODataError, - Quota, - QuotaList, - QuotaName -} from "../models/mappers"; diff --git a/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlMi.ts b/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlMi.ts new file mode 100644 index 000000000000..d5f565833cfa --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlMi.ts @@ -0,0 +1,453 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { DatabaseMigrationsSqlMi } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + DatabaseMigrationsSqlMiGetOptionalParams, + DatabaseMigrationsSqlMiGetResponse, + DatabaseMigrationSqlMi, + DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams, + DatabaseMigrationsSqlMiCreateOrUpdateResponse, + MigrationOperationInput, + DatabaseMigrationsSqlMiCancelOptionalParams, + DatabaseMigrationsSqlMiCutoverOptionalParams +} from "../models"; + +/** Class containing DatabaseMigrationsSqlMi operations. */ +export class DatabaseMigrationsSqlMiImpl implements DatabaseMigrationsSqlMi { + private readonly client: DataMigrationManagementClient; + + /** + * Initialize a new instance of the class DatabaseMigrationsSqlMi class. + * @param client Reference to the service client + */ + constructor(client: DataMigrationManagementClient) { + this.client = client; + } + + /** + * Retrieve the Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + options?: DatabaseMigrationsSqlMiGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, managedInstanceName, targetDbName, options }, + getOperationSpec + ); + } + + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlMi, + options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + DatabaseMigrationsSqlMiCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlMi, + options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Stop migrations in progress for the database + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cancel will be initiated. + * @param options The options parameters. + */ + async beginCancel( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCancelOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + }, + cancelOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Stop migrations in progress for the database + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cancel will be initiated. + * @param options The options parameters. + */ + async beginCancelAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCancelOptionalParams + ): Promise { + const poller = await this.beginCancel( + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Initiate cutover for online migration in progress for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cutover will be initiated. + * @param options The options parameters. + */ + async beginCutover( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCutoverOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + }, + cutoverOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Initiate cutover for online migration in progress for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cutover will be initiated. + * @param options The options parameters. + */ + async beginCutoverAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCutoverOptionalParams + ): Promise { + const poller = await this.beginCutover( + resourceGroupName, + managedInstanceName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationSqlMi + }, + default: {} + }, + queryParameters: [ + Parameters.migrationOperationId, + Parameters.expand, + Parameters.apiVersion + ], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.managedInstanceName, + Parameters.targetDbName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationSqlMi + }, + 201: { + bodyMapper: Mappers.DatabaseMigrationSqlMi + }, + 202: { + bodyMapper: Mappers.DatabaseMigrationSqlMi + }, + 204: { + bodyMapper: Mappers.DatabaseMigrationSqlMi + }, + default: {} + }, + requestBody: Parameters.parameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.managedInstanceName, + Parameters.targetDbName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const cancelOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}/cancel", + httpMethod: "POST", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.managedInstanceName, + Parameters.targetDbName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.contentType], + mediaType: "json", + serializer +}; +const cutoverOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}/cutover", + httpMethod: "POST", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.managedInstanceName, + Parameters.targetDbName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.contentType], + mediaType: "json", + serializer +}; diff --git a/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlVm.ts b/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlVm.ts new file mode 100644 index 000000000000..81c15452c31d --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operations/databaseMigrationsSqlVm.ts @@ -0,0 +1,453 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { DatabaseMigrationsSqlVm } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + DatabaseMigrationsSqlVmGetOptionalParams, + DatabaseMigrationsSqlVmGetResponse, + DatabaseMigrationSqlVm, + DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams, + DatabaseMigrationsSqlVmCreateOrUpdateResponse, + MigrationOperationInput, + DatabaseMigrationsSqlVmCancelOptionalParams, + DatabaseMigrationsSqlVmCutoverOptionalParams +} from "../models"; + +/** Class containing DatabaseMigrationsSqlVm operations. */ +export class DatabaseMigrationsSqlVmImpl implements DatabaseMigrationsSqlVm { + private readonly client: DataMigrationManagementClient; + + /** + * Initialize a new instance of the class DatabaseMigrationsSqlVm class. + * @param client Reference to the service client + */ + constructor(client: DataMigrationManagementClient) { + this.client = client; + } + + /** + * Retrieve the Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + options?: DatabaseMigrationsSqlVmGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlVirtualMachineName, targetDbName, options }, + getOperationSpec + ); + } + + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlVm, + options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + DatabaseMigrationsSqlVmCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlVm, + options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Stop ongoing migration for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + async beginCancel( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCancelOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + }, + cancelOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Stop ongoing migration for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + async beginCancelAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCancelOptionalParams + ): Promise { + const poller = await this.beginCancel( + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Cutover online migration operation for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + async beginCutover( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCutoverOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + }, + cutoverOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Cutover online migration operation for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + async beginCutoverAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCutoverOptionalParams + ): Promise { + const poller = await this.beginCutover( + resourceGroupName, + sqlVirtualMachineName, + targetDbName, + parameters, + options + ); + return poller.pollUntilDone(); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationSqlVm + }, + default: {} + }, + queryParameters: [ + Parameters.migrationOperationId, + Parameters.expand, + Parameters.apiVersion + ], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.targetDbName, + Parameters.subscriptionId, + Parameters.sqlVirtualMachineName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationSqlVm + }, + 201: { + bodyMapper: Mappers.DatabaseMigrationSqlVm + }, + 202: { + bodyMapper: Mappers.DatabaseMigrationSqlVm + }, + 204: { + bodyMapper: Mappers.DatabaseMigrationSqlVm + }, + default: {} + }, + requestBody: Parameters.parameters2, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.targetDbName, + Parameters.subscriptionId, + Parameters.sqlVirtualMachineName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const cancelOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}/cancel", + httpMethod: "POST", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.targetDbName, + Parameters.subscriptionId, + Parameters.sqlVirtualMachineName + ], + headerParameters: [Parameters.contentType], + mediaType: "json", + serializer +}; +const cutoverOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.SqlVirtualMachine/sqlVirtualMachines/{sqlVirtualMachineName}/providers/Microsoft.DataMigration/databaseMigrations/{targetDbName}/cutover", + httpMethod: "POST", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.targetDbName, + Parameters.subscriptionId, + Parameters.sqlVirtualMachineName + ], + headerParameters: [Parameters.contentType], + mediaType: "json", + serializer +}; diff --git a/sdk/datamigration/arm-datamigration/src/operations/files.ts b/sdk/datamigration/arm-datamigration/src/operations/files.ts index 14df112b639c..bae6ac2eb714 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/files.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/files.ts @@ -1,373 +1,305 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/filesMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Files } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + ProjectFile, + FilesListNextOptionalParams, + FilesListOptionalParams, + FilesListResponse, + FilesGetOptionalParams, + FilesGetResponse, + FilesCreateOrUpdateOptionalParams, + FilesCreateOrUpdateResponse, + FilesDeleteOptionalParams, + FilesUpdateOptionalParams, + FilesUpdateResponse, + FilesReadOptionalParams, + FilesReadResponse, + FilesReadWriteOptionalParams, + FilesReadWriteResponse, + FilesListNextResponse +} from "../models"; -/** Class representing a Files. */ -export class Files { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Files operations. */ +export class FilesImpl implements Files { + private readonly client: DataMigrationManagementClient; /** - * Create a Files. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Files class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** * The project resource is a nested resource representing a stored migration project. This method * returns a list of files owned by a project resource. - * @summary Get files in a project * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param callback The callback - */ - list(groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback - */ - list(groupName: string, serviceName: string, projectName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + public list( + groupName: string, + serviceName: string, + projectName: string, + options?: FilesListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll( + groupName, + serviceName, + projectName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage( + groupName, + serviceName, + projectName, + options + ); + } + }; + } + + private async *listPagingPage( + groupName: string, + serviceName: string, + projectName: string, + options?: FilesListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(groupName, serviceName, projectName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( groupName, serviceName, projectName, + continuationToken, options - }, - listOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + groupName: string, + serviceName: string, + projectName: string, + options?: FilesListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + groupName, + serviceName, + projectName, + options + )) { + yield* page; + } } /** - * The files resource is a nested, proxy-only resource representing a file stored under the project - * resource. This method retrieves information about a file. - * @summary Get file information - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise - */ - get(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** + * The project resource is a nested resource representing a stored migration project. This method + * returns a list of files owned by a project resource. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param fileName Name of the File - * @param callback The callback + * @param options The options parameters. */ - get(groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; + private _list( + groupName: string, + serviceName: string, + projectName: string, + options?: FilesListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, projectName, options }, + listOperationSpec + ); + } + /** + * The files resource is a nested, proxy-only resource representing a file stored under the project + * resource. This method retrieves information about a file. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - get(groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - fileName, - options - }, - getOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, fileName, options }, + getOperationSpec + ); } /** * The PUT method creates a new file or updates an existing one. - * @summary Create a file resource - * @param parameters Information about the file * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise - */ - createOrUpdate(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** * @param parameters Information about the file - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param callback The callback - */ - createOrUpdate(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; - /** - * @param parameters Information about the file - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - createOrUpdate(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + parameters: ProjectFile, + options?: FilesCreateOrUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - fileName, - options - }, - createOrUpdateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, fileName, parameters, options }, + createOrUpdateOperationSpec + ); } /** * This method deletes a file. - * @summary Delete file - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param callback The callback + * @param options The options parameters. */ - deleteMethod(groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - deleteMethod(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + delete( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesDeleteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - fileName, - options - }, - deleteMethodOperationSpec, - callback); + { groupName, serviceName, projectName, fileName, options }, + deleteOperationSpec + ); } /** * This method updates an existing file. - * @summary Update a file - * @param parameters Information about the file - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise - */ - update(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param parameters Information about the file * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param callback The callback - */ - update(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; - /** * @param parameters Information about the file - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - update(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - update(parameters: Models.ProjectFile, groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + parameters: ProjectFile, + options?: FilesUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - fileName, - options - }, - updateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, fileName, parameters, options }, + updateOperationSpec + ); } /** * This method is used for requesting storage information using which contents of the file can be * downloaded. - * @summary Request storage information for downloading the file content - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise - */ - read(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param callback The callback + * @param options The options parameters. */ - read(groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback - */ - read(groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - read(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + read( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesReadOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - fileName, - options - }, - readOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, fileName, options }, + readOperationSpec + ); } /** * This method is used for requesting information for reading and writing the file content. - * @summary Request information for reading and writing file content. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param fileName Name of the File - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - readWrite(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param callback The callback - */ - readWrite(groupName: string, serviceName: string, projectName: string, fileName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param fileName Name of the File - * @param options The optional parameters - * @param callback The callback - */ - readWrite(groupName: string, serviceName: string, projectName: string, fileName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - readWrite(groupName: string, serviceName: string, projectName: string, fileName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + readWrite( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesReadWriteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - fileName, - options - }, - readWriteOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, fileName, options }, + readWriteOperationSpec + ); } /** - * The project resource is a nested resource representing a stored migration project. This method - * returns a list of files owned by a project resource. - * @summary Get files in a project - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + groupName: string, + serviceName: string, + projectName: string, + nextLink: string, + options?: FilesListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName, - Parameters.projectName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.FileList @@ -376,25 +308,21 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, - Parameters.projectName, - Parameters.fileName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.projectName ], + headerParameters: [Parameters.accept], + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ProjectFile @@ -403,32 +331,22 @@ const getOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const createOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.fileName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectFile, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.ProjectFile @@ -440,25 +358,24 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const deleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + requestBody: Parameters.parameters12, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.fileName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + httpMethod: "DELETE", responses: { 200: {}, 204: {}, @@ -466,32 +383,22 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const updateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.fileName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectFile, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}", + httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.ProjectFile @@ -500,25 +407,24 @@ const updateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const readOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/read", + requestBody: Parameters.parameters12, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.fileName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const readOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/read", + httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.FileStorageInfo @@ -527,25 +433,22 @@ const readOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const readWriteOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/readwrite", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.fileName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const readWriteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/files/{fileName}/readwrite", + httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.FileStorageInfo @@ -554,19 +457,21 @@ const readWriteOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.groupName, + Parameters.serviceName, + Parameters.projectName, + Parameters.fileName + ], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.FileList @@ -575,5 +480,15 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName, + Parameters.serviceName, + Parameters.projectName + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/index.ts b/sdk/datamigration/arm-datamigration/src/operations/index.ts index 2ffe1518b219..cfb4920408d2 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/index.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/index.ts @@ -1,18 +1,19 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +export * from "./databaseMigrationsSqlMi"; +export * from "./databaseMigrationsSqlVm"; +export * from "./operations"; +export * from "./sqlMigrationServices"; export * from "./resourceSkus"; export * from "./services"; export * from "./tasks"; export * from "./serviceTasks"; export * from "./projects"; export * from "./usages"; -export * from "./operations"; export * from "./files"; diff --git a/sdk/datamigration/arm-datamigration/src/operations/operations.ts b/sdk/datamigration/arm-datamigration/src/operations/operations.ts index 66ba9b562856..f730005e6665 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/operations.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/operations.ts @@ -1,125 +1,133 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/operationsMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Operations } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + OperationsDefinition, + OperationsListNextOptionalParams, + OperationsListOptionalParams, + OperationsListResponse, + OperationsListNextResponse +} from "../models"; -/** Class representing a Operations. */ -export class Operations { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Operations operations. */ +export class OperationsImpl implements Operations { + private readonly client: DataMigrationManagementClient; /** - * Create a Operations. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Operations class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** - * Lists all available actions exposed by the Database Migration Service resource provider. - * @summary Get available resource provider actions (operations) - * @param [options] The optional parameters - * @returns Promise + * Lists all of the available SQL Migration REST API operations. + * @param options The options parameters. */ - list(options?: msRest.RequestOptionsBase): Promise; - /** - * @param callback The callback - */ - list(callback: msRest.ServiceCallback): void; - /** - * @param options The optional parameters - * @param callback The callback - */ - list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - options + public list( + options?: OperationsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; }, - listOperationSpec, - callback) as Promise; + byPage: () => { + return this.listPagingPage(options); + } + }; + } + + private async *listPagingPage( + options?: OperationsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + options?: OperationsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage(options)) { + yield* page; + } } /** - * Lists all available actions exposed by the Database Migration Service resource provider. - * @summary Get available resource provider actions (operations) - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback + * Lists all of the available SQL Migration REST API operations. + * @param options The options parameters. */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + private _list( + options?: OperationsListOptionalParams + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); + } + /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + nextLink: string, + options?: OperationsListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: "/providers/Microsoft.DataMigration/operations", httpMethod: "GET", - path: "providers/Microsoft.DataMigration/operations", - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { - bodyMapper: Mappers.ServiceOperationList + bodyMapper: Mappers.OperationListResult }, - default: { - bodyMapper: Mappers.ApiError - } + default: {} }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.ServiceOperationList + bodyMapper: Mappers.OperationListResult }, - default: { - bodyMapper: Mappers.ApiError - } + default: {} }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.nextLink], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/projects.ts b/sdk/datamigration/arm-datamigration/src/operations/projects.ts index e4ea787a0759..685957f88723 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/projects.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/projects.ts @@ -1,272 +1,233 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/projectsMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Projects } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + Project, + ProjectsListNextOptionalParams, + ProjectsListOptionalParams, + ProjectsListResponse, + ProjectsCreateOrUpdateOptionalParams, + ProjectsCreateOrUpdateResponse, + ProjectsGetOptionalParams, + ProjectsGetResponse, + ProjectsDeleteOptionalParams, + ProjectsUpdateOptionalParams, + ProjectsUpdateResponse, + ProjectsListNextResponse +} from "../models"; -/** Class representing a Projects. */ -export class Projects { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Projects operations. */ +export class ProjectsImpl implements Projects { + private readonly client: DataMigrationManagementClient; /** - * Create a Projects. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Projects class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** * The project resource is a nested resource representing a stored migration project. This method * returns a list of projects owned by a service resource. - * @summary Get projects in a service * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param callback The callback - */ - list(groupName: string, serviceName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param options The optional parameters - * @param callback The callback - */ - list(groupName: string, serviceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + public list( + groupName: string, + serviceName: string, + options?: ProjectsListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(groupName, serviceName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(groupName, serviceName, options); + } + }; + } + + private async *listPagingPage( + groupName: string, + serviceName: string, + options?: ProjectsListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(groupName, serviceName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( groupName, serviceName, + continuationToken, options - }, - listOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + groupName: string, + serviceName: string, + options?: ProjectsListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + groupName, + serviceName, + options + )) { + yield* page; + } } /** - * The project resource is a nested resource representing a stored migration project. The PUT - * method creates a new project or updates an existing one. - * @summary Create or update project - * @param parameters Information about the project + * The project resource is a nested resource representing a stored migration project. This method + * returns a list of projects owned by a service resource. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - createOrUpdate(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase): Promise; + private _list( + groupName: string, + serviceName: string, + options?: ProjectsListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, options }, + listOperationSpec + ); + } + /** - * @param parameters Information about the project + * The project resource is a nested resource representing a stored migration project. The PUT method + * creates a new project or updates an existing one. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param callback The callback - */ - createOrUpdate(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** * @param parameters Information about the project - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - createOrUpdate(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + parameters: Project, + options?: ProjectsCreateOrUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - options - }, - createOrUpdateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, parameters, options }, + createOrUpdateOperationSpec + ); } /** - * The project resource is a nested resource representing a stored migration project. The GET - * method retrieves information about a project. - * @summary Get project information - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise - */ - get(groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase): Promise; - /** + * The project resource is a nested resource representing a stored migration project. The GET method + * retrieves information about a project. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param callback The callback + * @param options The options parameters. */ - get(groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback - */ - get(groupName: string, serviceName: string, projectName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + groupName: string, + serviceName: string, + projectName: string, + options?: ProjectsGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - options - }, - getOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, options }, + getOperationSpec + ); } /** - * The project resource is a nested resource representing a stored migration project. The DELETE - * method deletes a project. - * @summary Delete project - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, options?: Models.ProjectsDeleteMethodOptionalParams): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param callback The callback - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** + * The project resource is a nested resource representing a stored migration project. The DELETE method + * deletes a project. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - deleteMethod(groupName: string, serviceName: string, projectName: string, options: Models.ProjectsDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void; - deleteMethod(groupName: string, serviceName: string, projectName: string, options?: Models.ProjectsDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + delete( + groupName: string, + serviceName: string, + projectName: string, + options?: ProjectsDeleteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - options - }, - deleteMethodOperationSpec, - callback); + { groupName, serviceName, projectName, options }, + deleteOperationSpec + ); } /** - * The project resource is a nested resource representing a stored migration project. The PATCH - * method updates an existing project. - * @summary Update project - * @param parameters Information about the project + * The project resource is a nested resource representing a stored migration project. The PATCH method + * updates an existing project. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise - */ - update(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase): Promise; - /** * @param parameters Information about the project - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param callback The callback + * @param options The options parameters. */ - update(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** - * @param parameters Information about the project - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback - */ - update(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - update(parameters: Models.Project, groupName: string, serviceName: string, projectName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update( + groupName: string, + serviceName: string, + projectName: string, + parameters: Project, + options?: ProjectsUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - options - }, - updateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, parameters, options }, + updateOperationSpec + ); } /** - * The project resource is a nested resource representing a stored migration project. This method - * returns a list of projects owned by a service resource. - * @summary Get projects in a service - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + groupName: string, + serviceName: string, + nextLink: string, + options?: ProjectsListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { groupName, serviceName, nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.ProjectList @@ -275,31 +236,20 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const createOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, - Parameters.serviceName, - Parameters.projectName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.serviceName ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.Project, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.Project @@ -311,24 +261,23 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + requestBody: Parameters.parameters11, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Project @@ -337,25 +286,21 @@ const getOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const deleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName ], - queryParameters: [ - Parameters.deleteRunningTasks, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + httpMethod: "DELETE", responses: { 200: {}, 204: {}, @@ -363,31 +308,21 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const updateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + queryParameters: [Parameters.apiVersion, Parameters.deleteRunningTasks], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.Project, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}", + httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.Project @@ -396,19 +331,22 @@ const updateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + requestBody: Parameters.parameters11, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.groupName, + Parameters.serviceName, + Parameters.projectName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ProjectList @@ -417,5 +355,14 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName, + Parameters.serviceName + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/resourceSkus.ts b/sdk/datamigration/arm-datamigration/src/operations/resourceSkus.ts index 55ef48a49e45..ede32e6cff78 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/resourceSkus.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/resourceSkus.ts @@ -1,100 +1,112 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/resourceSkusMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ResourceSkus } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + ResourceSku, + ResourceSkusListSkusNextOptionalParams, + ResourceSkusListSkusOptionalParams, + ResourceSkusListSkusResponse, + ResourceSkusListSkusNextResponse +} from "../models"; -/** Class representing a ResourceSkus. */ -export class ResourceSkus { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing ResourceSkus operations. */ +export class ResourceSkusImpl implements ResourceSkus { + private readonly client: DataMigrationManagementClient; /** - * Create a ResourceSkus. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class ResourceSkus class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** * The skus action returns the list of SKUs that DMS supports. - * @summary Get supported SKUs - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - listSkus(options?: msRest.RequestOptionsBase): Promise; - /** - * @param callback The callback - */ - listSkus(callback: msRest.ServiceCallback): void; - /** - * @param options The optional parameters - * @param callback The callback - */ - listSkus(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listSkus(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - options + public listSkus( + options?: ResourceSkusListSkusOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listSkusPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; }, - listSkusOperationSpec, - callback) as Promise; + byPage: () => { + return this.listSkusPagingPage(options); + } + }; + } + + private async *listSkusPagingPage( + options?: ResourceSkusListSkusOptionalParams + ): AsyncIterableIterator { + let result = await this._listSkus(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listSkusNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listSkusPagingAll( + options?: ResourceSkusListSkusOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listSkusPagingPage(options)) { + yield* page; + } } /** * The skus action returns the list of SKUs that DMS supports. - * @summary Get supported SKUs - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listSkusNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + private _listSkus( + options?: ResourceSkusListSkusOptionalParams + ): Promise { + return this.client.sendOperationRequest({ options }, listSkusOperationSpec); + } + /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListSkusNext + * @param nextLink The nextLink from the previous successful call to the ListSkus method. + * @param options The options parameters. */ - listSkusNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listSkusNext( + nextLink: string, + options?: ResourceSkusListSkusNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listSkusNextOperationSpec, - callback) as Promise; + { nextLink, options }, + listSkusNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listSkusOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listSkusOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/skus", - urlParameters: [ - Parameters.subscriptionId - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.ResourceSkusResult @@ -103,19 +115,14 @@ const listSkusOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], serializer }; - -const listSkusNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listSkusNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ResourceSkusResult @@ -124,5 +131,12 @@ const listSkusNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/serviceTasks.ts b/sdk/datamigration/arm-datamigration/src/operations/serviceTasks.ts index 562b8fa4dc8a..067456903c73 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/serviceTasks.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/serviceTasks.ts @@ -1,318 +1,259 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/serviceTasksMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ServiceTasks } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + ProjectTask, + ServiceTasksListNextOptionalParams, + ServiceTasksListOptionalParams, + ServiceTasksListResponse, + ServiceTasksCreateOrUpdateOptionalParams, + ServiceTasksCreateOrUpdateResponse, + ServiceTasksGetOptionalParams, + ServiceTasksGetResponse, + ServiceTasksDeleteOptionalParams, + ServiceTasksUpdateOptionalParams, + ServiceTasksUpdateResponse, + ServiceTasksCancelOptionalParams, + ServiceTasksCancelResponse, + ServiceTasksListNextResponse +} from "../models"; -/** Class representing a ServiceTasks. */ -export class ServiceTasks { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing ServiceTasks operations. */ +export class ServiceTasksImpl implements ServiceTasks { + private readonly client: DataMigrationManagementClient; /** - * Create a ServiceTasks. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class ServiceTasks class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service level tasks owned by a service resource. Some tasks may - * have a status of Unknown, which indicates that an error occurred while querying the status of - * that task. - * @summary Get service level tasks for a service + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service level tasks owned by a service resource. Some tasks may have a + * status of Unknown, which indicates that an error occurred while querying the status of that task. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(groupName: string, serviceName: string, options?: Models.ServiceTasksListOptionalParams): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param callback The callback - */ - list(groupName: string, serviceName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param options The optional parameters - * @param callback The callback - */ - list(groupName: string, serviceName: string, options: Models.ServiceTasksListOptionalParams, callback: msRest.ServiceCallback): void; - list(groupName: string, serviceName: string, options?: Models.ServiceTasksListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + public list( + groupName: string, + serviceName: string, + options?: ServiceTasksListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(groupName, serviceName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(groupName, serviceName, options); + } + }; + } + + private async *listPagingPage( + groupName: string, + serviceName: string, + options?: ServiceTasksListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(groupName, serviceName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( groupName, serviceName, + continuationToken, options - }, - listOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + groupName: string, + serviceName: string, + options?: ServiceTasksListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + groupName, + serviceName, + options + )) { + yield* page; + } } /** - * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The PUT method creates a new service task or updates an existing one, although since - * service tasks have no mutable custom properties, there is little reason to update an existing - * one. - * @summary Create or update service task - * @param parameters Information about the task + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service level tasks owned by a service resource. Some tasks may have a + * status of Unknown, which indicates that an error occurred while querying the status of that task. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; + private _list( + groupName: string, + serviceName: string, + options?: ServiceTasksListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, options }, + listOperationSpec + ); + } + /** - * @param parameters Information about the task + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. The PUT method creates a new service task or updates an existing one, although since + * service tasks have no mutable custom properties, there is little reason to update an existing one. * @param groupName Name of the resource group * @param serviceName Name of the service * @param taskName Name of the Task - * @param callback The callback - */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + createOrUpdate( + groupName: string, + serviceName: string, + taskName: string, + parameters: ProjectTask, + options?: ServiceTasksCreateOrUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - taskName, - options - }, - createOrUpdateOperationSpec, - callback) as Promise; + { groupName, serviceName, taskName, parameters, options }, + createOrUpdateOperationSpec + ); } /** * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS * instance. The GET method retrieves information about a service task. - * @summary Get service task information * @param groupName Name of the resource group * @param serviceName Name of the service * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - get(groupName: string, serviceName: string, taskName: string, options?: Models.ServiceTasksGetOptionalParams): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param callback The callback - */ - get(groupName: string, serviceName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback - */ - get(groupName: string, serviceName: string, taskName: string, options: Models.ServiceTasksGetOptionalParams, callback: msRest.ServiceCallback): void; - get(groupName: string, serviceName: string, taskName: string, options?: Models.ServiceTasksGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - taskName, - options - }, - getOperationSpec, - callback) as Promise; + { groupName, serviceName, taskName, options }, + getOperationSpec + ); } /** * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS * instance. The DELETE method deletes a service task, canceling it first if it's running. - * @summary Delete service task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(groupName: string, serviceName: string, taskName: string, options?: Models.ServiceTasksDeleteMethodOptionalParams): Promise; - /** * @param groupName Name of the resource group * @param serviceName Name of the service * @param taskName Name of the Task - * @param callback The callback + * @param options The options parameters. */ - deleteMethod(groupName: string, serviceName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback - */ - deleteMethod(groupName: string, serviceName: string, taskName: string, options: Models.ServiceTasksDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void; - deleteMethod(groupName: string, serviceName: string, taskName: string, options?: Models.ServiceTasksDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + delete( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksDeleteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - taskName, - options - }, - deleteMethodOperationSpec, - callback); + { groupName, serviceName, taskName, options }, + deleteOperationSpec + ); } /** * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The PATCH method updates an existing service task, but since service tasks have no - * mutable custom properties, there is little reason to do so. - * @summary Create or update service task - * @param parameters Information about the task + * instance. The PATCH method updates an existing service task, but since service tasks have no mutable + * custom properties, there is little reason to do so. * @param groupName Name of the resource group * @param serviceName Name of the service * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; - /** * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param callback The callback + * @param options The options parameters. */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** - * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback - */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update( + groupName: string, + serviceName: string, + taskName: string, + parameters: ProjectTask, + options?: ServiceTasksUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - taskName, - options - }, - updateOperationSpec, - callback) as Promise; + { groupName, serviceName, taskName, parameters, options }, + updateOperationSpec + ); } /** * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS * instance. This method cancels a service task if it's currently queued or running. - * @summary Cancel a service task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - cancel(groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param taskName Name of the Task - * @param callback The callback - */ - cancel(groupName: string, serviceName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** * @param groupName Name of the resource group * @param serviceName Name of the service * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - cancel(groupName: string, serviceName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - cancel(groupName: string, serviceName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + cancel( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksCancelOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - taskName, - options - }, - cancelOperationSpec, - callback) as Promise; + { groupName, serviceName, taskName, options }, + cancelOperationSpec + ); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service level tasks owned by a service resource. Some tasks may - * have a status of Unknown, which indicates that an error occurred while querying the status of - * that task. - * @summary Get service level tasks for a service - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + groupName: string, + serviceName: string, + nextLink: string, + options?: ServiceTasksListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { groupName, serviceName, nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName - ], - queryParameters: [ - Parameters.apiVersion, - Parameters.taskType - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.TaskList @@ -321,31 +262,20 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const createOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + queryParameters: [Parameters.apiVersion, Parameters.taskType], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, - Parameters.serviceName, - Parameters.taskName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.serviceName ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectTask, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -357,25 +287,23 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + requestBody: Parameters.parameters9, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.taskName ], - queryParameters: [ - Parameters.expand, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -384,25 +312,21 @@ const getOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const deleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + queryParameters: [Parameters.expand, Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.taskName ], - queryParameters: [ - Parameters.deleteRunningTasks, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + httpMethod: "DELETE", responses: { 200: {}, 204: {}, @@ -410,31 +334,21 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const updateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + queryParameters: [Parameters.apiVersion, Parameters.deleteRunningTasks], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.taskName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectTask, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}", + httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -443,24 +357,23 @@ const updateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const cancelOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}/cancel", + requestBody: Parameters.parameters9, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.taskName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const cancelOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/serviceTasks/{taskName}/cancel", + httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -469,19 +382,20 @@ const cancelOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.groupName, + Parameters.serviceName, + Parameters.taskName + ], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.TaskList @@ -490,5 +404,14 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion, Parameters.taskType], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName, + Parameters.serviceName + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/services.ts b/sdk/datamigration/arm-datamigration/src/operations/services.ts index 2259b48ecb34..3ae4287eb759 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/services.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/services.ts @@ -1,886 +1,1118 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as msRestAzure from "@azure/ms-rest-azure-js"; -import * as Models from "../models"; -import * as Mappers from "../models/servicesMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Services } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + AvailableServiceSku, + ServicesListSkusNextOptionalParams, + ServicesListSkusOptionalParams, + DataMigrationService, + ServicesListByResourceGroupNextOptionalParams, + ServicesListByResourceGroupOptionalParams, + ServicesListNextOptionalParams, + ServicesListOptionalParams, + ServicesCreateOrUpdateOptionalParams, + ServicesCreateOrUpdateResponse, + ServicesGetOptionalParams, + ServicesGetResponse, + ServicesDeleteOptionalParams, + ServicesUpdateOptionalParams, + ServicesUpdateResponse, + ServicesCheckStatusOptionalParams, + ServicesCheckStatusResponse, + ServicesStartOptionalParams, + ServicesStopOptionalParams, + ServicesListSkusResponse, + NameAvailabilityRequest, + ServicesCheckChildrenNameAvailabilityOptionalParams, + ServicesCheckChildrenNameAvailabilityResponse, + ServicesListByResourceGroupResponse, + ServicesListResponse, + ServicesCheckNameAvailabilityOptionalParams, + ServicesCheckNameAvailabilityResponse, + ServicesListSkusNextResponse, + ServicesListByResourceGroupNextResponse, + ServicesListNextResponse +} from "../models"; -/** Class representing a Services. */ -export class Services { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Services operations. */ +export class ServicesImpl implements Services { + private readonly client: DataMigrationManagementClient; /** - * Create a Services. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Services class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The PUT method creates a new service or updates an existing one. When a service is updated, - * existing child resources (i.e. tasks) are unaffected. Services currently support a single kind, - * "vm", which refers to a VM-based service, although other kinds may be added in the future. This - * method can change the kind, SKU, and network of the service, but if tasks are currently running - * (i.e. the service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider - * will reply when successful with 200 OK or 201 Created. Long-running operations use the - * provisioningState property. - * @summary Create or update DMS Instance - * @param parameters Information about the service + * The services resource is the top-level resource that represents the Database Migration Service. The + * skus action returns the list of SKUs that a service resource can be updated to. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - createOrUpdate(parameters: Models.DataMigrationService, groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.beginCreateOrUpdate(parameters,groupName,serviceName,options) - .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + public listSkus( + groupName: string, + serviceName: string, + options?: ServicesListSkusOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listSkusPagingAll(groupName, serviceName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listSkusPagingPage(groupName, serviceName, options); + } + }; } - /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The GET method retrieves information about a service instance. - * @summary Get DMS Service Instance - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise - */ - get(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param callback The callback - */ - get(groupName: string, serviceName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param options The optional parameters - * @param callback The callback - */ - get(groupName: string, serviceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - get(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + private async *listSkusPagingPage( + groupName: string, + serviceName: string, + options?: ServicesListSkusOptionalParams + ): AsyncIterableIterator { + let result = await this._listSkus(groupName, serviceName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listSkusNext( groupName, serviceName, + continuationToken, options - }, - getOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } } - /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The DELETE method deletes a service. Any running tasks will be canceled. - * @summary Delete DMS Service Instance - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(groupName: string, serviceName: string, options?: Models.ServicesDeleteMethodOptionalParams): Promise { - return this.beginDeleteMethod(groupName,serviceName,options) - .then(lroPoller => lroPoller.pollUntilFinished()); + private async *listSkusPagingAll( + groupName: string, + serviceName: string, + options?: ServicesListSkusOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listSkusPagingPage( + groupName, + serviceName, + options + )) { + yield* page; + } } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The PATCH method updates an existing service. This method can change the kind, SKU, and network - * of the service, but if tasks are currently running (i.e. the service is busy), this will fail - * with 400 Bad Request ("ServiceIsBusy"). - * @summary Create or update DMS Service Instance - * @param parameters Information about the service + * The Services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a resource group. * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - update(parameters: Models.DataMigrationService, groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.beginUpdate(parameters,groupName,serviceName,options) - .then(lroPoller => lroPoller.pollUntilFinished()) as Promise; + public listByResourceGroup( + groupName: string, + options?: ServicesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(groupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByResourceGroupPagingPage(groupName, options); + } + }; } - /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This action performs a health check and returns the status of the service and virtual machine - * size. - * @summary Check service health status - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise - */ - checkStatus(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param callback The callback - */ - checkStatus(groupName: string, serviceName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param options The optional parameters - * @param callback The callback - */ - checkStatus(groupName: string, serviceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - checkStatus(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + private async *listByResourceGroupPagingPage( + groupName: string, + options?: ServicesListByResourceGroupOptionalParams + ): AsyncIterableIterator { + let result = await this._listByResourceGroup(groupName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByResourceGroupNext( groupName, - serviceName, + continuationToken, options - }, - checkStatusOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } } - /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This action starts the service and the service can be used for data migration. - * @summary Start service - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise - */ - start(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.beginStart(groupName,serviceName,options) - .then(lroPoller => lroPoller.pollUntilFinished()); + private async *listByResourceGroupPagingAll( + groupName: string, + options?: ServicesListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + groupName, + options + )) { + yield* page; + } } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This action stops the service and the service cannot be used for data migration. The service - * owner won't be billed when the service is stopped. - * @summary Stop service - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a subscription. + * @param options The options parameters. */ - stop(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.beginStop(groupName,serviceName,options) - .then(lroPoller => lroPoller.pollUntilFinished()); + public list( + options?: ServicesListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(options); + } + }; + } + + private async *listPagingPage( + options?: ServicesListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + options?: ServicesListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage(options)) { + yield* page; + } } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The skus action returns the list of SKUs that a service resource can be updated to. - * @summary Get compatible SKUs + * The services resource is the top-level resource that represents the Database Migration Service. The + * PUT method creates a new service or updates an existing one. When a service is updated, existing + * child resources (i.e. tasks) are unaffected. Services currently support a single kind, "vm", which + * refers to a VM-based service, although other kinds may be added in the future. This method can + * change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the + * service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider will reply + * when successful with 200 OK or 201 Created. Long-running operations use the provisioningState + * property. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param parameters Information about the service + * @param options The options parameters. */ - listSkus(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise; + async beginCreateOrUpdate( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ServicesCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { groupName, serviceName, parameters, options }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PUT method creates a new service or updates an existing one. When a service is updated, existing + * child resources (i.e. tasks) are unaffected. Services currently support a single kind, "vm", which + * refers to a VM-based service, although other kinds may be added in the future. This method can + * change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the + * service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider will reply + * when successful with 200 OK or 201 Created. Long-running operations use the provisioningState + * property. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param callback The callback + * @param parameters Information about the service + * @param options The options parameters. */ - listSkus(groupName: string, serviceName: string, callback: msRest.ServiceCallback): void; + async beginCreateOrUpdateAndWait( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + groupName, + serviceName, + parameters, + options + ); + return poller.pollUntilDone(); + } + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * GET method retrieves information about a service instance. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - listSkus(groupName: string, serviceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listSkus(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + groupName: string, + serviceName: string, + options?: ServicesGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - options - }, - listSkusOperationSpec, - callback) as Promise; + { groupName, serviceName, options }, + getOperationSpec + ); } /** - * This method checks whether a proposed nested resource name is valid and available. - * @summary Check nested resource name validity and availability + * The services resource is the top-level resource that represents the Database Migration Service. The + * DELETE method deletes a service. Any running tasks will be canceled. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param parameters Requested name to validate - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - checkChildrenNameAvailability(groupName: string, serviceName: string, parameters: Models.NameAvailabilityRequest, options?: msRest.RequestOptionsBase): Promise; + async beginDelete( + groupName: string, + serviceName: string, + options?: ServicesDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { groupName, serviceName, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * DELETE method deletes a service. Any running tasks will be canceled. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param parameters Requested name to validate - * @param callback The callback + * @param options The options parameters. */ - checkChildrenNameAvailability(groupName: string, serviceName: string, parameters: Models.NameAvailabilityRequest, callback: msRest.ServiceCallback): void; + async beginDeleteAndWait( + groupName: string, + serviceName: string, + options?: ServicesDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete(groupName, serviceName, options); + return poller.pollUntilDone(); + } + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PATCH method updates an existing service. This method can change the kind, SKU, and network of the + * service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad + * Request ("ServiceIsBusy"). * @param groupName Name of the resource group * @param serviceName Name of the service - * @param parameters Requested name to validate - * @param options The optional parameters - * @param callback The callback + * @param parameters Information about the service + * @param options The options parameters. */ - checkChildrenNameAvailability(groupName: string, serviceName: string, parameters: Models.NameAvailabilityRequest, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - checkChildrenNameAvailability(groupName: string, serviceName: string, parameters: Models.NameAvailabilityRequest, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - groupName, - serviceName, - parameters, - options - }, - checkChildrenNameAvailabilityOperationSpec, - callback) as Promise; + async beginUpdate( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ServicesUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { groupName, serviceName, parameters, options }, + updateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); } /** - * The Services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service resources in a resource group. - * @summary Get services in resource group - * @param groupName Name of the resource group - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroup(groupName: string, options?: msRest.RequestOptionsBase): Promise; - /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PATCH method updates an existing service. This method can change the kind, SKU, and network of the + * service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad + * Request ("ServiceIsBusy"). * @param groupName Name of the resource group - * @param callback The callback - */ - listByResourceGroup(groupName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param options The optional parameters - * @param callback The callback + * @param serviceName Name of the service + * @param parameters Information about the service + * @param options The options parameters. */ - listByResourceGroup(groupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroup(groupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - groupName, - options - }, - listByResourceGroupOperationSpec, - callback) as Promise; + async beginUpdateAndWait( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + groupName, + serviceName, + parameters, + options + ); + return poller.pollUntilDone(); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service resources in a subscription. - * @summary Get services in subscription - * @param [options] The optional parameters - * @returns Promise - */ - list(options?: msRest.RequestOptionsBase): Promise; - /** - * @param callback The callback - */ - list(callback: msRest.ServiceCallback): void; - /** - * @param options The optional parameters - * @param callback The callback + * The services resource is the top-level resource that represents the Database Migration Service. This + * action performs a health check and returns the status of the service and virtual machine size. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. */ - list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + checkStatus( + groupName: string, + serviceName: string, + options?: ServicesCheckStatusOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - options - }, - listOperationSpec, - callback) as Promise; + { groupName, serviceName, options }, + checkStatusOperationSpec + ); } /** - * This method checks whether a proposed top-level resource name is valid and available. - * @summary Check name validity and availability - * @param location The Azure region of the operation - * @param parameters Requested name to validate - * @param [options] The optional parameters - * @returns Promise - */ - checkNameAvailability(location: string, parameters: Models.NameAvailabilityRequest, options?: msRest.RequestOptionsBase): Promise; - /** - * @param location The Azure region of the operation - * @param parameters Requested name to validate - * @param callback The callback - */ - checkNameAvailability(location: string, parameters: Models.NameAvailabilityRequest, callback: msRest.ServiceCallback): void; - /** - * @param location The Azure region of the operation - * @param parameters Requested name to validate - * @param options The optional parameters - * @param callback The callback + * The services resource is the top-level resource that represents the Database Migration Service. This + * action starts the service and the service can be used for data migration. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. */ - checkNameAvailability(location: string, parameters: Models.NameAvailabilityRequest, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - checkNameAvailability(location: string, parameters: Models.NameAvailabilityRequest, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - location, - parameters, - options - }, - checkNameAvailabilityOperationSpec, - callback) as Promise; + async beginStart( + groupName: string, + serviceName: string, + options?: ServicesStartOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { groupName, serviceName, options }, + startOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The PUT method creates a new service or updates an existing one. When a service is updated, - * existing child resources (i.e. tasks) are unaffected. Services currently support a single kind, - * "vm", which refers to a VM-based service, although other kinds may be added in the future. This - * method can change the kind, SKU, and network of the service, but if tasks are currently running - * (i.e. the service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider - * will reply when successful with 200 OK or 201 Created. Long-running operations use the - * provisioningState property. - * @summary Create or update DMS Instance - * @param parameters Information about the service + * The services resource is the top-level resource that represents the Database Migration Service. This + * action starts the service and the service can be used for data migration. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - beginCreateOrUpdate(parameters: Models.DataMigrationService, groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.client.sendLRORequest( - { - parameters, - groupName, - serviceName, - options - }, - beginCreateOrUpdateOperationSpec, - options); + async beginStartAndWait( + groupName: string, + serviceName: string, + options?: ServicesStartOptionalParams + ): Promise { + const poller = await this.beginStart(groupName, serviceName, options); + return poller.pollUntilDone(); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The DELETE method deletes a service. Any running tasks will be canceled. - * @summary Delete DMS Service Instance + * The services resource is the top-level resource that represents the Database Migration Service. This + * action stops the service and the service cannot be used for data migration. The service owner won't + * be billed when the service is stopped. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - beginDeleteMethod(groupName: string, serviceName: string, options?: Models.ServicesBeginDeleteMethodOptionalParams): Promise { - return this.client.sendLRORequest( - { - groupName, - serviceName, - options - }, - beginDeleteMethodOperationSpec, - options); + async beginStop( + groupName: string, + serviceName: string, + options?: ServicesStopOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { groupName, serviceName, options }, + stopOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The PATCH method updates an existing service. This method can change the kind, SKU, and network - * of the service, but if tasks are currently running (i.e. the service is busy), this will fail - * with 400 Bad Request ("ServiceIsBusy"). - * @summary Create or update DMS Service Instance - * @param parameters Information about the service + * The services resource is the top-level resource that represents the Database Migration Service. This + * action stops the service and the service cannot be used for data migration. The service owner won't + * be billed when the service is stopped. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - beginUpdate(parameters: Models.DataMigrationService, groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.client.sendLRORequest( - { - parameters, - groupName, - serviceName, - options - }, - beginUpdateOperationSpec, - options); + async beginStopAndWait( + groupName: string, + serviceName: string, + options?: ServicesStopOptionalParams + ): Promise { + const poller = await this.beginStop(groupName, serviceName, options); + return poller.pollUntilDone(); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This action starts the service and the service can be used for data migration. - * @summary Start service + * The services resource is the top-level resource that represents the Database Migration Service. The + * skus action returns the list of SKUs that a service resource can be updated to. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - beginStart(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.client.sendLRORequest( - { - groupName, - serviceName, - options - }, - beginStartOperationSpec, - options); + private _listSkus( + groupName: string, + serviceName: string, + options?: ServicesListSkusOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, options }, + listSkusOperationSpec + ); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This action stops the service and the service cannot be used for data migration. The service - * owner won't be billed when the service is stopped. - * @summary Stop service + * This method checks whether a proposed nested resource name is valid and available. * @param groupName Name of the resource group * @param serviceName Name of the service - * @param [options] The optional parameters - * @returns Promise + * @param parameters Requested name to validate + * @param options The options parameters. */ - beginStop(groupName: string, serviceName: string, options?: msRest.RequestOptionsBase): Promise { - return this.client.sendLRORequest( - { - groupName, - serviceName, - options - }, - beginStopOperationSpec, - options); + checkChildrenNameAvailability( + groupName: string, + serviceName: string, + parameters: NameAvailabilityRequest, + options?: ServicesCheckChildrenNameAvailabilityOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, parameters, options }, + checkChildrenNameAvailabilityOperationSpec + ); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * The skus action returns the list of SKUs that a service resource can be updated to. - * @summary Get compatible SKUs - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listSkusNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * The Services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a resource group. + * @param groupName Name of the resource group + * @param options The options parameters. */ - listSkusNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listSkusNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listByResourceGroup( + groupName: string, + options?: ServicesListByResourceGroupOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listSkusNextOperationSpec, - callback) as Promise; + { groupName, options }, + listByResourceGroupOperationSpec + ); } /** - * The Services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service resources in a resource group. - * @summary Get services in resource group - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a subscription. + * @param options The options parameters. */ - listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + private _list( + options?: ServicesListOptionalParams + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); + } + /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * This method checks whether a proposed top-level resource name is valid and available. + * @param location The Azure region of the operation + * @param parameters Requested name to validate + * @param options The options parameters. */ - listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + checkNameAvailability( + location: string, + parameters: NameAvailabilityRequest, + options?: ServicesCheckNameAvailabilityOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listByResourceGroupNextOperationSpec, - callback) as Promise; + { location, parameters, options }, + checkNameAvailabilityOperationSpec + ); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of service resources in a subscription. - * @summary Get services in subscription - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise + * ListSkusNext + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param nextLink The nextLink from the previous successful call to the ListSkus method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + private _listSkusNext( + groupName: string, + serviceName: string, + nextLink: string, + options?: ServicesListSkusNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, nextLink, options }, + listSkusNextOperationSpec + ); + } + /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback + * ListByResourceGroupNext + * @param groupName Name of the resource group + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + private _listByResourceGroupNext( + groupName: string, + nextLink: string, + options?: ServicesListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } + /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + nextLink: string, + options?: ServicesListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.DataMigrationService }, + 201: { + bodyMapper: Mappers.DataMigrationService + }, + 202: { + bodyMapper: Mappers.DataMigrationService + }, + 204: { + bodyMapper: Mappers.DataMigrationService + }, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const checkStatusOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus", + requestBody: Parameters.parameters7, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DataMigrationServiceStatusResponse + bodyMapper: Mappers.DataMigrationService }, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const listSkusOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + httpMethod: "DELETE", responses: { - 200: { - bodyMapper: Mappers.ServiceSkuList - }, + 200: {}, + 201: {}, + 202: {}, + 204: {}, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const checkChildrenNameAvailabilityOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability", + queryParameters: [Parameters.apiVersion, Parameters.deleteRunningTasks], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.NameAvailabilityRequest, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + httpMethod: "PATCH", responses: { 200: { - bodyMapper: Mappers.NameAvailabilityResponse + bodyMapper: Mappers.DataMigrationService + }, + 201: { + bodyMapper: Mappers.DataMigrationService + }, + 202: { + bodyMapper: Mappers.DataMigrationService + }, + 204: { + bodyMapper: Mappers.DataMigrationService }, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const listByResourceGroupOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services", + requestBody: Parameters.parameters7, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, - Parameters.groupName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.groupName, + Parameters.serviceName ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const checkStatusOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkStatus", + httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.DataMigrationServiceList + bodyMapper: Mappers.DataMigrationServiceStatusResponse }, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const listOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services", + queryParameters: [Parameters.apiVersion], urlParameters: [ - Parameters.subscriptionId - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.$host, + Parameters.subscriptionId, + Parameters.groupName, + Parameters.serviceName ], + headerParameters: [Parameters.accept], + serializer +}; +const startOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start", + httpMethod: "POST", responses: { - 200: { - bodyMapper: Mappers.DataMigrationServiceList - }, + 200: {}, + 201: {}, + 202: {}, + 204: {}, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const checkNameAvailabilityOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, - Parameters.location - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.groupName, + Parameters.serviceName ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.NameAvailabilityRequest, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const stopOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop", + httpMethod: "POST", responses: { - 200: { - bodyMapper: Mappers.NameAvailabilityResponse - }, + 200: {}, + 201: {}, + 202: {}, + 204: {}, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.DataMigrationService, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const listSkusOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/skus", + httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DataMigrationService - }, - 201: { - bodyMapper: Mappers.DataMigrationService + bodyMapper: Mappers.ServiceSkuList }, - 202: {}, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const beginDeleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.deleteRunningTasks, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const checkChildrenNameAvailabilityOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/checkNameAvailability", + httpMethod: "POST", responses: { - 200: {}, - 202: {}, - 204: {}, + 200: { + bodyMapper: Mappers.NameAvailabilityResponse + }, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const beginUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}", + requestBody: Parameters.parameters8, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.DataMigrationService, - required: true - } - }, + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services", + httpMethod: "GET", responses: { 200: { - bodyMapper: Mappers.DataMigrationService + bodyMapper: Mappers.DataMigrationServiceList }, - 202: {}, default: { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const beginStartOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/start", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.groupName ], + headerParameters: [Parameters.accept], + serializer +}; +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/services", + httpMethod: "GET", responses: { - 200: {}, - 202: {}, + 200: { + bodyMapper: Mappers.DataMigrationServiceList + }, default: { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], serializer }; - -const beginStopOperationSpec: msRest.OperationSpec = { +const checkNameAvailabilityOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/checkNameAvailability", httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/stop", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { - 200: {}, - 202: {}, + 200: { + bodyMapper: Mappers.NameAvailabilityResponse + }, default: { bodyMapper: Mappers.ApiError } }, + requestBody: Parameters.parameters8, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.location + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; - -const listSkusNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listSkusNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ServiceSkuList @@ -889,19 +1121,20 @@ const listSkusNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName, + Parameters.serviceName + ], + headerParameters: [Parameters.accept], serializer }; - -const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.DataMigrationServiceList @@ -910,19 +1143,19 @@ const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName + ], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.DataMigrationServiceList @@ -931,5 +1164,12 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/sqlMigrationServices.ts b/sdk/datamigration/arm-datamigration/src/operations/sqlMigrationServices.ts new file mode 100644 index 000000000000..18a61b1affc2 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operations/sqlMigrationServices.ts @@ -0,0 +1,986 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SqlMigrationServices } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; +import { LroImpl } from "../lroImpl"; +import { + SqlMigrationService, + SqlMigrationServicesListByResourceGroupNextOptionalParams, + SqlMigrationServicesListByResourceGroupOptionalParams, + DatabaseMigration, + SqlMigrationServicesListMigrationsNextOptionalParams, + SqlMigrationServicesListMigrationsOptionalParams, + SqlMigrationServicesListBySubscriptionNextOptionalParams, + SqlMigrationServicesListBySubscriptionOptionalParams, + SqlMigrationServicesGetOptionalParams, + SqlMigrationServicesGetResponse, + SqlMigrationServicesCreateOrUpdateOptionalParams, + SqlMigrationServicesCreateOrUpdateResponse, + SqlMigrationServicesDeleteOptionalParams, + SqlMigrationServiceUpdate, + SqlMigrationServicesUpdateOptionalParams, + SqlMigrationServicesUpdateResponse, + SqlMigrationServicesListByResourceGroupResponse, + SqlMigrationServicesListAuthKeysOptionalParams, + SqlMigrationServicesListAuthKeysResponse, + RegenAuthKeys, + SqlMigrationServicesRegenerateAuthKeysOptionalParams, + SqlMigrationServicesRegenerateAuthKeysResponse, + DeleteNode, + SqlMigrationServicesDeleteNodeOptionalParams, + SqlMigrationServicesDeleteNodeResponse, + SqlMigrationServicesListMigrationsResponse, + SqlMigrationServicesListMonitoringDataOptionalParams, + SqlMigrationServicesListMonitoringDataResponse, + SqlMigrationServicesListBySubscriptionResponse, + SqlMigrationServicesListByResourceGroupNextResponse, + SqlMigrationServicesListMigrationsNextResponse, + SqlMigrationServicesListBySubscriptionNextResponse +} from "../models"; + +/// +/** Class containing SqlMigrationServices operations. */ +export class SqlMigrationServicesImpl implements SqlMigrationServices { + private readonly client: DataMigrationManagementClient; + + /** + * Initialize a new instance of the class SqlMigrationServices class. + * @param client Reference to the service client + */ + constructor(client: DataMigrationManagementClient) { + this.client = client; + } + + /** + * Retrieve all SQL migration services in the resource group. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: SqlMigrationServicesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listByResourceGroupPagingPage(resourceGroupName, options); + } + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: SqlMigrationServicesListByResourceGroupOptionalParams + ): AsyncIterableIterator { + let result = await this._listByResourceGroup(resourceGroupName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: SqlMigrationServicesListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } + } + + /** + * Retrieve the List of database migrations attached to the service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + public listMigrations( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMigrationsOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listMigrationsPagingAll( + resourceGroupName, + sqlMigrationServiceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listMigrationsPagingPage( + resourceGroupName, + sqlMigrationServiceName, + options + ); + } + }; + } + + private async *listMigrationsPagingPage( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMigrationsOptionalParams + ): AsyncIterableIterator { + let result = await this._listMigrations( + resourceGroupName, + sqlMigrationServiceName, + options + ); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listMigrationsNext( + resourceGroupName, + sqlMigrationServiceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listMigrationsPagingAll( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMigrationsOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listMigrationsPagingPage( + resourceGroupName, + sqlMigrationServiceName, + options + )) { + yield* page; + } + } + + /** + * Retrieve all SQL migration services in the subscriptions. + * @param options The options parameters. + */ + public listBySubscription( + options?: SqlMigrationServicesListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listBySubscriptionPagingPage(options); + } + }; + } + + private async *listBySubscriptionPagingPage( + options?: SqlMigrationServicesListBySubscriptionOptionalParams + ): AsyncIterableIterator { + let result = await this._listBySubscription(options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listBySubscriptionPagingAll( + options?: SqlMigrationServicesListBySubscriptionOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } + } + + /** + * Retrieve the Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, options }, + getOperationSpec + ); + } + + /** + * Create or Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationService, + options?: SqlMigrationServicesCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + SqlMigrationServicesCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, sqlMigrationServiceName, parameters, options }, + createOrUpdateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Create or Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationService, + options?: SqlMigrationServicesCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + sqlMigrationServiceName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, sqlMigrationServiceName, options }, + deleteOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Delete SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + sqlMigrationServiceName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationServiceUpdate, + options?: SqlMigrationServicesUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + SqlMigrationServicesUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = new LroImpl( + sendOperation, + { resourceGroupName, sqlMigrationServiceName, parameters, options }, + updateOperationSpec + ); + return new LroEngine(lro, { + resumeFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + } + + /** + * Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationServiceUpdate, + options?: SqlMigrationServicesUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + sqlMigrationServiceName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Retrieve all SQL migration services in the resource group. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: SqlMigrationServicesListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + + /** + * Retrieve the List of Authentication Keys for Self Hosted Integration Runtime. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + listAuthKeys( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListAuthKeysOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, options }, + listAuthKeysOperationSpec + ); + } + + /** + * Regenerate a new set of Authentication Keys for Self Hosted Integration Runtime. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + regenerateAuthKeys( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: RegenAuthKeys, + options?: SqlMigrationServicesRegenerateAuthKeysOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, parameters, options }, + regenerateAuthKeysOperationSpec + ); + } + + /** + * Delete the integration runtime node. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + deleteNode( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: DeleteNode, + options?: SqlMigrationServicesDeleteNodeOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, parameters, options }, + deleteNodeOperationSpec + ); + } + + /** + * Retrieve the List of database migrations attached to the service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + private _listMigrations( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMigrationsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, options }, + listMigrationsOperationSpec + ); + } + + /** + * Retrieve the Monitoring Data. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + listMonitoringData( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMonitoringDataOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, options }, + listMonitoringDataOperationSpec + ); + } + + /** + * Retrieve all SQL migration services in the subscriptions. + * @param options The options parameters. + */ + private _listBySubscription( + options?: SqlMigrationServicesListBySubscriptionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. + */ + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: SqlMigrationServicesListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } + + /** + * ListMigrationsNext + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param nextLink The nextLink from the previous successful call to the ListMigrations method. + * @param options The options parameters. + */ + private _listMigrationsNext( + resourceGroupName: string, + sqlMigrationServiceName: string, + nextLink: string, + options?: SqlMigrationServicesListMigrationsNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, sqlMigrationServiceName, nextLink, options }, + listMigrationsNextOperationSpec + ); + } + + /** + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. + */ + private _listBySubscriptionNext( + nextLink: string, + options?: SqlMigrationServicesListBySubscriptionNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listBySubscriptionNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationService + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationService + }, + 201: { + bodyMapper: Mappers.SqlMigrationService + }, + 202: { + bodyMapper: Mappers.SqlMigrationService + }, + 204: { + bodyMapper: Mappers.SqlMigrationService + }, + default: {} + }, + requestBody: Parameters.parameters3, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}", + httpMethod: "DELETE", + responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationService + }, + 201: { + bodyMapper: Mappers.SqlMigrationService + }, + 202: { + bodyMapper: Mappers.SqlMigrationService + }, + 204: { + bodyMapper: Mappers.SqlMigrationService + }, + default: {} + }, + requestBody: Parameters.parameters4, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId + ], + headerParameters: [Parameters.accept], + serializer +}; +const listAuthKeysOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}/listAuthKeys", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.AuthenticationKeys + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const regenerateAuthKeysOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}/regenerateAuthKeys", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.RegenAuthKeys + }, + default: {} + }, + requestBody: Parameters.parameters5, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteNodeOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}/deleteNode", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DeleteNode + }, + default: {} + }, + requestBody: Parameters.parameters6, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listMigrationsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}/listMigrations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listMonitoringDataOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataMigration/sqlMigrationServices/{sqlMigrationServiceName}/listMonitoringData", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.IntegrationRuntimeMonitoringData + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/sqlMigrationServices", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listMigrationsNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DatabaseMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.resourceGroupName, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.sqlMigrationServiceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SqlMigrationListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/datamigration/arm-datamigration/src/operations/tasks.ts b/sdk/datamigration/arm-datamigration/src/operations/tasks.ts index be0221a57d87..ee9ca70cb75b 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/tasks.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/tasks.ts @@ -1,386 +1,316 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/tasksMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Tasks } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + ProjectTask, + TasksListNextOptionalParams, + TasksListOptionalParams, + TasksListResponse, + TasksCreateOrUpdateOptionalParams, + TasksCreateOrUpdateResponse, + TasksGetOptionalParams, + TasksGetResponse, + TasksDeleteOptionalParams, + TasksUpdateOptionalParams, + TasksUpdateResponse, + TasksCancelOptionalParams, + TasksCancelResponse, + CommandPropertiesUnion, + TasksCommandOptionalParams, + TasksCommandResponse, + TasksListNextResponse +} from "../models"; -/** Class representing a Tasks. */ -export class Tasks { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Tasks operations. */ +export class TasksImpl implements Tasks { + private readonly client: DataMigrationManagementClient; /** - * Create a Tasks. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Tasks class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of tasks owned by a service resource. Some tasks may have a status of - * Unknown, which indicates that an error occurred while querying the status of that task. - * @summary Get tasks in a service + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of tasks owned by a service resource. Some tasks may have a status of Unknown, + * which indicates that an error occurred while querying the status of that task. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(groupName: string, serviceName: string, projectName: string, options?: Models.TasksListOptionalParams): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param callback The callback - */ - list(groupName: string, serviceName: string, projectName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param options The optional parameters - * @param callback The callback - */ - list(groupName: string, serviceName: string, projectName: string, options: Models.TasksListOptionalParams, callback: msRest.ServiceCallback): void; - list(groupName: string, serviceName: string, projectName: string, options?: Models.TasksListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { + public list( + groupName: string, + serviceName: string, + projectName: string, + options?: TasksListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll( + groupName, + serviceName, + projectName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage( + groupName, + serviceName, + projectName, + options + ); + } + }; + } + + private async *listPagingPage( + groupName: string, + serviceName: string, + projectName: string, + options?: TasksListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(groupName, serviceName, projectName, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext( groupName, serviceName, projectName, + continuationToken, options - }, - listOperationSpec, - callback) as Promise; + ); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + groupName: string, + serviceName: string, + projectName: string, + options?: TasksListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage( + groupName, + serviceName, + projectName, + options + )) { + yield* page; + } } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The PUT method creates a new task or updates an existing one, although since tasks - * have no mutable custom properties, there is little reason to update an existing one. - * @summary Create or update task - * @param parameters Information about the task + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of tasks owned by a service resource. Some tasks may have a status of Unknown, + * which indicates that an error occurred while querying the status of that task. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; + private _list( + groupName: string, + serviceName: string, + projectName: string, + options?: TasksListOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { groupName, serviceName, projectName, options }, + listOperationSpec + ); + } + /** - * @param parameters Information about the task + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The PUT method creates a new task or updates an existing one, although since tasks have no mutable + * custom properties, there is little reason to update an existing one. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task - * @param callback The callback - */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: ProjectTask, + options?: TasksCreateOrUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - taskName, - options - }, - createOrUpdateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, taskName, parameters, options }, + createOrUpdateOperationSpec + ); } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The GET method retrieves information about a task. - * @summary Get task information - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - get(groupName: string, serviceName: string, projectName: string, taskName: string, options?: Models.TasksGetOptionalParams): Promise; - /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The GET method retrieves information about a task. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task - * @param callback The callback + * @param options The options parameters. */ - get(groupName: string, serviceName: string, projectName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback - */ - get(groupName: string, serviceName: string, projectName: string, taskName: string, options: Models.TasksGetOptionalParams, callback: msRest.ServiceCallback): void; - get(groupName: string, serviceName: string, projectName: string, taskName: string, options?: Models.TasksGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksGetOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - taskName, - options - }, - getOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, taskName, options }, + getOperationSpec + ); } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The DELETE method deletes a task, canceling it first if it's running. - * @summary Delete task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, taskName: string, options?: Models.TasksDeleteMethodOptionalParams): Promise; - /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The DELETE method deletes a task, canceling it first if it's running. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task - * @param callback The callback + * @param options The options parameters. */ - deleteMethod(groupName: string, serviceName: string, projectName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback - */ - deleteMethod(groupName: string, serviceName: string, projectName: string, taskName: string, options: Models.TasksDeleteMethodOptionalParams, callback: msRest.ServiceCallback): void; - deleteMethod(groupName: string, serviceName: string, projectName: string, taskName: string, options?: Models.TasksDeleteMethodOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + delete( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksDeleteOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - taskName, - options - }, - deleteMethodOperationSpec, - callback); + { groupName, serviceName, projectName, taskName, options }, + deleteOperationSpec + ); } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. The PATCH method updates an existing task, but since tasks have no mutable custom - * properties, there is little reason to do so. - * @summary Create or update task - * @param parameters Information about the task + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The PATCH method updates an existing task, but since tasks have no mutable custom properties, there + * is little reason to do so. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param callback The callback - */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** * @param parameters Information about the task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - update(parameters: Models.ProjectTask, groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: ProjectTask, + options?: TasksUpdateOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - parameters, - groupName, - serviceName, - projectName, - taskName, - options - }, - updateOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, taskName, parameters, options }, + updateOperationSpec + ); } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. This method cancels a task if it's currently queued or running. - * @summary Cancel a task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param [options] The optional parameters - * @returns Promise - */ - cancel(groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param callback The callback - */ - cancel(groupName: string, serviceName: string, projectName: string, taskName: string, callback: msRest.ServiceCallback): void; - /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * This method cancels a task if it's currently queued or running. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - cancel(groupName: string, serviceName: string, projectName: string, taskName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - cancel(groupName: string, serviceName: string, projectName: string, taskName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + cancel( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksCancelOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - taskName, - options - }, - cancelOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, taskName, options }, + cancelOperationSpec + ); } /** - * The tasks resource is a nested, proxy-only resource representing work performed by a DMS - * instance. This method executes a command on a running task. - * @summary Execute a command on a task - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param parameters Command to execute - * @param [options] The optional parameters - * @returns Promise - */ - command(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: Models.CommandPropertiesUnion, options?: msRest.RequestOptionsBase): Promise; - /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * This method executes a command on a running task. * @param groupName Name of the resource group * @param serviceName Name of the service * @param projectName Name of the project * @param taskName Name of the Task * @param parameters Command to execute - * @param callback The callback + * @param options The options parameters. */ - command(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: Models.CommandPropertiesUnion, callback: msRest.ServiceCallback): void; - /** - * @param groupName Name of the resource group - * @param serviceName Name of the service - * @param projectName Name of the project - * @param taskName Name of the Task - * @param parameters Command to execute - * @param options The optional parameters - * @param callback The callback - */ - command(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: Models.CommandPropertiesUnion, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - command(groupName: string, serviceName: string, projectName: string, taskName: string, parameters: Models.CommandPropertiesUnion, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + command( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: CommandPropertiesUnion, + options?: TasksCommandOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - groupName, - serviceName, - projectName, - taskName, - parameters, - options - }, - commandOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, taskName, parameters, options }, + commandOperationSpec + ); } /** - * The services resource is the top-level resource that represents the Database Migration Service. - * This method returns a list of tasks owned by a service resource. Some tasks may have a status of - * Unknown, which indicates that an error occurred while querying the status of that task. - * @summary Get tasks in a service - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + groupName: string, + serviceName: string, + projectName: string, + nextLink: string, + options?: TasksListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { groupName, serviceName, projectName, nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks", - urlParameters: [ - Parameters.subscriptionId, - Parameters.groupName, - Parameters.serviceName, - Parameters.projectName - ], - queryParameters: [ - Parameters.apiVersion, - Parameters.taskType - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.TaskList @@ -389,32 +319,21 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const createOrUpdateOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + queryParameters: [Parameters.apiVersion, Parameters.taskType], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, - Parameters.projectName, - Parameters.taskName - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage + Parameters.projectName ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectTask, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + httpMethod: "PUT", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -426,26 +345,24 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const getOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + requestBody: Parameters.parameters9, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.taskName ], - queryParameters: [ - Parameters.expand, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -454,26 +371,22 @@ const getOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const deleteMethodOperationSpec: msRest.OperationSpec = { - httpMethod: "DELETE", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + queryParameters: [Parameters.expand, Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.taskName ], - queryParameters: [ - Parameters.deleteRunningTasks, - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept], + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + httpMethod: "DELETE", responses: { 200: {}, 204: {}, @@ -481,32 +394,22 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const updateOperationSpec: msRest.OperationSpec = { - httpMethod: "PATCH", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + queryParameters: [Parameters.apiVersion, Parameters.deleteRunningTasks], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.taskName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.ProjectTask, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}", + httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -515,25 +418,24 @@ const updateOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const cancelOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel", + requestBody: Parameters.parameters9, + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.taskName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const cancelOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/cancel", + httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.ProjectTask @@ -542,32 +444,22 @@ const cancelOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, - serializer -}; - -const commandOperationSpec: msRest.OperationSpec = { - httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/command", + queryParameters: [Parameters.apiVersion], urlParameters: [ + Parameters.$host, Parameters.subscriptionId, Parameters.groupName, Parameters.serviceName, Parameters.projectName, Parameters.taskName ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "parameters", - mapper: { - ...Mappers.CommandProperties, - required: true - } - }, + headerParameters: [Parameters.accept], + serializer +}; +const commandOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.DataMigration/services/{serviceName}/projects/{projectName}/tasks/{taskName}/command", + httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.CommandProperties @@ -576,19 +468,23 @@ const commandOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + requestBody: Parameters.parameters10, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.groupName, + Parameters.serviceName, + Parameters.projectName, + Parameters.taskName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.TaskList @@ -597,5 +493,15 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion, Parameters.taskType], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.groupName, + Parameters.serviceName, + Parameters.projectName + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operations/usages.ts b/sdk/datamigration/arm-datamigration/src/operations/usages.ts index d84ce8f2c577..cf2bfbd1a2b4 100644 --- a/sdk/datamigration/arm-datamigration/src/operations/usages.ts +++ b/sdk/datamigration/arm-datamigration/src/operations/usages.ts @@ -1,107 +1,125 @@ /* - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for - * license information. + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import * as msRest from "@azure/ms-rest-js"; -import * as Models from "../models"; -import * as Mappers from "../models/usagesMappers"; +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Usages } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; -import { DataMigrationServiceClientContext } from "../dataMigrationServiceClientContext"; +import { DataMigrationManagementClient } from "../dataMigrationManagementClient"; +import { + Quota, + UsagesListNextOptionalParams, + UsagesListOptionalParams, + UsagesListResponse, + UsagesListNextResponse +} from "../models"; -/** Class representing a Usages. */ -export class Usages { - private readonly client: DataMigrationServiceClientContext; +/// +/** Class containing Usages operations. */ +export class UsagesImpl implements Usages { + private readonly client: DataMigrationManagementClient; /** - * Create a Usages. - * @param {DataMigrationServiceClientContext} client Reference to the service client. + * Initialize a new instance of the class Usages class. + * @param client Reference to the service client */ - constructor(client: DataMigrationServiceClientContext) { + constructor(client: DataMigrationManagementClient) { this.client = client; } /** - * This method returns region-specific quotas and resource usage information for the Database - * Migration Service. - * @summary Get resource quotas and usage information + * This method returns region-specific quotas and resource usage information for the Database Migration + * Service. * @param location The Azure region of the operation - * @param [options] The optional parameters - * @returns Promise + * @param options The options parameters. */ - list(location: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param location The Azure region of the operation - * @param callback The callback - */ - list(location: string, callback: msRest.ServiceCallback): void; + public list( + location: string, + options?: UsagesListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(location, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: () => { + return this.listPagingPage(location, options); + } + }; + } + + private async *listPagingPage( + location: string, + options?: UsagesListOptionalParams + ): AsyncIterableIterator { + let result = await this._list(location, options); + yield result.value || []; + let continuationToken = result.nextLink; + while (continuationToken) { + result = await this._listNext(location, continuationToken, options); + continuationToken = result.nextLink; + yield result.value || []; + } + } + + private async *listPagingAll( + location: string, + options?: UsagesListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage(location, options)) { + yield* page; + } + } + /** + * This method returns region-specific quotas and resource usage information for the Database Migration + * Service. * @param location The Azure region of the operation - * @param options The optional parameters - * @param callback The callback + * @param options The options parameters. */ - list(location: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - list(location: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _list( + location: string, + options?: UsagesListOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - location, - options - }, - listOperationSpec, - callback) as Promise; + { location, options }, + listOperationSpec + ); } /** - * This method returns region-specific quotas and resource usage information for the Database - * Migration Service. - * @summary Get resource quotas and usage information - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback + * ListNext + * @param location The Azure region of the operation + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + private _listNext( + location: string, + nextLink: string, + options?: UsagesListNextOptionalParams + ): Promise { return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; + { location, nextLink, options }, + listNextOperationSpec + ); } } - // Operation Specifications -const serializer = new msRest.Serializer(Mappers); -const listOperationSpec: msRest.OperationSpec = { +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages", httpMethod: "GET", - path: "subscriptions/{subscriptionId}/providers/Microsoft.DataMigration/locations/{location}/usages", - urlParameters: [ - Parameters.subscriptionId, - Parameters.location - ], - queryParameters: [ - Parameters.apiVersion - ], - headerParameters: [ - Parameters.acceptLanguage - ], responses: { 200: { bodyMapper: Mappers.QuotaList @@ -110,19 +128,18 @@ const listOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.location + ], + headerParameters: [Parameters.accept], serializer }; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", +const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], + httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.QuotaList @@ -131,5 +148,13 @@ const listNextOperationSpec: msRest.OperationSpec = { bodyMapper: Mappers.ApiError } }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink, + Parameters.location + ], + headerParameters: [Parameters.accept], serializer }; diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlMi.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlMi.ts new file mode 100644 index 000000000000..cea3cd271004 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlMi.ts @@ -0,0 +1,138 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + DatabaseMigrationsSqlMiGetOptionalParams, + DatabaseMigrationsSqlMiGetResponse, + DatabaseMigrationSqlMi, + DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams, + DatabaseMigrationsSqlMiCreateOrUpdateResponse, + MigrationOperationInput, + DatabaseMigrationsSqlMiCancelOptionalParams, + DatabaseMigrationsSqlMiCutoverOptionalParams +} from "../models"; + +/** Interface representing a DatabaseMigrationsSqlMi. */ +export interface DatabaseMigrationsSqlMi { + /** + * Retrieve the Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + options?: DatabaseMigrationsSqlMiGetOptionalParams + ): Promise; + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlMi, + options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + DatabaseMigrationsSqlMiCreateOrUpdateResponse + > + >; + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlMi, + options?: DatabaseMigrationsSqlMiCreateOrUpdateOptionalParams + ): Promise; + /** + * Stop migrations in progress for the database + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cancel will be initiated. + * @param options The options parameters. + */ + beginCancel( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCancelOptionalParams + ): Promise, void>>; + /** + * Stop migrations in progress for the database + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cancel will be initiated. + * @param options The options parameters. + */ + beginCancelAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCancelOptionalParams + ): Promise; + /** + * Initiate cutover for online migration in progress for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cutover will be initiated. + * @param options The options parameters. + */ + beginCutover( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCutoverOptionalParams + ): Promise, void>>; + /** + * Initiate cutover for online migration in progress for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param managedInstanceName + * @param targetDbName The name of the target database. + * @param parameters Required migration operation ID for which cutover will be initiated. + * @param options The options parameters. + */ + beginCutoverAndWait( + resourceGroupName: string, + managedInstanceName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlMiCutoverOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlVm.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlVm.ts new file mode 100644 index 000000000000..e2caa5cbd00c --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/databaseMigrationsSqlVm.ts @@ -0,0 +1,138 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + DatabaseMigrationsSqlVmGetOptionalParams, + DatabaseMigrationsSqlVmGetResponse, + DatabaseMigrationSqlVm, + DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams, + DatabaseMigrationsSqlVmCreateOrUpdateResponse, + MigrationOperationInput, + DatabaseMigrationsSqlVmCancelOptionalParams, + DatabaseMigrationsSqlVmCutoverOptionalParams +} from "../models"; + +/** Interface representing a DatabaseMigrationsSqlVm. */ +export interface DatabaseMigrationsSqlVm { + /** + * Retrieve the Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + options?: DatabaseMigrationsSqlVmGetOptionalParams + ): Promise; + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlVm, + options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + DatabaseMigrationsSqlVmCreateOrUpdateResponse + > + >; + /** + * Create or Update Database Migration resource. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: DatabaseMigrationSqlVm, + options?: DatabaseMigrationsSqlVmCreateOrUpdateOptionalParams + ): Promise; + /** + * Stop ongoing migration for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + beginCancel( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCancelOptionalParams + ): Promise, void>>; + /** + * Stop ongoing migration for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + beginCancelAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCancelOptionalParams + ): Promise; + /** + * Cutover online migration operation for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + beginCutover( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCutoverOptionalParams + ): Promise, void>>; + /** + * Cutover online migration operation for the database. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlVirtualMachineName + * @param targetDbName The name of the target database. + * @param parameters Migration Operation Input + * @param options The options parameters. + */ + beginCutoverAndWait( + resourceGroupName: string, + sqlVirtualMachineName: string, + targetDbName: string, + parameters: MigrationOperationInput, + options?: DatabaseMigrationsSqlVmCutoverOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/files.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/files.ts new file mode 100644 index 000000000000..2ed3ee3706f7 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/files.ts @@ -0,0 +1,139 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + ProjectFile, + FilesListOptionalParams, + FilesGetOptionalParams, + FilesGetResponse, + FilesCreateOrUpdateOptionalParams, + FilesCreateOrUpdateResponse, + FilesDeleteOptionalParams, + FilesUpdateOptionalParams, + FilesUpdateResponse, + FilesReadOptionalParams, + FilesReadResponse, + FilesReadWriteOptionalParams, + FilesReadWriteResponse +} from "../models"; + +/// +/** Interface representing a Files. */ +export interface Files { + /** + * The project resource is a nested resource representing a stored migration project. This method + * returns a list of files owned by a project resource. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param options The options parameters. + */ + list( + groupName: string, + serviceName: string, + projectName: string, + options?: FilesListOptionalParams + ): PagedAsyncIterableIterator; + /** + * The files resource is a nested, proxy-only resource representing a file stored under the project + * resource. This method retrieves information about a file. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param options The options parameters. + */ + get( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesGetOptionalParams + ): Promise; + /** + * The PUT method creates a new file or updates an existing one. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param parameters Information about the file + * @param options The options parameters. + */ + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + parameters: ProjectFile, + options?: FilesCreateOrUpdateOptionalParams + ): Promise; + /** + * This method deletes a file. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param options The options parameters. + */ + delete( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesDeleteOptionalParams + ): Promise; + /** + * This method updates an existing file. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param parameters Information about the file + * @param options The options parameters. + */ + update( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + parameters: ProjectFile, + options?: FilesUpdateOptionalParams + ): Promise; + /** + * This method is used for requesting storage information using which contents of the file can be + * downloaded. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param options The options parameters. + */ + read( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesReadOptionalParams + ): Promise; + /** + * This method is used for requesting information for reading and writing the file content. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param fileName Name of the File + * @param options The options parameters. + */ + readWrite( + groupName: string, + serviceName: string, + projectName: string, + fileName: string, + options?: FilesReadWriteOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/index.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/index.ts new file mode 100644 index 000000000000..cfb4920408d2 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/index.ts @@ -0,0 +1,19 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export * from "./databaseMigrationsSqlMi"; +export * from "./databaseMigrationsSqlVm"; +export * from "./operations"; +export * from "./sqlMigrationServices"; +export * from "./resourceSkus"; +export * from "./services"; +export * from "./tasks"; +export * from "./serviceTasks"; +export * from "./projects"; +export * from "./usages"; +export * from "./files"; diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/operations.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/operations.ts new file mode 100644 index 000000000000..26d06ba88f01 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/operations.ts @@ -0,0 +1,22 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { OperationsDefinition, OperationsListOptionalParams } from "../models"; + +/// +/** Interface representing a Operations. */ +export interface Operations { + /** + * Lists all of the available SQL Migration REST API operations. + * @param options The options parameters. + */ + list( + options?: OperationsListOptionalParams + ): PagedAsyncIterableIterator; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/projects.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/projects.ts new file mode 100644 index 000000000000..3d4958b38a01 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/projects.ts @@ -0,0 +1,97 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + Project, + ProjectsListOptionalParams, + ProjectsCreateOrUpdateOptionalParams, + ProjectsCreateOrUpdateResponse, + ProjectsGetOptionalParams, + ProjectsGetResponse, + ProjectsDeleteOptionalParams, + ProjectsUpdateOptionalParams, + ProjectsUpdateResponse +} from "../models"; + +/// +/** Interface representing a Projects. */ +export interface Projects { + /** + * The project resource is a nested resource representing a stored migration project. This method + * returns a list of projects owned by a service resource. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + list( + groupName: string, + serviceName: string, + options?: ProjectsListOptionalParams + ): PagedAsyncIterableIterator; + /** + * The project resource is a nested resource representing a stored migration project. The PUT method + * creates a new project or updates an existing one. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param parameters Information about the project + * @param options The options parameters. + */ + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + parameters: Project, + options?: ProjectsCreateOrUpdateOptionalParams + ): Promise; + /** + * The project resource is a nested resource representing a stored migration project. The GET method + * retrieves information about a project. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param options The options parameters. + */ + get( + groupName: string, + serviceName: string, + projectName: string, + options?: ProjectsGetOptionalParams + ): Promise; + /** + * The project resource is a nested resource representing a stored migration project. The DELETE method + * deletes a project. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param options The options parameters. + */ + delete( + groupName: string, + serviceName: string, + projectName: string, + options?: ProjectsDeleteOptionalParams + ): Promise; + /** + * The project resource is a nested resource representing a stored migration project. The PATCH method + * updates an existing project. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param parameters Information about the project + * @param options The options parameters. + */ + update( + groupName: string, + serviceName: string, + projectName: string, + parameters: Project, + options?: ProjectsUpdateOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/resourceSkus.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/resourceSkus.ts new file mode 100644 index 000000000000..6599226c4532 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/resourceSkus.ts @@ -0,0 +1,22 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { ResourceSku, ResourceSkusListSkusOptionalParams } from "../models"; + +/// +/** Interface representing a ResourceSkus. */ +export interface ResourceSkus { + /** + * The skus action returns the list of SKUs that DMS supports. + * @param options The options parameters. + */ + listSkus( + options?: ResourceSkusListSkusOptionalParams + ): PagedAsyncIterableIterator; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/serviceTasks.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/serviceTasks.ts new file mode 100644 index 000000000000..baaa4487b337 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/serviceTasks.ts @@ -0,0 +1,116 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + ProjectTask, + ServiceTasksListOptionalParams, + ServiceTasksCreateOrUpdateOptionalParams, + ServiceTasksCreateOrUpdateResponse, + ServiceTasksGetOptionalParams, + ServiceTasksGetResponse, + ServiceTasksDeleteOptionalParams, + ServiceTasksUpdateOptionalParams, + ServiceTasksUpdateResponse, + ServiceTasksCancelOptionalParams, + ServiceTasksCancelResponse +} from "../models"; + +/// +/** Interface representing a ServiceTasks. */ +export interface ServiceTasks { + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service level tasks owned by a service resource. Some tasks may have a + * status of Unknown, which indicates that an error occurred while querying the status of that task. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + list( + groupName: string, + serviceName: string, + options?: ServiceTasksListOptionalParams + ): PagedAsyncIterableIterator; + /** + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. The PUT method creates a new service task or updates an existing one, although since + * service tasks have no mutable custom properties, there is little reason to update an existing one. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param taskName Name of the Task + * @param parameters Information about the task + * @param options The options parameters. + */ + createOrUpdate( + groupName: string, + serviceName: string, + taskName: string, + parameters: ProjectTask, + options?: ServiceTasksCreateOrUpdateOptionalParams + ): Promise; + /** + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. The GET method retrieves information about a service task. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param taskName Name of the Task + * @param options The options parameters. + */ + get( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksGetOptionalParams + ): Promise; + /** + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. The DELETE method deletes a service task, canceling it first if it's running. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param taskName Name of the Task + * @param options The options parameters. + */ + delete( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksDeleteOptionalParams + ): Promise; + /** + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. The PATCH method updates an existing service task, but since service tasks have no mutable + * custom properties, there is little reason to do so. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param taskName Name of the Task + * @param parameters Information about the task + * @param options The options parameters. + */ + update( + groupName: string, + serviceName: string, + taskName: string, + parameters: ProjectTask, + options?: ServiceTasksUpdateOptionalParams + ): Promise; + /** + * The service tasks resource is a nested, proxy-only resource representing work performed by a DMS + * instance. This method cancels a service task if it's currently queued or running. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param taskName Name of the Task + * @param options The options parameters. + */ + cancel( + groupName: string, + serviceName: string, + taskName: string, + options?: ServiceTasksCancelOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/services.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/services.ts new file mode 100644 index 000000000000..a332fcacebcb --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/services.ts @@ -0,0 +1,272 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + AvailableServiceSku, + ServicesListSkusOptionalParams, + DataMigrationService, + ServicesListByResourceGroupOptionalParams, + ServicesListOptionalParams, + ServicesCreateOrUpdateOptionalParams, + ServicesCreateOrUpdateResponse, + ServicesGetOptionalParams, + ServicesGetResponse, + ServicesDeleteOptionalParams, + ServicesUpdateOptionalParams, + ServicesUpdateResponse, + ServicesCheckStatusOptionalParams, + ServicesCheckStatusResponse, + ServicesStartOptionalParams, + ServicesStopOptionalParams, + NameAvailabilityRequest, + ServicesCheckChildrenNameAvailabilityOptionalParams, + ServicesCheckChildrenNameAvailabilityResponse, + ServicesCheckNameAvailabilityOptionalParams, + ServicesCheckNameAvailabilityResponse +} from "../models"; + +/// +/** Interface representing a Services. */ +export interface Services { + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * skus action returns the list of SKUs that a service resource can be updated to. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + listSkus( + groupName: string, + serviceName: string, + options?: ServicesListSkusOptionalParams + ): PagedAsyncIterableIterator; + /** + * The Services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a resource group. + * @param groupName Name of the resource group + * @param options The options parameters. + */ + listByResourceGroup( + groupName: string, + options?: ServicesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of service resources in a subscription. + * @param options The options parameters. + */ + list( + options?: ServicesListOptionalParams + ): PagedAsyncIterableIterator; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PUT method creates a new service or updates an existing one. When a service is updated, existing + * child resources (i.e. tasks) are unaffected. Services currently support a single kind, "vm", which + * refers to a VM-based service, although other kinds may be added in the future. This method can + * change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the + * service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider will reply + * when successful with 200 OK or 201 Created. Long-running operations use the provisioningState + * property. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param parameters Information about the service + * @param options The options parameters. + */ + beginCreateOrUpdate( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ServicesCreateOrUpdateResponse + > + >; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PUT method creates a new service or updates an existing one. When a service is updated, existing + * child resources (i.e. tasks) are unaffected. Services currently support a single kind, "vm", which + * refers to a VM-based service, although other kinds may be added in the future. This method can + * change the kind, SKU, and network of the service, but if tasks are currently running (i.e. the + * service is busy), this will fail with 400 Bad Request ("ServiceIsBusy"). The provider will reply + * when successful with 200 OK or 201 Created. Long-running operations use the provisioningState + * property. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param parameters Information about the service + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesCreateOrUpdateOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * GET method retrieves information about a service instance. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + get( + groupName: string, + serviceName: string, + options?: ServicesGetOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * DELETE method deletes a service. Any running tasks will be canceled. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginDelete( + groupName: string, + serviceName: string, + options?: ServicesDeleteOptionalParams + ): Promise, void>>; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * DELETE method deletes a service. Any running tasks will be canceled. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginDeleteAndWait( + groupName: string, + serviceName: string, + options?: ServicesDeleteOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PATCH method updates an existing service. This method can change the kind, SKU, and network of the + * service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad + * Request ("ServiceIsBusy"). + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param parameters Information about the service + * @param options The options parameters. + */ + beginUpdate( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + ServicesUpdateResponse + > + >; + /** + * The services resource is the top-level resource that represents the Database Migration Service. The + * PATCH method updates an existing service. This method can change the kind, SKU, and network of the + * service, but if tasks are currently running (i.e. the service is busy), this will fail with 400 Bad + * Request ("ServiceIsBusy"). + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param parameters Information about the service + * @param options The options parameters. + */ + beginUpdateAndWait( + groupName: string, + serviceName: string, + parameters: DataMigrationService, + options?: ServicesUpdateOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * action performs a health check and returns the status of the service and virtual machine size. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + checkStatus( + groupName: string, + serviceName: string, + options?: ServicesCheckStatusOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * action starts the service and the service can be used for data migration. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginStart( + groupName: string, + serviceName: string, + options?: ServicesStartOptionalParams + ): Promise, void>>; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * action starts the service and the service can be used for data migration. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginStartAndWait( + groupName: string, + serviceName: string, + options?: ServicesStartOptionalParams + ): Promise; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * action stops the service and the service cannot be used for data migration. The service owner won't + * be billed when the service is stopped. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginStop( + groupName: string, + serviceName: string, + options?: ServicesStopOptionalParams + ): Promise, void>>; + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * action stops the service and the service cannot be used for data migration. The service owner won't + * be billed when the service is stopped. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param options The options parameters. + */ + beginStopAndWait( + groupName: string, + serviceName: string, + options?: ServicesStopOptionalParams + ): Promise; + /** + * This method checks whether a proposed nested resource name is valid and available. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param parameters Requested name to validate + * @param options The options parameters. + */ + checkChildrenNameAvailability( + groupName: string, + serviceName: string, + parameters: NameAvailabilityRequest, + options?: ServicesCheckChildrenNameAvailabilityOptionalParams + ): Promise; + /** + * This method checks whether a proposed top-level resource name is valid and available. + * @param location The Azure region of the operation + * @param parameters Requested name to validate + * @param options The options parameters. + */ + checkNameAvailability( + location: string, + parameters: NameAvailabilityRequest, + options?: ServicesCheckNameAvailabilityOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/sqlMigrationServices.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/sqlMigrationServices.ts new file mode 100644 index 000000000000..57daeb82095f --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/sqlMigrationServices.ts @@ -0,0 +1,223 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { + SqlMigrationService, + SqlMigrationServicesListByResourceGroupOptionalParams, + DatabaseMigration, + SqlMigrationServicesListMigrationsOptionalParams, + SqlMigrationServicesListBySubscriptionOptionalParams, + SqlMigrationServicesGetOptionalParams, + SqlMigrationServicesGetResponse, + SqlMigrationServicesCreateOrUpdateOptionalParams, + SqlMigrationServicesCreateOrUpdateResponse, + SqlMigrationServicesDeleteOptionalParams, + SqlMigrationServiceUpdate, + SqlMigrationServicesUpdateOptionalParams, + SqlMigrationServicesUpdateResponse, + SqlMigrationServicesListAuthKeysOptionalParams, + SqlMigrationServicesListAuthKeysResponse, + RegenAuthKeys, + SqlMigrationServicesRegenerateAuthKeysOptionalParams, + SqlMigrationServicesRegenerateAuthKeysResponse, + DeleteNode, + SqlMigrationServicesDeleteNodeOptionalParams, + SqlMigrationServicesDeleteNodeResponse, + SqlMigrationServicesListMonitoringDataOptionalParams, + SqlMigrationServicesListMonitoringDataResponse +} from "../models"; + +/// +/** Interface representing a SqlMigrationServices. */ +export interface SqlMigrationServices { + /** + * Retrieve all SQL migration services in the resource group. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: SqlMigrationServicesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * Retrieve the List of database migrations attached to the service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + listMigrations( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMigrationsOptionalParams + ): PagedAsyncIterableIterator; + /** + * Retrieve all SQL migration services in the subscriptions. + * @param options The options parameters. + */ + listBySubscription( + options?: SqlMigrationServicesListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator; + /** + * Retrieve the Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesGetOptionalParams + ): Promise; + /** + * Create or Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationService, + options?: SqlMigrationServicesCreateOrUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + SqlMigrationServicesCreateOrUpdateResponse + > + >; + /** + * Create or Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationService, + options?: SqlMigrationServicesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesDeleteOptionalParams + ): Promise, void>>; + /** + * Delete SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesDeleteOptionalParams + ): Promise; + /** + * Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationServiceUpdate, + options?: SqlMigrationServicesUpdateOptionalParams + ): Promise< + PollerLike< + PollOperationState, + SqlMigrationServicesUpdateResponse + > + >; + /** + * Update SQL Migration Service. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: SqlMigrationServiceUpdate, + options?: SqlMigrationServicesUpdateOptionalParams + ): Promise; + /** + * Retrieve the List of Authentication Keys for Self Hosted Integration Runtime. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + listAuthKeys( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListAuthKeysOptionalParams + ): Promise; + /** + * Regenerate a new set of Authentication Keys for Self Hosted Integration Runtime. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + regenerateAuthKeys( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: RegenAuthKeys, + options?: SqlMigrationServicesRegenerateAuthKeysOptionalParams + ): Promise; + /** + * Delete the integration runtime node. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param parameters Details of SqlMigrationService resource. + * @param options The options parameters. + */ + deleteNode( + resourceGroupName: string, + sqlMigrationServiceName: string, + parameters: DeleteNode, + options?: SqlMigrationServicesDeleteNodeOptionalParams + ): Promise; + /** + * Retrieve the Monitoring Data. + * @param resourceGroupName Name of the resource group that contains the resource. You can obtain this + * value from the Azure Resource Manager API or the portal. + * @param sqlMigrationServiceName Name of the SQL Migration Service. + * @param options The options parameters. + */ + listMonitoringData( + resourceGroupName: string, + sqlMigrationServiceName: string, + options?: SqlMigrationServicesListMonitoringDataOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/tasks.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/tasks.ts new file mode 100644 index 000000000000..da79a5a42006 --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/tasks.ts @@ -0,0 +1,149 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { + ProjectTask, + TasksListOptionalParams, + TasksCreateOrUpdateOptionalParams, + TasksCreateOrUpdateResponse, + TasksGetOptionalParams, + TasksGetResponse, + TasksDeleteOptionalParams, + TasksUpdateOptionalParams, + TasksUpdateResponse, + TasksCancelOptionalParams, + TasksCancelResponse, + CommandPropertiesUnion, + TasksCommandOptionalParams, + TasksCommandResponse +} from "../models"; + +/// +/** Interface representing a Tasks. */ +export interface Tasks { + /** + * The services resource is the top-level resource that represents the Database Migration Service. This + * method returns a list of tasks owned by a service resource. Some tasks may have a status of Unknown, + * which indicates that an error occurred while querying the status of that task. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param options The options parameters. + */ + list( + groupName: string, + serviceName: string, + projectName: string, + options?: TasksListOptionalParams + ): PagedAsyncIterableIterator; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The PUT method creates a new task or updates an existing one, although since tasks have no mutable + * custom properties, there is little reason to update an existing one. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param parameters Information about the task + * @param options The options parameters. + */ + createOrUpdate( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: ProjectTask, + options?: TasksCreateOrUpdateOptionalParams + ): Promise; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The GET method retrieves information about a task. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param options The options parameters. + */ + get( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksGetOptionalParams + ): Promise; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The DELETE method deletes a task, canceling it first if it's running. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param options The options parameters. + */ + delete( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksDeleteOptionalParams + ): Promise; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * The PATCH method updates an existing task, but since tasks have no mutable custom properties, there + * is little reason to do so. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param parameters Information about the task + * @param options The options parameters. + */ + update( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: ProjectTask, + options?: TasksUpdateOptionalParams + ): Promise; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * This method cancels a task if it's currently queued or running. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param options The options parameters. + */ + cancel( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + options?: TasksCancelOptionalParams + ): Promise; + /** + * The tasks resource is a nested, proxy-only resource representing work performed by a DMS instance. + * This method executes a command on a running task. + * @param groupName Name of the resource group + * @param serviceName Name of the service + * @param projectName Name of the project + * @param taskName Name of the Task + * @param parameters Command to execute + * @param options The options parameters. + */ + command( + groupName: string, + serviceName: string, + projectName: string, + taskName: string, + parameters: CommandPropertiesUnion, + options?: TasksCommandOptionalParams + ): Promise; +} diff --git a/sdk/datamigration/arm-datamigration/src/operationsInterfaces/usages.ts b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/usages.ts new file mode 100644 index 000000000000..05d65ebae47e --- /dev/null +++ b/sdk/datamigration/arm-datamigration/src/operationsInterfaces/usages.ts @@ -0,0 +1,25 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { Quota, UsagesListOptionalParams } from "../models"; + +/// +/** Interface representing a Usages. */ +export interface Usages { + /** + * This method returns region-specific quotas and resource usage information for the Database Migration + * Service. + * @param location The Azure region of the operation + * @param options The options parameters. + */ + list( + location: string, + options?: UsagesListOptionalParams + ): PagedAsyncIterableIterator; +} diff --git a/sdk/datamigration/arm-datamigration/test/sampleTest.ts b/sdk/datamigration/arm-datamigration/test/sampleTest.ts new file mode 100644 index 000000000000..7ed89b043e1b --- /dev/null +++ b/sdk/datamigration/arm-datamigration/test/sampleTest.ts @@ -0,0 +1,48 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + env, + record, + RecorderEnvironmentSetup, + Recorder +} from "@azure-tools/test-recorder"; +import * as assert from "assert"; + +const recorderEnvSetup: RecorderEnvironmentSetup = { + replaceableVariables: { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" + }, + customizationsOnRecordings: [ + (recording: any): any => + recording.replace( + /"access_token":"[^"]*"/g, + `"access_token":"access_token"` + ) + ], + queryParametersToSkip: [] +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function() { + recorder = record(this, recorderEnvSetup); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/datamigration/arm-datamigration/tsconfig.json b/sdk/datamigration/arm-datamigration/tsconfig.json index 422b584abd5e..6e3251194117 100644 --- a/sdk/datamigration/arm-datamigration/tsconfig.json +++ b/sdk/datamigration/arm-datamigration/tsconfig.json @@ -3,7 +3,7 @@ "module": "es6", "moduleResolution": "node", "strict": true, - "target": "es5", + "target": "es6", "sourceMap": true, "declarationMap": true, "esModuleInterop": true, @@ -11,9 +11,9 @@ "forceConsistentCasingInFileNames": true, "lib": ["es6", "dom"], "declaration": true, - "outDir": "./esm", + "outDir": "./dist-esm", "importHelpers": true }, - "include": ["./src/**/*.ts"], + "include": ["./src/**/*.ts", "./test/**/*.ts"], "exclude": ["node_modules"] } diff --git a/sdk/datamigration/ci.yml b/sdk/datamigration/ci.yml new file mode 100644 index 000000000000..54c7d6326164 --- /dev/null +++ b/sdk/datamigration/ci.yml @@ -0,0 +1,29 @@ +# NOTE: Please refer to https://aka.ms/azsdk/engsys/ci-yaml before editing this file. +trigger: + branches: + include: + - main + - release/* + - hotfix/* + paths: + include: + - sdk/datamigration/ + +pr: + branches: + include: + - main + - release/* + - hotfix/* + paths: + include: + - sdk/datamigration/ + +extends: + template: ../../eng/pipelines/templates/stages/archetype-sdk-client.yml + parameters: + ServiceDirectory: datamigration + Artifacts: + - name: azure-arm-datamigration + safeName: azurearmdatamigration + \ No newline at end of file