Java Code Examples for com.squareup.javawriter.JavaWriter#emitStatement()
The following examples show how to use
com.squareup.javawriter.JavaWriter#emitStatement() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: ParcelerGenerator.java From postman with MIT License | 6 votes |
private void writeReadFromParcelMethod(JavaWriter writer) throws IOException { writer.emitAnnotation(Override.class); writer.beginMethod(elementCompressedName, "readFromParcel", Modifiers.PUBLIC, "Parcel", "parcel"); writer.emitStatement("%s object = new %s()", elementCompressedName, elementCompressedName); writer.emitStatement("Bundle bundle = parcel.readBundle()"); writer.emitStatement("bundle.setClassLoader(%s.class.getClassLoader())", elementCompressedName); for (VariableElement field : parceledFields) { getSaveStatementWriter(field).writeFieldReadStatement(field, postCreateChildMethods, writer); } writer.emitStatement("return object"); writer.endMethod(); }
Example 2
Source File: ParcelerGenerator.java From postman with MIT License | 6 votes |
private void writeWriteToParcelMethod(JavaWriter writer) throws IOException { List<String> parameters = new ArrayList<>(4); parameters.add(elementCompressedName); parameters.add("object"); parameters.add("Parcel"); parameters.add("dest"); writer.emitAnnotation(Override.class); writer.beginMethod("void", "writeToParcel", Modifiers.PUBLIC, parameters, null); writer.emitStatement("Bundle bundle = new Bundle()"); for (VariableElement field : parceledFields) { getSaveStatementWriter(field).writeFieldWriteStatement(field, writer); } writer.emitStatement("dest.writeBundle(bundle)"); writer.endMethod(); }
Example 3
Source File: ParcelableSaveStatementWriter.java From postman with MIT License | 6 votes |
@Override public void writeFieldReadStatement(VariableElement field, Collection<ExecutableElement> postCreateChildMethods, JavaWriter writer) throws IOException { writer.emitStatement("object.%s = bundle.getParcelable(\"%s\")", field.getSimpleName(), field.getSimpleName()); for (ExecutableElement method : postCreateChildMethods) { writer.emitStatement("object.%s(object.%s)", method.getSimpleName(), field.getSimpleName()); } }
Example 4
Source File: MapSaveStatementWriter.java From postman with MIT License | 6 votes |
@Override public void writeFieldWriteStatement(VariableElement field, JavaWriter writer) throws IOException { DeclaredType type = (DeclaredType) field.asType(); List<? extends TypeMirror> typeArguments = type.getTypeArguments(); TypeMirror keyType = typeArguments.get(0); TypeMirror valueType = typeArguments.get(1); writer.beginControlFlow("if (object.%s != null)", field.getSimpleName()); writer.emitStatement( "%1$s.writeMapToBundle(object.%2$s, bundle, %3$s.class, %4$s.class, \"%2$s\")", MapBundler.class.getCanonicalName(), field.getSimpleName(), keyType, valueType); writer.endControlFlow(); }
Example 5
Source File: MementoProcessor.java From memento with Apache License 2.0 | 5 votes |
private void emitReaderMethod(Set<? extends Element> elements, Element hostActivity, JavaWriter writer) throws IOException { writer.emitEmptyLine(); writer.emitAnnotation(Override.class); writer.beginMethod("void", "retain", EnumSet.of(Modifier.PUBLIC), "Activity", "source"); final String activityClass = hostActivity.getSimpleName().toString(); writer.emitStatement(activityClass + " activity = (" + activityClass + ") source"); for (Element element : elements) { writer.emitStatement("this." + element.getSimpleName() + " = activity." + element.getSimpleName()); } writer.endMethod(); }
Example 6
Source File: StringSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldReadStatement(VariableElement field, Collection<ExecutableElement> postCreateChildMethods, JavaWriter writer) throws IOException { writer.emitStatement("object.%s = bundle.getString(\"%s\")", field.getSimpleName(), field.getSimpleName()); }
Example 7
Source File: CollectionSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldWriteStatement(VariableElement field, JavaWriter writer) throws IOException { DeclaredType type = (DeclaredType) field.asType(); TypeMirror itemType = type.getTypeArguments().get(0); TypeMirror itemTypeErasure = processingEnv.getTypeUtils().erasure(itemType); writer.beginControlFlow("if (object.%s != null)", field.getSimpleName()); writer.emitStatement( "%1$s.writeCollectionToBundle(object.%2$s, bundle, %3$s.class, \"%2$s\")", CollectionBundler.class.getCanonicalName(), field.getSimpleName(), itemTypeErasure); writer.endControlFlow(); }
Example 8
Source File: SettingsBuilder.java From revolution-irc with GNU General Public License v3.0 | 5 votes |
private static void writeGetterFunc(JavaWriter writer, SettingInfo setting) throws IOException { String getterName = (String) setting.properties.get("getter"); if (getterName == null) getterName = getGetterPrefix(setting.type) + capitalize(setting.name); writer.beginMethod(setting.type, getterName, EnumSet.of(Modifier.PUBLIC, Modifier.STATIC)); switch (setting.type) { case "boolean": writeSimpleGetterFuncBody(writer, "getBoolean", setting.staticMemberName, setting.defaultValue); break; case "int": writeSimpleGetterFuncBody(writer, "getInt", setting.staticMemberName, setting.defaultValue); break; case "String": writeSimpleGetterFuncBody(writer, "getString", setting.staticMemberName, setting.defaultValue); break; case "String[]": writeStringArrGetterFuncBody(writer, setting.staticMemberName, setting.defaultValue, setting.properties); break; case "long": writer.emitStatement( "return SettingsHelper.getLong(getPreferences(), %s, %s)", setting.staticMemberName, setting.defaultValue); break; default: throw new IllegalArgumentException("Type not supported: " + setting.type); } writer.endMethod(); }
Example 9
Source File: MementoProcessor.java From memento with Apache License 2.0 | 5 votes |
private void emitWriterMethod(Set<? extends Element> elements, Element hostActivity, JavaWriter writer) throws IOException { writer.emitEmptyLine(); writer.emitAnnotation(Override.class); writer.beginMethod("void", "restore", EnumSet.of(Modifier.PUBLIC), "Activity", "target"); final String activityClass = hostActivity.getSimpleName().toString(); writer.emitStatement(activityClass + " activity = (" + activityClass + ") target"); for (Element element : elements) { writer.emitStatement("activity." + element.getSimpleName() + " = this." + element.getSimpleName()); } writer.endMethod(); }
Example 10
Source File: SerializableSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldWriteStatement(VariableElement field, JavaWriter writer) throws IOException { writer.emitStatement("bundle.putSerializable(\"%s\", object.%s)", field.getSimpleName(), field.getSimpleName()); }
Example 11
Source File: SerializableSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldReadStatement(VariableElement field, Collection<ExecutableElement> postCreateChildMethods, JavaWriter writer) throws IOException { writer.emitStatement("object.%s = (%s) bundle.getSerializable(\"%s\")", field.getSimpleName(), field.asType().toString(), field.getSimpleName()); for (ExecutableElement method : postCreateChildMethods) { writer.emitStatement("object.%s(object.%s)", method.getSimpleName(), field.getSimpleName()); } }
Example 12
Source File: BoxableSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldWriteStatement(VariableElement field, JavaWriter writer) throws IOException { writer.emitStatement("bundle.put%s(\"%s\", object.%s)", getSaveType(field.asType()), field.getSimpleName(), field.getSimpleName()); }
Example 13
Source File: BoxableSaveStatementWriter.java From postman with MIT License | 5 votes |
@Override public void writeFieldReadStatement(VariableElement field, Collection<ExecutableElement> postCreateChildMethods, JavaWriter writer) throws IOException { writer.emitStatement("object.%s = bundle.get%s(\"%s\")", field.getSimpleName(), getSaveType(field.asType()), field.getSimpleName()); }
Example 14
Source File: AdapterHolderWriter.java From Ollie with Apache License 2.0 | 5 votes |
private void writeStaticInitializations(JavaWriter writer) throws IOException { writer.beginInitializer(true); List<MigrationElement> migrations = Lists.newArrayList(registry.getMigrationElements()); if (!migrations.isEmpty()) { Collections.sort(migrations); for (MigrationElement migration : migrations) { writer.emitStatement("MIGRATIONS.add(new %s())", migration.getQualifiedName()); } writer.emitEmptyLine(); } List<ModelAdapterElement> modelAdapters = Lists.newArrayList(registry.getModelAdapterElements()); if (!modelAdapters.isEmpty()) { Collections.sort(modelAdapters); for (ModelAdapterElement modelAdapter : modelAdapters) { writer.emitStatement("MODEL_ADAPTERS.put(%s.class, new %s())", modelAdapter.getModelQualifiedName(), modelAdapter.getQualifiedName()); } writer.emitEmptyLine(); } List<TypeAdapterElement> typeAdapters = Lists.newArrayList(registry.getTypeAdapterElements()); if (!typeAdapters.isEmpty()) { Collections.sort(typeAdapters); for (TypeAdapterElement typeAdapter : typeAdapters) { writer.emitStatement("TYPE_ADAPTERS.put(%s.class, new %s())", typeAdapter.getDeserializedQualifiedName(), typeAdapter.getQualifiedName()); } } writer.endInitializer(); writer.emitEmptyLine(); }
Example 15
Source File: TableObject.java From shillelagh with Apache License 2.0 | 4 votes |
/** Creates the function for inserting a new value into the database */ private void emitInsert(JavaWriter javaWriter) throws IOException { logger.d("emitInsert"); String tableName = getTableName(); javaWriter.beginMethod("void", $$INSERT_OBJECT_FUNCTION, EnumSet.of(PUBLIC, STATIC), getTargetClass(), "element", "SQLiteDatabase", "db") .emitStatement("ContentValues values = new ContentValues()"); List<TableColumn> childColumns = Lists.newLinkedList(); for (TableColumn column : columns) { String columnName = column.getColumnName(); String memberName = column.getMemberName(); if (column.isBlob() && !column.isByteArray()) { javaWriter.emitStatement("values.put(\"%s\", %s(element.%s))", columnName, SERIALIZE_FUNCTION, memberName); } else if (column.isOneToOne()) { javaWriter.emitStatement("%s%s.%s(element.%s, db)", column.getType(), $$SUFFIX, INSERT_ONE_TO_ONE, column.getColumnName()) .emitStatement("values.put(\"%s\", %s%s.%s(element.%s))", columnName, column.getType(), $$SUFFIX, GET_ID_FUNCTION, memberName); } else if (column.isDate()) { javaWriter.emitStatement("values.put(\"%s\", element.%s.getTime())", columnName, memberName); } else if (column.isOneToMany()) { childColumns.add(column); } else if (!column.isOneToManyChild()) { javaWriter.emitStatement("values.put(\"%s\", element.%s)", columnName, memberName); } } javaWriter.emitStatement("db.insert(\"%s\", null, values)", tableName); if (!childColumns.isEmpty()) { javaWriter.emitStatement("long id = DatabaseUtils.longForQuery(db, " + "\"SELECT ROWID FROM %s ORDER BY ROWID DESC LIMIT 1\", null)", tableName); } for (TableColumn childColumn : childColumns) { javaWriter.emitStatement("%s%s.%s(id, element.%s, db)", childColumn.getType(), $$SUFFIX, PARENT_INSERT_FUNCTION, childColumn.getMemberName()); } javaWriter.endMethod(); }
Example 16
Source File: StringFogClassGenerator.java From StringFog with Apache License 2.0 | 4 votes |
public static void generate(File outputFile, String packageName, String className, String key, String implementation) throws IOException { File outputDir = outputFile.getParentFile(); if (!outputDir.exists() && !outputDir.mkdirs()) { throw new IOException("Can not mkdirs the dir: " + outputDir); } int lastIndexOfDot = implementation.lastIndexOf("."); String implementationSimpleClassName = lastIndexOfDot == -1 ? implementation : implementation.substring(implementation.lastIndexOf(".") + 1); JavaWriter javaWriter = new JavaWriter(new FileWriter(outputFile)); javaWriter.emitPackage(packageName); javaWriter.emitEmptyLine(); javaWriter.emitImports(implementation); javaWriter.emitEmptyLine(); javaWriter.emitJavadoc("Generated code from StringFog gradle plugin. Do not modify!"); javaWriter.beginType(className, "class", ImmutableSet.of(Modifier.PUBLIC, Modifier.FINAL)); javaWriter.emitField(implementationSimpleClassName, "IMPL", ImmutableSet.of(Modifier.PRIVATE, Modifier.STATIC, Modifier.FINAL), "new " + implementationSimpleClassName + "()"); javaWriter.emitEmptyLine(); javaWriter.beginMethod(String.class.getSimpleName(), "encrypt", ImmutableSet.of(Modifier.PUBLIC, Modifier.STATIC), String.class.getSimpleName(), "value"); javaWriter.emitStatement("return " + "IMPL.encrypt(value, \"" + key + "\")"); javaWriter.endMethod(); javaWriter.emitEmptyLine(); javaWriter.beginMethod(String.class.getSimpleName(), "decrypt", ImmutableSet.of(Modifier.PUBLIC, Modifier.STATIC), String.class.getSimpleName(), "value"); javaWriter.emitStatement("return " + "IMPL.decrypt(value, \"" + key + "\")"); javaWriter.endMethod(); javaWriter.emitEmptyLine(); javaWriter.beginMethod(boolean.class.getSimpleName(), "overflow", ImmutableSet.of(Modifier.PUBLIC, Modifier.STATIC), String.class.getSimpleName(), "value"); javaWriter.emitStatement("return " + "IMPL.overflow(value, \"" + key + "\")"); javaWriter.endMethod(); javaWriter.emitEmptyLine(); javaWriter.endType(); javaWriter.close(); }
Example 17
Source File: ModelAdapterWriter.java From Ollie with Apache License 2.0 | 4 votes |
private void writeGetModelType(JavaWriter writer, String modelSimpleName) throws IOException { writer.beginMethod("Class<? extends Model>", "getModelType", MODIFIERS); writer.emitStatement("return " + modelSimpleName + ".class"); writer.endMethod(); writer.emitEmptyLine(); }
Example 18
Source File: AdapterHolderWriter.java From Ollie with Apache License 2.0 | 4 votes |
private void writeGetTypeAdpater(JavaWriter writer) throws IOException { writer.beginMethod("<D, S> TypeAdapter<D, S>", "getTypeAdapter", METHOD_MODIFIERS, "Class<D>", "cls"); writer.emitStatement("return TYPE_ADAPTERS.get(cls)"); writer.endMethod(); }
Example 19
Source File: TableObject.java From shillelagh with Apache License 2.0 | 4 votes |
private void emitSingleMap(JavaWriter javaWriter) throws IOException { String targetClass = getTargetClass(); javaWriter.beginMethod(targetClass, $$MAP_SINGLE_FUNCTION, EnumSet.of(PUBLIC, STATIC), "Cursor", "cursor", "SQLiteDatabase", "db") .emitStatement("%s tableObject = %s(%s.class)", targetClass, NEW_INSTANCE_FUNCTION, getTargetClass()) .emitStatement("tableObject.%s = cursor.getLong(cursor.getColumnIndex(\"%s\"))", idColumn.getMemberName(), idColumn.getColumnName()); for (TableColumn column : columns) { String columnName = column.getColumnName(); String columnMember = column.getMemberName(); if (column.isDate()) { javaWriter.emitStatement( "tableObject.%s = new Date(cursor.%s(cursor.getColumnIndex(\"%s\")))", columnMember, CursorFunctions.get(long.class.getName()), columnName); } else if (column.isOneToOne()) { javaWriter.emitStatement( "tableObject.%s = %s%s.%s(cursor.%s(cursor.getColumnIndex(\"%s\")), db)", columnMember, column.getType(), $$SUFFIX, $$GET_OBJECT_BY_ID, CursorFunctions.get(Long.class.getName()), columnName); } else if (column.isBoolean()) { javaWriter.emitStatement("tableObject.%s = cursor.%s(cursor.getColumnIndex(\"%s\")) == 1", columnMember, CursorFunctions.get(column.getType()), columnName); } else if (column.getSqlType() == SqliteType.BLOB) { if (column.isByteArray()) { javaWriter.emitStatement("tableObject.%s = cursor.%s(cursor.getColumnIndex(\"%s\"))", columnMember, CursorFunctions.get(column.getType()), columnName); } else { javaWriter.emitStatement("tableObject.%s = %s(cursor.%s(cursor.getColumnIndex(\"%s\")));", columnMember, DESERIALIZE_FUNCTION, CursorFunctions.get(column.getType()), columnName); } } else if (column.isOneToMany()) { javaWriter.emitStatement("Cursor childCursor = %s%s.%s(db)", column.getType(), $$SUFFIX, SELECT_ALL_FUNCTION) .emitStatement("tableObject.%s = %s%s.%s(childCursor, db)", column.getMemberName(), column.getType(), $$SUFFIX, $$MAP_OBJECT_FUNCTION) .emitStatement("childCursor.close()"); } else if (column.isOneToManyChild()) { // TODO Skip and have custom mapping? } else { javaWriter.emitStatement("tableObject.%s = cursor.%s(cursor.getColumnIndex(\"%s\"))", columnMember, CursorFunctions.get(column.getType()), columnName); } } javaWriter.emitStatement("return tableObject").endMethod(); }
Example 20
Source File: SettingsBuilder.java From revolution-irc with GNU General Public License v3.0 | 4 votes |
private static void writeSimpleGetterFuncBody(JavaWriter writer, String type, String prefName, String defValue) throws IOException { writer.emitStatement("return getPreferences().%s(%s, %s)", type, prefName, defValue); }