Interface IProduction
-
public interface IProduction
Information about Java classes generated for a collection of Module modules.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description Stream<? extends IGeneratedClass>
getGeneratedClasses()
Get a stream of all Java classes generated as part of this production, including module, definition, and package-info classes.Stream<IGeneratedDefinitionClass>
getGlobalDefinitionClassesAsStream()
Get a stream of all definition Java classes generated as part of this production.IGeneratedModuleClass
getModuleProduction(IModule module)
Get information about the Java classes generated for the provided Modulemodule
.Collection<IGeneratedModuleClass>
getModuleProductions()
Get information about the Java classes generated for each Module module in the collection.static IProduction
of(Collection<? extends IModule> modules, ITypeResolver typeResolver, Path classDir)
Create a new production for the provided set of Modulemodules
.
-
-
-
Method Detail
-
getModuleProductions
@NonNull Collection<IGeneratedModuleClass> getModuleProductions()
Get information about the Java classes generated for each Module module in the collection.- Returns:
- the Java class information for each module
-
getModuleProduction
@Nullable IGeneratedModuleClass getModuleProduction(@NonNull IModule module)
Get information about the Java classes generated for the provided Modulemodule
.- Parameters:
module
- the Module module to get information for- Returns:
- the Java class information for the module or
null
if this production did not involve generating classes for the provided module
-
getGlobalDefinitionClassesAsStream
@NonNull Stream<IGeneratedDefinitionClass> getGlobalDefinitionClassesAsStream()
Get a stream of all definition Java classes generated as part of this production.This will include each unique class generated for all Module modules associated with this production.
- Returns:
- the stream of generated Java classes
-
getGeneratedClasses
@NonNull Stream<? extends IGeneratedClass> getGeneratedClasses()
Get a stream of all Java classes generated as part of this production, including module, definition, and package-info classes.- Returns:
- the stream of generated Java classes
-
of
@NonNull static IProduction of(@NonNull Collection<? extends IModule> modules, @NonNull ITypeResolver typeResolver, @NonNull Path classDir) throws IOException
Create a new production for the provided set of Modulemodules
.- Parameters:
modules
- the Module modules to generate and compile classes fortypeResolver
- the resolve used to determine type namesclassDir
- the directory to generate and compile classes in- Returns:
- the production information
- Throws:
IOException
- if an error occurred while generating or compiling the classes
-
-