Package com.linecorp.armeria.server.file
Class HttpFileService
- java.lang.Object
-
- com.linecorp.armeria.server.AbstractHttpService
-
- com.linecorp.armeria.server.file.HttpFileService
-
- All Implemented Interfaces:
HttpService
,Service<HttpRequest,HttpResponse>
public final class HttpFileService extends AbstractHttpService
AnHttpService
that serves static files from a file system.- See Also:
HttpFileServiceBuilder
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description HttpFileServiceConfig
config()
Returns the configuration.protected HttpResponse
doGet(ServiceRequestContext ctx, HttpRequest req)
Handles aGET
request.static HttpFileService
forClassPath(ClassLoader classLoader, String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in the current class path.static HttpFileService
forClassPath(String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in the current class path.static HttpFileService
forFileSystem(String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in an O/S file system.static HttpFileService
forFileSystem(Path rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in an O/S file system.static HttpFileService
forVfs(HttpVfs vfs)
Creates a newHttpFileService
for the specifiedHttpVfs
.HttpService
orElse(Service<HttpRequest,HttpResponse> nextService)
Creates a newHttpService
that tries thisHttpFileService
first and then the specifiedHttpService
when thisHttpFileService
does not have a requested resource.void
serviceAdded(ServiceConfig cfg)
boolean
shouldCachePath(String path, String query, PathMapping pathMapping)
Returns whether the givenpath
andquery
should be cached if the service's result is successful.-
Methods inherited from class com.linecorp.armeria.server.AbstractHttpService
doDelete, doDelete, doGet, doHead, doHead, doOptions, doOptions, doPatch, doPatch, doPost, doPost, doPut, doPut, doTrace, doTrace, serve
-
-
-
-
Method Detail
-
forFileSystem
public static HttpFileService forFileSystem(String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in an O/S file system.
-
forFileSystem
public static HttpFileService forFileSystem(Path rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in an O/S file system.
-
forClassPath
public static HttpFileService forClassPath(String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in the current class path.
-
forClassPath
public static HttpFileService forClassPath(ClassLoader classLoader, String rootDir)
Creates a newHttpFileService
for the specifiedrootDir
in the current class path.
-
forVfs
public static HttpFileService forVfs(HttpVfs vfs)
Creates a newHttpFileService
for the specifiedHttpVfs
.
-
serviceAdded
public void serviceAdded(ServiceConfig cfg) throws Exception
Description copied from interface:Service
Invoked when thisService
has been added to aServer
with the specified configuration. Please note that this method can be invoked more than once if thisService
has been added more than once.- Throws:
Exception
-
shouldCachePath
public boolean shouldCachePath(String path, @Nullable String query, PathMapping pathMapping)
Description copied from interface:Service
Returns whether the givenpath
andquery
should be cached if the service's result is successful. By default, exact path mappings with no input query are cached.
-
config
public HttpFileServiceConfig config()
Returns the configuration.
-
doGet
protected HttpResponse doGet(ServiceRequestContext ctx, HttpRequest req)
Description copied from class:AbstractHttpService
Handles aGET
request. This method sends a405 Method Not Allowed
response by default.- Overrides:
doGet
in classAbstractHttpService
-
orElse
public HttpService orElse(Service<HttpRequest,HttpResponse> nextService)
Creates a newHttpService
that tries thisHttpFileService
first and then the specifiedHttpService
when thisHttpFileService
does not have a requested resource.- Parameters:
nextService
- theHttpService
to try secondly
-
-