package designPatternExtensions.designPattern;
import designPatternExtensions.MediatorInsertion;
import models.objectOrientedTransfer.*;
import designPatternExtensions.ModelLoader;
import java.util.ArrayList;
//メモ
//https://github.com/iluwatar/java-design-patterns/tree/master/builder
//staticがないとnew Hero().new Builder(...)のような形になり、Builderとして成立しない
//なんならメソッドチェーンもない
//Mainが仲介者になり、制御の委譲を用いる必要がある
public class Builder implements DesignPattern {
public DataTransferDesign create() throws IllegalRelationException {
DataTransferDesign design = ModelLoader.load("models/designPattern/Builder.Json");
ObjectNode builder = design.getTransferContexts().getFirst().getSrcFirstResource();
ObjectNode main = design.getTransferContexts().getFirst().getDstFirstResource();
//
// MediatorInsertion mi = new MediatorInsertion(main, builder, new ObjectNode("Hero"));
// design.addMediatorInsertion(mi);
return design;
}
}