Class NuxeoStandbyFilter.Controller
- java.lang.Object
-
- org.nuxeo.ecm.platform.web.common.requestcontroller.filter.NuxeoStandbyFilter.Controller
-
- Enclosing class:
- NuxeoStandbyFilter
protected static class NuxeoStandbyFilter.Controller extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected Condition
canProceed
protected Condition
canStandby
protected ThreadLocal<Boolean>
hasBeenFiltered
This variable is used to determine if the Thread wanting to shutdown/standby the server has gone through this filter.protected AtomicInteger
inProgress
protected boolean
isStandby
protected Lock
lock
-
Constructor Summary
Constructors Modifier Constructor Description protected
Controller()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
awaitCanProceed()
protected void
awaitCanStandby()
void
onNewRequest()
void
onRequestEnd()
void
onResumed()
void
onStandby()
protected void
signalBlockedToProceed()
protected void
signalBlockedToStandby()
-
-
-
Field Detail
-
canStandby
protected final Condition canStandby
-
canProceed
protected final Condition canProceed
-
isStandby
protected volatile boolean isStandby
-
inProgress
protected final AtomicInteger inProgress
-
hasBeenFiltered
protected final ThreadLocal<Boolean> hasBeenFiltered
This variable is used to determine if the Thread wanting to shutdown/standby the server has gone through this filter. We need this variable in order to not wait for ourself to end.Calls relying on this variable:
- org.nuxeo.runtime.reload.NuxeoRestart#restart()
- org.nuxeo.ecm.admin.operation.HotReloadStudioSnapshot#run()
- org.nuxeo.connect.client.jsf.AppCenterViewsManager#installStudioSnapshotAndRedirect()
-
-
Constructor Detail
-
Controller
protected Controller()
-
-
Method Detail
-
onNewRequest
public void onNewRequest()
-
onRequestEnd
public void onRequestEnd()
-
onStandby
public void onStandby() throws RuntimeException
- Throws:
RuntimeException
-
onResumed
public void onResumed()
-
awaitCanProceed
protected void awaitCanProceed() throws RuntimeException
- Throws:
RuntimeException
-
awaitCanStandby
protected void awaitCanStandby() throws RuntimeException
- Throws:
RuntimeException
-
signalBlockedToProceed
protected void signalBlockedToProceed()
-
signalBlockedToStandby
protected void signalBlockedToStandby()
-
-