Move UML/ directory and Architecture.md from Docs/ to docs/. Rename Architecture.md to UML_ARCHITECTURE.md to avoid collision with existing docs/ARCHITECTURE.md (docs organization file). Update all references in README.md, CONTRIBUTING.md, CLAUDE.md, and the architecture file itself. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
451 lines
8.1 KiB
HTML
451 lines
8.1 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>ChainOfResponsibilityDetector</title>
|
|
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,300italic,400italic,700italic|Source+Code+Pro:300,400,700' rel='stylesheet' type='text/css'>
|
|
<link rel="stylesheet" href="../assets/css/bootstrap.css">
|
|
<link rel="stylesheet" href="../assets/css/jquery.bonsai.css">
|
|
<link rel="stylesheet" href="../assets/css/main.css">
|
|
<link rel="stylesheet" href="../assets/icon-font/icons.css">
|
|
<script type="text/javascript" src="../assets/js/jquery-2.1.0.min.js"></script>
|
|
<script type="text/javascript" src="../assets/js/bootstrap.js"></script>
|
|
<script type="text/javascript" src="../assets/js/jquery.bonsai.js"></script>
|
|
<script type="text/javascript" src="../assets/js/imageMapResizer.min.js"></script>
|
|
|
|
</head>
|
|
<body>
|
|
<div>
|
|
|
|
<!-- Name Title -->
|
|
|
|
<h1>ChainOfResponsibilityDetector</h1>
|
|
|
|
<!-- Type and Stereotype -->
|
|
|
|
<section style="margin-top: .5em;">
|
|
<span class="alert alert-info">
|
|
<span class="node-icon staruml-icon icon-UMLClass"></span>
|
|
UMLClass
|
|
</span>
|
|
|
|
</section>
|
|
|
|
<!-- Path -->
|
|
|
|
<section style="margin-top: 10px">
|
|
|
|
|
|
|
|
|
|
<span class="label label-info"><a href='cf9c8b720f3815adeccaf3ef6e48c6c4.html'><span class='node-icon staruml-icon icon-Project'></span>Skill Seekers</a></span>
|
|
|
|
<span>::</span>
|
|
<span class="label label-info"><a href='6a4361334e8b649314ed681b9e6798c3.html'><span class='node-icon staruml-icon icon-UMLModel'></span>skill_seekers</a></span>
|
|
|
|
<span>::</span>
|
|
<span class="label label-info"><a href='136e9c05d710dc4dc71692abb7b4072c.html'><span class='node-icon staruml-icon icon-UMLPackage'></span>Analysis</a></span>
|
|
|
|
<span>::</span>
|
|
<span class="label label-info"><a href='03a80d0c833ca4ccb7d1214c35c1e1f3.html'><span class='node-icon staruml-icon icon-UMLClass'></span>ChainOfResponsibilityDetector</a></span>
|
|
|
|
</section>
|
|
|
|
<!-- Diagram -->
|
|
|
|
|
|
|
|
<!-- Description -->
|
|
|
|
|
|
<section>
|
|
<h3>Description</h3>
|
|
<div>
|
|
|
|
<p>Detects Chain of Responsibility pattern. Chain of Responsibility passes request along chain of handlers until one handles it, avoiding coupling sender to receiver. Detection: Surface (name contains 'Handler', 'Chain', 'Middleware'), Deep (handle/process method + next/successor reference + set_next method + handler family via shared base class).</p>
|
|
|
|
</div>
|
|
</section>
|
|
|
|
|
|
<!-- Specification -->
|
|
|
|
|
|
|
|
<!-- Directed Relationship -->
|
|
|
|
|
|
|
|
<!-- Undirected Relationship -->
|
|
|
|
|
|
|
|
<!-- Classifier -->
|
|
|
|
|
|
|
|
|
|
<section class="element-list">
|
|
<h3>Generalized Elements</h3>
|
|
<ul class="nav nav-list">
|
|
|
|
<li><a href='c62ddcef75e050f272ff1343b9b3aea8.html'><span class='node-icon staruml-icon icon-UMLClass'></span>BasePatternDetector</a></li>
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Interface -->
|
|
|
|
|
|
|
|
<!-- Component -->
|
|
|
|
|
|
|
|
<!-- Node -->
|
|
|
|
|
|
|
|
<!-- Actor -->
|
|
|
|
|
|
|
|
<!-- Use Case -->
|
|
|
|
|
|
|
|
<!-- Template Parameters -->
|
|
|
|
|
|
|
|
<!-- Literals -->
|
|
|
|
|
|
|
|
<!-- Attributes -->
|
|
|
|
|
|
<section>
|
|
<h3>Attributes</h3>
|
|
<table class="table table-striped table-bordered">
|
|
<tr>
|
|
<th>Visibility</th>
|
|
<th>Name</th>
|
|
<th>Type</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>public</td>
|
|
<td><a href="d5e75bef920c3fc5b6a2ac046e56b545.html">pattern_type</a></td>
|
|
<td>str </td>
|
|
<td></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>public</td>
|
|
<td><a href="557633afa63f676085eb21465fe1e101.html">category</a></td>
|
|
<td>str </td>
|
|
<td></td>
|
|
</tr>
|
|
|
|
</table>
|
|
</section>
|
|
|
|
|
|
<!-- Operations -->
|
|
|
|
|
|
<section>
|
|
<h3>Operations</h3>
|
|
<table class="table table-striped table-bordered">
|
|
<tr>
|
|
<th>Visibility</th>
|
|
<th>Name</th>
|
|
<th>Description</th>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>public</td>
|
|
<td><a href="4f85fa68a0bacb3b3b59de7b28249d6e.html">detect_surface()</a></td>
|
|
<td></td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>public</td>
|
|
<td><a href="9957ade9c136ccba10262f20b1c3864a.html">detect_deep()</a></td>
|
|
<td></td>
|
|
</tr>
|
|
|
|
</table>
|
|
</section>
|
|
|
|
|
|
<!-- Receptions -->
|
|
|
|
|
|
|
|
<!-- Extension Points -->
|
|
|
|
|
|
|
|
<!-- Parameters -->
|
|
|
|
|
|
|
|
<!-- Diagrams -->
|
|
|
|
|
|
|
|
|
|
<!-- Behavior -->
|
|
|
|
|
|
|
|
<!-- Action -->
|
|
|
|
|
|
|
|
<!-- Interaction -->
|
|
|
|
|
|
|
|
<!-- CombinedFragment -->
|
|
|
|
|
|
|
|
<!-- Activity -->
|
|
|
|
|
|
|
|
<!-- State Machine -->
|
|
|
|
|
|
|
|
<!-- State Machine -->
|
|
|
|
|
|
|
|
<!-- State -->
|
|
|
|
|
|
|
|
<!-- Vertex -->
|
|
|
|
|
|
|
|
<!-- Transition -->
|
|
|
|
|
|
|
|
<!-- Data Model (ERD) -->
|
|
|
|
|
|
|
|
<!-- Columns (ERD) -->
|
|
|
|
|
|
|
|
<!-- Related Entities (ERD) -->
|
|
|
|
|
|
|
|
<!-- Data Flows (DFD) -->
|
|
|
|
|
|
|
|
<!-- Flows (Flowchart) -->
|
|
|
|
|
|
|
|
<!-- Properties -->
|
|
|
|
<section>
|
|
<h3>Properties</h3>
|
|
|
|
<table class="table table-striped table-bordered">
|
|
<tr>
|
|
<th width="50%">Name</th>
|
|
<th width="50%">Value</th>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>name</td>
|
|
<td>ChainOfResponsibilityDetector</td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>stereotype</td>
|
|
<td><span class='label label-info'>null</span></td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>visibility</td>
|
|
<td>public</td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>isAbstract</td>
|
|
<td><span class='label label-info'>false</span></td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>isFinalSpecialization</td>
|
|
<td><span class='label label-info'>false</span></td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>isLeaf</td>
|
|
<td><span class='label label-info'>false</span></td>
|
|
</tr>
|
|
|
|
|
|
|
|
|
|
|
|
<tr>
|
|
<td>isActive</td>
|
|
<td><span class='label label-info'>false</span></td>
|
|
</tr>
|
|
|
|
|
|
|
|
</table>
|
|
|
|
</section>
|
|
|
|
<!-- Tags -->
|
|
|
|
|
|
|
|
<!-- Constraints, Dependencies, Dependants -->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- Relationships -->
|
|
|
|
|
|
|
|
<section class="element-list">
|
|
<h3>Relationships</h3>
|
|
<ul class="nav nav-list">
|
|
|
|
<li><a href='49ab040caddebbbdfb77f798d0a0ce82.html'><span class='node-icon staruml-icon icon-UMLGeneralization'></span>(ChainOfResponsibilityDetector→BasePatternDetector)</a></li>
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
|
|
|
|
<!-- Owned Elements -->
|
|
|
|
|
|
|
|
<section class="element-list">
|
|
<h3>Owned Elements</h3>
|
|
<ul class="nav nav-list">
|
|
|
|
<li><a href='49ab040caddebbbdfb77f798d0a0ce82.html'><span class='node-icon staruml-icon icon-UMLGeneralization'></span>(ChainOfResponsibilityDetector→BasePatternDetector)</a></li>
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
|
|
|
|
<!-- Diagrams -->
|
|
|
|
|
|
|
|
<section class="element-list">
|
|
<h3>Diagrams</h3>
|
|
<ul class="nav nav-list">
|
|
|
|
<li><a href='40a3cc19e818cfc3b0828c8a326d9171.html'><span class='node-icon staruml-icon icon-UMLClassDiagram'></span>Analysis</a></li>
|
|
|
|
</ul>
|
|
</section>
|
|
|
|
|
|
|
|
|
|
<!-- Image Map Resizer (https://github.com/davidjbradshaw/image-map-resizer) -->
|
|
<script>
|
|
imageMapResize();
|
|
</script>
|
|
</div>
|
|
</body>
|
|
</html>
|