{"remainingRequest":"/var/www/html/payroll_manager/front-end/node_modules/thread-loader/dist/cjs.js??ref--4-2!/var/www/html/payroll_manager/front-end/node_modules/ts-loader/index.js??ref--4-3!/var/www/html/payroll_manager/front-end/node_modules/tslint-loader/index.js!/var/www/html/payroll_manager/front-end/src/main/webapp/app/modules/administration/metrics/metrics-modal.tsx","dependencies":[{"path":"/var/www/html/payroll_manager/front-end/src/main/webapp/app/modules/administration/metrics/metrics-modal.tsx","mtime":1533613272769},{"path":"/var/www/html/payroll_manager/front-end/node_modules/react-hot-loader/webpack.js","mtime":1505850161000},{"path":"/var/www/html/payroll_manager/front-end/node_modules/cache-loader/dist/cjs.js","mtime":0},{"path":"/var/www/html/payroll_manager/front-end/node_modules/thread-loader/dist/cjs.js","mtime":0},{"path":"/var/www/html/payroll_manager/front-end/node_modules/ts-loader/index.js","mtime":1530127508000},{"path":"/var/www/html/payroll_manager/front-end/node_modules/tslint-loader/index.js","mtime":1519899048000}],"contextDependencies":[],"result":["import * as tslib_1 from \"tslib\";\nimport React from 'react';\nimport { Table, Modal, ModalHeader, ModalBody, ModalFooter, Button, Input, Badge, Row } from 'reactstrap';\nimport ThreadItem from './thread-item';\nvar MetricsModal = /** @class */ (function (_super) {\n tslib_1.__extends(MetricsModal, _super);\n function MetricsModal() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n badgeFilter: '',\n searchFilter: ''\n };\n _this.computeFilteredList = function () {\n var _a = _this.state, badgeFilter = _a.badgeFilter, searchFilter = _a.searchFilter;\n var filteredList = _this.props.threadDump.threads;\n if (badgeFilter !== '') {\n filteredList = filteredList.filter(function (t) { return t.threadState === badgeFilter; });\n }\n if (searchFilter !== '') {\n filteredList = filteredList.filter(function (t) { return t.lockName && t.lockName.toLowerCase().includes(searchFilter.toLowerCase()); });\n }\n return filteredList;\n };\n _this.computeCounters = function () {\n var threadDumpAll = 0;\n var threadDumpRunnable = 0;\n var threadDumpWaiting = 0;\n var threadDumpTimedWaiting = 0;\n var threadDumpBlocked = 0;\n _this.props.threadDump.threads.forEach(function (t) {\n switch (t.threadState) {\n case 'RUNNABLE':\n threadDumpRunnable++;\n break;\n case 'WAITING':\n threadDumpWaiting++;\n break;\n case 'TIMED_WAITING':\n threadDumpTimedWaiting++;\n break;\n case 'BLOCKED':\n threadDumpBlocked++;\n break;\n default:\n break;\n }\n });\n threadDumpAll = threadDumpRunnable + threadDumpWaiting + threadDumpTimedWaiting + threadDumpBlocked;\n return { threadDumpAll: threadDumpAll, threadDumpRunnable: threadDumpRunnable, threadDumpWaiting: threadDumpWaiting, threadDumpTimedWaiting: threadDumpTimedWaiting, threadDumpBlocked: threadDumpBlocked };\n };\n _this.getBadgeClass = function (threadState) {\n if (threadState === 'RUNNABLE') {\n return 'badge-success';\n }\n else if (threadState === 'WAITING') {\n return 'badge-info';\n }\n else if (threadState === 'TIMED_WAITING') {\n return 'badge-warning';\n }\n else if (threadState === 'BLOCKED') {\n return 'badge-danger';\n }\n };\n _this.updateBadgeFilter = function (badge) { return function () { return _this.setState({ badgeFilter: badge }); }; };\n _this.updateSearchFilter = function (event) { return _this.setState({ searchFilter: event.target.value }); };\n return _this;\n }\n MetricsModal.prototype.render = function () {\n var _this = this;\n var _a = this.props, showModal = _a.showModal, handleClose = _a.handleClose, threadDump = _a.threadDump;\n var counters = {};\n var filteredList = null;\n if (threadDump && threadDump.threads) {\n counters = this.computeCounters();\n filteredList = this.computeFilteredList();\n }\n return (React.createElement(Modal, { isOpen: showModal, toggle: handleClose, className: \"modal-lg\" },\n React.createElement(ModalHeader, { toggle: handleClose }, \"Threads dump\"),\n React.createElement(ModalBody, null,\n React.createElement(Badge, { color: \"primary\", className: \"hand\", onClick: this.updateBadgeFilter('') },\n \"All\\u00A0\",\n React.createElement(Badge, { pill: true }, counters.threadDumpAll || 0)),\n \"\\u00A0\",\n React.createElement(Badge, { color: \"success\", className: \"hand\", onClick: this.updateBadgeFilter('RUNNABLE') },\n \"Runnable\\u00A0\",\n React.createElement(Badge, { pill: true }, counters.threadDumpRunnable || 0)),\n \"\\u00A0\",\n React.createElement(Badge, { color: \"info\", className: \"hand\", onClick: this.updateBadgeFilter('WAITING') },\n \"Waiting\\u00A0\",\n React.createElement(Badge, { pill: true }, counters.threadDumpWaiting || 0)),\n \"\\u00A0\",\n React.createElement(Badge, { color: \"warning\", className: \"hand\", onClick: this.updateBadgeFilter('TIMED_WAITING') },\n \"Timed Waiting\\u00A0\",\n React.createElement(Badge, { pill: true }, counters.threadDumpTimedWaiting || 0)),\n \"\\u00A0\",\n React.createElement(Badge, { color: \"danger\", className: \"hand\", onClick: this.updateBadgeFilter('BLOCKED') },\n \"Blocked\\u00A0\",\n React.createElement(Badge, { pill: true }, counters.threadDumpBlocked || 0)),\n \"\\u00A0\",\n React.createElement(\"div\", { className: \"mt-2\" }, \"\\u00A0\"),\n React.createElement(Input, { type: \"text\", className: \"form-control\", placeholder: \"Filter by Lock Name...\", onChange: this.updateSearchFilter }),\n React.createElement(\"div\", { style: { padding: '10px' } }, filteredList\n ? filteredList.map(function (threadDumpInfo, i) { return (React.createElement(\"div\", { key: \"dump-\" + i },\n React.createElement(\"h6\", null,\n ' ',\n React.createElement(\"span\", { className: 'badge ' + _this.getBadgeClass(threadDumpInfo.threadState) }, threadDumpInfo.threadState),\n \"\\u00A0\",\n threadDumpInfo.threadName,\n \" (ID \",\n threadDumpInfo.threadId,\n \")\\u00A0\"),\n React.createElement(ThreadItem, { threadDumpInfo: threadDumpInfo }),\n React.createElement(Row, null,\n React.createElement(Table, { responsive: true },\n React.createElement(\"thead\", null,\n React.createElement(\"tr\", null,\n React.createElement(\"th\", null, \"Blocked Time\"),\n React.createElement(\"th\", null, \"Blocked Count\"),\n React.createElement(\"th\", null, \"Waited Time\"),\n React.createElement(\"th\", null, \"Waited Count\"),\n React.createElement(\"th\", null, \"Lock Name\"))),\n React.createElement(\"tbody\", null,\n React.createElement(\"tr\", { key: threadDumpInfo.lockName },\n React.createElement(\"td\", null, threadDumpInfo.blockedTime),\n React.createElement(\"td\", null, threadDumpInfo.blockedCount),\n React.createElement(\"td\", null, threadDumpInfo.waitedTime),\n React.createElement(\"td\", null, threadDumpInfo.waitedCount),\n React.createElement(\"td\", { className: \"thread-dump-modal-lock\", title: threadDumpInfo.lockName },\n React.createElement(\"code\", null, threadDumpInfo.lockName)))))))); })\n : null)),\n React.createElement(ModalFooter, null,\n React.createElement(Button, { color: \"primary\", onClick: handleClose }, \"Close\"))));\n };\n return MetricsModal;\n}(React.Component));\nexport { MetricsModal };\nexport default MetricsModal;\n",{"version":3,"file":"/var/www/html/payroll_manager/front-end/src/main/webapp/app/modules/administration/metrics/metrics-modal.tsx","sourceRoot":"","sources":["/var/www/html/payroll_manager/front-end/node_modules/tslint-loader/index.js!/var/www/html/payroll_manager/front-end/src/main/webapp/app/modules/administration/metrics/metrics-modal.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\nimport { Table, Modal, ModalHeader, ModalBody, ModalFooter, Button, Input, Badge, Row } from 'reactstrap';\n\nimport ThreadItem from './thread-item';\n\nexport interface IMetricsModalProps {\n showModal: boolean;\n handleClose: Function;\n threadDump: any;\n}\n\nexport interface IMetricsModalState {\n badgeFilter: string;\n searchFilter: string;\n}\n\nexport class MetricsModal extends React.Component {\n state: IMetricsModalState = {\n badgeFilter: '',\n searchFilter: ''\n };\n\n computeFilteredList = () => {\n const { badgeFilter, searchFilter } = this.state;\n let filteredList = this.props.threadDump.threads;\n if (badgeFilter !== '') {\n filteredList = filteredList.filter(t => t.threadState === badgeFilter);\n }\n if (searchFilter !== '') {\n filteredList = filteredList.filter(t => t.lockName && t.lockName.toLowerCase().includes(searchFilter.toLowerCase()));\n }\n return filteredList;\n };\n\n computeCounters = () => {\n let threadDumpAll = 0;\n let threadDumpRunnable = 0;\n let threadDumpWaiting = 0;\n let threadDumpTimedWaiting = 0;\n let threadDumpBlocked = 0;\n\n this.props.threadDump.threads.forEach(t => {\n switch (t.threadState) {\n case 'RUNNABLE':\n threadDumpRunnable++;\n break;\n case 'WAITING':\n threadDumpWaiting++;\n break;\n case 'TIMED_WAITING':\n threadDumpTimedWaiting++;\n break;\n case 'BLOCKED':\n threadDumpBlocked++;\n break;\n default:\n break;\n }\n });\n\n threadDumpAll = threadDumpRunnable + threadDumpWaiting + threadDumpTimedWaiting + threadDumpBlocked;\n return { threadDumpAll, threadDumpRunnable, threadDumpWaiting, threadDumpTimedWaiting, threadDumpBlocked };\n };\n\n getBadgeClass = threadState => {\n if (threadState === 'RUNNABLE') {\n return 'badge-success';\n } else if (threadState === 'WAITING') {\n return 'badge-info';\n } else if (threadState === 'TIMED_WAITING') {\n return 'badge-warning';\n } else if (threadState === 'BLOCKED') {\n return 'badge-danger';\n }\n };\n\n updateBadgeFilter = badge => () => this.setState({ badgeFilter: badge });\n\n updateSearchFilter = event => this.setState({ searchFilter: event.target.value });\n\n render() {\n const { showModal, handleClose, threadDump } = this.props;\n let counters = {} as any;\n let filteredList = null;\n if (threadDump && threadDump.threads) {\n counters = this.computeCounters();\n filteredList = this.computeFilteredList();\n }\n\n return (\n \n Threads dump\n \n \n All \n {counters.threadDumpAll || 0}\n  \n \n Runnable \n {counters.threadDumpRunnable || 0}\n  \n \n Waiting \n {counters.threadDumpWaiting || 0}\n  \n \n Timed Waiting \n {counters.threadDumpTimedWaiting || 0}\n  \n \n Blocked \n {counters.threadDumpBlocked || 0}\n  \n
 
\n \n
\n {filteredList\n ? filteredList.map((threadDumpInfo, i) => (\n
\n
\n {' '}\n {threadDumpInfo.threadState} \n {threadDumpInfo.threadName} (ID {threadDumpInfo.threadId}) \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
Blocked TimeBlocked CountWaited TimeWaited CountLock Name
{threadDumpInfo.blockedTime}{threadDumpInfo.blockedCount}{threadDumpInfo.waitedTime}{threadDumpInfo.waitedCount}\n {threadDumpInfo.lockName}\n
\n
\n
\n ))\n : null}\n
\n
\n \n \n \n
\n );\n }\n}\n\nexport default MetricsModal;\n"]}]}