public class SRBAddMD extends TypedAtomicActor
SRBAddMD is a Kepler Actor which adds user defined metadeta to an SRB dataset or collection. When ingesting metadata, only equal operator is used. The following actor expects as input a reference to the SRB file system. This reference connection is obtained via the SRBConnect Actor in Kepler. See SRBConnect and its documentation.
The file reference system is created with a unique SRB user account and with this connection reference as input the SRBAddMD actor is able to gain access to the SRB file space. Once an alive SRB file connection system has been established the actor gets the remode SRB file/directory and the attribute value pair conditions defining the metadata. If the file/directory exists the conditions are added via jargon API methods to the SRB file or directory.
Actor Input: Accepts a reference to the SRB files system, an SRB remote file/directory path and a list of attribute value pairs.
Sample Attribute Value pairs : "a 5","b 10","c abc"
The above is a string array of 3 conditions(a,b,c) and their values to be added to the SRB file/dir metadata.
Actor Output: Outputs an exit status.The exit status gives a message of "success" or appropriate error to indicate the status of adding metadata process.
The following actor accesses SRB file reference system and SRB file space with the SRB Jargon API provided. The JARGON is a pure API for developing programs with a data grid interface and I/O for SRB file systems.
Further information on SRBEntity.ContainedObjectsIterator
Modifier and Type | Field and Description |
---|---|
TypedIOPort |
conditions
{"att val"}
|
TypedIOPort |
srbFilePath
Path to SRB file.
|
TypedIOPort |
SRBFileSystem
pointer to the SRB file system.
|
TypedIOPort |
trigger
An input trigger.
|
_typesValid
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
COMPLETED, NOT_READY, STOP_ITERATING
Constructor and Description |
---|
SRBAddMD(CompositeEntity container,
java.lang.String name)
Construct a constant source with the given container and name.
|
Modifier and Type | Method and Description |
---|---|
void |
fire()
Add the metadata conditions to the specified file/directory.
|
void |
initialize()
Initialize the srb file system to null.
|
void |
wrapup()
Disconnect from SRB.
|
_containedTypeConstraints, _customTypeConstraints, _defaultTypeConstraints, _fireAt, _fireAt, attributeTypeChanged, clone, clone, isBackwardTypeInferenceEnabled, newPort, typeConstraintList, typeConstraints
_actorFiring, _actorFiring, _declareDelayDependency, addActorFiringListener, addInitializable, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, prefire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
_addPort, _description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, decorators, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate
addInitializable, preinitialize, removeInitializable
description, getContainer, getDisplayName, getFullName, getName, getName, setName
getDerivedLevel, getDerivedList, propagateValue
public TypedIOPort SRBFileSystem
public TypedIOPort srbFilePath
public TypedIOPort conditions
public TypedIOPort trigger
public SRBAddMD(CompositeEntity container, java.lang.String name) throws NameDuplicationException, IllegalActionException
container
- The container.name
- The name of this actor.IllegalActionException
- If the entity cannot be contained by the proposed
container.NameDuplicationException
- If the container already has an actor with this name.public void fire() throws IllegalActionException
fire
in interface Executable
fire
in class AtomicActor<TypedIOPort>
IllegalActionException
- If it is thrown if the SRB file cannot be accessed or the
current directory cannot be broadcasted.public void initialize() throws IllegalActionException
initialize
in interface Initializable
initialize
in class AtomicActor<TypedIOPort>
IllegalActionException
- If a derived class throws it.public void wrapup()
wrapup
in interface Initializable
wrapup
in class AtomicActor<TypedIOPort>