artifact-engine 1.2.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/Engine/artifactEngine.d.ts +12 -12
  2. package/Engine/artifactEngine.js +166 -166
  3. package/Engine/artifactEngineOptions.d.ts +8 -8
  4. package/Engine/artifactEngineOptions.js +13 -15
  5. package/Engine/cilogger.d.ts +6 -6
  6. package/Engine/cilogger.js +44 -46
  7. package/Engine/index.d.ts +2 -2
  8. package/Engine/index.js +6 -8
  9. package/Engine/logger.d.ts +13 -13
  10. package/Engine/logger.js +109 -112
  11. package/Engine/worker.d.ts +10 -10
  12. package/Engine/worker.js +49 -51
  13. package/Models/artifactDownloadTicket.d.ts +11 -11
  14. package/Models/artifactDownloadTicket.js +5 -7
  15. package/Models/artifactItem.d.ts +12 -12
  16. package/Models/artifactItem.js +8 -10
  17. package/Models/artifactprovider.d.ts +10 -11
  18. package/Models/artifactprovider.js +2 -3
  19. package/Models/constants.d.ts +3 -3
  20. package/Models/constants.js +6 -8
  21. package/Models/index.d.ts +6 -6
  22. package/Models/index.js +12 -14
  23. package/Models/itemType.d.ts +5 -5
  24. package/Models/itemType.js +8 -10
  25. package/Models/ticketState.d.ts +7 -7
  26. package/Models/ticketState.js +10 -12
  27. package/Providers/filesystemProvider.d.ts +14 -15
  28. package/Providers/filesystemProvider.js +123 -123
  29. package/Providers/index.d.ts +4 -4
  30. package/Providers/index.js +10 -12
  31. package/Providers/stubProvider.d.ts +20 -21
  32. package/Providers/stubProvider.js +85 -88
  33. package/Providers/typed-rest-client/Handlers.d.ts +4 -4
  34. package/Providers/typed-rest-client/Handlers.js +10 -12
  35. package/Providers/typed-rest-client/HttpClient.d.ts +84 -77
  36. package/Providers/typed-rest-client/HttpClient.js +351 -328
  37. package/Providers/typed-rest-client/Index.d.ts +0 -1
  38. package/Providers/typed-rest-client/Index.js +2 -3
  39. package/Providers/typed-rest-client/Interfaces.d.ts +39 -38
  40. package/Providers/typed-rest-client/Interfaces.js +3 -4
  41. package/Providers/typed-rest-client/RestClient.d.ts +73 -27
  42. package/Providers/typed-rest-client/RestClient.js +186 -134
  43. package/Providers/typed-rest-client/Util.d.ts +7 -1
  44. package/Providers/typed-rest-client/Util.js +24 -18
  45. package/Providers/typed-rest-client/handlers/basiccreds.d.ts +9 -9
  46. package/Providers/typed-rest-client/handlers/basiccreds.js +23 -20
  47. package/Providers/typed-rest-client/handlers/bearertoken.d.ts +8 -8
  48. package/Providers/typed-rest-client/handlers/bearertoken.js +22 -19
  49. package/Providers/typed-rest-client/handlers/ntlm.d.ts +13 -13
  50. package/Providers/typed-rest-client/handlers/ntlm.js +115 -96
  51. package/Providers/typed-rest-client/handlers/personalaccesstoken.d.ts +8 -8
  52. package/Providers/typed-rest-client/handlers/personalaccesstoken.js +22 -19
  53. package/Providers/typed-rest-client/opensource/node-http-ntlm/readme.txt +6 -0
  54. package/Providers/webClient.d.ts +8 -8
  55. package/Providers/webClient.js +60 -60
  56. package/Providers/webClientFactory.d.ts +5 -5
  57. package/Providers/webClientFactory.js +59 -55
  58. package/Providers/webProvider.d.ts +22 -22
  59. package/Providers/webProvider.js +128 -116
  60. package/Providers/zipProvider.d.ts +15 -16
  61. package/Providers/zipProvider.js +53 -55
  62. package/Store/artifactItemStore.d.ts +18 -18
  63. package/Store/artifactItemStore.js +94 -96
  64. package/Store/index.d.ts +1 -1
  65. package/Store/index.js +4 -6
  66. package/Strings/resources.resjson/de-DE/resources.resjson +11 -11
  67. package/Strings/resources.resjson/en-US/resources.resjson +11 -11
  68. package/Strings/resources.resjson/es-ES/resources.resjson +11 -11
  69. package/Strings/resources.resjson/fr-FR/resources.resjson +11 -11
  70. package/Strings/resources.resjson/it-IT/resources.resjson +11 -11
  71. package/Strings/resources.resjson/ja-JP/resources.resjson +11 -11
  72. package/Strings/resources.resjson/ko-KR/resources.resjson +11 -11
  73. package/Strings/resources.resjson/ru-RU/resources.resjson +11 -11
  74. package/Strings/resources.resjson/zh-CN/resources.resjson +11 -11
  75. package/Strings/resources.resjson/zh-TW/resources.resjson +11 -11
  76. package/npm-shrinkwrap.json +176 -68
  77. package/package.json +2 -2
@@ -1,15 +1,14 @@
1
- /// <reference types="node" />
2
- import * as models from '../Models';
3
- import { ArtifactItemStore } from '../Store/artifactItemStore';
4
- export declare class FilesystemProvider implements models.IArtifactProvider {
5
- artifactItemStore: ArtifactItemStore;
6
- constructor(rootLocation: string, rootItemPath?: string);
7
- getRootItems(): Promise<models.ArtifactItem[]>;
8
- getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
9
- getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
10
- putArtifactItem(item: models.ArtifactItem, stream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
11
- dispose(): void;
12
- private getItems;
13
- private _rootLocation;
14
- private _rootItemPath;
15
- }
1
+ import * as models from '../Models';
2
+ import { ArtifactItemStore } from '../Store/artifactItemStore';
3
+ export declare class FilesystemProvider implements models.IArtifactProvider {
4
+ artifactItemStore: ArtifactItemStore;
5
+ constructor(rootLocation: string, rootItemPath?: string);
6
+ getRootItems(): Promise<models.ArtifactItem[]>;
7
+ getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
8
+ getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
9
+ putArtifactItem(item: models.ArtifactItem, stream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
10
+ dispose(): void;
11
+ private getItems(itemsPath, parentRelativePath?);
12
+ private _rootLocation;
13
+ private _rootItemPath;
14
+ }
@@ -1,123 +1,123 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FilesystemProvider = void 0;
4
- const path = require("path");
5
- const fs = require("fs");
6
- const models = require("../Models");
7
- const logger_1 = require("../Engine/logger");
8
- var tl = require('azure-pipelines-task-lib');
9
- class FilesystemProvider {
10
- constructor(rootLocation, rootItemPath) {
11
- this._rootLocation = rootLocation;
12
- this._rootItemPath = rootItemPath ? rootItemPath : '';
13
- }
14
- getRootItems() {
15
- var rootItem = new models.ArtifactItem();
16
- rootItem.metadata = { downloadUrl: this._rootLocation };
17
- rootItem.path = this._rootItemPath;
18
- rootItem.itemType = models.ItemType.Folder;
19
- return Promise.resolve([rootItem]);
20
- }
21
- getArtifactItems(artifactItem) {
22
- var itemsPath = artifactItem.metadata["downloadUrl"];
23
- return this.getItems(itemsPath, artifactItem.path);
24
- }
25
- getArtifactItem(artifactItem) {
26
- var promise = new Promise((resolve, reject) => {
27
- var itemPath = artifactItem.metadata['downloadUrl'];
28
- try {
29
- var contentStream = fs.createReadStream(itemPath);
30
- contentStream.on('end', () => {
31
- this.artifactItemStore.updateDownloadSize(artifactItem, contentStream.bytesRead);
32
- });
33
- contentStream.on("error", (error) => {
34
- reject(error);
35
- });
36
- resolve(contentStream);
37
- }
38
- catch (error) {
39
- reject(error);
40
- }
41
- });
42
- return promise;
43
- }
44
- putArtifactItem(item, stream) {
45
- return new Promise((resolve, reject) => {
46
- const outputItemPath = path.join(this._rootLocation, item.path);
47
- if (item.itemType === models.ItemType.File) {
48
- const folder = path.dirname(outputItemPath);
49
- try {
50
- tl.mkdirP(folder);
51
- logger_1.Logger.logMessage(tl.loc("DownloadingTo", item.path, outputItemPath));
52
- const outputStream = fs.createWriteStream(outputItemPath);
53
- stream.pipe(outputStream);
54
- stream.on("end", () => {
55
- logger_1.Logger.logMessage(tl.loc("DownloadedTo", item.path, outputItemPath));
56
- if (!item.metadata) {
57
- item.metadata = {};
58
- }
59
- item.metadata[models.Constants.DestinationUrlKey] = outputItemPath;
60
- });
61
- stream.on("error", (error) => {
62
- reject(error);
63
- });
64
- outputStream.on("finish", () => {
65
- this.artifactItemStore.updateFileSize(item, outputStream.bytesWritten);
66
- resolve(item);
67
- });
68
- }
69
- catch (err) {
70
- reject(err);
71
- }
72
- }
73
- else {
74
- try {
75
- tl.mkdirP(outputItemPath);
76
- resolve(item);
77
- }
78
- catch (err) {
79
- reject(err);
80
- }
81
- }
82
- });
83
- }
84
- dispose() {
85
- }
86
- getItems(itemsPath, parentRelativePath) {
87
- var promise = new Promise((resolve, reject) => {
88
- var items = [];
89
- fs.readdir(itemsPath, (error, files) => {
90
- if (!!error) {
91
- logger_1.Logger.logMessage(tl.loc("UnableToReadDirectory", itemsPath, error));
92
- reject(error);
93
- return;
94
- }
95
- for (var index = 0; index < files.length; index++) {
96
- var file = files[index];
97
- var filePath = path.join(itemsPath, file);
98
- var itemStat;
99
- try {
100
- itemStat = fs.lstatSync(filePath);
101
- }
102
- catch (error) {
103
- reject(error);
104
- return;
105
- }
106
- var item = {
107
- itemType: itemStat.isFile() ? models.ItemType.File : models.ItemType.Folder,
108
- path: parentRelativePath ? path.join(parentRelativePath, file) : file,
109
- fileLength: itemStat.size,
110
- lastModified: itemStat.mtime,
111
- contentType: undefined,
112
- metadata: { "downloadUrl": filePath }
113
- };
114
- items = items.concat(item);
115
- }
116
- resolve(items);
117
- });
118
- });
119
- return promise;
120
- }
121
- }
122
- exports.FilesystemProvider = FilesystemProvider;
123
- //# sourceMappingURL=filesystemProvider.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const path = require("path");
4
+ const fs = require("fs");
5
+ const models = require("../Models");
6
+ const logger_1 = require("../Engine/logger");
7
+ var tl = require('azure-pipelines-task-lib');
8
+ class FilesystemProvider {
9
+ constructor(rootLocation, rootItemPath) {
10
+ this._rootLocation = rootLocation;
11
+ this._rootItemPath = rootItemPath ? rootItemPath : '';
12
+ }
13
+ getRootItems() {
14
+ var rootItem = new models.ArtifactItem();
15
+ rootItem.metadata = { downloadUrl: this._rootLocation };
16
+ rootItem.path = this._rootItemPath;
17
+ rootItem.itemType = models.ItemType.Folder;
18
+ return Promise.resolve([rootItem]);
19
+ }
20
+ getArtifactItems(artifactItem) {
21
+ var itemsPath = artifactItem.metadata["downloadUrl"];
22
+ return this.getItems(itemsPath, artifactItem.path);
23
+ }
24
+ getArtifactItem(artifactItem) {
25
+ var promise = new Promise((resolve, reject) => {
26
+ var itemPath = artifactItem.metadata['downloadUrl'];
27
+ try {
28
+ var contentStream = fs.createReadStream(itemPath);
29
+ contentStream.on('end', () => {
30
+ this.artifactItemStore.updateDownloadSize(artifactItem, contentStream.bytesRead);
31
+ });
32
+ contentStream.on("error", (error) => {
33
+ reject(error);
34
+ });
35
+ resolve(contentStream);
36
+ }
37
+ catch (error) {
38
+ reject(error);
39
+ }
40
+ });
41
+ return promise;
42
+ }
43
+ putArtifactItem(item, stream) {
44
+ return new Promise((resolve, reject) => {
45
+ const outputItemPath = path.join(this._rootLocation, item.path);
46
+ if (item.itemType === models.ItemType.File) {
47
+ const folder = path.dirname(outputItemPath);
48
+ try {
49
+ // create parent folder if it has not already been created
50
+ tl.mkdirP(folder);
51
+ logger_1.Logger.logMessage(tl.loc("DownloadingTo", item.path, outputItemPath));
52
+ const outputStream = fs.createWriteStream(outputItemPath);
53
+ stream.pipe(outputStream);
54
+ stream.on("end", () => {
55
+ logger_1.Logger.logMessage(tl.loc("DownloadedTo", item.path, outputItemPath));
56
+ if (!item.metadata) {
57
+ item.metadata = {};
58
+ }
59
+ item.metadata[models.Constants.DestinationUrlKey] = outputItemPath;
60
+ });
61
+ stream.on("error", (error) => {
62
+ reject(error);
63
+ });
64
+ outputStream.on("finish", () => {
65
+ this.artifactItemStore.updateFileSize(item, outputStream.bytesWritten);
66
+ resolve(item);
67
+ });
68
+ }
69
+ catch (err) {
70
+ reject(err);
71
+ }
72
+ }
73
+ else {
74
+ try {
75
+ tl.mkdirP(outputItemPath);
76
+ resolve(item);
77
+ }
78
+ catch (err) {
79
+ reject(err);
80
+ }
81
+ }
82
+ });
83
+ }
84
+ dispose() {
85
+ }
86
+ getItems(itemsPath, parentRelativePath) {
87
+ var promise = new Promise((resolve, reject) => {
88
+ var items = [];
89
+ fs.readdir(itemsPath, (error, files) => {
90
+ if (!!error) {
91
+ logger_1.Logger.logMessage(tl.loc("UnableToReadDirectory", itemsPath, error));
92
+ reject(error);
93
+ return;
94
+ }
95
+ for (var index = 0; index < files.length; index++) {
96
+ var file = files[index];
97
+ var filePath = path.join(itemsPath, file);
98
+ // do not follow symbolic link
99
+ var itemStat;
100
+ try {
101
+ itemStat = fs.lstatSync(filePath);
102
+ }
103
+ catch (error) {
104
+ reject(error);
105
+ return;
106
+ }
107
+ var item = {
108
+ itemType: itemStat.isFile() ? models.ItemType.File : models.ItemType.Folder,
109
+ path: parentRelativePath ? path.join(parentRelativePath, file) : file,
110
+ fileLength: itemStat.size,
111
+ lastModified: itemStat.mtime,
112
+ contentType: undefined,
113
+ metadata: { "downloadUrl": filePath }
114
+ };
115
+ items = items.concat(item);
116
+ }
117
+ resolve(items);
118
+ });
119
+ });
120
+ return promise;
121
+ }
122
+ }
123
+ exports.FilesystemProvider = FilesystemProvider;
@@ -1,4 +1,4 @@
1
- export { WebProvider } from "./webProvider";
2
- export { FilesystemProvider } from "./filesystemProvider";
3
- export { ZipProvider } from "./zipProvider";
4
- export { StubProvider } from "./stubProvider";
1
+ export { WebProvider } from "./webProvider";
2
+ export { FilesystemProvider } from "./filesystemProvider";
3
+ export { ZipProvider } from "./zipProvider";
4
+ export { StubProvider } from "./stubProvider";
@@ -1,12 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StubProvider = exports.ZipProvider = exports.FilesystemProvider = exports.WebProvider = void 0;
4
- var webProvider_1 = require("./webProvider");
5
- Object.defineProperty(exports, "WebProvider", { enumerable: true, get: function () { return webProvider_1.WebProvider; } });
6
- var filesystemProvider_1 = require("./filesystemProvider");
7
- Object.defineProperty(exports, "FilesystemProvider", { enumerable: true, get: function () { return filesystemProvider_1.FilesystemProvider; } });
8
- var zipProvider_1 = require("./zipProvider");
9
- Object.defineProperty(exports, "ZipProvider", { enumerable: true, get: function () { return zipProvider_1.ZipProvider; } });
10
- var stubProvider_1 = require("./stubProvider");
11
- Object.defineProperty(exports, "StubProvider", { enumerable: true, get: function () { return stubProvider_1.StubProvider; } });
12
- //# sourceMappingURL=index.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var webProvider_1 = require("./webProvider");
4
+ exports.WebProvider = webProvider_1.WebProvider;
5
+ var filesystemProvider_1 = require("./filesystemProvider");
6
+ exports.FilesystemProvider = filesystemProvider_1.FilesystemProvider;
7
+ var zipProvider_1 = require("./zipProvider");
8
+ exports.ZipProvider = zipProvider_1.ZipProvider;
9
+ var stubProvider_1 = require("./stubProvider");
10
+ exports.StubProvider = stubProvider_1.StubProvider;
@@ -1,21 +1,20 @@
1
- /// <reference types="node" />
2
- import * as models from '../Models';
3
- import { ItemType } from '../Models';
4
- import { ArtifactItemStore } from '../Store/artifactItemStore';
5
- export declare class StubProvider implements models.IArtifactProvider {
6
- artifactItemStore: ArtifactItemStore;
7
- getArtifactItemCalledCount: number;
8
- getArtifactItemsCalledCount: number;
9
- getRootItemsCalledCount: number;
10
- itemsDownloaded: models.ArtifactItem[];
11
- itemsUploaded: {
12
- [item: string]: string;
13
- };
14
- getRootItems(): Promise<models.ArtifactItem[]>;
15
- getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
16
- getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
17
- getItem(index: number, subIndex: number, length: number, itemType: ItemType): models.ArtifactItem;
18
- putArtifactItem(item: models.ArtifactItem, readStream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
19
- dispose(): void;
20
- delay(ms: number): Promise<{}>;
21
- }
1
+ import * as models from '../Models';
2
+ import { ItemType } from '../Models';
3
+ import { ArtifactItemStore } from '../Store/artifactItemStore';
4
+ export declare class StubProvider implements models.IArtifactProvider {
5
+ artifactItemStore: ArtifactItemStore;
6
+ getArtifactItemCalledCount: number;
7
+ getArtifactItemsCalledCount: number;
8
+ getRootItemsCalledCount: number;
9
+ itemsDownloaded: models.ArtifactItem[];
10
+ itemsUploaded: {
11
+ [item: string]: string;
12
+ };
13
+ getRootItems(): Promise<models.ArtifactItem[]>;
14
+ getArtifactItems(artifactItem: models.ArtifactItem): Promise<models.ArtifactItem[]>;
15
+ getArtifactItem(artifactItem: models.ArtifactItem): Promise<NodeJS.ReadableStream>;
16
+ getItem(index: number, subIndex: number, length: number, itemType: ItemType): models.ArtifactItem;
17
+ putArtifactItem(item: models.ArtifactItem, readStream: NodeJS.ReadableStream): Promise<models.ArtifactItem>;
18
+ dispose(): void;
19
+ delay(ms: number): Promise<{}>;
20
+ }
@@ -1,88 +1,85 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.StubProvider = void 0;
13
- const Stream = require("stream");
14
- const models = require("../Models");
15
- const Models_1 = require("../Models");
16
- class StubProvider {
17
- constructor() {
18
- this.getArtifactItemCalledCount = 0;
19
- this.getArtifactItemsCalledCount = 0;
20
- this.getRootItemsCalledCount = 0;
21
- this.itemsDownloaded = [];
22
- this.itemsUploaded = {};
23
- }
24
- getRootItems() {
25
- return __awaiter(this, void 0, void 0, function* () {
26
- this.getRootItemsCalledCount++;
27
- return [this.getItem(1, 1, 3, Models_1.ItemType.File), this.getItem(1, 2, 3, Models_1.ItemType.File), this.getItem(1, 3, 3, Models_1.ItemType.File), this.getItem(2, 1, 1, Models_1.ItemType.Folder), this.getItem(3, 1, 5, Models_1.ItemType.File), this.getItem(4, 1, 3, Models_1.ItemType.File), this.getItem(5, 1, 4, Models_1.ItemType.Folder)];
28
- });
29
- }
30
- getArtifactItems(artifactItem) {
31
- return __awaiter(this, void 0, void 0, function* () {
32
- this.getArtifactItemsCalledCount++;
33
- if (artifactItem.path === 'path5') {
34
- return [this.getItem(5, 1, 2, Models_1.ItemType.File)];
35
- }
36
- return [];
37
- });
38
- }
39
- getArtifactItem(artifactItem) {
40
- return __awaiter(this, void 0, void 0, function* () {
41
- this.getArtifactItemCalledCount++;
42
- this.itemsDownloaded.push(artifactItem);
43
- yield this.delay(artifactItem.fileLength * 100);
44
- const s = new Stream.Readable();
45
- s._read = () => { };
46
- s.push(`stub content for ${artifactItem.path}`);
47
- s.push(null);
48
- return s;
49
- });
50
- }
51
- getItem(index, subIndex, length, itemType) {
52
- const artifactItem = new models.ArtifactItem();
53
- const path = itemType === Models_1.ItemType.File ? `path${index}\\path${subIndex}\\file${index}` : `path${index}`;
54
- artifactItem.path = path;
55
- artifactItem.fileLength = length;
56
- artifactItem.itemType = itemType;
57
- artifactItem.metadata = {};
58
- return artifactItem;
59
- }
60
- putArtifactItem(item, readStream) {
61
- var promise = new Promise((resolve, reject) => {
62
- var data = '';
63
- if (item.itemType === models.ItemType.File) {
64
- readStream.on('data', (chunk) => {
65
- data += chunk;
66
- });
67
- readStream.on('end', () => {
68
- this.itemsUploaded[item.path] = data;
69
- resolve(item);
70
- });
71
- readStream.on('error', () => {
72
- reject(item);
73
- });
74
- }
75
- else {
76
- resolve(item);
77
- }
78
- });
79
- return promise;
80
- }
81
- dispose() {
82
- }
83
- delay(ms) {
84
- return new Promise(resolve => setTimeout(resolve, ms));
85
- }
86
- }
87
- exports.StubProvider = StubProvider;
88
- //# sourceMappingURL=stubProvider.js.map
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ const Stream = require("stream");
12
+ const models = require("../Models");
13
+ const Models_1 = require("../Models");
14
+ class StubProvider {
15
+ constructor() {
16
+ this.getArtifactItemCalledCount = 0;
17
+ this.getArtifactItemsCalledCount = 0;
18
+ this.getRootItemsCalledCount = 0;
19
+ this.itemsDownloaded = [];
20
+ this.itemsUploaded = {};
21
+ }
22
+ getRootItems() {
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ this.getRootItemsCalledCount++;
25
+ return [this.getItem(1, 1, 3, Models_1.ItemType.File), this.getItem(1, 2, 3, Models_1.ItemType.File), this.getItem(1, 3, 3, Models_1.ItemType.File), this.getItem(2, 1, 1, Models_1.ItemType.Folder), this.getItem(3, 1, 5, Models_1.ItemType.File), this.getItem(4, 1, 3, Models_1.ItemType.File), this.getItem(5, 1, 4, Models_1.ItemType.Folder)];
26
+ });
27
+ }
28
+ getArtifactItems(artifactItem) {
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ this.getArtifactItemsCalledCount++;
31
+ if (artifactItem.path === 'path5') {
32
+ return [this.getItem(5, 1, 2, Models_1.ItemType.File)];
33
+ }
34
+ return [];
35
+ });
36
+ }
37
+ getArtifactItem(artifactItem) {
38
+ return __awaiter(this, void 0, void 0, function* () {
39
+ this.getArtifactItemCalledCount++;
40
+ this.itemsDownloaded.push(artifactItem);
41
+ yield this.delay(artifactItem.fileLength * 100);
42
+ const s = new Stream.Readable();
43
+ s._read = () => { };
44
+ s.push(`stub content for ${artifactItem.path}`);
45
+ s.push(null);
46
+ return s;
47
+ });
48
+ }
49
+ getItem(index, subIndex, length, itemType) {
50
+ const artifactItem = new models.ArtifactItem();
51
+ const path = itemType === Models_1.ItemType.File ? `path${index}\\path${subIndex}\\file${index}` : `path${index}`;
52
+ artifactItem.path = path;
53
+ artifactItem.fileLength = length;
54
+ artifactItem.itemType = itemType;
55
+ artifactItem.metadata = {};
56
+ return artifactItem;
57
+ }
58
+ putArtifactItem(item, readStream) {
59
+ var promise = new Promise((resolve, reject) => {
60
+ var data = '';
61
+ if (item.itemType === models.ItemType.File) {
62
+ readStream.on('data', (chunk) => {
63
+ data += chunk;
64
+ });
65
+ readStream.on('end', () => {
66
+ this.itemsUploaded[item.path] = data;
67
+ resolve(item);
68
+ });
69
+ readStream.on('error', () => {
70
+ reject(item);
71
+ });
72
+ }
73
+ else {
74
+ resolve(item);
75
+ }
76
+ });
77
+ return promise;
78
+ }
79
+ dispose() {
80
+ }
81
+ delay(ms) {
82
+ return new Promise(resolve => setTimeout(resolve, ms));
83
+ }
84
+ }
85
+ exports.StubProvider = StubProvider;
@@ -1,4 +1,4 @@
1
- export { BasicCredentialHandler } from "./handlers/basiccreds";
2
- export { BearerCredentialHandler } from "./handlers/bearertoken";
3
- export { NtlmCredentialHandler } from "./handlers/ntlm";
4
- export { PersonalAccessTokenCredentialHandler } from "./handlers/personalaccesstoken";
1
+ export { BasicCredentialHandler } from "./handlers/basiccreds";
2
+ export { BearerCredentialHandler } from "./handlers/bearertoken";
3
+ export { NtlmCredentialHandler } from "./handlers/ntlm";
4
+ export { PersonalAccessTokenCredentialHandler } from "./handlers/personalaccesstoken";
@@ -1,12 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PersonalAccessTokenCredentialHandler = exports.NtlmCredentialHandler = exports.BearerCredentialHandler = exports.BasicCredentialHandler = void 0;
4
- var basiccreds_1 = require("./handlers/basiccreds");
5
- Object.defineProperty(exports, "BasicCredentialHandler", { enumerable: true, get: function () { return basiccreds_1.BasicCredentialHandler; } });
6
- var bearertoken_1 = require("./handlers/bearertoken");
7
- Object.defineProperty(exports, "BearerCredentialHandler", { enumerable: true, get: function () { return bearertoken_1.BearerCredentialHandler; } });
8
- var ntlm_1 = require("./handlers/ntlm");
9
- Object.defineProperty(exports, "NtlmCredentialHandler", { enumerable: true, get: function () { return ntlm_1.NtlmCredentialHandler; } });
10
- var personalaccesstoken_1 = require("./handlers/personalaccesstoken");
11
- Object.defineProperty(exports, "PersonalAccessTokenCredentialHandler", { enumerable: true, get: function () { return personalaccesstoken_1.PersonalAccessTokenCredentialHandler; } });
12
- //# sourceMappingURL=Handlers.js.map
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var basiccreds_1 = require("./handlers/basiccreds");
4
+ exports.BasicCredentialHandler = basiccreds_1.BasicCredentialHandler;
5
+ var bearertoken_1 = require("./handlers/bearertoken");
6
+ exports.BearerCredentialHandler = bearertoken_1.BearerCredentialHandler;
7
+ var ntlm_1 = require("./handlers/ntlm");
8
+ exports.NtlmCredentialHandler = ntlm_1.NtlmCredentialHandler;
9
+ var personalaccesstoken_1 = require("./handlers/personalaccesstoken");
10
+ exports.PersonalAccessTokenCredentialHandler = personalaccesstoken_1.PersonalAccessTokenCredentialHandler;