Class DependencyUtil

java.lang.Object
fr.ifremer.isisfish.util.DependencyUtil

public class DependencyUtil extends Object
Class utilitaire chargées d'inspecter le bytecode de certaines classe des scripts utilisateur d'IsisFish pour en extraire des informations.
  • Constructor Details

    • DependencyUtil

      public DependencyUtil()
  • Method Details

    • extractDependencies

      public static Set<String> extractDependencies(File rootDirectory, Collection<File> files)
      Extrait les dépendences d'une class compilé à partir de son bytecode en ne conservant que les dependances des scripts utilisateurs.
      Parameters:
      rootDirectory -
      files - ensemble de fichier à analyzer (fichiers .class)
      Returns:
      extract class set
    • recursiveExtractDependencies

      protected static void recursiveExtractDependencies(File rootDirectory, Collection<File> todoClassFiles, Set<File> alreadyDone, Set<String> deps)
    • extractDependencies

      protected static Set<String> extractDependencies(InputStream clazzStream)
      Extrait les dépendences d'une class compilé à partir de son bytecode.
      Parameters:
      clazzStream - la classe à analyser
      Returns:
      extract class set
    • registerType

      protected static void registerType(Set<String> types, String type)
      Register type if necessary (depends on another user script).
      Parameters:
      types - types collection
      type - type to add
    • registerDescriptor

      protected static void registerDescriptor(Set<String> types, String descriptor)
      Clean type to extract valid class name. Ex:
      • Lfr/ifremer/isisfish/types/Month;
      • [Ljava/lang/String;
      • (Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
      Parameters:
      types - types collection
      descriptor - descriptor