diff -r 73c0973e8e0a -r 37ad459579bc ko/archetype/src/main/resources/archetype-resources/src/main/java/DataModel.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ko/archetype/src/main/resources/archetype-resources/src/main/java/DataModel.java Mon Sep 09 17:34:30 2013 +0200 @@ -0,0 +1,31 @@ +package ${package}; + +import net.java.html.json.ComputedProperty; +import net.java.html.json.Function; +import net.java.html.json.Model; +import net.java.html.json.Property; + +/** Model annotation generates class Data with + * one message property, boolean property and read only words property + */ +@Model(className = "Data", properties = { + @Property(name = "message", type = String.class), + @Property(name = "on", type = boolean.class) +}) +final class DataModel { + @ComputedProperty static java.util.List words(String message) { + String[] arr = new String[6]; + String[] words = message == null ? new String[0] : message.split(" ", 6); + for (int i = 0; i < 6; i++) { + arr[i] = words.length > i ? words[i] : "!"; + } + return java.util.Arrays.asList(arr); + } + + @Function static void turnOn(Data model) { + model.setOn(true); + } + @Function static void turnOff(Data model) { + model.setOn(false); + } +}