use of com.helger.jcodemodel.JBlock in project androidannotations by androidannotations.
the class EServiceHolder method setOnCreate.
private void setOnCreate() {
JMethod onCreate = generatedClass.method(PUBLIC, getCodeModel().VOID, "onCreate");
onCreate.annotate(Override.class);
JBlock onCreateBody = onCreate.body();
onCreateBody.invoke(getInit());
onCreateBody.invoke(JExpr._super(), onCreate);
onCreateAfterSuperBlock = onCreateBody.blockVirtual();
}
use of com.helger.jcodemodel.JBlock in project androidannotations by androidannotations.
the class EViewHolder method setOnFinishInflate.
protected void setOnFinishInflate() {
onFinishInflate = generatedClass.method(PUBLIC, getCodeModel().VOID, "onFinishInflate");
onFinishInflate.annotate(Override.class);
onFinishInflate.javadoc().append(ALREADY_INFLATED_COMMENT.replaceAll("alreadyInflated_", "alreadyInflated" + generationSuffix()));
JBlock ifNotInflated = onFinishInflate.body()._if(getAlreadyInflated().not())._then();
ifNotInflated.assign(getAlreadyInflated(), JExpr.TRUE);
getInit();
viewNotifierHelper.invokeViewChanged(ifNotInflated);
onFinishInflate.body().invoke(JExpr._super(), "onFinishInflate");
}
use of com.helger.jcodemodel.JBlock in project androidannotations by androidannotations.
the class EViewHolder method setOnAttachedToWindow.
private void setOnAttachedToWindow() {
onAttachedToWindowMethod = generatedClass.method(JMod.PUBLIC, getCodeModel().VOID, "onAttachedToWindow");
onAttachedToWindowMethod.annotate(Override.class);
JBlock body = onAttachedToWindowMethod.body();
body.invoke(_super(), onAttachedToWindowMethod);
onAttachedToWindowAfterSuperBlock = body.blockSimple();
}
use of com.helger.jcodemodel.JBlock in project androidannotations by androidannotations.
the class APTCodeModelHelper method replaceSuperCall.
public void replaceSuperCall(JMethod method, JBlock replacement) {
String superCallStart = "super." + method.name() + "(";
JBlock oldBody = removeBody(method);
JBlock newBody = method.body();
for (Object content : oldBody.getContents()) {
StringWriter writer = new StringWriter();
JFormatter formatter = new JFormatter(writer);
IJStatement statement = (IJStatement) content;
statement.state(formatter);
String statementString = writer.getBuffer().toString();
if (statementString.startsWith(superCallStart)) {
newBody.add(replacement);
} else {
newBody.add(statement);
}
}
}
use of com.helger.jcodemodel.JBlock in project androidannotations by androidannotations.
the class EComponentWithViewSupportHolder method setFindSupportFragmentByTag.
protected void setFindSupportFragmentByTag() {
if (getProcessingEnvironment().getElementUtils().getTypeElement(CanonicalNameConstants.ANDROIDX_FRAGMENT) == null) {
findSupportFragmentByTag = getGeneratedClass().method(PRIVATE, getClasses().SUPPORT_V4_FRAGMENT, "findSupportFragmentByTag");
} else {
findSupportFragmentByTag = getGeneratedClass().method(PRIVATE, getClasses().ANDROIDX_FRAGMENT, "findSupportFragmentByTag");
}
JVar tagParam = findSupportFragmentByTag.param(getClasses().STRING, "tag");
JBlock body = findSupportFragmentByTag.body();
AbstractJClass fragmentActivity = getFragmentActivity();
body._if(getContextRef()._instanceof(fragmentActivity).not())._then()._return(_null());
JVar activityVar = body.decl(fragmentActivity, "activity_", cast(fragmentActivity, getContextRef()));
body._return(activityVar.invoke("getSupportFragmentManager").invoke("findFragmentByTag").arg(tagParam));
}
Aggregations