javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java
branchmodel
changeset 960 4887e22cb810
parent 956 7fc6b7e9c982
child 961 3cdaee10e72b
     1.1 --- a/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java	Mon Apr 08 19:30:22 2013 +0200
     1.2 +++ b/javaquery/api/src/main/java/org/apidesign/bck2brwsr/htmlpage/PageProcessor.java	Tue Apr 09 10:06:19 2013 +0200
     1.3 @@ -193,17 +193,16 @@
     1.4                      boolean[] isModel = { false };
     1.5                      boolean[] isEnum = { false };
     1.6                      String type = checkType(m.properties()[prop++], isModel, isEnum);
     1.7 -                    if (isEnum[0]) {
     1.8 -//                        w.append(type).append(".valueOf((String)");
     1.9 -//                        close = true;
    1.10 -                        w.append("    this.prop_").append(pn);
    1.11 -                        w.append(" = null;\n");
    1.12 -                    } else if (p.array()) {
    1.13 +                    if (p.array()) {
    1.14                          w.append("if (ret[" + cnt + "] instanceof Object[]) {\n");
    1.15                          w.append("  for (Object e : ((Object[])ret[" + cnt + "])) {\n");
    1.16                          if (isModel[0]) {
    1.17                              w.append("    this.prop_").append(pn).append(".add(new ");
    1.18                              w.append(type).append("(e));\n");
    1.19 +                        } else if (isEnum[0]) {
    1.20 +                            w.append("    this.prop_").append(pn);
    1.21 +                            w.append(".add(");
    1.22 +                            w.append(type).append(".valueOf((String)e));\n");
    1.23                          } else {
    1.24                              if (isPrimitive(type)) {
    1.25                                  w.append("    this.prop_").append(pn).append(".add(((Number)e).");
    1.26 @@ -216,7 +215,11 @@
    1.27                          w.append("  }\n");
    1.28                          w.append("}\n");
    1.29                      } else {
    1.30 -                        if (isPrimitive(type)) {
    1.31 +                        if (isEnum[0]) {
    1.32 +                            w.append("    this.prop_").append(pn);
    1.33 +                            w.append(" = ");
    1.34 +                            w.append(type).append(".valueOf((String)ret[" + cnt + "]);\n");
    1.35 +                        } else if (isPrimitive(type)) {
    1.36                              w.append("    this.prop_").append(pn);
    1.37                              w.append(" = ((Number)").append("ret[" + cnt + "]).");
    1.38                              w.append(type).append("Value();\n");