public TypeMirror getActualType(Element element, GeneratedClassHolder holder) { DeclaredType enclosingClassType = (DeclaredType) element.getEnclosingElement().asType(); return getActualType(element, enclosingClassType, holder); }
public TypeMirror getActualTypeOfEnclosingElementOfInjectedElement(GeneratedClassHolder holder, Element param) { DeclaredType enclosingClassType; if (param.getKind() == ElementKind.PARAMETER) { enclosingClassType = (DeclaredType) param.getEnclosingElement().getEnclosingElement().asType(); } else { enclosingClassType = (DeclaredType) param.getEnclosingElement().asType(); } return getActualType(param, enclosingClassType, holder); }
@Override public void process(Element element, HasInstanceState holder) { AbstractJClass elementClass = codeModelHelper.typeMirrorToJClass(element.asType()); String fieldName = element.getSimpleName().toString(); JBlock saveStateBody = holder.getSaveStateMethodBody(); JVar saveStateBundleParam = holder.getSaveStateBundleParam(); JMethod restoreStateMethod = holder.getRestoreStateMethod(); JBlock restoreStateBody = holder.getRestoreStateMethodBody(); JVar restoreStateBundleParam = holder.getRestoreStateBundleParam(); TypeMirror type = codeModelHelper.getActualType(element, holder); BundleHelper bundleHelper = new BundleHelper(getEnvironment(), type); JFieldRef ref = ref(fieldName); saveStateBody.add(bundleHelper.getExpressionToSaveFromField(saveStateBundleParam, JExpr.lit(fieldName), ref)); IJExpression restoreMethodCall = bundleHelper.getExpressionToRestoreFromBundle(elementClass, restoreStateBundleParam, JExpr.lit(fieldName), restoreStateMethod); restoreStateBody.assign(ref, restoreMethodCall); } }
public TypeMirror getActualType(Element element, GeneratedClassHolder holder) { DeclaredType enclosingClassType = (DeclaredType) element.getEnclosingElement().asType(); return getActualType(element, enclosingClassType, holder); }
public TypeMirror getActualTypeOfEnclosingElementOfInjectedElement(GeneratedClassHolder holder, Element param) { DeclaredType enclosingClassType; if (param.getKind() == ElementKind.PARAMETER) { enclosingClassType = (DeclaredType) param.getEnclosingElement().getEnclosingElement().asType(); } else { enclosingClassType = (DeclaredType) param.getEnclosingElement().asType(); } return getActualType(param, enclosingClassType, holder); }
@Override public void process(Element element, HasInstanceState holder) { AbstractJClass elementClass = codeModelHelper.typeMirrorToJClass(element.asType()); String fieldName = element.getSimpleName().toString(); JBlock saveStateBody = holder.getSaveStateMethodBody(); JVar saveStateBundleParam = holder.getSaveStateBundleParam(); JMethod restoreStateMethod = holder.getRestoreStateMethod(); JBlock restoreStateBody = holder.getRestoreStateMethodBody(); JVar restoreStateBundleParam = holder.getRestoreStateBundleParam(); TypeMirror type = codeModelHelper.getActualType(element, holder); BundleHelper bundleHelper = new BundleHelper(getEnvironment(), type); JFieldRef ref = ref(fieldName); saveStateBody.add(bundleHelper.getExpressionToSaveFromField(saveStateBundleParam, JExpr.lit(fieldName), ref)); IJExpression restoreMethodCall = bundleHelper.getExpressionToRestoreFromBundle(elementClass, restoreStateBundleParam, JExpr.lit(fieldName), restoreStateMethod); restoreStateBody.assign(ref, restoreMethodCall); } }