add editable diagram files

(you need to install objectaid eclipse plugin to view that)
This commit is contained in:
llitfkitfk 2014-11-03 08:47:03 +08:00
parent bbfe3f6207
commit 80e8fef5c9
25 changed files with 2673 additions and 0 deletions

View File

@ -0,0 +1,187 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.OrcArmy" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/OrcArmy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="240" y="222"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="2" language="java" name="com.iluwatar.KingdomFactory" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/KingdomFactory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="578" y="67"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="3" language="java" name="com.iluwatar.OrcKing" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/OrcKing.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="505" y="224"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="4" language="java" name="com.iluwatar.Castle" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/Castle.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="610" y="458"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="5" language="java" name="com.iluwatar.OrcCastle" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/OrcCastle.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="369" y="225"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="6" language="java" name="com.iluwatar.Army" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/Army.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="611" y="557"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="7" language="java" name="com.iluwatar.ElfCastle" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/ElfCastle.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="806" y="225"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="8" language="java" name="com.iluwatar.King" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/King.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="604" y="365"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="9" language="java" name="com.iluwatar.OrcKingdomFactory" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/OrcKingdomFactory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="341" y="69"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="10" language="java" name="com.iluwatar.ElfArmy" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/ElfArmy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="952" y="218"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="11" language="java" name="com.iluwatar.ElfKingdomFactory" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/ElfKingdomFactory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="817" y="61"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="12" language="java" name="com.iluwatar.ElfKing" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/ElfKing.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="667" y="227"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="13" language="java" name="com.iluwatar.App" project="abstract-factory"
file="/abstract-factory/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="585" y="-109"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="14">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="4"/>
</realization>
<dependency id="15">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="5"/>
</dependency>
<realization id="16">
<end type="SOURCE" refId="12"/>
<end type="TARGET" refId="8"/>
</realization>
<realization id="17">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="2"/>
</realization>
<dependency id="18">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="1"/>
</dependency>
<dependency id="19">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="3"/>
</dependency>
<realization id="20">
<end type="SOURCE" refId="10"/>
<end type="TARGET" refId="6"/>
</realization>
<dependency id="21">
<end type="SOURCE" refId="11"/>
<end type="TARGET" refId="10"/>
</dependency>
<realization id="22">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="6"/>
</realization>
<dependency id="23">
<end type="SOURCE" refId="13"/>
<end type="TARGET" refId="2"/>
</dependency>
<realization id="24">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="8"/>
</realization>
<dependency id="25">
<end type="SOURCE" refId="11"/>
<end type="TARGET" refId="7"/>
</dependency>
<realization id="26">
<end type="SOURCE" refId="11"/>
<end type="TARGET" refId="2"/>
</realization>
<dependency id="27">
<end type="SOURCE" refId="11"/>
<end type="TARGET" refId="12"/>
</dependency>
<realization id="28">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="4"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

85
adapter/etc/test.ucls Normal file
View File

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.GnomeEngineeringManager" project="adapter"
file="/adapter/src/main/java/com/iluwatar/GnomeEngineeringManager.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="361" y="116"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="2" language="java" name="com.iluwatar.Engineer" project="adapter"
file="/adapter/src/main/java/com/iluwatar/Engineer.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="427" y="309"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="3" language="java" name="com.iluwatar.App" project="adapter"
file="/adapter/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="350" y="-46"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.GnomeEngineer" project="adapter"
file="/adapter/src/main/java/com/iluwatar/GnomeEngineer.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="593" y="115"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.GoblinGlider" project="adapter"
file="/adapter/src/main/java/com/iluwatar/GoblinGlider.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="725" y="337"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="6">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="2"/>
</realization>
<association id="7">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="8" name="glider"/>
<multiplicity id="9" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="10">
<bendpoint x="336" y="220"/>
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="2"/>
</realization>
<dependency id="11">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</dependency>
<association id="12">
<bendpoint x="432" y="215"/>
<end type="SOURCE" refId="1" navigable="false">
<attribute id="13" name="engineer"/>
<multiplicity id="14" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

153
bridge/etc/test.ucls Normal file
View File

@ -0,0 +1,153 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.MagicWeapon" project="bridge"
file="/bridge/src/main/java/com/iluwatar/MagicWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="580" y="196"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.Mjollnir" project="bridge"
file="/bridge/src/main/java/com/iluwatar/Mjollnir.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="839" y="720"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.SoulEatingMagicWeaponImp" project="bridge"
file="/bridge/src/main/java/com/iluwatar/SoulEatingMagicWeaponImp.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="318" y="544"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.SoulEatingMagicWeapon" project="bridge"
file="/bridge/src/main/java/com/iluwatar/SoulEatingMagicWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="228" y="-31"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.MagicWeaponImp" project="bridge"
file="/bridge/src/main/java/com/iluwatar/MagicWeaponImp.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="583" y="396"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.Stormbringer" project="bridge"
file="/bridge/src/main/java/com/iluwatar/Stormbringer.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="324" y="721"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.BlindingMagicWeapon" project="bridge"
file="/bridge/src/main/java/com/iluwatar/BlindingMagicWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="575" y="-32"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="8" language="java" name="com.iluwatar.BlindingMagicWeaponImp" project="bridge"
file="/bridge/src/main/java/com/iluwatar/BlindingMagicWeaponImp.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="589" y="544"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="9" language="java" name="com.iluwatar.FlyingMagicWeaponImp" project="bridge"
file="/bridge/src/main/java/com/iluwatar/FlyingMagicWeaponImp.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="835" y="545"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="10" language="java" name="com.iluwatar.Excalibur" project="bridge"
file="/bridge/src/main/java/com/iluwatar/Excalibur.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="584" y="715"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="11" language="java" name="com.iluwatar.FlyingMagicWeapon" project="bridge"
file="/bridge/src/main/java/com/iluwatar/FlyingMagicWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="901" y="-29"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<generalization id="12">
<end type="SOURCE" refId="11"/>
<end type="TARGET" refId="1"/>
</generalization>
<generalization id="13">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="9"/>
</generalization>
<generalization id="14">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="5"/>
</generalization>
<generalization id="15">
<end type="SOURCE" refId="8"/>
<end type="TARGET" refId="5"/>
</generalization>
<generalization id="16">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="3"/>
</generalization>
<generalization id="17">
<end type="SOURCE" refId="10"/>
<end type="TARGET" refId="8"/>
</generalization>
<generalization id="18">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="1"/>
</generalization>
<generalization id="19">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="5"/>
</generalization>
<association id="20">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="21" name="imp"/>
<multiplicity id="22" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="23">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</generalization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

157
builder/etc/test.ucls Normal file
View File

@ -0,0 +1,157 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<enumeration id="1" language="java" name="com.iluwatar.HairColor" project="builder"
file="/builder/src/main/java/com/iluwatar/HairColor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="532" y="675"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<enumeration id="2" language="java" name="com.iluwatar.Armor" project="builder"
file="/builder/src/main/java/com/iluwatar/Armor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="966" y="604"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<enumeration id="3" language="java" name="com.iluwatar.HairType" project="builder"
file="/builder/src/main/java/com/iluwatar/HairType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="765" y="677"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="4" language="java" name="com.iluwatar.Hero" project="builder"
file="/builder/src/main/java/com/iluwatar/Hero.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="674" y="132"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="5" language="java" name="com.iluwatar.Weapon" project="builder"
file="/builder/src/main/java/com/iluwatar/Weapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="302" y="675"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="6" language="java" name="com.iluwatar.Hero.HeroBuilder" project="builder"
file="/builder/src/main/java/com/iluwatar/Hero.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="234" y="141"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="7" language="java" name="com.iluwatar.Profession" project="builder"
file="/builder/src/main/java/com/iluwatar/Profession.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="113" y="597"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<association id="8">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="9" name="hairColor"/>
<multiplicity id="10" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="11">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="12" name="hairType"/>
<multiplicity id="13" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="14">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="15" name="profession"/>
<multiplicity id="16" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="7" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="17">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="18" name="weapon"/>
<multiplicity id="19" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="20">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="21" name="armor"/>
<multiplicity id="22" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="23">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="24" name="profession"/>
<multiplicity id="25" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="7" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="26">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="27" name="hairColor"/>
<multiplicity id="28" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="29">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="30" name="weapon"/>
<multiplicity id="31" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<nesting id="32">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="6"/>
</nesting>
<association id="33">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="34" name="armor"/>
<multiplicity id="35" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="36">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="37" name="hairType"/>
<multiplicity id="38" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

113
chain/etc/test.ucls Normal file
View File

@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Request" project="chain"
file="/chain/src/main/java/com/iluwatar/Request.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="339" y="341"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.RequestHandler" project="chain"
file="/chain/src/main/java/com/iluwatar/RequestHandler.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="662" y="335"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.OrcKing" project="chain"
file="/chain/src/main/java/com/iluwatar/OrcKing.java" binary="false" corner="BOTTOM_RIGHT">
<position height="116" width="182" x="574" y="73"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="4" language="java" name="com.iluwatar.RequestType" project="chain"
file="/chain/src/main/java/com/iluwatar/RequestType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="-4" y="349"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="5" language="java" name="com.iluwatar.OrcSoldier" project="chain"
file="/chain/src/main/java/com/iluwatar/OrcSoldier.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="337" y="530"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.OrcCommander" project="chain"
file="/chain/src/main/java/com/iluwatar/OrcCommander.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="604" y="530"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.OrcOfficer" project="chain"
file="/chain/src/main/java/com/iluwatar/OrcOfficer.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="854" y="530"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<dependency id="8">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="1"/>
</dependency>
<association id="9">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="10" name="requestType"/>
<multiplicity id="11" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="12">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="2"/>
</generalization>
<association id="13">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="14" name="chain"/>
<multiplicity id="15" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="16">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="2"/>
</generalization>
<generalization id="17">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="2"/>
</generalization>
<association id="18">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="19" name="next"/>
<multiplicity id="20" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

146
command/etc/test.ucls Normal file
View File

@ -0,0 +1,146 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.ShrinkSpell" project="command"
file="/command/src/main/java/com/iluwatar/ShrinkSpell.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="379" y="87"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.Target" project="command"
file="/command/src/main/java/com/iluwatar/Target.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="203" y="353"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.Command" project="command"
file="/command/src/main/java/com/iluwatar/Command.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="208" y="-140"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="4" language="java" name="com.iluwatar.Visibility" project="command"
file="/command/src/main/java/com/iluwatar/Visibility.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="440" y="485"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="5" language="java" name="com.iluwatar.Goblin" project="command"
file="/command/src/main/java/com/iluwatar/Goblin.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="5" y="293"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.InvisibilitySpell" project="command"
file="/command/src/main/java/com/iluwatar/InvisibilitySpell.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="203" y="85"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.Wizard" project="command"
file="/command/src/main/java/com/iluwatar/Wizard.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="-1" y="92"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="8" language="java" name="com.iluwatar.Size" project="command"
file="/command/src/main/java/com/iluwatar/Size.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="434" y="295"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<generalization id="9">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="2"/>
</generalization>
<association id="10">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="11" name="visibility"/>
<multiplicity id="12" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="13">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="2"/>
</generalization>
<association id="14">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="15" name="target"/>
<multiplicity id="16" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="17">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="3"/>
</generalization>
<association id="18">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="19" name="oldSize"/>
<multiplicity id="20" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="8" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="21">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="3"/>
</generalization>
<association id="22">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="23" name="target"/>
<multiplicity id="24" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="25">
<end type="SOURCE" refId="7" navigable="false">
<attribute id="26" name="previousSpell"/>
<multiplicity id="27" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="28">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="29" name="size"/>
<multiplicity id="30" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="8" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

83
composite/etc/test.ucls Normal file
View File

@ -0,0 +1,83 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Letter" project="composite"
file="/composite/src/main/java/com/iluwatar/Letter.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="57" y="425"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.Word" project="composite"
file="/composite/src/main/java/com/iluwatar/Word.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="226" y="425"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.LetterComposite" project="composite"
file="/composite/src/main/java/com/iluwatar/LetterComposite.java" binary="false" corner="BOTTOM_RIGHT">
<position height="170" width="171" x="221" y="106"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.Sentence" project="composite"
file="/composite/src/main/java/com/iluwatar/Sentence.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="389" y="425"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.Messenger" project="composite"
file="/composite/src/main/java/com/iluwatar/Messenger.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="-30" y="182"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<generalization id="6">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="3"/>
</generalization>
<generalization id="7">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="3"/>
</generalization>
<dependency id="8">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="3"/>
</dependency>
<generalization id="9">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="3"/>
</generalization>
<association id="10">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="11" name="children">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="12" minimum="0" maximum="2147483647">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

70
decorator/etc/test.ucls Normal file
View File

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<interface id="1" language="java" name="com.iluwatar.Hostile" project="decorator"
file="/decorator/src/main/java/com/iluwatar/Hostile.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="555" y="292"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="2" language="java" name="com.iluwatar.Troll" project="decorator"
file="/decorator/src/main/java/com/iluwatar/Troll.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="339" y="188"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.App" project="decorator"
file="/decorator/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="185" y="290"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.SmartTroll" project="decorator"
file="/decorator/src/main/java/com/iluwatar/SmartTroll.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="344" y="423"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="5">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="1"/>
</realization>
<dependency id="6">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="2"/>
</dependency>
<realization id="7">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="8">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="9" name="decorated"/>
<multiplicity id="10" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<dependency id="11">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="4"/>
</dependency>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

View File

@ -0,0 +1,36 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Inventory" project="double-checked-locking"
file="/double-checked-locking/src/main/java/com/iluwatar/Inventory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="233" y="174"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.Item" project="double-checked-locking"
file="/double-checked-locking/src/main/java/com/iluwatar/Item.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="230" y="403"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<association id="3">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="4" name="items"/>
<multiplicity id="5" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

88
facade/etc/test.ucls Normal file
View File

@ -0,0 +1,88 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.DwarvenGoldmineFacade" project="facade"
file="/facade/src/main/java/com/iluwatar/DwarvenGoldmineFacade.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="348" y="36"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.DwarvenTunnelDigger" project="facade"
file="/facade/src/main/java/com/iluwatar/DwarvenTunnelDigger.java" binary="false" corner="BOTTOM_RIGHT">
<position height="116" width="176" x="252" y="439"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.App" project="facade"
file="/facade/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="91" y="32"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.DwarvenGoldDigger" project="facade"
file="/facade/src/main/java/com/iluwatar/DwarvenGoldDigger.java" binary="false" corner="BOTTOM_RIGHT">
<position height="116" width="161" x="468" y="439"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.DwarvenCartOperator" project="facade"
file="/facade/src/main/java/com/iluwatar/DwarvenCartOperator.java" binary="false" corner="BOTTOM_RIGHT">
<position height="116" width="171" x="41" y="439"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.DwarvenMineWorker" project="facade"
file="/facade/src/main/java/com/iluwatar/DwarvenMineWorker.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="345" y="260"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<generalization id="7">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="6"/>
</generalization>
<dependency id="8">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</dependency>
<association id="9">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="10" name="workers"/>
<multiplicity id="11" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="12">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="6"/>
</generalization>
<generalization id="13">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="6"/>
</generalization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

View File

@ -0,0 +1,113 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<enumeration id="1" language="java" name="com.iluwatar.WeaponType" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/WeaponType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="469" y="244"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<interface id="2" language="java" name="com.iluwatar.Weapon" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/Weapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="476" y="422"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="3" language="java" name="com.iluwatar.ElfWeapon" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/ElfWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="776" y="242"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.OrcBlacksmith" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/OrcBlacksmith.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="276" y="80"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.OrcWeapon" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/OrcWeapon.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="134" y="243"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="6" language="java" name="com.iluwatar.Blacksmith" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/Blacksmith.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="461" y="-67"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="7" language="java" name="com.iluwatar.ElfBlacksmith" project="factory-method"
file="/factory-method/src/main/java/com/iluwatar/ElfBlacksmith.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="662" y="79"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="8">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="6"/>
</realization>
<association id="9">
<end type="SOURCE" refId="5" navigable="false">
<attribute id="10" name="weaponType"/>
<multiplicity id="11" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="12">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="13" name="weaponType"/>
<multiplicity id="14" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="15">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="6"/>
</realization>
<dependency id="16">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="5"/>
</dependency>
<realization id="17">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="2"/>
</realization>
<dependency id="18">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="3"/>
</dependency>
<realization id="19">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="2"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

145
flyweight/etc/test.ucls Normal file
View File

@ -0,0 +1,145 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<interface id="1" language="java" name="com.iluwatar.Potion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/Potion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="703" y="295"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="2" language="java" name="com.iluwatar.PotionFactory" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/PotionFactory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="709" y="497"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.InvisibilityPotion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/InvisibilityPotion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="798" y="134"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.PoisonPotion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/PoisonPotion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="940" y="177"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="5" language="java" name="com.iluwatar.PotionType" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/PotionType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="364" y="485"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="6" language="java" name="com.iluwatar.HolyWaterPotion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/HolyWaterPotion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="932" y="289"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.AlchemistShop" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/AlchemistShop.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="359" y="289"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="8" language="java" name="com.iluwatar.HealingPotion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/HealingPotion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="648" y="134"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="9" language="java" name="com.iluwatar.StrengthPotion" project="flyweight"
file="/flyweight/src/main/java/com/iluwatar/StrengthPotion.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="927" y="399"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<dependency id="10">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="5"/>
</dependency>
<dependency id="11">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="2"/>
</dependency>
<realization id="12">
<end type="SOURCE" refId="8"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="13">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="14" name="potions"/>
<multiplicity id="15" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="16">
<bendpoint x="542" y="335"/>
<end type="SOURCE" refId="7" navigable="false">
<attribute id="17" name="bottomShelf"/>
<multiplicity id="18" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="19">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</realization>
<realization id="20">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</realization>
<realization id="21">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="22">
<bendpoint x="541" y="265"/>
<end type="SOURCE" refId="7" navigable="false">
<attribute id="23" name="topShelf"/>
<multiplicity id="24" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="25">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="1"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

119
interpreter/etc/test.ucls Normal file
View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.MinusExpression" project="interpreter"
file="/interpreter/src/main/java/com/iluwatar/MinusExpression.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="467" y="140"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.PlusExpression" project="interpreter"
file="/interpreter/src/main/java/com/iluwatar/PlusExpression.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="763" y="150"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.MultiplyExpression" project="interpreter"
file="/interpreter/src/main/java/com/iluwatar/MultiplyExpression.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="811" y="329"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.Expression" project="interpreter"
file="/interpreter/src/main/java/com/iluwatar/Expression.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="462" y="333"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.NumberExpression" project="interpreter"
file="/interpreter/src/main/java/com/iluwatar/NumberExpression.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="464" y="525"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<generalization id="6">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="4"/>
</generalization>
<generalization id="7">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="4"/>
</generalization>
<generalization id="8">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="4"/>
</generalization>
<association id="9">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="10" name="rightExpression"/>
<multiplicity id="11" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="12">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="4"/>
</generalization>
<association id="13">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="14" name="rightExpression"/>
<multiplicity id="15" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="16">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="17" name="leftExpression"/>
<multiplicity id="18" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="19">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="20" name="leftExpression"/>
<multiplicity id="21" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="22">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="23" name="leftExpression"/>
<multiplicity id="24" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="25">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="26" name="rightExpression"/>
<multiplicity id="27" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

109
iterator/etc/test.ucls Normal file
View File

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Item" project="iterator"
file="/iterator/src/main/java/com/iluwatar/Item.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="269" y="366"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.App" project="iterator"
file="/iterator/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="19" y="565"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="3" language="java" name="com.iluwatar.ItemIterator" project="iterator"
file="/iterator/src/main/java/com/iluwatar/ItemIterator.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="275" y="178"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="4" language="java" name="com.iluwatar.TreasureChestItemIterator" project="iterator"
file="/iterator/src/main/java/com/iluwatar/TreasureChestItemIterator.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="729" y="180"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.TreasureChest" project="iterator"
file="/iterator/src/main/java/com/iluwatar/TreasureChest.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="271" y="568"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="6" language="java" name="com.iluwatar.ItemType" project="iterator"
file="/iterator/src/main/java/com/iluwatar/ItemType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="549" y="397"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<realization id="7">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="3"/>
</realization>
<association id="8">
<end type="SOURCE" refId="5" navigable="false">
<attribute id="9" name="items"/>
<multiplicity id="10" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<dependency id="11">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="5"/>
</dependency>
<association id="12">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="13" name="type"/>
<multiplicity id="14" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<dependency id="15">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</dependency>
<association id="16">
<bendpoint x="729" y="567"/>
<end type="SOURCE" refId="4" navigable="false">
<attribute id="17" name="chest"/>
<multiplicity id="18" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="19">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="20" name="type"/>
<multiplicity id="21" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

148
mediator/etc/test.ucls Normal file
View File

@ -0,0 +1,148 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<interface id="1" language="java" name="com.iluwatar.PartyMember" project="mediator"
file="/mediator/src/main/java/com/iluwatar/PartyMember.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="540" y="-76"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="2" language="java" name="com.iluwatar.Rogue" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Rogue.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="461" y="276"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="3" language="java" name="com.iluwatar.Action" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Action.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="276" y="295"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<interface id="4" language="java" name="com.iluwatar.Party" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Party.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="273" y="114"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="5" language="java" name="com.iluwatar.Hobbit" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Hobbit.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="589" y="274"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.PartyImpl" project="mediator"
file="/mediator/src/main/java/com/iluwatar/PartyImpl.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="275" y="-70"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.Hunter" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Hunter.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="727" y="255"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="8" language="java" name="com.iluwatar.PartyMemberBase" project="mediator"
file="/mediator/src/main/java/com/iluwatar/PartyMemberBase.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="537" y="113"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="9" language="java" name="com.iluwatar.App" project="mediator"
file="/mediator/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="37" y="-75"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="10" language="java" name="com.iluwatar.Wizard" project="mediator"
file="/mediator/src/main/java/com/iluwatar/Wizard.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="727" y="130"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<dependency id="11">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="3"/>
</dependency>
<generalization id="12">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="8"/>
</generalization>
<generalization id="13">
<end type="SOURCE" refId="10"/>
<end type="TARGET" refId="8"/>
</generalization>
<realization id="14">
<end type="SOURCE" refId="8"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="15">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="16" name="members"/>
<multiplicity id="17" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="18">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="8"/>
</generalization>
<generalization id="19">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="8"/>
</generalization>
<dependency id="20">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="6"/>
</dependency>
<association id="21">
<end type="SOURCE" refId="8" navigable="false">
<attribute id="22" name="party"/>
<multiplicity id="23" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="24">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="4"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

70
memento/etc/test.ucls Normal file
View File

@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Star" project="memento"
file="/memento/src/main/java/com/iluwatar/Star.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="383" y="159"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.StarMementoInternal" project="memento"
file="/memento/src/main/java/com/iluwatar/StarMementoInternal.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="697" y="141"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="3" language="java" name="com.iluwatar.StarType" project="memento"
file="/memento/src/main/java/com/iluwatar/StarType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="533" y="429"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<interface id="4" language="java" name="com.iluwatar.StarMemento" project="memento"
file="/memento/src/main/java/com/iluwatar/StarMemento.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="536" y="-17"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<dependency id="5">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="4"/>
</dependency>
<association id="6">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="7" name="type"/>
<multiplicity id="8" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="9">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="10" name="type"/>
<multiplicity id="11" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="12">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="4"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

View File

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.FileLoader" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/FileLoader.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="296" y="166"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.FileSelectorPresenter" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/FileSelectorPresenter.java" binary="false"
corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="489" y="398"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="3" language="java" name="com.iluwatar.FileSelectorView" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/FileSelectorView.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="655" y="708"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="4" language="java" name="com.iluwatar.MainApp" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/MainApp.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="184" y="398"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.FileSelectorJFrame" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/FileSelectorJFrame.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="810" y="260"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.FileSelectorStub" project="model-view-presenter"
file="/model-view-presenter/src/main/java/com/iluwatar/FileSelectorStub.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="305" y="718"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<dependency id="7">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="2"/>
</dependency>
<realization id="8">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="3"/>
</realization>
<association id="9">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="10" name="view"/>
<multiplicity id="11" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="12">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="13" name="loader"/>
<multiplicity id="14" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="15">
<end type="SOURCE" refId="5" navigable="false">
<attribute id="16" name="presenter"/>
<multiplicity id="17" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="18">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="19" name="presenter"/>
<multiplicity id="20" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="21">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="3"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

79
observer/etc/test.ucls Normal file
View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<interface id="1" language="java" name="com.iluwatar.WeatherObserver" project="observer"
file="/observer/src/main/java/com/iluwatar/WeatherObserver.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="329" y="306"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="2" language="java" name="com.iluwatar.Weather" project="observer"
file="/observer/src/main/java/com/iluwatar/Weather.java" binary="false" corner="BOTTOM_RIGHT">
<position height="152" width="247" x="206" y="37"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<enumeration id="3" language="java" name="com.iluwatar.WeatherType" project="observer"
file="/observer/src/main/java/com/iluwatar/WeatherType.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="643" y="111"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</enumeration>
<class id="4" language="java" name="com.iluwatar.Hobbits" project="observer"
file="/observer/src/main/java/com/iluwatar/Hobbits.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="550" y="307"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.Orcs" project="observer"
file="/observer/src/main/java/com/iluwatar/Orcs.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="328" y="434"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<association id="6">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="7" name="observers"/>
<multiplicity id="8" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="9">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="1"/>
</realization>
<realization id="10">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="11">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="12" name="currentWeather"/>
<multiplicity id="13" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

197
prototype/etc/test.ucls Normal file
View File

@ -0,0 +1,197 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.OrcMage" project="prototype"
file="/prototype/src/main/java/com/iluwatar/OrcMage.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="670" y="369"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.HeroFactoryImpl" project="prototype"
file="/prototype/src/main/java/com/iluwatar/HeroFactoryImpl.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="355" y="99"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.Mage" project="prototype"
file="/prototype/src/main/java/com/iluwatar/Mage.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="475" y="315"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.OrcBeast" project="prototype"
file="/prototype/src/main/java/com/iluwatar/OrcBeast.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="458" y="465"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.ElfBeast" project="prototype"
file="/prototype/src/main/java/com/iluwatar/ElfBeast.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="258" y="474"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="6" language="java" name="com.iluwatar.Beast" project="prototype"
file="/prototype/src/main/java/com/iluwatar/Beast.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="359" y="316"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.Warlord" project="prototype"
file="/prototype/src/main/java/com/iluwatar/Warlord.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="246" y="316"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="8" language="java" name="com.iluwatar.ElfMage" project="prototype"
file="/prototype/src/main/java/com/iluwatar/ElfMage.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="668" y="221"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="9" language="java" name="com.iluwatar.App" project="prototype"
file="/prototype/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="90" y="99"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="10" language="java" name="com.iluwatar.OrcWarlord" project="prototype"
file="/prototype/src/main/java/com/iluwatar/OrcWarlord.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="31" y="401"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="11" language="java" name="com.iluwatar.Prototype" project="prototype"
file="/prototype/src/main/java/com/iluwatar/Prototype.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="368" y="601"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="12" language="java" name="com.iluwatar.HeroFactory" project="prototype"
file="/prototype/src/main/java/com/iluwatar/HeroFactory.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="348" y="-71"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="13" language="java" name="com.iluwatar.ElfWarlord" project="prototype"
file="/prototype/src/main/java/com/iluwatar/ElfWarlord.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="30" y="249"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="14">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="12"/>
</realization>
<generalization id="15">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="11"/>
</generalization>
<generalization id="16">
<end type="SOURCE" refId="13"/>
<end type="TARGET" refId="7"/>
</generalization>
<generalization id="17">
<bendpoint x="71" y="598"/>
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="11"/>
</generalization>
<generalization id="18">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="6"/>
</generalization>
<association id="19">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="20" name="beast"/>
<multiplicity id="21" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<generalization id="22">
<end type="SOURCE" refId="10"/>
<end type="TARGET" refId="7"/>
</generalization>
<generalization id="23">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="3"/>
</generalization>
<generalization id="24">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="6"/>
</generalization>
<generalization id="25">
<end type="SOURCE" refId="8"/>
<end type="TARGET" refId="3"/>
</generalization>
<association id="26">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="27" name="mage"/>
<multiplicity id="28" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="29">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="30" name="warlord"/>
<multiplicity id="31" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="7" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<dependency id="32">
<end type="SOURCE" refId="9"/>
<end type="TARGET" refId="2"/>
</dependency>
<generalization id="33">
<bendpoint x="658" y="600"/>
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="11"/>
</generalization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

58
proxy/etc/test.ucls Normal file
View File

@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.WizardTowerProxy" project="proxy"
file="/proxy/src/main/java/com/iluwatar/WizardTowerProxy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="527" y="201"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.WizardTower" project="proxy"
file="/proxy/src/main/java/com/iluwatar/WizardTower.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="512" y="13"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.App" project="proxy"
file="/proxy/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="273" y="199"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.Wizard" project="proxy"
file="/proxy/src/main/java/com/iluwatar/Wizard.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="796" y="197"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<dependency id="5">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</dependency>
<dependency id="6">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="4"/>
</dependency>
<generalization id="7">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="2"/>
</generalization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

45
singleton/etc/test.ucls Normal file
View File

@ -0,0 +1,45 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.ThreadSafeLazyLoadedIvoryTower" project="singleton"
file="/singleton/src/main/java/com/iluwatar/ThreadSafeLazyLoadedIvoryTower.java" binary="false"
corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="383" y="242"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.IvoryTower" project="singleton"
file="/singleton/src/main/java/com/iluwatar/IvoryTower.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="386" y="415"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<association id="3">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="4" name="instance"/>
<multiplicity id="5" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="6">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="7" name="instance"/>
<multiplicity id="8" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

91
state/etc/test.ucls Normal file
View File

@ -0,0 +1,91 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<interface id="1" language="java" name="com.iluwatar.State" project="state"
file="/state/src/main/java/com/iluwatar/State.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="252" y="568"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="2" language="java" name="com.iluwatar.Mammoth" project="state"
file="/state/src/main/java/com/iluwatar/Mammoth.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="251" y="168"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.App" project="state"
file="/state/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="4" y="167"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.PeacefulState" project="state"
file="/state/src/main/java/com/iluwatar/PeacefulState.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="122" y="382"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.AngryState" project="state"
file="/state/src/main/java/com/iluwatar/AngryState.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="401" y="377"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="6">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</realization>
<dependency id="7">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="2"/>
</dependency>
<association id="8">
<end type="SOURCE" refId="5" navigable="false">
<attribute id="9" name="mammoth"/>
<multiplicity id="10" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="11">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="1"/>
</realization>
<association id="12">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="13" name="mammoth"/>
<multiplicity id="14" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="15">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="16" name="state"/>
<multiplicity id="17" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

79
strategy/etc/test.ucls Normal file
View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.ProjectileStrategy" project="strategy"
file="/strategy/src/main/java/com/iluwatar/ProjectileStrategy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="315" y="410"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.DragonSlayer" project="strategy"
file="/strategy/src/main/java/com/iluwatar/DragonSlayer.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="446" y="96"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.SpellStrategy" project="strategy"
file="/strategy/src/main/java/com/iluwatar/SpellStrategy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="644" y="404"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="4" language="java" name="com.iluwatar.DragonSlayingStrategy" project="strategy"
file="/strategy/src/main/java/com/iluwatar/DragonSlayingStrategy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="446" y="262"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="5" language="java" name="com.iluwatar.MeleeStrategy" project="strategy"
file="/strategy/src/main/java/com/iluwatar/MeleeStrategy.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="482" y="406"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<realization id="6">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="4"/>
</realization>
<realization id="7">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="4"/>
</realization>
<realization id="8">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="4"/>
</realization>
<association id="9">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="10" name="strategy">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="11" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.HalflingThief" project="template-method"
file="/template-method/src/main/java/com/iluwatar/HalflingThief.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="399" y="84"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.StealingMethod" project="template-method"
file="/template-method/src/main/java/com/iluwatar/StealingMethod.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="400" y="251"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.App" project="template-method"
file="/template-method/src/main/java/com/iluwatar/App.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="148" y="84"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.HitAndRunMethod" project="template-method"
file="/template-method/src/main/java/com/iluwatar/HitAndRunMethod.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="284" y="445"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="5" language="java" name="com.iluwatar.SubtleMethod" project="template-method"
file="/template-method/src/main/java/com/iluwatar/SubtleMethod.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="533" y="437"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<association id="6">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="7" name="method"/>
<multiplicity id="8" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<dependency id="9">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="1"/>
</dependency>
<generalization id="10">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="2"/>
</generalization>
<generalization id="11">
<end type="SOURCE" refId="5"/>
<end type="TARGET" refId="2"/>
</generalization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>

118
visitor/etc/test.ucls Normal file
View File

@ -0,0 +1,118 @@
<?xml version="1.0" encoding="UTF-8"?>
<class-diagram version="1.1.7" icons="true" always-add-relationships="false" generalizations="true" realizations="true"
associations="true" dependencies="false" nesting-relationships="true">
<class id="1" language="java" name="com.iluwatar.Unit" project="visitor"
file="/visitor/src/main/java/com/iluwatar/Unit.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="317" y="141"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="2" language="java" name="com.iluwatar.Sergeant" project="visitor"
file="/visitor/src/main/java/com/iluwatar/Sergeant.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="319" y="307"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="3" language="java" name="com.iluwatar.SergeantVisitor" project="visitor"
file="/visitor/src/main/java/com/iluwatar/SergeantVisitor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="314" y="-227"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="4" language="java" name="com.iluwatar.Soldier" project="visitor"
file="/visitor/src/main/java/com/iluwatar/Soldier.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="582" y="140"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<interface id="5" language="java" name="com.iluwatar.UnitVisitor" project="visitor"
file="/visitor/src/main/java/com/iluwatar/UnitVisitor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="318" y="-53"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</interface>
<class id="6" language="java" name="com.iluwatar.Commander" project="visitor"
file="/visitor/src/main/java/com/iluwatar/Commander.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="81" y="139"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="7" language="java" name="com.iluwatar.SoldierVisitor" project="visitor"
file="/visitor/src/main/java/com/iluwatar/SoldierVisitor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="573" y="-57"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<class id="8" language="java" name="com.iluwatar.CommanderVisitor" project="visitor"
file="/visitor/src/main/java/com/iluwatar/CommanderVisitor.java" binary="false" corner="BOTTOM_RIGHT">
<position height="-1" width="-1" x="53" y="-55"/>
<display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</display>
</class>
<association id="9">
<end type="SOURCE" refId="1" navigable="false">
<attribute id="10" name="children"/>
<multiplicity id="11" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<realization id="12">
<end type="SOURCE" refId="7"/>
<end type="TARGET" refId="5"/>
</realization>
<generalization id="13">
<end type="SOURCE" refId="4"/>
<end type="TARGET" refId="1"/>
</generalization>
<dependency id="14">
<end type="SOURCE" refId="1"/>
<end type="TARGET" refId="5"/>
</dependency>
<generalization id="15">
<end type="SOURCE" refId="6"/>
<end type="TARGET" refId="1"/>
</generalization>
<generalization id="16">
<end type="SOURCE" refId="2"/>
<end type="TARGET" refId="1"/>
</generalization>
<realization id="17">
<end type="SOURCE" refId="3"/>
<end type="TARGET" refId="5"/>
</realization>
<realization id="18">
<end type="SOURCE" refId="8"/>
<end type="TARGET" refId="5"/>
</realization>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="false" signature="true"
sort-features="false" accessors="true" visibility="true">
<attributes public="true" package="true" protected="true" private="true" static="true"/>
<operations public="true" package="true" protected="true" private="true" static="true"/>
</classifier-display>
<association-display labels="true" multiplicity="true"/>
</class-diagram>