Class ClassLoaderAsset

java.lang.Object
org.jboss.shrinkwrap.api.asset.ClassLoaderAsset
All Implemented Interfaces:
Asset

public class ClassLoaderAsset extends Object implements Asset
ClassloaderAsset Implementation of a Asset backed by a resource located in the Classloader.
  • Field Details

    • resourceName

      private String resourceName
    • classLoader

      private ClassLoader classLoader
  • Constructor Details

    • ClassLoaderAsset

      public ClassLoaderAsset(String resourceName)
      Load a named resource using the current threads context classloader.
      Parameters:
      resourceName - The name of the resource to load
      Throws:
      IllegalArgumentException - resourceName can not be null
      IllegalArgumentException - resourceName must be found in given classloader
    • ClassLoaderAsset

      public ClassLoaderAsset(String resourceName, ClassLoader classLoader)
      Load a named resource using the given classloader.
      Parameters:
      resourceName - The name of the resource to load
      classLoader - The ClassLoader to use
      Throws:
      IllegalArgumentException - resourceName can not be null
      IllegalArgumentException - classloader can not be null
      IllegalArgumentException - resourceName must be found in given classloader
  • Method Details

    • getSource

      public String getSource()
      Returns the loaded resource.
    • openStream

      public InputStream openStream()
      Opens up the given resource as a stream.
      Specified by:
      openStream in interface Asset
      Returns:
      A new open InputStream for each call