@SessionScoped public class ViewScopeManager extends Object implements ViewScopeProvider, Serializable
ViewScopeEventListener
which is registered in
faces-config.xml
.ViewScoped
,
ViewScopeContext
,
Serialized FormModifier and Type | Field and Description |
---|---|
static int |
DEFAULT_MAX_ACTIVE_VIEW_SCOPES
Default value of maximum active view scopes in session.
|
static String |
PARAM_NAME_MAX_ACTIVE_VIEW_SCOPES
OmniFaces specific context parameter name of maximum active view scopes in session.
|
static String |
PARAM_NAME_MOJARRA_NUMBER_OF_VIEWS
Mojarra specific context parameter name of maximum number of logical views in session.
|
static String |
PARAM_NAME_MYFACES_NUMBER_OF_VIEWS
MyFaces specific context parameter name of maximum number of views in session.
|
Constructor and Description |
---|
ViewScopeManager() |
Modifier and Type | Method and Description |
---|---|
<T> T |
createBean(Contextual<T> type,
CreationalContext<T> context)
Create and returns the CDI view scoped managed bean from the current JSF view scope.
|
<T> T |
getBean(Contextual<T> type)
Returns the CDI view scoped managed bean from the current JSF view scope.
|
void |
postConstructSession()
Create a new LRU map of active view scopes with maximum weighted capacity depending on several context params.
|
void |
preDestroySession()
This method is invoked during session destroy, in that case destroy all beans in all active view scopes.
|
void |
preDestroyView()
This method is invoked during view destroy by
ViewScopeEventListener , in that case destroy all beans in
current active view scope. |
public static final String PARAM_NAME_MAX_ACTIVE_VIEW_SCOPES
public static final String PARAM_NAME_MOJARRA_NUMBER_OF_VIEWS
public static final String PARAM_NAME_MYFACES_NUMBER_OF_VIEWS
public static final int DEFAULT_MAX_ACTIVE_VIEW_SCOPES
@PostConstruct public void postConstructSession()
ViewScoped
for details.public <T> T createBean(Contextual<T> type, CreationalContext<T> context)
type
- The contextual type of the CDI managed bean.context
- The CDI context to create the CDI managed bean in.public <T> T getBean(Contextual<T> type)
type
- The contextual type of the CDI managed bean.public void preDestroyView()
ViewScopeEventListener
, in that case destroy all beans in
current active view scope.preDestroyView
in interface ViewScopeProvider
@PreDestroy public void preDestroySession()