Eclipse Remote Application Platform

org.eclipse.rap.rwt.service
Interface ApplicationContext

All Superinterfaces:
IApplicationStore

public interface ApplicationContext
extends IApplicationStore

An application context represents a running instance of a RAP application. This context is shared by all users who access this application. The current application context can be acquired by RWT.getApplicationContext(). It can be used to store any data that is shared between all UI sessions of an application, and to acquire application-scoped instances of framework services such as the resource manager.

The application context is bound to the servlet context of the hosting web application. It is destroyed when the web application ends (i.e. the servlet context is destroyed) or when the application is explicitly stopped by calling ApplicationRunner.stop().

The application context is thread safe, it can be accessed concurrently from different threads.

Since:
2.0
See Also:
RWT

Method Summary
 boolean addApplicationContextListener(ApplicationContextListener listener)
          Adds an ApplicationContextListener to this application context.
 java.lang.Object getAttribute(java.lang.String name)
          Returns the value which is stored under the given name in this application context.
 ResourceManager getResourceManager()
          Returns the instance of the resource manager for this application context.
 ServiceManager getServiceManager()
          Returns the instance of the service manager for this application context.
 boolean removeApplicationContextListener(ApplicationContextListener listener)
          Removes an ApplicationContextListener from this application context.
 void removeAttribute(java.lang.String name)
          Removes the object which is stored under the given name in this application context.
 void setAttribute(java.lang.String name, java.lang.Object value)
          Stores the given value in this application context, associated with the given name.
 

Method Detail

setAttribute

void setAttribute(java.lang.String name,
                  java.lang.Object value)
Stores the given value in this application context, associated with the given name. If another value has already been stored with the given name, the old value is overwritten.

Specified by:
setAttribute in interface IApplicationStore
Parameters:
name - the name to associate the value with
value - the object to be stored

getAttribute

java.lang.Object getAttribute(java.lang.String name)
Returns the value which is stored under the given name in this application context.

Specified by:
getAttribute in interface IApplicationStore
Parameters:
name - the name whose associated value is requested
Returns:
the object that is stored, or null if no object has been stored by that name

removeAttribute

void removeAttribute(java.lang.String name)
Removes the object which is stored under the given name in this application context. If no value object was stored under the given name, this method does nothing.

Specified by:
removeAttribute in interface IApplicationStore

addApplicationContextListener

boolean addApplicationContextListener(ApplicationContextListener listener)
Adds an ApplicationContextListener to this application context. ApplicationContextListeners are used to receive a notification before the application context is destroyed. If the given listener was already added the method has no effect.

If the ApplicationContext is already deactivated or is about to be deactivated, the listener will not be added and this method will return false. A return value of true asserts that this listener is registered and will be called on destroy.

Parameters:
listener - the listener to be added
Returns:
true if the listener is registered, false if not
Since:
2.2

removeApplicationContextListener

boolean removeApplicationContextListener(ApplicationContextListener listener)
Removes an ApplicationContextListener from this application context. ApplicationContextListeners are used to receive a notification before the application context is destroyed. If the given listener was not added to the session store this method has no effect.

If the ApplicationContext is already deactivated or is about to be deactivated, the listener will not be removed and this method will return false. A return value of true asserts that this listener is not registered and will not be called anymore.

Parameters:
listener - the listener to be removed
Since:
2.2

getResourceManager

ResourceManager getResourceManager()
Returns the instance of the resource manager for this application context. The resource manager is used to register static resources such as images of JavaScript files.

Returns:
the resource manager for this application context
See Also:
ResourceManager

getServiceManager

ServiceManager getServiceManager()
Returns the instance of the service manager for this application context. The service manager is used to register and unregister service handlers.

Returns:
the service manager instance for this application context
See Also:
ServiceManager, ServiceHandler

Eclipse Remote Application Platform

Copyright (c) EclipseSource and others 2002, 2013. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0