@Override protected void addModelSpecificImports(Set<DeclaredTypeName> imports) { if (hasMetadata(METADATA_KEY_QUERY_ELEMENT)) { if (modelSpecAnnotation.isSubquery()) { imports.add(TypeConstants.SUBQUERY_TABLE); } else { imports.add(TypeConstants.VIEW); } imports.add(TypeConstants.QUERY); } } }
private void emitQueryAndTableDeclaration() throws IOException { emitSqlTableDeclaration(!modelSpec.getSpecAnnotation().isSubquery()); }
private void emitSinglePropertyDeclaration(PropertyGenerator generator, int index) throws IOException { modelSpec.getPluginBundle().beforeEmitPropertyDeclaration(writer, generator); DeclaredTypeName type = generator.getPropertyType(); String fieldToQualify = ALIASED_PROPERTY_ARRAY_NAME + "[" + index + "]"; Expression expressionToCast; if (modelSpec.getQueryElement() != null) { String callOn = modelSpec.getSpecAnnotation().isSubquery() ? SUBQUERY_NAME : VIEW_NAME; expressionToCast = Expressions.callMethodOn(callOn, "qualifyField", fieldToQualify); } else { expressionToCast = Expressions.reference(fieldToQualify); } writer.writeFieldDeclaration(type, generator.getPropertyName(), expressionToCast.cast(type), TypeConstants.PUBLIC_STATIC_FINAL) .writeNewline(); modelSpec.getPluginBundle().afterEmitPropertyDeclaration(writer, generator); }
@Override protected void addModelSpecificImports(Set<DeclaredTypeName> imports) { if (hasMetadata(METADATA_KEY_QUERY_ELEMENT)) { if (modelSpecAnnotation.isSubquery()) { imports.add(TypeConstants.SUBQUERY_TABLE); } else { imports.add(TypeConstants.VIEW); } imports.add(TypeConstants.QUERY); } } }
private void emitQueryAndTableDeclaration() throws IOException { emitSqlTableDeclaration(!modelSpec.getSpecAnnotation().isSubquery()); }
private void emitSinglePropertyDeclaration(PropertyGenerator generator, int index) throws IOException { modelSpec.getPluginBundle().beforeEmitPropertyDeclaration(writer, generator); DeclaredTypeName type = generator.getPropertyType(); String fieldToQualify = ALIASED_PROPERTY_ARRAY_NAME + "[" + index + "]"; Expression expressionToCast; if (modelSpec.getQueryElement() != null) { String callOn = modelSpec.getSpecAnnotation().isSubquery() ? SUBQUERY_NAME : VIEW_NAME; expressionToCast = Expressions.callMethodOn(callOn, "qualifyField", fieldToQualify); } else { expressionToCast = Expressions.reference(fieldToQualify); } writer.writeFieldDeclaration(type, generator.getPropertyName(), expressionToCast.cast(type), TypeConstants.PUBLIC_STATIC_FINAL) .writeNewline(); modelSpec.getPluginBundle().afterEmitPropertyDeclaration(writer, generator); }