Class DataContainerUnit
java.lang.Object
com.pnfsoftware.jeb.core.events.JebEventSource
com.pnfsoftware.jeb.core.units.AbstractUnit
com.pnfsoftware.jeb.core.units.impl.ContainerUnit
com.pnfsoftware.jeb.core.units.impl.DataContainerUnit
- All Implemented Interfaces:
IUnitCreator,IUserDataSupport,IUnit,IEventSource
Container units used to recursively process virtual folders and data blobs. Units and children
units are created to mimic the file-system structure provided as input.
- See Also:
-
Nested Class Summary
Nested Classes -
Field Summary
Fields inherited from class com.pnfsoftware.jeb.core.units.impl.ContainerUnit
CONTAINERS_FIRSTFields inherited from class com.pnfsoftware.jeb.core.events.JebEventSource
onEventCallCount -
Constructor Summary
ConstructorsConstructorDescriptionDataContainerUnit(DataContainerUnit.Entry root, IUnitProcessor unitProcessor, IUnitCreator parent, IPropertyDefinitionManager pdm) Create a data container unit. -
Method Summary
Modifier and TypeMethodDescriptionbooleanprocess()The default implementation callsAbstractUnit.processInternal(), and makes sure that a status string is set on error, or nullified on success.booleanprocess(boolean processLeaves) Process the container.static voidregister(IUnit caller, Collection<DataContainerUnit.Entry> entries) Register entries as child units without processing leaves.static voidregister(IUnit caller, Collection<DataContainerUnit.Entry> entries, boolean processLeaves) Register entries as child units.Methods inherited from class com.pnfsoftware.jeb.core.units.impl.ContainerUnit
equals, getChildren, getRootContainer, hashCodeMethods inherited from class com.pnfsoftware.jeb.core.units.AbstractUnit
addChild, addChild, addChild, addNotification, canBePersisted, clearAllData, dispose, finalize, generateQuickState, getAllData, getContributions, getCreationTimestamp, getData, getDescription, getFormatter, getFormatType, getIconData, getInterpreters, getLock, getName, getNotes, getNotificationManager, getParent, getPropertyDefinitionManager, getPropertyManager, getRealName, getStatus, getUid, getUnitProcessor, hasChildren, initializePropertyObjects, internalSwapChildren, isDeserialized, isDisposed, isProcessed, isStale, isTransientChild, logError, logException, logInfo, logTrace, logWarn, onPropertyChange, postDeserialization, processInternal, removeChild, removeChild, setChild, setChild, setData, setName, setNotes, setParent, setProcessed, setProcessed, setRealName, setStatus, setStatus, setUnitProcessor, toStringMethods inherited from class com.pnfsoftware.jeb.core.events.JebEventSource
addListener, countListeners, getListeners, getParentSource, insertListener, notifyListeners, notifyListeners, notifyListeners, removeListener, setParentSourceMethods inherited from interface com.pnfsoftware.jeb.util.events.IEventSource
addListener, countListeners, getListeners, getParentSource, insertListener, notifyListeners, removeListener, setParentSourceMethods inherited from interface com.pnfsoftware.jeb.core.units.IUnit
execprvfunc, getExtraInputs, getInput, getParentArtifact, getParentProject, notifyGenericChange
-
Constructor Details
-
DataContainerUnit
public DataContainerUnit(DataContainerUnit.Entry root, IUnitProcessor unitProcessor, IUnitCreator parent, IPropertyDefinitionManager pdm) Create a data container unit.- Parameters:
root- root entryunitProcessor- unit processorparent- parent unit or artifactpdm- property definition manager
-
-
Method Details
-
process
public boolean process()Description copied from class:AbstractUnitThe default implementation callsAbstractUnit.processInternal(), and makes sure that a status string is set on error, or nullified on success. processInternal() is never called isAbstractUnit.isProcessed()returns true.Plugins may decide to override this method, if they need finer control over processing (we recommend overriding processInternal(); in that case, processInternal() should be ignored.
- Specified by:
processin interfaceIUnit- Overrides:
processin classContainerUnit- Returns:
- true if processing is or was successful (in the latter case, process() should do
nothing but return true), or false is processing failed. The unit should also notify
clients by issuing a
J.UnitProcessedevent. If processing succeeded, subsequent calls toIUnit.isProcessed()should return true.
-
process
public boolean process(boolean processLeaves) Description copied from class:ContainerUnitProcess the container.- Overrides:
processin classContainerUnit- Parameters:
processLeaves- true to process leaf units- Returns:
- true if processing succeeded
-
register
Register entries as child units without processing leaves.- Parameters:
caller- parent unitentries- entries to register
-
register
public static void register(IUnit caller, Collection<DataContainerUnit.Entry> entries, boolean processLeaves) Register entries as child units.- Parameters:
caller- parent unitentries- entries to registerprocessLeaves- true to process leaf units
-