Package com.vaadin.flow.server
Class StreamResourceRegistry
- java.lang.Object
-
- com.vaadin.flow.server.StreamResourceRegistry
-
- All Implemented Interfaces:
Serializable
public class StreamResourceRegistry extends Object implements Serializable
Registry forStreamResource
instances.- Since:
- 1.0
- Author:
- Vaadin Ltd
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description StreamResourceRegistry(VaadinSession session)
Creates stream resource registry for providedsession
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <T extends AbstractStreamResource>
Optional<T>getResource(Class<T> type, URI uri)
Get a registered resource of given type.Optional<AbstractStreamResource>
getResource(URI uri)
Get a registered resource for givenURI
.URI
getTargetURI(AbstractStreamResource resource)
Returns the URI path to the given resource in the context of this registry (relevant in portlet context).static URI
getURI(AbstractStreamResource resource)
Gets the URI for the givenresource
.StreamRegistration
registerResource(AbstractStreamResource resource)
Registers a stream resource in the session and returns registration handler.void
unregisterResource(StreamReceiver resource)
Unregister a stream receiver resource.
-
-
-
Constructor Detail
-
StreamResourceRegistry
public StreamResourceRegistry(VaadinSession session)
Creates stream resource registry for providedsession
.- Parameters:
session
- vaadin session
-
-
Method Detail
-
registerResource
public StreamRegistration registerResource(AbstractStreamResource resource)
Registers a stream resource in the session and returns registration handler.You can get resource URI to use it in the application (e.g. set an attribute value or property value) via the registration handler. The registration handler should be used to unregister resource when it's not needed anymore. Note that it is the developer's responsibility to unregister resources. Otherwise resources won't be garbage collected until the session expires which causes memory leak.
- Parameters:
resource
- stream resource to register- Returns:
- registration handler
-
unregisterResource
public void unregisterResource(StreamReceiver resource)
Unregister a stream receiver resource.- Parameters:
resource
- stream receiver resource to unregister
-
getURI
public static URI getURI(AbstractStreamResource resource)
Gets the URI for the givenresource
.The URI won't be handled (and won't work) if
resource
is not registered in the session.- Parameters:
resource
- stream resource- Returns:
- resource URI
- See Also:
registerResource(AbstractStreamResource)
-
getTargetURI
public URI getTargetURI(AbstractStreamResource resource)
Returns the URI path to the given resource in the context of this registry (relevant in portlet context).- Parameters:
resource
- stream resource- Returns:
- resource URI
-
getResource
public Optional<AbstractStreamResource> getResource(URI uri)
Get a registered resource for givenURI
.Resource may be a StreamResource or a StreamReceiver
- Parameters:
uri
- resource URI- Returns:
- an optional resource, or an empty optional if no resource has been registered with this URI
-
getResource
public <T extends AbstractStreamResource> Optional<T> getResource(Class<T> type, URI uri)
Get a registered resource of given type.- Type Parameters:
T
- resource extending AbstractStreamResource- Parameters:
type
- resource class typeuri
- resource URI- Returns:
- an optional resource, or an empty optional if no resource has been registered with this URI
-
-