ptolemy.actor.gt
Class DefaultModelAttribute
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.util.Attribute
ptolemy.kernel.util.AbstractSettableAttribute
ptolemy.data.expr.Variable
ptolemy.data.expr.Parameter
ptolemy.data.expr.StringParameter
ptolemy.data.expr.FileParameter
ptolemy.actor.gt.DefaultModelAttribute
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, HasTypeConstraints, Typeable, FileOrURLAccessor, Changeable, Debuggable, DebugListener, Derivable, ModelErrorHandler, MoMLExportable, Moveable, Nameable, Settable, ValueListener
public class DefaultModelAttribute
- extends FileParameter
An attribute to locate the default model to be transformed. It should be placed
in the pattern of a transformation rule.
- Since:
- Ptolemy II 6.1
- Version:
- $Id: DefaultModelAttribute.java 54815 2009-06-30 05:18:27Z tfeng $
- Author:
- Thomas Huining Feng
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Constructor Summary |
DefaultModelAttribute(NamedObj container,
java.lang.String name)
Construct an attribute with the given name contained by the specified
entity. |
Method Summary |
void |
setContainer(NamedObj container)
Specify the container NamedObj, adding this attribute to the
list of attributes in the container. |
Methods inherited from class ptolemy.data.expr.Variable |
_description, _evaluate, _notifyValueListeners, _parseIfNecessary, _propagate, _propagateToValueListeners, _propagateValue, _setToken, _setTokenAndNotify, addValueListener, getDeclaredType, getExpression, getFreeIdentifiers, getParserScope, getScope, getScope, getToken, getType, getTypeTerm, getValueAsString, getVariable, getVisibility, invalidate, isKnown, isLazy, isStringMode, isTypeAcceptable, removeValueListener, reset, setExpression, setLazy, setName, setParseTreeEvaluator, setStringMode, setToken, setToken, setTypeAtLeast, setTypeAtLeast, setTypeAtMost, setTypeEquals, setTypeSameAs, setUnknown, setVisibility, stringRepresentation, toString, typeConstraintList, typeConstraints, validate, valueChanged |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getElementName, getFullName, getModelErrorHandler, getName, getName, getPrototypeList, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateExistence, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, uniqueName, validateSettables, workspace |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
editorFactory
public VisibleParameterEditorFactory editorFactory
- The editor factory.
DefaultModelAttribute
public DefaultModelAttribute(NamedObj container,
java.lang.String name)
throws NameDuplicationException,
IllegalActionException
- Construct an attribute with the given name contained by the specified
entity. The container argument must not be null, or a
NullPointerException will be thrown. This attribute will use the
workspace of the container for synchronization and version counts.
If the name argument is null, then the name is set to the empty string.
Increment the version of the workspace.
- Parameters:
container
- The container.name
- The name of this attribute.
- Throws:
IllegalActionException
- If the attribute is not of an
acceptable class for the container, or if the name contains a period.
NameDuplicationException
- If the name coincides with
an attribute already in the container.
setContainer
public void setContainer(NamedObj container)
throws IllegalActionException,
NameDuplicationException
- Specify the container NamedObj, adding this attribute to the
list of attributes in the container. If the container already
contains an attribute with the same name, then throw an exception
and do not make any changes. Similarly, if the container is
not in the same workspace as this attribute, throw an exception.
If this attribute is already contained by the NamedObj, do nothing.
If the attribute already has a container, remove
this attribute from its attribute list first. Otherwise, remove
it from the directory of the workspace, if it is there.
If the argument is null, then remove it from its container.
It is not added to the workspace directory, so this could result in
this object being garbage collected.
Note that since an Attribute is a NamedObj, it can itself have
attributes. However, recursive containment is not allowed, where
an attribute is an attribute of itself, or indirectly of any attribute
it contains. This method is write-synchronized on the
workspace and increments its version number.
Subclasses may constrain the type of container by overriding
setContainer(NamedObj)
.
- Overrides:
setContainer
in class Variable
- Parameters:
container
- The container to attach this attribute to..
- Throws:
IllegalActionException
- If this attribute is not of the
expected class for the container, or it has no name,
or the attribute and container are not in the same workspace, or
the proposed container would result in recursive containment.
NameDuplicationException
- If the container already has
an attribute with the name of this attribute.- See Also:
Attribute.getContainer()