Tidy up some background stuff

This commit is contained in:
Starbeamrainbowlabs 2022-03-27 00:52:55 +00:00
parent 0269880ee4
commit fd6e088a7e
Signed by: sbrl
GPG key ID: 1BE5172E637709C2
3 changed files with 19 additions and 7 deletions

View file

@ -1,5 +1,7 @@
"use strict"; "use strict";
import pretty_ms from 'pretty-ms';
import { once } from './misc/events.mjs'; import { once } from './misc/events.mjs';
class SystemQueryClient { class SystemQueryClient {
@ -20,15 +22,24 @@ class SystemQueryClient {
abort.abort(); abort.abort();
}, { once: true }); }, { once: true });
const timings = [{ id: null, hostname: Symbol("START"), timing: `+0ms` }];
const start = new Date();
let count = 0; let count = 0;
while(source.readyState !== EventSource.CLOSED) { while(source.readyState !== EventSource.CLOSED) {
let item = await once(source, "table", abort.signal); const item = await once(source, "table", abort.signal);
if(item.type === "abort") break; if(item.type === "abort") break;
yield JSON.parse(item.data); const item_parsed = JSON.parse(item.data);
timings.push({
id: item_parsed.peer.id.substring(0, 7),
hostname: item_parsed.peer.name,
timing: `+${pretty_ms(new Date() - start)}`
});
yield item_parsed;
count++; count++;
} }
console.log(`FETCH TABLE ${table_name}: ${count} items returned`); console.log(`FETCH TABLE ${table_name}: ${count} items returned in ${pretty_ms(new Date() - start)}`);
console.table(timings);
} }
async fetch_json(path) { async fetch_json(path) {

View file

@ -1,2 +1,6 @@
"use strict"; "use strict";
/**
* Used in esbuild to blackhole core Node.js modules that
* dependencies import.
*/
export default null; export default null;

View file

@ -3,7 +3,6 @@
import Emel from 'emel'; import Emel from 'emel';
import fa_emel from './forkawesome_emel.mjs'; import fa_emel from './forkawesome_emel.mjs';
import AbstractUIItem from './AbstractUIItem.mjs';
import ui_item_index from './ui_item_index.mjs'; import ui_item_index from './ui_item_index.mjs';
import tabledefs from '../tabledefs/index.mjs'; import tabledefs from '../tabledefs/index.mjs';
@ -43,11 +42,9 @@ class TableView {
let el = document.createElement("div"); let el = document.createElement("div");
el.classList.add("data-item"); el.classList.add("data-item");
console.log(ui_item_index[def.type]);
if(typeof ui_item_index[def.type] !== "undefined") { if(typeof ui_item_index[def.type] !== "undefined") {
let item_manager = new ui_item_index[def.type](el, def); let item_manager = new ui_item_index[def.type](el, def);
this.el_parts.set(def.name, item_manager); this.el_parts.set(def.name, item_manager);
console.log(`TableView:UIItem create`, item_manager);
} }
else { else {
console.warn(`Unknown item definition type '${def.type}', ignoring. This is probably a bug.`, def); console.warn(`Unknown item definition type '${def.type}', ignoring. This is probably a bug.`, def);
@ -85,7 +82,7 @@ class TableView {
* @return {void} * @return {void}
*/ */
append_table(peer, table) { append_table(peer, table) {
console.log(`TableView:append PEER`, peer, `TABLE`, table); // console.log(`TableView:append PEER`, peer, `TABLE`, table);
for(let [ def_name, item_manager ] of this.el_parts) { for(let [ def_name, item_manager ] of this.el_parts) {
if(item_manager === null) continue; if(item_manager === null) continue;
item_manager.append(peer, table); item_manager.append(peer, table);