diff --git a/src/main/java/org/ntlab/rdlcanvas/generaterdl/ScreenTemplateGenerateRDL.java b/src/main/java/org/ntlab/rdlcanvas/generaterdl/ScreenTemplateGenerateRDL.java index 6e00257..be858ee 100644 --- a/src/main/java/org/ntlab/rdlcanvas/generaterdl/ScreenTemplateGenerateRDL.java +++ b/src/main/java/org/ntlab/rdlcanvas/generaterdl/ScreenTemplateGenerateRDL.java @@ -1,8 +1,10 @@ package org.ntlab.rdlcanvas.generaterdl; -import org.ntlab.rdlcanvas.models.RDLSpec; -import org.ntlab.rdlcanvas.models.RDLSpecLang; -import org.ntlab.rdlcanvas.models.StructuralType; +import org.ntlab.rdlcanvas.models.*; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; public class ScreenTemplateGenerateRDL { @@ -12,10 +14,13 @@ public ScreenTemplateGenerateRDL(){ createScreenTemplateResourceDeclaration(); + createScreenTemplateFormula(); System.out.println(spec.toString()); } private void createScreenTemplateResourceDeclaration(){ + + //ex screen(1) :: struct spec.addRDLSpecResourceDeclaration("screen", 1, StructuralType.structure, null); spec.addRDLSpecResourceDeclaration("scId", 1, StructuralType.id, RDLSpecLang.typeString); spec.addRDLSpecResourceDeclaration("widget", 2, StructuralType.structure, null); @@ -39,6 +44,29 @@ private void createScreenTemplateFormula(){ + List dependedList = new ArrayList<>(); + List dependingList = new ArrayList<>(); + + //ex screen:scId + dependedList.add(spec.getRDLSpecResourceDeclaration("scId").getResource()); + spec.addRDLSpecStatement(new RDLSpecDependencyFormula(new RDLSpecDependency(spec.getRDLSpecResourceDeclaration("screen").getResource(), dependedList))); + dependedList.clear(); + + // ex wText:widget + dependedList.add(spec.getRDLSpecResourceDeclaration("widget").getResource()); + spec.addRDLSpecStatement(new RDLSpecDependencyFormula(new RDLSpecDependency(spec.getRDLSpecResourceDeclaration("wText").getResource(), dependedList))); + dependedList.clear(); + + //ex wState:widget + dependedList.add(spec.getRDLSpecResourceDeclaration("widget").getResource()); + spec.addRDLSpecStatement(new RDLSpecDependencyFormula(new RDLSpecDependency(spec.getRDLSpecResourceDeclaration("wText").getResource(), dependedList))); + dependedList.clear(); + + + } + + private void createElementPairDependencyFormula(String depending, String depended, List dependedList){ + }