Class AdditionalServletUtils

java.lang.Object
org.apache.pulsar.broker.web.plugin.servlet.AdditionalServletUtils

public class AdditionalServletUtils extends Object
Util class to search and load AdditionalServlets.
  • Field Details

  • Constructor Details

    • AdditionalServletUtils

      public AdditionalServletUtils()
  • Method Details

    • getAdditionalServletDefinition

      public AdditionalServletDefinition getAdditionalServletDefinition(String narPath, String narExtractionDirectory) throws IOException
      Retrieve the additional servlet definition from the provided nar package.
      Parameters:
      narPath - the path to the additional servlet NAR package
      Returns:
      the additional servlet definition
      Throws:
      IOException - when fail to load the additional servlet or get the definition
    • searchForServlets

      public AdditionalServletDefinitions searchForServlets(String additionalServletDirectory, String narExtractionDirectory) throws IOException
      Search and load the available additional servlets.
      Parameters:
      additionalServletDirectory - the directory where all the additional servlets are stored
      Returns:
      a collection of additional servlet definitions
      Throws:
      IOException - when fail to load the available additional servlets from the provided directory.
    • load

      public AdditionalServletWithClassLoader load(AdditionalServletMetadata metadata, String narExtractionDirectory) throws IOException
      Load the additional servlets according to the additional servlet definition.
      Parameters:
      metadata - the additional servlet definition.
      Throws:
      IOException