sw.println("public %s {", getBaseMethodDeclaration(jmethod));
sw.indent();
switch (method.getAction()) {
case GET: {
// Must handle de-boxing primitive types
JPrimitiveType primitive = jmethod.getReturnType().isPrimitive();
if (primitive != null) {
// Object toReturn = values.get("foo");
sw.println("Object toReturn = values.get(\"%s\");",
method.getPropertyName());
sw.println("if (toReturn == null) {");
// return 0;
sw.indentln("return %s;",
primitive.getUninitializedFieldExpression());
sw.println("} else {");
// return (BoxedType) toReturn;
sw.indentln("return (%s) toReturn;",
primitive.getQualifiedBoxedSourceName());
sw.println("}");
} else {
// return (ReturnType) values.get(\"foo\");
sw.println("return (%s) values.get(\"%s\");",
ModelUtils.getQualifiedBaseSourceName(jmethod.getReturnType()),