diff --git a/models/designPattern/Factory-method.Json b/models/designPattern/Factory-method.Json index fc3a44e..2af49da 100644 --- a/models/designPattern/Factory-method.Json +++ b/models/designPattern/Factory-method.Json @@ -4,14 +4,13 @@ { "relations": [], "transfer": { - "src": "ConcreteBlacksmith", - "dst": "Main", + "src": "Main.ConcreteBlacksmith.{Weapon}", + "dst": "Main.Weapon", "data": { - "type": "Weapon", "name": "weapon" }, - "style": "PULL", - "multiplicity": "1:1" + "style": "PLAIN", + "multiplicity": "*:1" } } ] diff --git a/models/designPattern/Iterator.Json b/models/designPattern/Iterator.Json index 44a50e1..26afd82 100644 --- a/models/designPattern/Iterator.Json +++ b/models/designPattern/Iterator.Json @@ -1,15 +1,25 @@ { - "name": "Chain-of-responsibility", + "name": "Iterator", "contexts": [ { "relations": [], "transfer": { - "src": "App.{Item}.String", + "src": "App.TreasureChest.{Item}.String", "dst": "App.String", "data": { "name": "data" }, "style": "PULL", "multiplicity": "1:1" } + }, + { + "relations": [], + "transfer": { + "src": "App.TreasureChest.Iterator", + "dst": "App.Iterator", + "data": { "name": "iterator" }, + "style": "PLAIN", + "multiplicity": "1:1" + } } ] } \ No newline at end of file diff --git a/models/designPattern/Prototype.Json b/models/designPattern/Prototype.Json index 4110e45..0f1ff0a 100644 --- a/models/designPattern/Prototype.Json +++ b/models/designPattern/Prototype.Json @@ -4,10 +4,21 @@ { "relations": [], "transfer": { - "src": "FactoryImpl", - "dst": "Main", + "src": "Main.OrcConcreteHero", + "dst": "FactoryImpl.OrcConcreteHero", "data": { - "type": "OrcConcreteHero", + "name": "orcConcreteHero" + }, + "style": "PUSH", + "multiplicity": "1:1" + } + }, + { + "relations": [], + "transfer": { + "src": "FactoryImpl.OrcConcreteHero", + "dst": "Main.OrcConcreteHero", + "data": { "name": "orcConcreteHero" }, "style": "PULL", @@ -17,10 +28,9 @@ { "relations": [], "transfer": { - "src": "FactoryImpl.OrcConcreteHero", - "dst": "Main", + "src": "FactoryImpl.OrcConcreteHero.Weapon", + "dst": "Main.Weapon", "data": { - "type": "Weapon", "name": "weapon" }, "style": "PULL", diff --git a/src/main/java/Main.java b/src/main/java/Main.java index aec9d6a..44e00cb 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -47,7 +47,7 @@ // DependencyInversion di = new DependencyInversion(company, new InterfaceNode(company, "ICompany"), customer); // design.addDependencyInversion(di); -// design = new Flyweight().create(); + design = new Iterator().create(); System.out.println(design.getDeltaComplex()); System.out.println(ASTGenerator.generate(design)); diff --git a/src/main/java/designPatternExtensions/designPattern/Factory_method.java b/src/main/java/designPatternExtensions/designPattern/Factory_method.java index 072e3fd..46eacf4 100644 --- a/src/main/java/designPatternExtensions/designPattern/Factory_method.java +++ b/src/main/java/designPatternExtensions/designPattern/Factory_method.java @@ -13,7 +13,7 @@ public DataSynchronizationDesign create() throws IllegalRelationException { DataSynchronizationDesign design = ModelLoader.load("models/designPattern/Factory-method.Json"); DataSynchronizationContext dtc = design.getSynchronizationContexts().getFirst(); - ObjectNode concreteBlacksmith = dtc.getSrcTopObject(); + ObjectNode concreteBlacksmith = (ObjectNode) dtc.getSrcObjectHierarchy().getEdge(0).getDestination(); ObjectNode main = dtc.getDstTopObject(); InterfaceNode blackSmith = new InterfaceNode(concreteBlacksmith, "Blacksmith"); diff --git a/src/main/java/designPatternExtensions/designPattern/Iterator.java b/src/main/java/designPatternExtensions/designPattern/Iterator.java index fe1a8aa..92a4e3c 100644 --- a/src/main/java/designPatternExtensions/designPattern/Iterator.java +++ b/src/main/java/designPatternExtensions/designPattern/Iterator.java @@ -22,8 +22,8 @@ ObjectNode app = (ObjectNode) dtc.getDstTopObject(); ObjectNode client = dtc.getDstTopObject(); - MediatorInsertion mi = new MediatorInsertion(app, item, new ObjectNode("TreasureChest"), dtc); - design.addMediatorInsertion(mi); +// MediatorInsertion mi = new MediatorInsertion(app, item, new ObjectNode("TreasureChest"), dtc); +// design.addMediatorInsertion(mi); // DependencyInversion di = new DependencyInversion( // iterator, new InterfaceNode(iterator, "Iterator"));