Class AbstractAppPluginRootResource<T extends AppPlugin>
java.lang.Object
org.camunda.bpm.webapp.plugin.resource.AbstractAppPluginRootResource<T>
- Direct Known Subclasses:
AbstractAdminPluginRootResource,AbstractCockpitPluginRootResource,AbstractTasklistPluginRootResource,AbstractWelcomePluginRootResource
A resource class that provides a plugins restful API.
Subclasses of this class may provide subresources using annotated getters in order to be multi-engine aware.
Subresources must properly initialize the subresources via
subResource(AbstractAppPluginResource, String).
- Author:
- nico.rehwaldt, Daniel Meyer
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionAbstractAppPluginRootResource(String pluginName, AppRuntimeDelegate<T> runtimeDelegate) -
Method Summary
Modifier and TypeMethodDescriptionprotected InputStreamapplyResourceOverrides(String file, InputStream assetStream) Returns the list of allowed assets to be served by thegetAsset(String)method.jakarta.ws.rs.core.ResponseProvides a plugins asset files via$PLUGIN_ROOT_PATH/static.protected InputStreamgetClasspathResourceAsStream(AppPlugin plugin, String assetDirectory, String fileName) protected StringgetContentType(String file) protected InputStreamgetPluginAssetAsStream(AppPlugin plugin, String fileName) Returns an input stream for a given resourceprotected InputStreamgetWebResourceAsStream(String assetDirectory, String fileName) protected <S extends AbstractAppPluginResource<T>>
SsubResource(S subResource, String engineName)
-
Field Details
-
MIME_TYPE_TEXT_PLAIN
- See Also:
-
MIME_TYPE_TEXT_HTML
- See Also:
-
MIME_TYPE_TEXT_CSS
- See Also:
-
MIME_TYPE_TEXT_JAVASCRIPT
- See Also:
-
servletContext
@Context protected jakarta.servlet.ServletContext servletContext -
headers
@Context protected jakarta.ws.rs.core.HttpHeaders headers -
uriInfo
@Context protected jakarta.ws.rs.core.UriInfo uriInfo -
runtimeDelegate
-
allowedAssets
-
-
Constructor Details
-
AbstractAppPluginRootResource
-
-
Method Details
-
getAllowedAssets
Returns the list of allowed assets to be served by the
getAsset(String)method.The default implementation includes:
["app/plugin.js","app/plugin.css"]- Returns:
- list of allowed assets
-
subResource
- Type Parameters:
T-- Parameters:
subResource-engineName-- Returns:
-
getAsset
@GET @Path("/static/{file:.*}") public jakarta.ws.rs.core.Response getAsset(@PathParam("file") String file) Provides a plugins asset files via
$PLUGIN_ROOT_PATH/static.Assets must be explicitly declared in the
getAllowedAssets()method.- Parameters:
file-- Returns:
-
applyResourceOverrides
- Parameters:
file-assetStream-
-
getContentType
-
getPluginAssetAsStream
Returns an input stream for a given resource- Parameters:
resourceName-- Returns:
-
getWebResourceAsStream
-
getClasspathResourceAsStream
protected InputStream getClasspathResourceAsStream(AppPlugin plugin, String assetDirectory, String fileName)
-