static MethodSpec generateStateContainerGetter(TypeName stateContainerClassName) { return MethodSpec.methodBuilder("getStateContainer") .addModifiers(Modifier.PROTECTED) .addAnnotation(Override.class) .returns(stateContainerClassName) .addStatement("return $N", STATE_CONTAINER_FIELD_NAME) .build(); }
private static MethodSpec generateNeedsPreviousRenderDataMethod() { return MethodSpec.methodBuilder("needsPreviousRenderData") .addAnnotation(Override.class) .addModifiers(Modifier.PROTECTED) .returns(TypeName.BOOLEAN) .addStatement("return true") .build(); }
private static MethodSpec generateExtraBuilderMethod( SpecModel specModel, BuilderMethodModel builderMethodModel) { return MethodSpec.methodBuilder(builderMethodModel.paramName) .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addParameter(builderMethodModel.paramType, builderMethodModel.paramName) .addStatement( "return super.$L($L)", builderMethodModel.paramName, builderMethodModel.paramName) .returns(getBuilderType(specModel)) .build(); }
private static MethodSpec generateGetThisMethod(SpecModel specModel) { return MethodSpec.methodBuilder("getThis") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return this") .returns(getBuilderType(specModel)) .build(); }
private static MethodSpec generateGetThisMethod(SpecModel specModel) { return MethodSpec.methodBuilder("getThis") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return this") .returns(getMatcherType(specModel)) .build(); }
private void getBadgeViewHelper(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("getBadgeViewHelper") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return mBadgeViewHelper") .returns(ClassName.get(PACKAGE_NAME, "BGABadgeViewHelper")) .build(); typeBuilder.addMethod(methodSpec); }
private void isDragging(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("isDragging") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return mBadgeViewHelper.isDragging()") .returns(boolean.class) .build(); typeBuilder.addMethod(methodSpec); }
private void onTouchEvent(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("onTouchEvent") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addParameter(ClassName.get("android.view", "MotionEvent"), "event") .addStatement("return mBadgeViewHelper.onTouchEvent(event)") .returns(boolean.class) .build(); typeBuilder.addMethod(methodSpec); }
private void isShowBadge(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("isShowBadge") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return mBadgeViewHelper.isShowBadge()") .returns(boolean.class) .build(); typeBuilder.addMethod(methodSpec); }
private void isDraggable(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("isDraggable") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addStatement("return mBadgeViewHelper.isDraggable()") .returns(boolean.class) .build(); typeBuilder.addMethod(methodSpec); }
private MethodSpec generateSizeSpec() { return MethodSpec.methodBuilder( "getSize") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .returns(int.class) .addStatement("return $L", SIZE) .build(); }
private void callSuperOnTouchEvent(TypeSpec.Builder typeBuilder) { MethodSpec methodSpec = MethodSpec.methodBuilder("callSuperOnTouchEvent") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addParameter(ClassName.get("android.view", "MotionEvent"), "event") .addStatement("return super.onTouchEvent(event)") .returns(boolean.class) .build(); typeBuilder.addMethod(methodSpec); }
@Override public void enterWhen(Rule rule) { when = MethodSpec.methodBuilder("when") .addModifiers(Modifier.PUBLIC) .addAnnotation(Override.class) .returns(boolean.class) .addParameter(EvaluationContext.class, "context", Modifier.FINAL); currentMethod = when; }
private static MethodSpec getService(String implClass, String serviceInstanceName) { return MethodSpec.methodBuilder("getService") .addAnnotation(Override.class) .addModifiers(Modifier.PROTECTED) .returns(TypeName.OBJECT) .addParameter(ParameterSpec.builder(SectionClassNames.SECTION, "section").build()) .addStatement("return (($L) section).$L", implClass, serviceInstanceName) .build(); } }
private MethodSpec generateHashCodeSpec(int size) { MethodSpec.Builder hashCodeSpec = MethodSpec.methodBuilder("hashCode") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .returns(int.class) .addStatement("int $L = $L.hashCode()", RESULT, VALUE + 1); for (int i = 2; i <= size; i++) { String value = "value" + i; hashCodeSpec.addStatement( "$L = 31 * $L + ($L != null ? $L.hashCode() : 0)", RESULT, RESULT, value, value); } hashCodeSpec.addStatement("return $L", RESULT); return hashCodeSpec.build(); }
private static MethodSpec generateKeySetterMethod( SpecModel specModel, ImmutableList<SpecMethodModel<EventMethod, EventDeclarationModel>> triggerMethods) { MethodSpec.Builder builder = MethodSpec.methodBuilder("key") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .addParameter(ClassNames.STRING, "key") .addStatement("super.key(key)"); for (SpecMethodModel<EventMethod, EventDeclarationModel> triggerMethod : triggerMethods) { builder.addStatement("$L(key)", getEventTriggerKeyResetMethodName(triggerMethod.name)); } builder.addStatement("return this").returns(getBuilderType(specModel)); return builder.build(); }
private MethodSpec generateToStringSpec(int size) { String toString = "return \"" + CLASS_NAME + size + "{\" +\n"; String firstValue = VALUE + 1; toString += "\"" + firstValue + "=\"" + " + " + firstValue + " +\n"; for (int i = 2; i <= size; i++) { String value = VALUE + i; toString += "\", " + value + "=\"" + " + " + value + " +\n"; } toString += "\"}\""; return MethodSpec.methodBuilder("toString") .addAnnotation(Override.class) .addModifiers(Modifier.PUBLIC) .returns(String.class) .addStatement(toString) .build(); } }
private static MethodSpec generateStaticGetTrigger( String componentName, ClassName contextClassName, SpecMethodModel<EventMethod, EventDeclarationModel> eventMethodModel) { MethodSpec.Builder triggerMethod = MethodSpec.methodBuilder( ComponentBodyGenerator.getEventTriggerInstanceName(eventMethodModel.name)) .returns(ClassNames.EVENT_TRIGGER) .addModifiers(Modifier.PUBLIC, Modifier.STATIC); String methodId = componentName + ComponentBodyGenerator.getEventTriggerInstanceName(eventMethodModel.name); triggerMethod .addParameter(contextClassName, "c") .addParameter(ClassNames.STRING, "key") .addStatement("$T methodId = $L", TypeName.INT, methodId.hashCode()) .addStatement("return newEventTrigger(c, key, methodId)"); return triggerMethod.build(); }
private static MethodSpec generateEventTriggerBuilderMethod( SpecModel specModel, SpecMethodModel<EventMethod, EventDeclarationModel> triggerMethodModel) { final String eventTriggerName = ComponentBodyGenerator.getEventTriggerInstanceName(triggerMethodModel.name); final String implMemberName = getComponentMemberInstanceName(specModel); return MethodSpec.methodBuilder(eventTriggerName) .addModifiers(Modifier.PUBLIC) .returns(getBuilderType(specModel)) .addParameter(ClassNames.EVENT_TRIGGER, eventTriggerName) .addStatement("this.$L.$L = $L", implMemberName, eventTriggerName, eventTriggerName) .addStatement("return this") .build(); }
private TypeSpec enumAdapter(ClassName javaType, ClassName adapterJavaType) { return TypeSpec.classBuilder(adapterJavaType.simpleName()) .superclass(enumAdapterOf(javaType)) .addModifiers(PRIVATE, STATIC, FINAL) .addMethod(MethodSpec.constructorBuilder() .addStatement("super($T.class)", javaType) .build()) .addMethod(MethodSpec.methodBuilder("fromValue") .addAnnotation(Override.class) .addModifiers(PROTECTED) .returns(javaType) .addParameter(int.class, "value") .addStatement("return $T.fromValue(value)", javaType) .build()) .build(); }