Package org.camunda.bpm.application.impl
Class ProcessApplicationReferenceImpl
java.lang.Object
org.camunda.bpm.application.impl.ProcessApplicationReferenceImpl
- All Implemented Interfaces:
ProcessApplicationReference
A ProcessApplicationReference implementation using
WeakReference.
As long as the process application is deployed, the container or the
application will hold a strong reference to the AbstractProcessApplication
object. This class holds a WeakReference. When the process
application is undeployed, the container or application releases all strong
references. Since we only pass ProcessApplicationReferences to the process engine, it is guaranteed that
the AbstractProcessApplication object can be reclaimed by the garbage
collector, even if the undeployment and unregistration should fail for some
improbable reason.
- Author:
- Daniel Meyer
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected WeakReference<AbstractProcessApplication>the weak reference to the process application -
Constructor Summary
ConstructorsConstructorDescriptionProcessApplicationReferenceImpl(AbstractProcessApplication processApplication) -
Method Summary
Modifier and TypeMethodDescriptionvoidclear()getName()Get the process application.voidprocessEngineStopping(ProcessEngine processEngine)
-
Field Details
-
processApplication
the weak reference to the process application -
name
-
-
Constructor Details
-
ProcessApplicationReferenceImpl
-
-
Method Details
-
getName
- Specified by:
getNamein interfaceProcessApplicationReference- Returns:
- the name of the process application
-
getProcessApplication
public AbstractProcessApplication getProcessApplication() throws ProcessApplicationUnavailableExceptionDescription copied from interface:ProcessApplicationReferenceGet the process application.- Specified by:
getProcessApplicationin interfaceProcessApplicationReference- Returns:
- the
AbstractProcessApplication - Throws:
ProcessApplicationUnavailableException- if the process application is unavailable
-
processEngineStopping
public void processEngineStopping(ProcessEngine processEngine) throws ProcessApplicationUnavailableException -
clear
public void clear()
-