Class ModuleInfoCreator

java.lang.Object
io.github.dmlloyd.moduleinfo.ModuleInfoCreator

public class ModuleInfoCreator extends Object
  • Field Details

    • ASM_VERSION

      static final int ASM_VERSION
      See Also:
    • NO_STRINGS

      private static final String[] NO_STRINGS
    • moduleInfoYml

      private Path moduleInfoYml
    • outputDirectory

      private Path outputDirectory
    • classesPaths

      private List<Path> classesPaths
    • moduleName

      private String moduleName
    • moduleVersion

      private String moduleVersion
    • addMandatory

      private boolean addMandatory
    • addPackages

      private boolean addPackages
    • addExports

      private boolean addExports
    • detectUses

      private boolean detectUses
    • detectProvides

      private boolean detectProvides
    • detectVersion

      private boolean detectVersion
    • help

      private boolean help
    • defaultModuleName

      private String defaultModuleName
    • detectedClassPathProvides

      final Map<String,List<String>> detectedClassPathProvides
    • detectedClassPathUsesNames

      final Set<String> detectedClassPathUsesNames
    • detectedClassPathPackages

      final Set<String> detectedClassPathPackages
    • detectedClassPathVersion

      String detectedClassPathVersion
    • detectedClassPathAutoModuleName

      String detectedClassPathAutoModuleName
  • Constructor Details

    • ModuleInfoCreator

      public ModuleInfoCreator()
  • Method Details

    • main

      public static void main(String[] args) throws IOException, XMLStreamException
      Throws:
      IOException
      XMLStreamException
    • getModuleInfoYml

      public Path getModuleInfoYml()
    • setModuleInfoYml

      public ModuleInfoCreator setModuleInfoYml(Path moduleInfoYml)
    • getOutputDirectory

      public Path getOutputDirectory()
    • setOutputDirectory

      public ModuleInfoCreator setOutputDirectory(Path outputDirectory)
    • getClassesPaths

      public List<Path> getClassesPaths()
    • setClassesPaths

      public ModuleInfoCreator setClassesPaths(List<Path> classesPaths)
    • isAddPackages

      public boolean isAddPackages()
    • setAddPackages

      public ModuleInfoCreator setAddPackages(boolean addPackages)
    • isAddMandatory

      public boolean isAddMandatory()
    • setAddMandatory

      public ModuleInfoCreator setAddMandatory(boolean addMandatory)
    • isAddExports

      public boolean isAddExports()
    • setAddExports

      public ModuleInfoCreator setAddExports(boolean addExports)
    • isDetectUses

      public boolean isDetectUses()
    • setDetectUses

      public ModuleInfoCreator setDetectUses(boolean detectUses)
    • isDetectProvides

      public boolean isDetectProvides()
    • setDetectProvides

      public ModuleInfoCreator setDetectProvides(boolean detectProvides)
    • getModuleVersion

      public String getModuleVersion()
    • setModuleVersion

      public ModuleInfoCreator setModuleVersion(String moduleVersion)
    • getModuleName

      public String getModuleName()
    • setModuleName

      public ModuleInfoCreator setModuleName(String moduleName)
    • getDefaultModuleName

      public String getDefaultModuleName()
    • setDefaultModuleName

      public void setDefaultModuleName(String moduleName)
    • isDetectVersion

      public boolean isDetectVersion()
    • setDetectVersion

      public ModuleInfoCreator setDetectVersion(boolean detectVersion)
    • run

      public void run() throws IOException, XMLStreamException
      Throws:
      IOException
      XMLStreamException
    • processAnnotation

      private void processAnnotation(org.objectweb.asm.ClassVisitor cv, ModuleAnnotation annotation)
    • processAnnotation

      private void processAnnotation(ModuleAnnotation annotation, org.objectweb.asm.AnnotationVisitor annotationVisitor)
    • processAnnotationValue

      private void processAnnotationValue(ModuleAnnotation annotation, org.objectweb.asm.AnnotationVisitor visitor, String name, Object value)
    • processAnnotationValues

      private void processAnnotationValues(ModuleAnnotation annotation, org.objectweb.asm.AnnotationVisitor visitor, List<?> list)
    • isClassFile

      private boolean isClassFile(Path path)
    • isMetaInf

      private boolean isMetaInf(Path path)
    • isVersionDirectory

      private boolean isVersionDirectory(Path path)
    • isInt

      private boolean isInt(String str)
    • isManifest

      private boolean isManifest(Path path)
    • isMetaInfServices

      private boolean isMetaInfServices(Path path)
    • isMetaInfProviders

      private boolean isMetaInfProviders(Path path)
    • readClassPathItem

      void readClassPathItem(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • readClassPathFile

      void readClassPathFile(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • readClassPathServicesFile

      private void readClassPathServicesFile(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • readClassPathProvidersFile

      private void readClassPathProvidersFile(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • readClassPathManifest

      private void readClassPathManifest(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • readClassPathClassFile

      private void readClassPathClassFile(Path basePath, Path path) throws IOException
      Throws:
      IOException
    • newList

      private static <T> List<T> newList(Object ignored)
    • newLinkedHashSet

      private static <E> Set<E> newLinkedHashSet(Object ignored)