Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

43
LINES

< > BotCompany Repo | #1002174 // avg processing time bot

JavaX source code [tags: use-pretranspiled] - run with: x30.jar

Libraryless. Click here for Pure Java version (1627L/10K/34K).

!752

static class Event {
  long startTime, duration;
  S question, answer;
  S botID;
}

static PersistentLog<Event> data;

p {
  data = new PersistentLog("data.log");
}

synchronized answer {
  if "avg processing time" {
    if (empty(data)) ret "No data yet";
    long avg = round(getAverage(data, "duration"));
    ret avg + " ms per question (" + l(data) + " requests counted)";
  }
  
  if (match("clear avg processing time", s) && getUserName() != null) {
    data.clear();
    ret "OK, log cleared.";
  }
}

static synchronized S answerPriv(S s) {
  new Matches m;
  if (match("log timing *", s, m)) {
    new Event e;
    copyFields(safeUnstructure(m.unq(0)), e);
    
    // mandatory fields
    assertTrue(e.startTime != 0);
    assertTrue(e.duration >= 0);
    assertTrue(!empty(e.question));
    
    data.add(e);
    ret "OK, logged as item " + l(data);
  }
  ret null;
}

download  show line numbers  debug dex  old transpilations   

Travelled to 14 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, onxytkatvevr, pyentgdyhuwx, pzhvpgtvlbxg, tslmcundralx, tvejysmllsmz, vouqrxazstgt

No comments. add comment

Snippet ID: #1002174
Snippet name: avg processing time bot
Eternal ID of this version: #1002174/1
Text MD5: dbd75303862a6d8b663f2e09b2e5d6f6
Transpilation MD5: 061ffe3f45e9c11725cc1b1a4ef4c740
Author: stefan
Category: javax
Type: JavaX source code
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2016-01-19 18:02:41
Source code size: 930 bytes / 43 lines
Pitched / IR pitched: No / No
Views / Downloads: 669 / 1767
Referenced in: [show references]