Mike Gerwitz

Activist for User Freedom

aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Gerwitz <gerwitzm@lovullo.com>2017-04-07 12:28:17 -0400
committerMike Gerwitz <gerwitzm@lovullo.com>2017-06-08 14:38:32 -0400
commit0cf800f5d9b7a198928a24d79c909d6a46110283 (patch)
treeec63298a95770868872992ce1f48d73d6c134a50
parent54d2eff8b90eac9838fd0168dab2f454b0f8dbf2 (diff)
downloadliza-0cf800f5d9b7a198928a24d79c909d6a46110283.tar.gz
liza-0cf800f5d9b7a198928a24d79c909d6a46110283.tar.bz2
liza-0cf800f5d9b7a198928a24d79c909d6a46110283.zip
Add event graph diagram
* doc/diagram/event-graph.dot: Add graph. * doc/diagram/.gitignore: Ignore `*.svg'.
-rw-r--r--doc/diagram/.gitignore2
-rw-r--r--doc/diagram/event-graph.dot181
2 files changed, 183 insertions, 0 deletions
diff --git a/doc/diagram/.gitignore b/doc/diagram/.gitignore
new file mode 100644
index 0000000..b231c60
--- /dev/null
+++ b/doc/diagram/.gitignore
@@ -0,0 +1,2 @@
+*.svg
+
diff --git a/doc/diagram/event-graph.dot b/doc/diagram/event-graph.dot
new file mode 100644
index 0000000..fd418a6
--- /dev/null
+++ b/doc/diagram/event-graph.dot
@@ -0,0 +1,181 @@
+// Graph of `on' event hooks between classes.
+//
+// This document is part of the Liza Data Collection Framework manual.
+// Copyright (C) 2017 LoVullo Associates, Inc.
+//
+// Permission is granted to copy, distribute and/or modify this document
+// under the terms of the GNU Free Documentation License, Version 1.3
+// or any later version published by the Free Software Foundation;
+// with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
+// Texts. A copy of the license is included in the section entitled ``GNU
+// Free Documentation License''.
+//
+// This does not take into consideration (with maybe some exceptions)
+// callbacks that do not use EventEmitter, and so isn't comprehensive, but
+// does show some pain points to be addressed.
+//
+// This file may or may not be up to date---be sure to review commits since
+// this graph was created.
+//
+digraph "Liza Event Graph (Non-Comprehensive)" {
+ graph [rankdir="LR", ranksep="5" mindist="1", overlap="scale", root="Client"];
+
+ "AccessLog"[shape=component];
+ "AssertionClientDebugTab"[shape=component];
+ "BucketClientDebugTab"[shape=component];
+ "Bucket"[shape=component];
+ "ClassifyClientDebugTab"[shape=component];
+ "ClientDataProxy"[shape=component];
+ "ClientDebugDialog"[shape=component];
+ "ClientDebug"[shape=component];
+ "ClientQuote"[shape=component,color="#007777",fontcolor="#005555",fontsize="22"];
+ "Client"[shape=component,color="#dd0000",fontcolor="#770000",fontsize="30"];
+ "controller"[shape=component];
+ "Daemon"[shape=component];
+ "DataApiManager"[shape=component];
+ "DataApi"[shape=component];
+ "DomContext"[shape=component];
+ "DomField"[shape=component];
+ "ErrorStyler"[shape=component];
+ "GeneralStepUi"[shape=component];
+ "GroupUi"[shape=component];
+ "HashNav"[shape=component];
+ "http_server"[shape=component];
+ "MongoServerDao"[shape=component];
+ "NavStyler"[shape=component];
+ "Program"[shape=component];
+ "QuoteDataBucketCipher"[shape=component];
+ "Quote"[shape=component];
+ "ResilientMemcache"[shape=component];
+ "RootDomContext"[shape=component];
+ "Server"[shape=component];
+ "Sidebar"[shape=component];
+ "SimpleBucketListener"[shape=component];
+ "StagingBucketAutoDiscard"[shape=component];
+ "StagingBucket"[shape=component,color="#0000dd",fontsize="22"];
+ "Step"[shape=component];
+ "StepUiBuilder"[shape=component];
+ "UiNavBar"[shape=component];
+ "Ui"[shape=component];
+ "UiStyler"[shape=component];
+ "UserRequest"[shape=component];
+ "UserSession"[shape=component];
+ "ValidStateMonitor"[shape=component];
+
+
+ "SimpleBucketListener" -> "Client" [label="quoteChange"];
+ "SimpleBucketListener" -> "ClientQuote" [label="dataUpdate",color="#007777",fontcolor="#005555"];
+ "SimpleBucketListener" -> "ClientQuote" [label="stepChange",color="#007777",fontcolor="#005555"];
+
+ "ClassifyClientDebugTab" -> "ClientQuote" [label="classify",color="#007777",fontcolor="#005555"];
+
+ "BucketClientDebugTab" -> "StagingBucket" [label="preStagingUpdate",color="#0000dd",fontcolor="#000077"];
+ "BucketClientDebugTab" -> "StagingBucket" [label="stagingUpdate",color="#0000dd",fontcolor="#000077"];
+ "BucketClientDebugTab" -> "StagingBucket" [label="preCommit",color="#0000dd",fontcolor="#000077"];
+
+ "ClientDebug" -> "BucketClientDebugTab" [label="fieldOverlayToggle"];
+ "ClientDebug" -> "ClassifyClientDebugTab" [label="classifyNoHideToggle"];
+ "ClientDebug" -> "ClientDebugDialog" [label="autoloadToggle"];
+ "ClientDebug" -> "ClientDebugDialog" [label="errDebugToggle"];
+
+ "AssertionClientDebugTab" -> "Program" [label="assert"]
+ "AssertionClientDebugTab" -> "Client" [label="trigger"]
+
+ "ClientQuote" -> "Quote" [label="stepChange"];
+ "ClientQuote" -> "StagingBucket" [label="update",color="#0000dd",fontcolor="#000077"];
+ "ClientQuote" -> "StagingBucket" [label="preStagingUpdate",color="#0000dd",fontcolor="#000077"];
+ "ClientQuote" -> "StagingBucket" [label="stagingUpdate",color="#0000dd",fontcolor="#000077"];
+
+ "Client" -> "Nav" [label="quoteIdChange",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Nav" [label="stepChange",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Nav" [label="preStepChange",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Nav" [label="unload",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "ClientQuote" [label="classify",color="#dd0000:#007777",fontcolor="#770000:#005555"];
+ "Client" -> "ClientQuote" [label="preDataUpdate",color="#dd0000:#007777",fontcolor="#770000:#005555"];
+ "Client" -> "Program" [label="error",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "DataApiManager" [label="fieldLoading",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "DataApiManager" [label="updateFieldData",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "DataApiManager" [label="clearFieldData",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "DataApiManager" [label="fieldLoaded",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "DataApiManager" [label="error",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "ClientDataProxy" [label="received",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "RootDomContext" [label="error",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Ui" [label="stepChange",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Ui" [label="action",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Ui" [label="error",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Ui" [label="renderStep",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Ui" [label="preRenderStep",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Sidebar" [label="uwmanage",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Sidebar" [label="quoteIdClick",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "Sidebar" [label="agentIdClick",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "GeneralStepUi" [label="dataChange",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "GeneralStepUi" [label="indexAdd",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "GeneralStepUi" [label="indexRemove",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "GeneralStepUi" [label="indexReset",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "ValidStateMonitor" [label="failure",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "ValidStateMonitor" [label="fix",color="#dd0000",fontcolor="#770000"];
+ "Client" -> "ValidStateMonitor" [label="error",color="#dd0000",fontcolor="#770000"];
+
+ "StagingBucket" -> "Bucket" [label="update"];
+
+ "StagingBucketAutoDiscard" -> "StagingBucket" [label="preStagingUpdate",color="#0000dd",fontcolor="#000077"];
+
+ "DataApiManager" -> "DataApi" [label="error"];
+
+ "DomContext" -> "DomField" [label="error"];
+
+ "HashNav" -> "Nav" [label="quoteIdChange"];
+ "HashNav" -> "Nav" [label="stepChange"];
+
+ "NavStyler" -> "Nav" [label="stepChange"];
+
+ "Ui" -> "UiStyler" [label="questionHover"];
+ "Ui" -> "UiStyler" [label="questionFocus"];
+ "Ui" -> "UiNavBar" [label="click"];
+ "Ui" -> "StepUi" [label="error"];
+ "Ui" -> "StepUi" [label="action"];
+ "Ui" -> "StepUi" [label="displayChanged"]
+
+ "ErrorStyler" -> "UiStyler" [label="fieldError"];
+ "ErrorStyler" -> "UiStyler" [label="fieldFixed"];
+
+ "Sidebar" -> "ClientQuote" [label="dataCommit",color="#007777",fontcolor="#005555"];
+
+ "StepUiBuilder" -> "GroupUi" [label="indexAdd"];
+ "StepUiBuilder" -> "GroupUi" [label="indexRemove"];
+ "StepUiBuilder" -> "GroupUi" [label="action"];
+ "StepUiBuilder" -> "GroupUi" [label="postAddRow"];
+ "StepUiBuilder" -> "GroupUi" [label="invalidate"];
+
+ "GeneralStepUi" -> "Step" [label="updateQuote"];
+ "GeneralStepUi" -> "StagingBucket" [label="stagingUpdate",color="#0000dd",fontcolor="#000077"];
+
+ "GroupUi" -> "ClientQuote" [label="preDataUpdate",color="#007777",fontcolor="#005555"];
+ "GroupUi" -> "ClientQuote" [label="dataCommit",color="#007777",fontcolor="#005555"];
+
+ "Server" -> "MongoServerDao" [label="connectError"];
+ "Server" -> "MongoServerDao" [label="saveQuoteError"];
+ "Server" -> "MongoServerDao" [label="seqError"];
+ "Server" -> "MongoServerDao" [label="seqInit"];
+ "Server" -> "MongoServerDao" [label="ready"];
+ "Server" -> "Quote" [label="stepChange"];
+ "Server" -> "QuoteDataBucketCipher" [label="encrecover"];
+
+ "UserRequest" -> "UserSession" [label="ready"];
+
+ "Daemon" -> "ResilientMemcache" [label="preConnect"];
+ "Daemon" -> "ResilientMemcache" [label="connect"];
+ "Daemon" -> "ResilientMemcache" [label="connectError"];
+ "Daemon" -> "ResilientMemcache" [label="queuePurged"];
+ "Daemon" -> "ResilientMemcache" [label="error"];
+
+ "http_server" -> "UserRequest" [label="ready"];
+ "http_server" -> "Server" [label="connection"];
+ "http_server" -> "Server" [label="close"];
+ "http_server" -> "Server" [label="clientError"];
+
+ "controller" -> "Server" [label="quotePverUpdate"];
+
+ "AccessLog" -> "UserRequest" [label="end"];
+}
+