scanoss 0.2.8 → 0.2.9

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 (54) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/README.md +6 -5
  3. package/build/main/bin/cli-bin.js +4 -3
  4. package/build/main/commands/scan.js +20 -38
  5. package/build/main/index.d.ts +1 -1
  6. package/build/main/index.js +2 -2
  7. package/build/main/lib/scanner/Dispatcher/DispatchableItem.js +1 -1
  8. package/build/main/lib/scanner/Dispatcher/Dispatcher.d.ts +3 -2
  9. package/build/main/lib/scanner/Dispatcher/Dispatcher.js +15 -13
  10. package/build/main/lib/scanner/Scannable/ScannableItem.d.ts +4 -3
  11. package/build/main/lib/scanner/Scannable/ScannableItem.js +6 -6
  12. package/build/main/lib/scanner/Scanner.d.ts +5 -5
  13. package/build/main/lib/scanner/Scanner.js +37 -40
  14. package/build/main/lib/scanner/ScannerTypes.d.ts +32 -0
  15. package/build/main/lib/scanner/ScannerTypes.js +35 -0
  16. package/build/main/lib/scanner/Winnower/Winnower.d.ts +5 -2
  17. package/build/main/lib/scanner/Winnower/Winnower.js +25 -22
  18. package/build/main/lib/scanner/Winnower/WinnowerResponse.d.ts +3 -0
  19. package/build/main/lib/scanner/Winnower/WinnowerResponse.js +7 -1
  20. package/build/main/lib/tree/Tree.js +3 -3
  21. package/build/module/bin/cli-bin.js +4 -3
  22. package/build/module/commands/scan.js +16 -34
  23. package/build/module/index.d.ts +1 -1
  24. package/build/module/index.js +2 -2
  25. package/build/module/lib/scanner/Dispatcher/DispatchableItem.js +1 -1
  26. package/build/module/lib/scanner/Dispatcher/Dispatcher.d.ts +3 -2
  27. package/build/module/lib/scanner/Dispatcher/Dispatcher.js +6 -4
  28. package/build/module/lib/scanner/Scannable/ScannableItem.d.ts +4 -3
  29. package/build/module/lib/scanner/Scannable/ScannableItem.js +7 -7
  30. package/build/module/lib/scanner/Scanner.d.ts +5 -5
  31. package/build/module/lib/scanner/Scanner.js +18 -20
  32. package/build/module/lib/scanner/ScannerTypes.d.ts +32 -0
  33. package/build/module/lib/scanner/ScannerTypes.js +32 -0
  34. package/build/module/lib/scanner/Winnower/Winnower.d.ts +5 -2
  35. package/build/module/lib/scanner/Winnower/Winnower.js +20 -16
  36. package/build/module/lib/scanner/Winnower/WinnowerResponse.d.ts +3 -0
  37. package/build/module/lib/scanner/Winnower/WinnowerResponse.js +8 -2
  38. package/build/module/lib/tree/Tree.js +3 -3
  39. package/build/tsconfig.module.tsbuildinfo +1 -1
  40. package/build/tsconfig.tsbuildinfo +1 -1
  41. package/package-lock.json +18266 -0
  42. package/package.json +1 -1
  43. package/src/bin/cli-bin.ts +6 -3
  44. package/src/commands/scan.ts +15 -47
  45. package/src/index.ts +1 -1
  46. package/src/lib/scanner/Dispatcher/DispatchableItem.ts +1 -1
  47. package/src/lib/scanner/Dispatcher/Dispatcher.ts +10 -6
  48. package/src/lib/scanner/Scannable/ScannableItem.ts +10 -7
  49. package/src/lib/scanner/Scanner.ts +20 -23
  50. package/src/lib/scanner/{ScannerEvents.ts → ScannerTypes.ts} +12 -0
  51. package/src/lib/scanner/Winnower/Winnower.ts +21 -15
  52. package/src/lib/scanner/Winnower/WinnowerResponse.ts +9 -1
  53. package/src/lib/tree/Tree.ts +2 -2
  54. package/yarn.lock +5209 -5127
package/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [0.2.10](https://github.com/scanoss/scanoss.js/compare/v0.2.8...v0.2.10) (2022-01-11)
6
+
5
7
  ### [0.2.8](https://github.com/scanoss/scanoss.js/compare/v0.2.6...v0.2.8) (2022-01-10)
6
8
 
7
9
  ### [0.2.6](https://github.com/scanoss/scanoss.js/compare/v0.2.4...v0.2.6) (2022-01-06)
package/README.md CHANGED
@@ -40,7 +40,7 @@ A simple example that scans two files and writes the result in the project folde
40
40
 
41
41
  ```typescript
42
42
  // Import as ES6
43
- import { Scanner, ScannerEvents } from 'scanoss';
43
+ import { Scanner, ScannerEvents, ScannerTypes } from 'scanoss';
44
44
 
45
45
  // Import as CommonJS
46
46
  // const { Scanner, ScannerEvents } = require('scanoss');
@@ -60,11 +60,12 @@ scanner.on(ScannerEvents.SCAN_DONE, (resultPath) => {
60
60
  console.log('Path to results: ', resultPath);
61
61
  });
62
62
 
63
+ const scannerInput = {
64
+ fileList: ['/yourProjectFolder/example1.c', '/yourProjectFolder/example2.c'],
65
+ };
66
+
63
67
  // Launch the scanner
64
- scanner.scanList({
65
- '/yourProjectFolder/example1.c': 'FULL_SCAN',
66
- '/yourProjectFolder/example2.c': 'FULL_SCAN',
67
- });
68
+ scanner.scan(scannerInput);
68
69
  ```
69
70
 
70
71
  ### Events
@@ -10,15 +10,16 @@ function CLIErrorHandler(e) {
10
10
  }
11
11
  async function main() {
12
12
  commander_1.program
13
- .version('0.2.0')
13
+ .version("0.2.9")
14
14
  .description('The SCANOSS JS package provides a simple, easy to consume module for interacting with SCANOSS APIs/Engine.');
15
15
  commander_1.program
16
16
  .command('scan <source>')
17
17
  .description('Scan a folder/file')
18
18
  //.option('-w, --wfp', 'Scan a .wfp file instead of a folder') // In progress
19
19
  .option('-c, --concurrency <number>', 'Number of concurrent connections to use while scanning (optional -default 10)')
20
- .option('-f, --filter <path>', 'Loads an user defined filter (optional)')
20
+ .option('--filter <path>', 'Loads an user defined filter (optional)')
21
21
  .option('-o, --output <filename>', 'Output result file name (optional - default stdout)')
22
+ .option('-F, --flags <flags>', 'Scanning engine flags (1: disable snippet matching, 2 enable snippet ids, 4: disable dependencies, 8: disable licenses, 16: disable copyrights,32: disable vulnerabilities, 64: disable quality, 128: disable cryptography,256: disable best match, 512: Report identified files)')
22
23
  .option('-P, --post-size <postsize>', 'Number of kilobytes to limit the post to while scanning (optional - default 64)')
23
24
  .option('-R, --max-retry <retry>', 'Max number of retries for each POST (optional -default 5)')
24
25
  .option('-M, --timeout <timeout>', 'Timeout (in seconds) for API communication (optional -default 120)')
@@ -38,4 +39,4 @@ catch (e) {
38
39
  console.error(e);
39
40
  process.exit(1);
40
41
  }
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLWJpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW4vY2xpLWJpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSx5Q0FBb0M7QUFDcEMsMkNBQStDO0FBRy9DLFNBQVMsZUFBZSxDQUFDLENBQVE7SUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQztBQUVELEtBQUssVUFBVSxJQUFJO0lBQ2pCLG1CQUFPO1NBQ0osT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUNoQixXQUFXLENBQUMsNEdBQTRHLENBQUMsQ0FBQTtJQUU1SCxtQkFBTztTQUNKLE9BQU8sQ0FBQyxlQUFlLENBQUM7U0FDeEIsV0FBVyxDQUFDLG9CQUFvQixDQUFDO1FBQ2xDLDZFQUE2RTtTQUM1RSxNQUFNLENBQUMsNEJBQTRCLEVBQUUsK0VBQStFLENBQUM7U0FDckgsTUFBTSxDQUFDLHFCQUFxQixFQUFFLHlDQUF5QyxDQUFDO1NBQ3hFLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxxREFBcUQsQ0FBQztTQUN4RixNQUFNLENBQUMsNEJBQTRCLEVBQUUsaUZBQWlGLENBQUM7U0FDdkgsTUFBTSxDQUFDLHlCQUF5QixFQUFFLDJEQUEyRCxDQUFDO1NBQzlGLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxvRUFBb0UsQ0FBQztTQUN2RyxNQUFNLENBQUMsdUJBQXVCLEVBQUUseUVBQXlFLENBQUM7U0FDMUcsTUFBTSxDQUFDLGlCQUFpQixFQUFFLHVFQUF1RSxDQUFDO1NBQ2xHLE1BQU0sQ0FBQyxlQUFlLEVBQUUsOEJBQThCLENBQUM7U0FDdkQsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFLE9BQU8sRUFBRSxFQUFFLEdBQUUsSUFBQSxrQkFBVyxFQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxHQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFBLENBQUMsQ0FBQyxDQUFBLENBQUEsQ0FBQyxDQUFDO1NBQzlGLFdBQVcsQ0FBQyxPQUFPLEVBQUU7OzBEQUVnQyxDQUNyRCxDQUFDO0lBR0YsTUFBTSxtQkFBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7QUFHM0MsQ0FBQztBQUdELElBQUk7SUFDRixJQUFJLEVBQUUsQ0FBQztDQUNSO0FBQUMsT0FBTyxDQUFDLEVBQUU7SUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7Q0FDakIifQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLWJpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iaW4vY2xpLWJpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSx5Q0FBb0M7QUFDcEMsMkNBQStDO0FBRS9DLFNBQVMsZUFBZSxDQUFDLENBQVE7SUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNuQixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQztBQUtELEtBQUssVUFBVSxJQUFJO0lBQ2pCLG1CQUFPO1NBQ0osT0FBTyxDQUFDLE9BQU8sQ0FBQztTQUNoQixXQUFXLENBQUMsNEdBQTRHLENBQUMsQ0FBQTtJQUU1SCxtQkFBTztTQUNKLE9BQU8sQ0FBQyxlQUFlLENBQUM7U0FDeEIsV0FBVyxDQUFDLG9CQUFvQixDQUFDO1FBQ2xDLDZFQUE2RTtTQUM1RSxNQUFNLENBQUMsNEJBQTRCLEVBQUUsK0VBQStFLENBQUM7U0FDckgsTUFBTSxDQUFDLGlCQUFpQixFQUFFLHlDQUF5QyxDQUFDO1NBQ3BFLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxxREFBcUQsQ0FBQztTQUN4RixNQUFNLENBQUMscUJBQXFCLEVBQUUsbVJBQW1SLENBQUM7U0FDbFQsTUFBTSxDQUFDLDRCQUE0QixFQUFFLGlGQUFpRixDQUFDO1NBQ3ZILE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSwyREFBMkQsQ0FBQztTQUM5RixNQUFNLENBQUMseUJBQXlCLEVBQUUsb0VBQW9FLENBQUM7U0FDdkcsTUFBTSxDQUFDLHVCQUF1QixFQUFFLHlFQUF5RSxDQUFDO1NBQzFHLE1BQU0sQ0FBQyxpQkFBaUIsRUFBRSx1RUFBdUUsQ0FBQztTQUNsRyxNQUFNLENBQUMsZUFBZSxFQUFFLDhCQUE4QixDQUFDO1NBQ3ZELE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxPQUFPLEVBQUUsRUFBRSxHQUFFLElBQUEsa0JBQVcsRUFBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsR0FBRSxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQSxDQUFDLENBQUMsQ0FBQSxDQUFBLENBQUMsQ0FBQztTQUM5RixXQUFXLENBQUMsT0FBTyxFQUFFOzswREFFZ0MsQ0FDckQsQ0FBQztJQUdGLE1BQU0sbUJBQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRzNDLENBQUM7QUFHRCxJQUFJO0lBQ0YsSUFBSSxFQUFFLENBQUM7Q0FDUjtBQUFDLE9BQU8sQ0FBQyxFQUFFO0lBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNqQixPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ2pCIn0=
@@ -5,21 +5,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.scanHandler = void 0;
7
7
  const Scanner_1 = require("../lib/scanner/Scanner");
8
- const ScannerEvents_1 = require("../lib/scanner/ScannerEvents");
8
+ const ScannerTypes_1 = require("../lib/scanner/ScannerTypes");
9
9
  const ScannerCfg_1 = require("../lib/scanner/ScannerCfg");
10
10
  const Tree_1 = require("../lib/tree/Tree");
11
11
  const cli_progress_1 = __importDefault(require("cli-progress"));
12
12
  const defaultFilter_1 = require("../lib/filters/defaultFilter");
13
13
  const filtering_1 = require("../lib/filters/filtering");
14
14
  const fs_1 = __importDefault(require("fs"));
15
- var FilterTypes;
16
- (function (FilterTypes) {
17
- FilterTypes["BANNED"] = "BANNED";
18
- FilterTypes["WHITELIST"] = "WHITELIST";
19
- FilterTypes["FULL_SCAN"] = "FULL_SCAN";
20
- FilterTypes["QUICK_SCAN"] = "QUICK_SCAN";
21
- })(FilterTypes || (FilterTypes = {}));
22
- ;
23
15
  // Async function that verify if a path is a folder. If the path is not valid the promise will be rejected
24
16
  const isFolder = (path) => {
25
17
  return new Promise((resolve, reject) => {
@@ -33,14 +25,10 @@ const isFolder = (path) => {
33
25
  });
34
26
  });
35
27
  };
36
- async function printJSON(path) {
37
- const jsonTxt = await fs_1.default.promises.readFile(path, 'utf8');
38
- console.log(jsonTxt);
39
- }
40
28
  async function scanHandler(rootPath, options) {
41
- let fileList = [];
42
- let scannerInput = {};
43
- let filesCounter = 0; // Used by the progress bar
29
+ let scannerInput = { fileList: [] };
30
+ rootPath = rootPath.replace(/\/$/, ''); // Remove trailing slash if exists
31
+ rootPath = rootPath.replace(/^\./, process.env.PWD); // Convert relative path to absolute path.
44
32
  const pathIsFolder = await isFolder(rootPath);
45
33
  // Create scanner and set connections parameters
46
34
  const scannerCfg = new ScannerCfg_1.ScannerCfg();
@@ -48,7 +36,7 @@ async function scanHandler(rootPath, options) {
48
36
  scannerCfg.CONCURRENCY_LIMIT = parseInt(options.concurrency);
49
37
  if (options.postSize)
50
38
  scannerCfg.WFP_FILE_MAX_SIZE = parseInt(options.postSize) * 1024;
51
- if (options.apiUrl)
39
+ if (options.apiurl)
52
40
  scannerCfg.API_URL = options.apiurl;
53
41
  if (options.key)
54
42
  scannerCfg.API_KEY = options.key;
@@ -57,10 +45,11 @@ async function scanHandler(rootPath, options) {
57
45
  if (options.maxRetry)
58
46
  scannerCfg.MAX_RETRIES_FOR_RECOVERABLES_ERRORS = options.maxRetry;
59
47
  const scanner = new Scanner_1.Scanner(scannerCfg);
60
- if (!options.wfp) { // --wfp change the behaviour of the scanner. Scan a WFP File instead of a folder
61
- if (pathIsFolder) { // If a folder is specified, we scan the folder and all its subfolders
62
- if (rootPath.charAt(rootPath.length - 1) !== '/')
63
- rootPath += '/';
48
+ scannerInput.folderRoot = rootPath + '/'; // This will remove the project root path from the results.
49
+ if (options.flags)
50
+ scannerInput.engineFlags = options.flags;
51
+ if (!options.wfp) {
52
+ if (pathIsFolder) {
64
53
  const tree = new Tree_1.Tree(rootPath);
65
54
  const filter = new filtering_1.FilterList('');
66
55
  if (options.filter) {
@@ -74,36 +63,29 @@ async function scanHandler(rootPath, options) {
74
63
  console.error('Reading directory... ');
75
64
  tree.loadFilter(filter);
76
65
  tree.buildTree();
77
- fileList = tree.getFileList();
78
- filesCounter = fileList.length;
79
- // Converts to scanner input format
80
- // This is temporary, until the scanner is ready to receive a ScannerInput object
81
- for (let f of fileList)
82
- scannerInput = Object.assign(scannerInput, { [f]: 'FULL_SCAN' });
66
+ scannerInput.fileList = tree.getFileList();
83
67
  }
84
68
  else {
85
- scannerInput = { [rootPath]: 'FULL_SCAN' };
86
- filesCounter = 1;
69
+ scannerInput.fileList = [rootPath];
87
70
  }
88
71
  }
89
72
  else {
90
73
  const winnowing = fs_1.default.readFileSync(rootPath, { encoding: 'utf-8' });
91
- const reg = /file=/g;
92
- filesCounter = [...winnowing.matchAll(reg)].length;
74
+ //filesCounter = [...winnowing.matchAll(/file=/g)].length;
93
75
  }
94
76
  if (!options.verbose) {
95
77
  const optBar1 = { format: 'Scan Progress: [{bar}] {percentage}% | Scanned {value} files of {total}' };
96
78
  const bar1 = new cli_progress_1.default.SingleBar(optBar1, cli_progress_1.default.Presets.shades_classic);
97
- bar1.start(filesCounter, 0);
98
- scanner.on(ScannerEvents_1.ScannerEvents.DISPATCHER_NEW_DATA, (dispResp) => {
79
+ bar1.start(scannerInput.fileList.length, 0);
80
+ scanner.on(ScannerTypes_1.ScannerEvents.DISPATCHER_NEW_DATA, (dispResp) => {
99
81
  bar1.increment(dispResp.getFilesScanned().length);
100
82
  });
101
- scanner.on(ScannerEvents_1.ScannerEvents.SCAN_DONE, async (resultPath) => { bar1.stop(); });
83
+ scanner.on(ScannerTypes_1.ScannerEvents.SCAN_DONE, async (resultPath) => { bar1.stop(); });
102
84
  }
103
85
  else {
104
- scanner.on(ScannerEvents_1.ScannerEvents.SCANNER_LOG, (logText) => console.error(logText));
86
+ scanner.on(ScannerTypes_1.ScannerEvents.SCANNER_LOG, (logText) => console.error(logText));
105
87
  }
106
- scanner.on(ScannerEvents_1.ScannerEvents.SCAN_DONE, async (resultPath) => {
88
+ scanner.on(ScannerTypes_1.ScannerEvents.SCAN_DONE, async (resultPath) => {
107
89
  if (options.output)
108
90
  await fs_1.default.promises.copyFile(resultPath, options.output);
109
91
  else
@@ -112,7 +94,7 @@ async function scanHandler(rootPath, options) {
112
94
  if (options.wfp)
113
95
  await scanner.scanFromWinnowingFile(rootPath);
114
96
  else
115
- await scanner.scanList(scannerInput);
97
+ await scanner.scan(scannerInput);
116
98
  }
117
99
  exports.scanHandler = scanHandler;
118
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9zY2FuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUFpRDtBQUNqRCxnRUFBNkQ7QUFDN0QsMERBQXVEO0FBQ3ZELDJDQUF3QztBQUd4QyxnRUFBdUM7QUFHdkMsZ0VBQTZEO0FBQzdELHdEQUFzRDtBQUV0RCw0Q0FBb0I7QUFFcEIsSUFBSyxXQUtKO0FBTEQsV0FBSyxXQUFXO0lBQ2QsZ0NBQWlCLENBQUE7SUFDakIsc0NBQXVCLENBQUE7SUFDdkIsc0NBQXVCLENBQUE7SUFDdkIsd0NBQXlCLENBQUE7QUFDM0IsQ0FBQyxFQUxJLFdBQVcsS0FBWCxXQUFXLFFBS2Y7QUFRQSxDQUFDO0FBRUYsMEdBQTBHO0FBQzFHLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBWSxFQUFvQixFQUFFO0lBQ2xELE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDckMsWUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQTtBQUVELEtBQUssVUFBVSxTQUFTLENBQUMsSUFBWTtJQUNuQyxNQUFNLE9BQU8sR0FBRyxNQUFNLFlBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUN6RCxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQ3ZCLENBQUM7QUFJTSxLQUFLLFVBQVUsV0FBVyxD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
100
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tYW5kcy9zY2FuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG9EQUFpRDtBQUNqRCw4REFBMEU7QUFDMUUsMERBQXVEO0FBQ3ZELDJDQUF3QztBQUV4QyxnRUFBdUM7QUFFdkMsZ0VBQTZEO0FBQzdELHdEQUFzRDtBQUV0RCw0Q0FBb0I7QUFFcEIsMEdBQTBHO0FBQzFHLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBWSxFQUFvQixFQUFFO0lBQ2xELE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7UUFDckMsWUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDM0IsSUFBSSxHQUFHLEVBQUU7Z0JBQ1AsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsT0FBTyxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO2FBQzlCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQTtBQUVNLEtBQUssVUFBVSxXQUFXLENBQUMsUUFBZ0IsRUFBRSxPQUFZO0lBRTlELElBQUksWUFBWSxHQUFpQixFQUFDLFFBQVEsRUFBRSxFQUFFLEVBQUMsQ0FBQztJQUVoRCxRQUFRLEdBQUcsUUFBUSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBRSxrQ0FBa0M7SUFDM0UsUUFBUSxHQUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBRSwwQ0FBMEM7SUFDaEcsTUFBTSxZQUFZLEdBQUcsTUFBTSxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFOUMsZ0RBQWdEO0lBQ2hELE1B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
@@ -1,3 +1,3 @@
1
- export * from './lib/scanner/ScannerEvents';
1
+ export * from './lib/scanner/ScannerTypes';
2
2
  export * from './lib/scanner/ScannerCfg';
3
3
  export * from './lib/scanner/Scanner';
@@ -10,7 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- __exportStar(require("./lib/scanner/ScannerEvents"), exports);
13
+ __exportStar(require("./lib/scanner/ScannerTypes"), exports);
14
14
  __exportStar(require("./lib/scanner/ScannerCfg"), exports);
15
15
  __exportStar(require("./lib/scanner/Scanner"), exports);
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsOERBQTRDO0FBQzVDLDJEQUF3QztBQUN4Qyx3REFBcUMifQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTJDO0FBQzNDLDJEQUF3QztBQUN4Qyx3REFBcUMifQ==
@@ -20,4 +20,4 @@ class DispatchableItem {
20
20
  }
21
21
  }
22
22
  exports.DispatchableItem = DispatchableItem;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzcGF0Y2hhYmxlSXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9EaXNwYXRjaGVyL0Rpc3BhdGNoYWJsZUl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsTUFBYSxnQkFBZ0I7SUFLM0IsWUFBWSxnQkFBZ0I7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ3pDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7Q0FFRjtBQTFCRCw0Q0EwQkMifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzcGF0Y2hhYmxlSXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9EaXNwYXRjaGVyL0Rpc3BhdGNoYWJsZUl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsTUFBYSxnQkFBZ0I7SUFLM0IsWUFBWSxnQkFBZ0I7UUFDMUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDO1FBQ3pDLElBQUksQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO0lBQ3hCLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUM7SUFDekIsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQztJQUMvQixDQUFDO0lBRUQsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7Q0FFRjtBQTFCRCw0Q0EwQkMifQ==
@@ -1,5 +1,6 @@
1
1
  import EventEmitter from 'eventemitter3';
2
2
  import { ScannerCfg } from "../ScannerCfg";
3
+ import { DispatchableItem } from './DispatchableItem';
3
4
  export declare class Dispatcher extends EventEmitter {
4
5
  private scannerCfg;
5
6
  private pQueue;
@@ -10,9 +11,9 @@ export declare class Dispatcher extends EventEmitter {
10
11
  constructor(scannerCfg?: ScannerCfg);
11
12
  init(): void;
12
13
  stop(): void;
13
- dispatchItem(disptItem: any): void;
14
+ dispatchItem(disptItem: DispatchableItem): void;
14
15
  handleUnrecoverableError(error: any, disptItem: any): void;
15
16
  emitNoDispatchedItem(disptItem: any): void;
16
17
  errorHandler(error: any, disptItem: any): void;
17
- dispatch(disptItem: any): Promise<void>;
18
+ dispatch(disptItem: DispatchableItem): Promise<void>;
18
19
  }
@@ -10,7 +10,7 @@ const eventemitter3_1 = __importDefault(require("eventemitter3"));
10
10
  const node_fetch_1 = __importDefault(require("node-fetch"));
11
11
  const p_queue_1 = __importDefault(require("p-queue"));
12
12
  const form_data_1 = __importDefault(require("form-data"));
13
- const ScannerEvents_1 = require("../ScannerEvents");
13
+ const ScannerTypes_1 = require("../ScannerTypes");
14
14
  const DispatcherResponse_1 = require("./DispatcherResponse");
15
15
  const ScannerCfg_1 = require("../ScannerCfg");
16
16
  const GlobalControllerAborter_1 = require("./GlobalControllerAborter");
@@ -26,11 +26,11 @@ class Dispatcher extends eventemitter3_1.default {
26
26
  });
27
27
  this.pQueue.clear();
28
28
  this.pQueue.on('idle', () => {
29
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_FINISHED);
29
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_FINISHED);
30
30
  });
31
31
  this.pQueue.on('next', () => {
32
32
  if ((this.pQueue.size + this.pQueue.pending) < this.scannerCfg.DISPATCHER_QUEUE_SIZE_MIN_LIMIT && !this.queueMinLimitReached) {
33
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_QUEUE_SIZE_MIN_LIMIT);
33
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_QUEUE_SIZE_MIN_LIMIT);
34
34
  this.queueMinLimitReached = true;
35
35
  this.queueMaxLimitReached = false;
36
36
  }
@@ -51,7 +51,7 @@ class Dispatcher extends eventemitter3_1.default {
51
51
  this.pQueue.add(() => this.dispatch(disptItem));
52
52
  if (this.pQueue.size + this.pQueue.pending >= this.scannerCfg.DISPATCHER_QUEUE_SIZE_MAX_LIMIT &&
53
53
  !this.queueMaxLimitReached) {
54
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_QUEUE_SIZE_MAX_LIMIT);
54
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_QUEUE_SIZE_MAX_LIMIT);
55
55
  this.queueMaxLimitReached = true;
56
56
  this.queueMinLimitReached = false;
57
57
  }
@@ -60,8 +60,8 @@ class Dispatcher extends eventemitter3_1.default {
60
60
  this.emit('error', error, disptItem);
61
61
  }
62
62
  emitNoDispatchedItem(disptItem) {
63
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_LOG, `[ SCANNER ]: WFP content sended to many times. Some files won't be scanned`);
64
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_ITEM_NO_DISPATCHED, disptItem);
63
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_LOG, `[ SCANNER ]: WFP content sended to many times. Some files won't be scanned`);
64
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_ITEM_NO_DISPATCHED, disptItem);
65
65
  }
66
66
  errorHandler(error, disptItem) {
67
67
  if (!this.globalAbortController.isAborting()) {
@@ -76,7 +76,7 @@ class Dispatcher extends eventemitter3_1.default {
76
76
  return;
77
77
  }
78
78
  // const leftRetry = this.scannerCfg.MAX_RETRIES_FOR_RECOVERABLES_ERRORS - disptItem.getErrorCounter();
79
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_LOG, `[ SCANNER ]: Recoverable error happened sending WFP content to server. Reason: ${error.code || error.name}`);
79
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_LOG, `[ SCANNER ]: Recoverable error happened sending WFP content to server. Reason: ${error.code || error.name}`);
80
80
  this.dispatchItem(disptItem);
81
81
  return;
82
82
  }
@@ -88,9 +88,11 @@ class Dispatcher extends eventemitter3_1.default {
88
88
  const timeoutId = setTimeout(() => timeoutController.abort(), this.scannerCfg.TIMEOUT);
89
89
  try {
90
90
  const form = new form_data_1.default();
91
- const wfpContent = disptItem.getContent();
92
- form.append('filename', Buffer.from(wfpContent), 'data.wfp');
93
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_WFP_SENDED);
91
+ form.append('filename', Buffer.from(disptItem.getContent()), 'data.wfp');
92
+ const engineFlag = disptItem.getWinnowerResponse().getEngineFlags();
93
+ if (engineFlag)
94
+ form.append('flags', engineFlag);
95
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_WFP_SENDED);
94
96
  const response = await (0, node_fetch_1.default)(this.scannerCfg.API_URL, {
95
97
  method: 'post',
96
98
  body: form,
@@ -103,13 +105,13 @@ class Dispatcher extends eventemitter3_1.default {
103
105
  const msg = await response.text();
104
106
  const err = new Error(msg);
105
107
  err["code"] = response.status;
106
- err.name = ScannerEvents_1.ScannerEvents.ERROR_SERVER_SIDE;
108
+ err.name = ScannerTypes_1.ScannerEvents.ERROR_SERVER_SIDE;
107
109
  throw err;
108
110
  }
109
111
  const dataAsText = await response.text();
110
112
  const dataAsObj = JSON.parse(dataAsText);
111
113
  const dispatcherResponse = new DispatcherResponse_1.DispatcherResponse(dataAsObj, disptItem.getContent());
112
- this.emit(ScannerEvents_1.ScannerEvents.DISPATCHER_NEW_DATA, dispatcherResponse);
114
+ this.emit(ScannerTypes_1.ScannerEvents.DISPATCHER_NEW_DATA, dispatcherResponse);
113
115
  return Promise.resolve();
114
116
  }
115
117
  catch (e) {
@@ -121,4 +123,4 @@ class Dispatcher extends eventemitter3_1.default {
121
123
  }
122
124
  }
123
125
  exports.Dispatcher = Dispatcher;
124
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9EaXNwYXRjaGVyL0Rpc3BhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaUNBQWlDO0FBQ2pDLHlDQUF5QztBQUN6QyxrRUFBeUM7QUFDekMsNERBQStCO0FBQy9CLHNEQUE2QjtBQUM3QiwwREFBaUM7QUFFakMsb0RBQWlEO0FBQ2pELDZEQUEwRDtBQUMxRCw4Q0FBMkM7QUFDM0MsdUVBQW9FO0FBRXBFLE1BQWEsVUFBVyxTQUFRLHVCQUFZO0lBYTFDLFlBQVksVUFBVSxHQUFHLElBQUksdUJBQVUsRUFBRTtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGlCQUFNLENBQUM7WUFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCO1NBQy9DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLDZCQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsSUFBSSxDQUFDLElBQUks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
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9EaXNwYXRjaGVyL0Rpc3BhdGNoZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsaUNBQWlDO0FBQ2pDLHlDQUF5QztBQUN6QyxrRUFBeUM7QUFDekMsNERBQStCO0FBQy9CLHNEQUE2QjtBQUM3QiwwREFBaUM7QUFFakMsa0RBQWdEO0FBQ2hELDZEQUEwRDtBQUMxRCw4Q0FBMkM7QUFDM0MsdUVBQW9FO0FBR3BFLE1BQWEsVUFBVyxTQUFRLHVCQUFZO0lBYTFDLFlBQVksVUFBVSxHQUFHLElBQUksdUJBQVUsRUFBRTtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGlCQUFNLENBQUM7WUFDdkIsV0FBVyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsaUJBQWlCO1NBQy9DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLDRCQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUMvQyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQywrQkFBK0IsSUFBSSxDQUFDLElBQUks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
@@ -1,14 +1,15 @@
1
1
  /// <reference types="node" />
2
+ import { WinnowingMode } from "../ScannerTypes";
2
3
  export declare class ScannableItem {
3
4
  private contentSource;
4
5
  private content;
5
- private scanMode;
6
+ private winnowingMode;
6
7
  private fingerprint;
7
8
  private maxSizeWfp;
8
- constructor(content: Buffer, contentSource: string, scanMode: any, maxSizeWfp: number);
9
+ constructor(content: Buffer, contentSource: string, winnowingMode: any, maxSizeWfp: number);
9
10
  getContent(): Buffer;
10
11
  getContentSource(): string;
11
- getScanMode(): any;
12
12
  getFingerprint(): any;
13
+ getWinnowingMode(): WinnowingMode;
13
14
  getMaxSizeWfp(): any;
14
15
  }
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ScannableItem = void 0;
4
4
  class ScannableItem {
5
- constructor(content, contentSource, scanMode, maxSizeWfp) {
5
+ constructor(content, contentSource, winnowingMode, maxSizeWfp) {
6
6
  this.contentSource = contentSource;
7
7
  this.content = content;
8
- this.scanMode = scanMode;
8
+ this.winnowingMode = winnowingMode;
9
9
  this.maxSizeWfp = maxSizeWfp;
10
10
  }
11
11
  getContent() {
@@ -14,15 +14,15 @@ class ScannableItem {
14
14
  getContentSource() {
15
15
  return this.contentSource;
16
16
  }
17
- getScanMode() {
18
- return this.scanMode;
19
- }
20
17
  getFingerprint() {
21
18
  return this.fingerprint;
22
19
  }
20
+ getWinnowingMode() {
21
+ return this.winnowingMode;
22
+ }
23
23
  getMaxSizeWfp() {
24
24
  return this.maxSizeWfp;
25
25
  }
26
26
  }
27
27
  exports.ScannableItem = ScannableItem;
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Nhbm5hYmxlSXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9TY2FubmFibGUvU2Nhbm5hYmxlSXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxNQUFhLGFBQWE7SUFXeEIsWUFBWSxPQUFlLEVBQUUsYUFBcUIsRUFBRSxRQUFhLEVBQUUsVUFBa0I7UUFDbkYsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRU0sYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztDQUdGO0FBdkNELHNDQXVDQyJ9
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2Nhbm5hYmxlSXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvc2Nhbm5lci9TY2FubmFibGUvU2Nhbm5hYmxlSXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxNQUFhLGFBQWE7SUFXeEIsWUFBWSxPQUFlLEVBQUUsYUFBcUIsRUFBRSxhQUFrQixFQUFFLFVBQWtCO1FBQ3hGLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBQ25DLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO0lBQy9CLENBQUM7SUFFTSxVQUFVO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFFTSxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBRU0sZ0JBQWdCO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBRU0sYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztDQUdGO0FBdkNELHNDQXVDQyJ9
@@ -1,14 +1,14 @@
1
1
  import EventEmitter from 'eventemitter3';
2
- import { Winnower } from './Winnower/Winnower';
3
2
  import { DispatcherResponse } from './Dispatcher/DispatcherResponse';
4
3
  import { ScannerCfg } from './ScannerCfg';
4
+ import { ScannerInput } from './ScannerTypes';
5
5
  export declare class Scanner extends EventEmitter {
6
6
  scannerCfg: any;
7
7
  workDirectory: any;
8
8
  scanRoot: any;
9
9
  scannerId: any;
10
- winnower: Winnower;
11
- dispatcher: any;
10
+ private winnower;
11
+ private dispatcher;
12
12
  resultFilePath: any;
13
13
  wfpFilePath: any;
14
14
  scanFinished: any;
@@ -19,6 +19,7 @@ export declare class Scanner extends EventEmitter {
19
19
  filesToScan: any;
20
20
  filesNotScanned: any;
21
21
  finishPromise: Promise<void>;
22
+ private scannerInput;
22
23
  constructor(scannerCfg?: ScannerCfg);
23
24
  init(): void;
24
25
  setWinnowerListeners(): void;
@@ -36,9 +37,8 @@ export declare class Scanner extends EventEmitter {
36
37
  errorHandler(error: any, origin: any): void;
37
38
  createOutputFiles(): void;
38
39
  appendOutputFiles(wfpContent: any, serverResponse: any): void;
39
- scanList(files: any, scanRoot?: string): Promise<void>;
40
40
  scanFromWinnowingFile(wfpFilePath: string): Promise<void>;
41
- scan(scanInput: Array<any>): Promise<void>;
41
+ scan(scannerInput: ScannerInput): Promise<void>;
42
42
  getScannerId(): any;
43
43
  pause(): void;
44
44
  resume(): void;