11package eu .europa .ted .eforms .sdk .analysis .efx .mock ;
22
3- import java .util .LinkedHashSet ;
43import java .util .List ;
54import java .util .Set ;
65import java .util .stream .Collectors ;
76import org .apache .commons .lang3 .StringUtils ;
87import org .apache .commons .lang3 .tuple .Pair ;
98import eu .europa .ted .efx .interfaces .MarkupGenerator ;
10- import eu .europa .ted .efx .model .Expression ;
11- import eu .europa .ted .efx .model .Expression .PathExpression ;
12- import eu .europa .ted .efx .model .Expression .StringExpression ;
13- import eu .europa .ted .efx .model .Markup ;
9+ import eu .europa .ted .efx .model .expressions .Expression ;
10+ import eu .europa .ted .efx .model .expressions .path .PathExpression ;
11+ import eu .europa .ted .efx .model .expressions .scalar .NumericExpression ;
12+ import eu .europa .ted .efx .model .expressions .scalar .StringExpression ;
13+ import eu .europa .ted .efx .model .templates .Markup ;
1414
1515public class MarkupGeneratorMock implements MarkupGenerator {
1616 @ Override
1717 public Markup renderVariableExpression (Expression valueReference ) {
18- return new Markup (String .format ("eval(%s)" , valueReference .script ));
18+ return new Markup (String .format ("eval(%s)" , valueReference .getScript () ));
1919 }
2020
2121 @ Override
2222 public Markup renderLabelFromKey (StringExpression key ) {
23- return new Markup (String .format ("label(%s)" , key .script ));
23+ return new Markup (String .format ("label(%s)" , key .getScript () ));
2424 }
2525
2626 @ Override
2727 public Markup renderLabelFromExpression (Expression expression ) {
28- return new Markup (String .format ("label(%s)" , expression .script ));
28+ return new Markup (String .format ("label(%s)" , expression .getScript () ));
2929 }
3030
3131 @ Override
@@ -34,10 +34,6 @@ public Markup renderFreeText(String freeText) {
3434 }
3535
3636 @ Override
37- public Markup composeFragmentDefinition (String name , String number , Markup content ) {
38- return this .composeFragmentDefinition (name , number , content , new LinkedHashSet <>());
39- }
40-
4137 public Markup composeFragmentDefinition (String name , String number , Markup content ,
4238 Set <String > parameters ) {
4339 if (StringUtils .isBlank (number )) {
@@ -49,13 +45,9 @@ public Markup composeFragmentDefinition(String name, String number, Markup conte
4945 }
5046
5147 @ Override
52- public Markup renderFragmentInvocation (String name , PathExpression context ) {
53- return this .renderFragmentInvocation (name , context , new LinkedHashSet <>());
54- }
55-
5648 public Markup renderFragmentInvocation (String name , PathExpression context ,
5749 Set <Pair <String , String >> variables ) {
58- return new Markup (String .format ("for-each(%s).call(%s(%s))" , context .script , name ,
50+ return new Markup (String .format ("for-each(%s).call(%s(%s))" , context .getScript () , name ,
5951 variables .stream ()
6052 .map (v -> String .format ("%s:%s" , v .getLeft (), v .getRight ()))
6153 .collect (Collectors .joining (", " ))));
@@ -67,4 +59,25 @@ public Markup composeOutputFile(List<Markup> body, List<Markup> templates) {
6759 templates .stream ().map (t -> t .script ).collect (Collectors .joining ("\n " )),
6860 body .stream ().map (t -> t .script ).collect (Collectors .joining ("\n " ))));
6961 }
62+
63+ @ Override
64+ public Markup renderLabelFromKey (StringExpression key , NumericExpression quantity ) {
65+ if (quantity .isEmpty ()) {
66+ return new Markup (String .format ("label(%s)" , key .getScript ()));
67+ }
68+ return new Markup (String .format ("label(%s, %s)" , key .getScript (), quantity .getScript ()));
69+ }
70+
71+ @ Override
72+ public Markup renderLabelFromExpression (Expression expression , NumericExpression quantity ) {
73+ if (quantity .isEmpty ()) {
74+ return new Markup (String .format ("label(%s)" , expression .getScript ()));
75+ }
76+ return new Markup (String .format ("label(%s, %s)" , expression .getScript (), quantity .getScript ()));
77+ }
78+
79+ @ Override
80+ public Markup renderLineBreak () {
81+ return new Markup ("<line-break>" );
82+ }
7083}
0 commit comments