public class UnregisterExtensionsProcessor extends Object implements ExtensionsFileProcessor
DeletedFilter
to unregister extensions from deleted files.
Using this processor without a filter will unregister all
extensions.Modifier and Type | Field and Description |
---|---|
private static org.slf4j.Logger |
log |
private int |
numError |
private int |
numFiles |
private int |
numUnregistered |
private ProcessResults |
results |
Constructor and Description |
---|
UnregisterExtensionsProcessor(ProcessResults results)
Create a new processor.
|
Modifier and Type | Method and Description |
---|---|
void |
begin(ExtensionsManager manager,
int numFiles)
Called by the extensions manager before the processing starts.
|
void |
done(ExtensionsManager manager)
Called by the extensions manager after a successful completion of the
processing.
|
void |
done(ExtensionsManager manager,
Throwable t)
Called by the extensions manager if an exception was thrown
by the processor.
|
int |
getNumError()
Get the number of files that was had an error.
|
int |
getNumFiles()
Get the number of files that was successfully processed.
|
int |
getNumUnregistered()
Get the number of extensions + extension points that
was unregistered.
|
void |
processFile(ExtensionsManager manager,
ExtensionsFile.WriteableExtensionsFile wFile)
Called by the extensions manager for each extensions file that it
manages.
|
private void |
unregisterExtension(ExtensionsFile.WriteableExtensionsFile wFile,
Extension ext,
Registry registry)
Unregister the given extension including factory metadata etc.
|
private void |
unregisterExtensionPoint(ExtensionsFile.WriteableExtensionsFile wFile,
ExtensionPoint ep,
Registry registry)
Unregister the given extension point including factory metadata etc.
|
private void |
unregisterFactory(ExtensionsFile.WriteableExtensionsFile wFile,
Object factory) |
private static final org.slf4j.Logger log
private final ProcessResults results
private int numFiles
private int numError
private int numUnregistered
public UnregisterExtensionsProcessor(ProcessResults results)
results
- Optional object for storing resultspublic void begin(ExtensionsManager manager, int numFiles)
ExtensionsFileProcessor
begin
in interface ExtensionsFileProcessor
manager
- The manager that is executing the actionnumFiles
- The number of extension files that is going to be processed this timepublic void processFile(ExtensionsManager manager, ExtensionsFile.WriteableExtensionsFile wFile)
ExtensionsFileProcessor
If the processor throws an exception the manager will abort
processing and call ExtensionsFileProcessor.done(ExtensionsManager, Throwable)
.
Error that are related to a specific file should be catched
by the processor and registered by calling .......
If all files was processed without exceptions the manager
will call ExtensionsFileProcessor.done(ExtensionsManager)
.
Note that the file is read-only to begin with. If the processor
wants to call any write-operation the file must be opened by
calling ExtensionsFile.WriteableExtensionsFile.open()
. It is recommended
that the processor calls ExtensionsFile.WriteableExtensionsFile.close()
once it is done writing.
processFile
in interface ExtensionsFileProcessor
manager
- The manager that is executing the actionwFile
- The file to be processedpublic void done(ExtensionsManager manager)
ExtensionsFileProcessor
done
in interface ExtensionsFileProcessor
manager
- The manager that is executing the actionpublic void done(ExtensionsManager manager, Throwable t)
ExtensionsFileProcessor
done
in interface ExtensionsFileProcessor
manager
- The manager that is executing the actiont
- The exceptionprivate void unregisterExtension(ExtensionsFile.WriteableExtensionsFile wFile, Extension ext, Registry registry)
private void unregisterExtensionPoint(ExtensionsFile.WriteableExtensionsFile wFile, ExtensionPoint ep, Registry registry)
private void unregisterFactory(ExtensionsFile.WriteableExtensionsFile wFile, Object factory)
public int getNumFiles()
public int getNumError()
public int getNumUnregistered()