public interface ActivityManager
Activity
instances and for enumerating or discovering all
available activities of a certain type (screens, editors, popup dialogs, and so on). Also responsible for shutting
down and releasing Activity instances when they are no longer needed.
Note that you may never need to use an ActivityManager. While used extensively within the framework, UberFire
application code rarely comes into direct contact with activities, which are essentially autogenerated wrappers
around classes annotated with WorkbenchScreen
, WorkbenchEditor
, WorkbenchPopup
, and friends.
Most Activity-related tasks can be accomplished at arm's length through a PlaceManager
.
If you do need an instance of ActivityManager in your application, obtain it using @Inject
.
PlaceManager
,
Activity
Modifier and Type | Method and Description |
---|---|
boolean |
containsActivity(PlaceRequest placeRequest)
Returns an active, accessible activity that can handle the given PlaceRequest.
|
void |
destroyActivity(Activity activity)
Destroys the given Activity bean instance, making it eligible for garbage collection.
|
<T extends Activity> |
getActivities(Class<T> abstractScreenActivityClass)
Deprecated.
this method returns Activity instances that have not had their onStartup() methods invoked, so they
can not be displayed according to the normal Activity lifecycle. It is also up to the caller to free
each of the returned Activity instances by calling
ClientBeanManager.destroyBean(Object) on
them. Consider using the Errai bean manager and UberFire AuthorizationManager directly instead of
using this method. See UF-105 for details. |
Set<Activity> |
getActivities(PlaceRequest placeRequest)
Calls to
getActivities(PlaceRequest) with security checks enabled. |
Set<Activity> |
getActivities(PlaceRequest placeRequest,
boolean secure)
Returns the set of activities that can handle the given PlaceRequest.
|
<T extends Activity> |
getActivity(Class<T> clazz,
PlaceRequest placeRequest)
Calls to as
getActivity(Class, PlaceRequest) with security checks enabled. |
<T extends Activity> |
getActivity(Class<T> clazz,
PlaceRequest placeRequest,
boolean secure)
Works like
getActivities(PlaceRequest, boolean) but performs an unsafe cast to treat the return value as an
instance of the given class. |
Activity |
getActivity(PlaceRequest placeRequest)
Calls to as
getActivity(PlaceRequest) with security checks enabled. |
Activity |
getActivity(PlaceRequest placeRequest,
boolean secure)
Finds an activity that can handle the given PlaceRequest, creating and starting a new one if necessary.
|
SplashScreenActivity |
getSplashScreenInterceptor(PlaceRequest placeRequest)
Returns the splash screen activity that should appear upon navigation to the given place, if such a splash screen
exists.
|
boolean |
isStarted(Activity activity)
Returns true if the given Activity instance is currently in the started or open state and managed
by this ActivityManager.
|
@Deprecated <T extends Activity> Set<T> getActivities(Class<T> abstractScreenActivityClass)
ClientBeanManager.destroyBean(Object)
on
them. Consider using the Errai bean manager and UberFire AuthorizationManager directly instead of
using this method. See UF-105 for details.active
, and that
the current user has permission to access
.abstractScreenActivityClass
- the type of activities to enumerate. Must not be null. Passing in Activity.class
will yield
all possible activity types.ClientBeanManager.destroyBean(Object)
.SplashScreenActivity getSplashScreenInterceptor(PlaceRequest placeRequest)
placeRequest
- the place request to look up a splash screen for.Set<Activity> getActivities(PlaceRequest placeRequest)
getActivities(PlaceRequest)
with security checks enabled.Set<Activity> getActivities(PlaceRequest placeRequest, boolean secure)
Activity
for details on the activity lifecycle). If the PlaceRequest is for a
certain place ID, this method will return a set with at most one activity in it. If the PlaceRequest is for a
certain path, the returned set can contain any number of activities.placeRequest
- the PlaceRequest to resolve activities for. Although null is permitted for convenience, it always
resolves to the empty set.secure
- flag indicating if calls to the AuthorizationManager
service are required in order to
determine which activities are available.destroyActivity(Activity)
when you
are done with it.boolean containsActivity(PlaceRequest placeRequest)
placeRequest
- Activity
..Activity getActivity(PlaceRequest placeRequest)
getActivity(PlaceRequest)
with security checks enabled.Activity getActivity(PlaceRequest placeRequest, boolean secure)
placeRequest
- the place the resolved activity should handlesecure
- flag indicating if calls to the AuthorizationManager
service are required in order to
determine if the resulting activity is available.<T extends Activity> T getActivity(Class<T> clazz, PlaceRequest placeRequest)
getActivity(Class, PlaceRequest)
with security checks enabled.<T extends Activity> T getActivity(Class<T> clazz, PlaceRequest placeRequest, boolean secure)
getActivities(PlaceRequest, boolean)
but performs an unsafe cast to treat the return value as an
instance of the given class. Only use this method if you are absolutely sure which activity type matches the
request. If you are wrong, there will not be a ClassCastException as a result of this call. The safer approach is
to use getActivities(PlaceRequest, boolean)
and cast its return value explicitly.clazz
- the type of activity that you expect to find.placeRequest
- the place the resolved activity should handlesecure
- flag indicating if calls to the AuthorizationManager
service are required in order to
determine if the resulting activity is available.void destroyActivity(Activity activity)
activity
- the activity instance to destroy. Warning: do not use with instances of SplashScreenActivity. These
are ApplicationScoped and cannot be destroyed.IllegalArgumentException
- if activity
is a SplashScreenActivity. TODO (UF-91) : fix this.boolean isStarted(Activity activity)
activity
- the activity to checkCopyright © 2012–2019 JBoss by Red Hat. All rights reserved.