Interface ExtensionsFileProcessor
-
- All Known Implementing Classes:
DeleteResourcesProcessor
,DisablePluginsProcessor
,ExtractResourcesProcessor
,IgnoreFileProcessor
,InstalledFileProcessor
,LoadServletsProcessor
,MarkAsProcessedProcessor
,PluginInstallationProcessor
,RegisterExtensionsProcessor
,ResetProcessor
,UninstalledFileProcessor
,UnregisterExtensionsProcessor
,WebClientRegisterExtensionsProcessor
public interface ExtensionsFileProcessor
Interface that is used to request a callback for each extensions file managed by an extensions manager. Implementations are more or less free to do whatever they want with the file. Typically, they will scan the XML metadata or the contents of a JAR file and do something with it.A processer implementation is used by calling
ExtensionsManager.processFiles(ExtensionsFileProcessor)
.The manager will first call
begin(ExtensionsManager, int)
and thenprocessFile(ExtensionsManager, ExtensionsFile.WriteableExtensionsFile)
for each file that has been confirmed to contain a valid extension definitions file. If all files could be processed without problems the manager finishes by callingdone(ExtensionsManager)
. If the processor throws an exception the processing is immediately aborted anddone(ExtensionsManager, Throwable)
is called instead.- Since:
- 3.0
- Author:
- Nicklas
- Last modified
- $Date: 2011-10-24 15:02:46 +0200 (må, 24 okt 2011) $
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method 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.void
processFile(ExtensionsManager manager, ExtensionsFile.WriteableExtensionsFile file)
Called by the extensions manager for each extensions file that it manages.
-
-
-
Method Detail
-
begin
void begin(ExtensionsManager manager, int numFiles)
Called by the extensions manager before the processing starts.- Parameters:
manager
- The manager that is executing the actionnumFiles
- The number of extension files that is going to be processed this time
-
processFile
void processFile(ExtensionsManager manager, ExtensionsFile.WriteableExtensionsFile file)
Called by the extensions manager for each extensions file that it manages. The order of the files is generally not predicatable and may change from one invokation to the next.If the processor throws an exception the manager will abort processing and call
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
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 callsExtensionsFile.WriteableExtensionsFile.close()
once it is done writing.- Parameters:
manager
- The manager that is executing the actionfile
- The file to be processed
-
done
void done(ExtensionsManager manager)
Called by the extensions manager after a successful completion of the processing.- Parameters:
manager
- The manager that is executing the action
-
done
void done(ExtensionsManager manager, Throwable t)
Called by the extensions manager if an exception was thrown by the processor.- Parameters:
manager
- The manager that is executing the actiont
- The exception
-
-