Class ClassFileLocator.Simple

java.lang.Object
net.bytebuddy.dynamic.ClassFileLocator.Simple
All Implemented Interfaces:
Closeable, AutoCloseable, ClassFileLocator
Enclosing interface:
ClassFileLocator

@Enhance public static class ClassFileLocator.Simple extends Object implements ClassFileLocator
A simple class file locator that returns class files from a selection of given types.
  • Field Details

    • classFiles

      private final Map<String,byte[]> classFiles
      The class files that are known to this class file locator mapped by their type name.
  • Constructor Details

    • Simple

      public Simple(Map<String,byte[]> classFiles)
      Creates a new simple class file locator.
      Parameters:
      classFiles - The class files that are known to this class file locator mapped by their type name.
  • Method Details

    • of

      public static ClassFileLocator of(String typeName, byte[] binaryRepresentation)
      Creates a class file locator for a single known type.
      Parameters:
      typeName - The name of the type.
      binaryRepresentation - The binary representation of the type.
      Returns:
      An appropriate class file locator.
    • of

      public static ClassFileLocator of(DynamicType dynamicType)
      Creates a class file locator that represents all types of a dynamic type.
      Parameters:
      dynamicType - The dynamic type to represent.
      Returns:
      A class file locator representing the dynamic type's types.
    • of

      public static ClassFileLocator of(Map<TypeDescription,byte[]> binaryRepresentations)
      Creates a class file locator that represents all types of a dynamic type.
      Parameters:
      binaryRepresentations - The binary representation of all types.
      Returns:
      A class file locator representing the dynamic type's types.
    • ofResources

      public static ClassFileLocator ofResources(Map<String,byte[]> binaryRepresentations)
      Creates a class file locator of a map of resources where class files are mapped by their path and file extension.
      Parameters:
      binaryRepresentations - A map of resource names to their binary representation.
      Returns:
      A class file locator that finds class files within the map.
    • locate

      public ClassFileLocator.Resolution locate(String name)
      Locates the class file for a given type and returns the binary data of the class file.
      Specified by:
      locate in interface ClassFileLocator
      Parameters:
      name - The name of the type to locate a class file representation for.
      Returns:
      Any binary representation of the type which might be illegal.
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable