Package org.nuxeo.runtime.trackers.files
Class FileEventTracker
java.lang.Object
org.nuxeo.runtime.model.DefaultComponent
org.nuxeo.runtime.trackers.files.FileEventTracker
- All Implemented Interfaces:
Adaptable
,Component
,Extensible
,TimestampedService
Files event tracker which delete files once the runtime leave the threads or at least once the associated marker
object is garbaged. Note: for being backward compatible you may disable the thread events tracking by black-listing
the default configuration component "org.nuxeo.runtime.trackers.files.threadstracking.config" in the runtime. This
could be achieved by editing the "blacklist" file in your 'config' directory or using the @{link BlacklistComponent}
annotation on your test class.
- Since:
- 6.0
- Author:
- Stephane Lacoin at Nuxeo (aka matic)
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
static class
protected static class
protected class
-
Field Summary
Modifier and TypeFieldDescriptionprotected static org.nuxeo.runtime.trackers.files.FileEventTracker.SafeFileDeleteStrategy
protected final FileEventListener
protected static org.nuxeo.runtime.trackers.files.FileEventTracker.ForceSafeFileDeleteStrategy
protected final FileEventTracker.GCDelegate
protected final ThreadLocal<FileEventTracker.ThreadDelegate>
protected final ThreadEventListener
Fields inherited from class org.nuxeo.runtime.model.DefaultComponent
lastModified, name
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
activate
(ComponentContext context) Activates the component.void
deactivate
(ComponentContext context) Deactivates the component.int
The component notification order forComponent.start(ComponentContext)
.static org.nuxeo.runtime.trackers.files.FileEventTracker.SafeFileDeleteStrategy
For test purpose.static org.nuxeo.runtime.trackers.files.FileEventTracker.ForceSafeFileDeleteStrategy
For test purpose.protected FileEventHandler
void
registerContribution
(Object contribution, String extensionPoint, ComponentInstance contributor) static void
registerProtectedPath
(String path) Registers a protected path under which files should not be deletedprotected void
protected void
setThreadDelegate
(boolean isLongRunning) void
start
(ComponentContext context) Start the component.Methods inherited from class org.nuxeo.runtime.model.DefaultComponent
addRuntimeMessage, addRuntimeMessage, getAdapter, getDescriptor, getDescriptors, getLastModified, getRegistry, register, registerExtension, setLastModified, setModifiedNow, setName, stop, unregister, unregisterContribution, unregisterExtension
-
Field Details
-
deleteStrategy
protected static org.nuxeo.runtime.trackers.files.FileEventTracker.SafeFileDeleteStrategy deleteStrategy -
forceDeleteStrategy
protected static org.nuxeo.runtime.trackers.files.FileEventTracker.ForceSafeFileDeleteStrategy forceDeleteStrategy -
gc
-
threads
-
threadsListener
-
filesListener
-
-
Constructor Details
-
FileEventTracker
public FileEventTracker()
-
-
Method Details
-
registerProtectedPath
Registers a protected path under which files should not be deleted- Since:
- 7.2
-
activate
Description copied from interface:Component
Activates the component.This method is called by the runtime when a component is activated.
- Specified by:
activate
in interfaceComponent
- Overrides:
activate
in classDefaultComponent
- Parameters:
context
- the runtime context
-
getApplicationStartedOrder
public int getApplicationStartedOrder()Description copied from interface:Component
The component notification order forComponent.start(ComponentContext)
.Components are notified in increasing order. Order 1000 is the default order for components that don't care. Order 100 is the repository initialization.
- Returns:
- the order, 1000 by default
-
start
Description copied from interface:Component
Start the component. This method is called after all the components were resolved and activated- Specified by:
start
in interfaceComponent
- Overrides:
start
in classDefaultComponent
-
deactivate
Description copied from interface:Component
Deactivates the component.This method is called by the runtime when a component is deactivated.
- Specified by:
deactivate
in interfaceComponent
- Overrides:
deactivate
in classDefaultComponent
- Parameters:
context
- the runtime context
-
registerContribution
public void registerContribution(Object contribution, String extensionPoint, ComponentInstance contributor) - Overrides:
registerContribution
in classDefaultComponent
-
onContext
-
setThreadDelegate
protected void setThreadDelegate(boolean isLongRunning) -
resetThreadDelegate
- Throws:
IllegalStateException
-
getDeleteStrategy
public static org.nuxeo.runtime.trackers.files.FileEventTracker.SafeFileDeleteStrategy getDeleteStrategy()For test purpose.- Since:
- 2023.5
-
getForceDeleteStrategy
public static org.nuxeo.runtime.trackers.files.FileEventTracker.ForceSafeFileDeleteStrategy getForceDeleteStrategy()For test purpose.- Since:
- 2023.5
-