import java.util.ArrayList;
import java.util.List;
import generators.ASTGenerator;
import models.objectOrientedTransfer.*;
public class Main {
public static void main(String[] args) {
List<ReferenceEdge> srcEdges = new ArrayList<>();
List<ReferenceEdge> dstEdges = new ArrayList<>();
ObjectNode companies = new ObjectNode("companies");
ObjectNode company = new ObjectNode("company");
ObjectNode customers = new ObjectNode("customers");
ObjectNode customer = new ObjectNode("customer");
ObjectNode address = new ObjectNode("string");
ReferenceEdge srcEdge = new ReferenceEdge(companies, company, "company", MultiplicityValue.OneToMany);
srcEdges.add(srcEdge);
ReferenceEdge dstEdge = new ReferenceEdge(customers, customer, "customer", MultiplicityValue.OneToMany);
dstEdges.add(dstEdge);
List<Relation> relations = new ArrayList<>();
Relation transferRelation = new Relation(srcEdges, dstEdges, MultiplicityValue.OneToMany);
DataTransferContext context = new DataTransferContext(relations, transferRelation, address, "address", PushPullValue.PULL);
DataTransferDesign design;
try {
design = new DataTransferDesign(context);
System.out.println(ASTGenerator.generate(design));
} catch (IllegalRelationException e) {
e.printStackTrace();
}
}
}