@ Override public void init ( ProcessingEnvironment processingEnv ) { super . init ( processingEnv ) ; trees = Trees . instance ( processingEnv ) ; messager = processingEnv . getMessager ( ) ; types = processingEnv . getTypeUtils ( ) ; elements = processingEnv . getElementUtils ( ) ; try { logInvocationScanner = new LogInvocationScanner ( processingEnv ) ; } catch ( IOException e ) { messager . printMessage ( Diagnostic . Kind . ERROR , "IOException caught" ) ; initFailed = true ; } catch ( PackageNameException e ) { messager . printMessage ( Diagnostic . Kind . ERROR , "generatedEventsPackage compiler argument is not valid, either it contains java keyword or subpackage or class name starts with number" ) ; initFailed = true ; } final String schemasRoot = processingEnv . getOptions ( ) . get ( "schemasRoot" ) ; if ( schemasRoot != null ) { try { new URI ( schemasRoot ) ; //check that schemasRoot is valid path } catch ( URISyntaxException e ) { initFailed = true ; messager . printMessage ( Diagnostic . Kind . ERROR , format ( "Provided schemasRoot compiler argument value [%s] is not valid path" , schemasRoot ) ) ; } // Used for generating json schemas by {@link SchemaGenerator} SchemaGenerator schemaGenerator = new SchemaGenerator ( generatedClassesInfo , schemasRoot ) ; JavacTask . instance ( processingEnv ) . addTaskListener ( schemaGenerator ) ; } else { messager . printMessage ( Diagnostic . Kind . MANDATORY_WARNING , "schemasRoot compiler argument is not set, no schemas will be created" ) ; } }
flag that init method has errors