0
|
1 package nabble.view.web.template;
|
|
2
|
|
3 import nabble.model.Site;
|
|
4 import nabble.naml.compiler.Command;
|
|
5 import nabble.naml.compiler.CommandSpec;
|
|
6 import nabble.naml.compiler.IPrintWriter;
|
|
7 import nabble.naml.compiler.Interpreter;
|
|
8 import nabble.naml.compiler.Namespace;
|
|
9
|
|
10
|
|
11 @Namespace(
|
|
12 name = "naml_configuration",
|
|
13 global = false
|
|
14 )
|
|
15 public class NamlConfigurationNamespace {
|
|
16
|
|
17 public static final CommandSpec get_value = new CommandSpec.Builder()
|
|
18 .parameters("name", "default")
|
|
19 .build()
|
|
20 ;
|
|
21
|
|
22 @Command public void get_value(IPrintWriter out, Interpreter interp) {
|
|
23 Site site = NabbleNamespace.current().site();
|
|
24 String name = interp.getArgString("name");
|
|
25 String value = site.getConfigurationValue(name);
|
|
26 if( value == null )
|
|
27 value = interp.getArgString("default");
|
|
28 out.print(value);
|
|
29 }
|
|
30
|
|
31 public static final CommandSpec set = new CommandSpec.Builder()
|
|
32 .parameters("name", "value", "naml")
|
|
33 .optionalParameters("default")
|
|
34 .build()
|
|
35 ;
|
|
36
|
|
37 @Command public void set(IPrintWriter out, Interpreter interp) {
|
|
38 Site site = NabbleNamespace.current().site();
|
|
39 String name = interp.getArgString("name");
|
|
40 String value = interp.getArgString("value");
|
|
41 String defaultValue = interp.getArgString("default");
|
|
42 if (defaultValue != null && value.equals(defaultValue)) {
|
|
43 site.deleteConfiguration(name);
|
|
44 } else {
|
|
45 String naml = interp.getArgString("naml");
|
|
46 site.saveConfiguration(name,value,naml);
|
|
47 }
|
|
48 out.print(name);
|
|
49 }
|
|
50
|
|
51 @Command public void apply(IPrintWriter out, Interpreter interp) {
|
|
52 Site site = NabbleNamespace.current().site();
|
|
53 site.update();
|
|
54 }
|
|
55
|
|
56 }
|