Interface StaticContentService

All Superinterfaces:
HttpService, ServerLifecycle

public interface StaticContentService extends HttpService
Serves 'static content' (files) from filesystem or using a classloader to the WebServer HttpRouting. It is possible to register it on the routing.

 // Serve content of attached '/static/pictures' on '/pics'
 Routing.builder()
        .register("/pics", StaticContentSupport.create("/static/pictures"))
        .build()
 

Content is served ONLY on HTTP GET method.

  • Method Details

    • builder

      static StaticContentService.ClassPathBuilder builder(String resourceRoot)
      Creates new builder with defined static content root as a class-loader resource. Builder provides ability to define more advanced configuration.

      Current context classloader is used to load static content.

      Parameters:
      resourceRoot - a root resource path.
      Returns:
      a builder
      Throws:
      NullPointerException - if resourceRoot attribute is null
    • builder

      static StaticContentService.ClassPathBuilder builder(String resourceRoot, ClassLoader classLoader)
      Creates new builder with defined static content root as a class-loader resource. Builder provides ability to define more advanced configuration.
      Parameters:
      resourceRoot - a root resource path.
      classLoader - a class-loader for the static content
      Returns:
      a builder
      Throws:
      NullPointerException - if resourceRoot attribute is null
    • builder

      Creates new builder with defined static content root as a path to the file system. Builder provides ability to define more advanced configuration.
      Parameters:
      root - a root path.
      Returns:
      a builder
      Throws:
      NullPointerException - if root attribute is null
    • create

      static StaticContentService create(String resourceRoot)
      Creates new instance with defined static content root as a class-loader resource.

      Current context classloader is used to load static content.

      Parameters:
      resourceRoot - a root resource path.
      Returns:
      created instance
      Throws:
      NullPointerException - if resourceRoot attribute is null
    • create

      static StaticContentService create(String resourceRoot, ClassLoader classLoader)
      Creates new instance with defined static content root as a class-loader resource.
      Parameters:
      resourceRoot - a root resource path.
      classLoader - a class-loader for the static content
      Returns:
      created instance
      Throws:
      NullPointerException - if resourceRoot attribute is null
    • create

      static StaticContentService create(Path root)
      Creates new instance with defined static content root as a path to the file system.
      Parameters:
      root - a root path.
      Returns:
      created instance
      Throws:
      NullPointerException - if root attribute is null