source: trip-planner-front/node_modules/@angular/compiler-cli/ngcc/src/locking/lock_file_with_child_process/unlocker.js@ 6a3a178

Last change on this file since 6a3a178 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 6.1 KB
Line 
1(function (factory) {
2 if (typeof module === "object" && typeof module.exports === "object") {
3 var v = factory(require, exports);
4 if (v !== undefined) module.exports = v;
5 }
6 else if (typeof define === "function" && define.amd) {
7 define("@angular/compiler-cli/ngcc/src/locking/lock_file_with_child_process/unlocker", ["require", "exports", "@angular/compiler-cli/src/ngtsc/file_system", "@angular/compiler-cli/src/ngtsc/logging", "@angular/compiler-cli/ngcc/src/locking/lock_file_with_child_process/util"], factory);
8 }
9})(function (require, exports) {
10 "use strict";
11 Object.defineProperty(exports, "__esModule", { value: true });
12 /**
13 * @license
14 * Copyright Google LLC All Rights Reserved.
15 *
16 * Use of this source code is governed by an MIT-style license that can be
17 * found in the LICENSE file at https://angular.io/license
18 */
19 var file_system_1 = require("@angular/compiler-cli/src/ngtsc/file_system");
20 var logging_1 = require("@angular/compiler-cli/src/ngtsc/logging");
21 var util_1 = require("@angular/compiler-cli/ngcc/src/locking/lock_file_with_child_process/util");
22 /// <reference types="node" />
23 // This file is an entry-point for the child-process that is started by `LockFileWithChildProcess`
24 // to ensure that the lock-file is removed when the primary process exits unexpectedly.
25 // We have no choice but to use the node.js file-system here since we are in a separate process
26 // from the main ngcc run, which may be running a mock file-system from within a test.
27 var fs = new file_system_1.NodeJSFileSystem();
28 // We create a logger that has the same logging level as the parent process, since it should have
29 // been passed through as one of the args
30 var logLevel = parseInt(process.argv.pop(), 10);
31 var logger = new logging_1.ConsoleLogger(logLevel);
32 // We must store the parent PID now as it changes if the parent process is killed early
33 var ppid = process.ppid.toString();
34 // The path to the lock-file to remove should have been passed as one of the args
35 var lockFilePath = fs.resolve(process.argv.pop());
36 logger.debug("Starting unlocker at process " + process.pid + " on behalf of process " + ppid);
37 logger.debug("The lock-file path is " + lockFilePath);
38 /**
39 * When the parent process exits (for whatever reason) remove the loc-file if it exists and as long
40 * as it was one that was created by the parent process.
41 */
42 process.on('disconnect', function () {
43 util_1.removeLockFile(fs, logger, lockFilePath, ppid);
44 });
45});
46//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5sb2NrZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvbmdjYy9zcmMvbG9ja2luZy9sb2NrX2ZpbGVfd2l0aF9jaGlsZF9wcm9jZXNzL3VubG9ja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0lBQUE7Ozs7OztPQU1HO0lBQ0gsMkVBQW1FO0lBQ25FLG1FQUE0RDtJQUM1RCxpR0FBc0M7SUFFdEMsOEJBQThCO0lBRTlCLGtHQUFrRztJQUNsRyx1RkFBdUY7SUFFdkYsK0ZBQStGO0lBQy9GLHNGQUFzRjtJQUN0RixJQUFNLEVBQUUsR0FBRyxJQUFJLDhCQUFnQixFQUFFLENBQUM7SUFFbEMsaUdBQWlHO0lBQ2pHLHlDQUF5QztJQUN6QyxJQUFNLFFBQVEsR0FBRyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuRCxJQUFNLE1BQU0sR0FBRyxJQUFJLHVCQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFM0MsdUZBQXVGO0lBQ3ZGLElBQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFFckMsaUZBQWlGO0lBQ2pGLElBQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUcsQ0FBQyxDQUFDO0lBRXJELE1BQU0sQ0FBQyxLQUFLLENBQUMsa0NBQWdDLE9BQU8sQ0FBQyxHQUFHLDhCQUF5QixJQUFNLENBQUMsQ0FBQztJQUN6RixNQUFNLENBQUMsS0FBSyxDQUFDLDJCQUF5QixZQUFjLENBQUMsQ0FBQztJQUV0RDs7O09BR0c7SUFDSCxPQUFPLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRTtRQUN2QixxQkFBYyxDQUFDLEVBQUUsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IEdvb2dsZSBMTEMgQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhbiBNSVQtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZVxuICogZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZSBhdCBodHRwczovL2FuZ3VsYXIuaW8vbGljZW5zZVxuICovXG5pbXBvcnQge05vZGVKU0ZpbGVTeXN0ZW19IGZyb20gJy4uLy4uLy4uLy4uL3NyYy9uZ3RzYy9maWxlX3N5c3RlbSc7XG5pbXBvcnQge0NvbnNvbGVMb2dnZXJ9IGZyb20gJy4uLy4uLy4uLy4uL3NyYy9uZ3RzYy9sb2dnaW5nJztcbmltcG9ydCB7cmVtb3ZlTG9ja0ZpbGV9IGZyb20gJy4vdXRpbCc7XG5cbi8vLyA8cmVmZXJlbmNlIHR5cGVzPVwibm9kZVwiIC8+XG5cbi8vIFRoaXMgZmlsZSBpcyBhbiBlbnRyeS1wb2ludCBmb3IgdGhlIGNoaWxkLXByb2Nlc3MgdGhhdCBpcyBzdGFydGVkIGJ5IGBMb2NrRmlsZVdpdGhDaGlsZFByb2Nlc3NgXG4vLyB0byBlbnN1cmUgdGhhdCB0aGUgbG9jay1maWxlIGlzIHJlbW92ZWQgd2hlbiB0aGUgcHJpbWFyeSBwcm9jZXNzIGV4aXRzIHVuZXhwZWN0ZWRseS5cblxuLy8gV2UgaGF2ZSBubyBjaG9pY2UgYnV0IHRvIHVzZSB0aGUgbm9kZS5qcyBmaWxlLXN5c3RlbSBoZXJlIHNpbmNlIHdlIGFyZSBpbiBhIHNlcGFyYXRlIHByb2Nlc3Ncbi8vIGZyb20gdGhlIG1haW4gbmdjYyBydW4sIHdoaWNoIG1heSBiZSBydW5uaW5nIGEgbW9jayBmaWxlLXN5c3RlbSBmcm9tIHdpdGhpbiBhIHRlc3QuXG5jb25zdCBmcyA9IG5ldyBOb2RlSlNGaWxlU3lzdGVtKCk7XG5cbi8vIFdlIGNyZWF0ZSBhIGxvZ2dlciB0aGF0IGhhcyB0aGUgc2FtZSBsb2dnaW5nIGxldmVsIGFzIHRoZSBwYXJlbnQgcHJvY2Vzcywgc2luY2UgaXQgc2hvdWxkIGhhdmVcbi8vIGJlZW4gcGFzc2VkIHRocm91Z2ggYXMgb25lIG9mIHRoZSBhcmdzXG5jb25zdCBsb2dMZXZlbCA9IHBhcnNlSW50KHByb2Nlc3MuYXJndi5wb3AoKSEsIDEwKTtcbmNvbnN0IGxvZ2dlciA9IG5ldyBDb25zb2xlTG9nZ2VyKGxvZ0xldmVsKTtcblxuLy8gV2UgbXVzdCBzdG9yZSB0aGUgcGFyZW50IFBJRCBub3cgYXMgaXQgY2hhbmdlcyBpZiB0aGUgcGFyZW50IHByb2Nlc3MgaXMga2lsbGVkIGVhcmx5XG5jb25zdCBwcGlkID0gcHJvY2Vzcy5wcGlkLnRvU3RyaW5nKCk7XG5cbi8vIFRoZSBwYXRoIHRvIHRoZSBsb2NrLWZpbGUgdG8gcmVtb3ZlIHNob3VsZCBoYXZlIGJlZW4gcGFzc2VkIGFzIG9uZSBvZiB0aGUgYXJnc1xuY29uc3QgbG9ja0ZpbGVQYXRoID0gZnMucmVzb2x2ZShwcm9jZXNzLmFyZ3YucG9wKCkhKTtcblxubG9nZ2VyLmRlYnVnKGBTdGFydGluZyB1bmxvY2tlciBhdCBwcm9jZXNzICR7cHJvY2Vzcy5waWR9IG9uIGJlaGFsZiBvZiBwcm9jZXNzICR7cHBpZH1gKTtcbmxvZ2dlci5kZWJ1ZyhgVGhlIGxvY2stZmlsZSBwYXRoIGlzICR7bG9ja0ZpbGVQYXRofWApO1xuXG4vKipcbiAqIFdoZW4gdGhlIHBhcmVudCBwcm9jZXNzIGV4aXRzIChmb3Igd2hhdGV2ZXIgcmVhc29uKSByZW1vdmUgdGhlIGxvYy1maWxlIGlmIGl0IGV4aXN0cyBhbmQgYXMgbG9uZ1xuICogYXMgaXQgd2FzIG9uZSB0aGF0IHdhcyBjcmVhdGVkIGJ5IHRoZSBwYXJlbnQgcHJvY2Vzcy5cbiAqL1xucHJvY2Vzcy5vbignZGlzY29ubmVjdCcsICgpID0+IHtcbiAgcmVtb3ZlTG9ja0ZpbGUoZnMsIGxvZ2dlciwgbG9ja0ZpbGVQYXRoLCBwcGlkKTtcbn0pO1xuIl19
Note: See TracBrowser for help on using the repository browser.