Package ptolemy.kernel.attributes
Class RequireVersion
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.util.Attribute
-
- ptolemy.kernel.util.AbstractSettableAttribute
-
- ptolemy.kernel.util.StringAttribute
-
- ptolemy.kernel.attributes.VersionAttribute
-
- ptolemy.kernel.attributes.RequireVersion
-
- All Implemented Interfaces:
java.lang.Cloneable
,java.lang.Comparable
,Changeable
,Debuggable
,DebugListener
,Derivable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
,Settable
public class RequireVersion extends VersionAttribute
An attribute that requires a particular version of Ptolemy II. When the value of this attribute is set (via setExpression()), the value that is set is compared against the version of the currently executing Ptolemy II installation. If the executing version is less than the value set, we throw an expression.- Since:
- Ptolemy II 2.0
- Version:
- $Id$
- Author:
- Edward A. Lee
- Pt.AcceptedRating:
- Red (cxh)
- Pt.ProposedRating:
- Red (eal)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.util.NamedObj
NamedObj.ContainedObjectsIterator
-
Nested classes/interfaces inherited from interface ptolemy.kernel.util.Settable
Settable.Visibility
-
-
Field Summary
-
Fields inherited from class ptolemy.kernel.attributes.VersionAttribute
CURRENT_VERSION
-
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
-
Fields inherited from interface ptolemy.kernel.util.Settable
EXPERT, FULL, NONE, NOT_EDITABLE
-
-
Constructor Summary
Constructors Constructor Description RequireVersion(NamedObj container, java.lang.String name)
Construct an attribute with the given name contained by the specified container.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object object)
Return true if the hash code of this object is equal (==) to the hash code of the argument.int
hashCode()
Return a hash code value for attribute.void
setExpression(java.lang.String expression)
Set the required version, check it against the currently executing version, and throw an exception if the executing version is older.-
Methods inherited from class ptolemy.kernel.attributes.VersionAttribute
clone, compareTo, isLessThan, iterator, majorCurrentVersion
-
Methods inherited from class ptolemy.kernel.util.StringAttribute
_propagateValue, addValueListener, exportMoML, getExpression, getVisibility, removeValueListener, setVisibility, validate
-
Methods inherited from class ptolemy.kernel.util.AbstractSettableAttribute
getDefaultExpression, getValueAsString
-
Methods inherited from class ptolemy.kernel.util.Attribute
_checkContainer, _getContainedObject, _propagateExistence, getContainer, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, setContainer, setName, updateContent
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _description, _executeChangeRequests, _exportMoMLContents, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _removeAttribute, _splitName, _stripNumericSuffix, _validateSettables, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, containedObjectsIterator, decorators, 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, notifyOfNameChange, propagateExistence, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, uniqueName, validateSettables, workspace
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getContainer, getFullName, getName, getName, setName
-
Methods inherited from interface ptolemy.kernel.util.Settable
getDisplayName
-
-
-
-
Constructor Detail
-
RequireVersion
public RequireVersion(NamedObj container, java.lang.String name) throws IllegalActionException, NameDuplicationException
Construct an attribute with the given name contained by the specified container. 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.
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object object)
Return true if the hash code of this object is equal (==) to the hash code of the argument.- Overrides:
equals
in classVersionAttribute
- Parameters:
object
- The specified object that is compared against.- Returns:
- True if the specified version is the same as this one.
-
hashCode
public int hashCode()
Return a hash code value for attribute. This method returns the identity hash code for this attribute. The hashCode() method of the super class is not called.- Overrides:
hashCode
in classVersionAttribute
- Returns:
- A hash code value for this token.
-
setExpression
public void setExpression(java.lang.String expression) throws IllegalActionException
Set the required version, check it against the currently executing version, and throw an exception if the executing version is older.- Specified by:
setExpression
in interfaceSettable
- Overrides:
setExpression
in classVersionAttribute
- Parameters:
expression
- The version string, consisting of version ID tuples separated by '.', '-' or '_'. For example: "1.2", "1.2_beta-4".- Throws:
IllegalActionException
- If the argument contains a space, which violates the JNLP Version format specification, and if the specified version is newer than the executing version.- See Also:
StringAttribute.getExpression()
-
-