plugins { id "io.github.kobylynskyi.graphql.codegen" version "4.1.1" } apply plugin: 'java' dependencies { compile project(':metadata-service:restli-client') compile project(':metadata-service:auth-impl') compile project(':metadata-service:auth-config') compile project(':metadata-io') compile project(':metadata-utils') implementation externalDependency.graphqlJava implementation externalDependency.graphqlJavaScalars compile externalDependency.antlr4Runtime compile externalDependency.antlr4 compile externalDependency.guava implementation externalDependency.slf4jApi compileOnly externalDependency.lombok annotationProcessor externalDependency.lombok testCompile externalDependency.mockito } graphqlCodegen { // For options: https://github.com/kobylynskyi/graphql-java-codegen/blob/master/docs/codegen-options.md graphqlSchemaPaths = [ "$projectDir/src/main/resources/entity.graphql".toString(), "$projectDir/src/main/resources/app.graphql".toString(), "$projectDir/src/main/resources/search.graphql".toString(), "$projectDir/src/main/resources/analytics.graphql".toString(), "$projectDir/src/main/resources/recommendation.graphql".toString(), "$projectDir/src/main/resources/ingestion.graphql".toString(), "$projectDir/src/main/resources/auth.graphql".toString(), "$projectDir/src/main/resources/timeline.graphql".toString(), "$projectDir/src/main/resources/tests.graphql".toString(), "$projectDir/src/main/resources/step.graphql".toString(), "$projectDir/src/main/resources/lineage.graphql".toString(), ] outputDir = new File("$projectDir/src/mainGeneratedGraphQL/java") packageName = "com.linkedin.datahub.graphql.generated" generateApis = true modelValidationAnnotation = "@javax.annotation.Nonnull" customTypesMapping = [ Long: "Long", Float: "Float" ] } clean { delete 'src/mainGeneratedGraphQL' } tasks.withType(Checkstyle) { exclude "**/generated/**" } compileJava.dependsOn 'graphqlCodegen' sourceSets.main.java.srcDir "$projectDir/src/mainGeneratedGraphQL/java"