Author: tchemit Date: 2013-11-28 16:45:30 +0100 (Thu, 28 Nov 2013) New Revision: 2759 Url: http://nuiton.org/projects/jaxx/repository/revisions/2759 Log: refs #2946: Introduce UIHandler contract and a way to glue it to any generated jaxx object (let's call beforeInit at the beginning of method $initialize Modified: trunk/jaxx-compiler/src/main/java/jaxx/compiler/JAXXCompiler.java trunk/jaxx-compiler/src/main/java/jaxx/compiler/finalizers/DefaultFinalizer.java Modified: trunk/jaxx-compiler/src/main/java/jaxx/compiler/JAXXCompiler.java =================================================================== --- trunk/jaxx-compiler/src/main/java/jaxx/compiler/JAXXCompiler.java 2013-11-28 10:58:35 UTC (rev 2758) +++ trunk/jaxx-compiler/src/main/java/jaxx/compiler/JAXXCompiler.java 2013-11-28 15:45:30 UTC (rev 2759) @@ -2104,11 +2104,4 @@ public boolean isUseHandler() { return StringUtils.isNotBlank(uiHandler); } - - public void addHandlerBeforeInitInvocation(StringBuilder code) { - if (isUseHandler()) { - code.append("handler." + METHOD_NAME$BEFORE_INIT + "(this);"); - code.append(JAXXCompiler.getLineSeparator()); - } - } } Modified: trunk/jaxx-compiler/src/main/java/jaxx/compiler/finalizers/DefaultFinalizer.java =================================================================== --- trunk/jaxx-compiler/src/main/java/jaxx/compiler/finalizers/DefaultFinalizer.java 2013-11-28 10:58:35 UTC (rev 2758) +++ trunk/jaxx-compiler/src/main/java/jaxx/compiler/finalizers/DefaultFinalizer.java 2013-11-28 15:45:30 UTC (rev 2759) @@ -989,7 +989,6 @@ // code.append(" super();").append(eol); // } } - compiler.addHandlerBeforeInitInvocation(code); code.append(METHOD_NAME_$INITIALIZE + "();"); code.append(eol); return JavaElementFactory.newMethod(PUBLIC, @@ -1053,7 +1052,6 @@ code.append(".initContext(this, " + PARAMETER_NAME_PARENT_CONTEXT + ");"); code.append(eol); } - compiler.addHandlerBeforeInitInvocation(code); code.append(METHOD_NAME_$INITIALIZE + "();"); code.append(eol); JavaArgument argument = JavaElementFactory.newArgument( @@ -1088,7 +1086,9 @@ code.append(" return;").append(eol); code.append("}").append(eol); code.append(JavaFileGenerator.addDebugLoggerInvocation(compiler, "this")); - + if (compiler.isUseHandler()) { + code.append("handler." + METHOD_NAME$BEFORE_INIT + "(this);").append(eol); + } code.append(FIELD_NAME_$OBJECT_MAP + ".put("); String rootId = root.getId(); code.append(TypeManager.getJavaCode(rootId));