Package ptolemy.actor.gui
Class TokenEffigy
- java.lang.Object
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
public class TokenEffigy extends Effigy
An effigy for a file that contains one or more tokens, one per line, represented as text in the expression language.- Since:
- Ptolemy II 2.1
- Version:
- $Id$
- Author:
- Edward A. Lee
- Pt.AcceptedRating:
- Red (neuendor)
- Pt.ProposedRating:
- Red (neuendor)
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TokenEffigy.Factory
A factory for creating new effigies.-
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntity
CompositeEntity.ContainedObjectsIterator
-
-
Field Summary
-
Fields inherited from class ptolemy.actor.gui.Effigy
identifier, uri
-
Fields inherited from class ptolemy.kernel.CompositeEntity
_levelCrossingLinks
-
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
-
-
Constructor Summary
Constructors Constructor Description TokenEffigy(CompositeEntity container, java.lang.String name)
Create a new effigy in the given directory with the given name.TokenEffigy(Workspace workspace)
Create a new effigy in the specified workspace with an empty string for its name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
append(Token token)
Append the specified token to the token array associated with this effigy.void
attributeChanged(Attribute attribute)
If the argument is the uri parameter, then read the specified URL and parse the data contained in it.void
clear()
Clear the token array associated with this effigy.java.util.ArrayList
getTokens()
Return an array of the tokens in the file.void
read(java.net.URL input)
Read the specified URL and parse the data.void
setTokens(java.util.List tokens)
Set the token array associated with this effigy.void
writeFile(java.io.File file)
Write the current data of this effigy to the specified file.-
Methods inherited from class ptolemy.actor.gui.Effigy
_checkContainer, _removeEntity, closeTableaux, findToplevelEffigy, getTableauFactory, getWritableFile, isModifiable, isModified, isSystemEffigy, masterEffigy, numberOfOpenTableaux, setContainer, setModifiable, setModified, setSystemEffigy, setTableauFactory, showTableaux, topEffigy
-
Methods inherited from class ptolemy.kernel.CompositeEntity
_addEntity, _addRelation, _adjustDeferrals, _containedDecorators, _deepOpaqueEntityList, _description, _exportMoMLContents, _finishedAddEntity, _removeRelation, _validateSettables, allAtomicEntityList, allowLevelCrossingConnect, classDefinitionList, clone, connect, connect, containedObjectsIterator, deepCompositeEntityList, deepEntityList, deepGetEntities, deepNamedObjList, deepOpaqueEntityList, deepRelationSet, entityList, entityList, exportLinks, exportMoML, getAttribute, getEntities, getEntity, getPort, getRelation, getRelations, isAtomic, isOpaque, lazyAllAtomicEntityList, lazyAllCompositeEntityList, lazyAllCompositeTransparentAndOpaqueEntityList, lazyClassDefinitionList, lazyDeepEntityList, lazyEntityList, lazyRelationList, newRelation, numberOfEntities, numberOfRelations, numEntities, numRelations, relationList, removeAllEntities, removeAllRelations, setClassDefinition, statistics, uniqueName
-
Methods inherited from class ptolemy.kernel.ComponentEntity
_checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, newPort, propagateExistence, setName
-
Methods inherited from class ptolemy.kernel.Entity
_addPort, _removePort, connectedPortList, connectedPorts, connectionsChanged, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts
-
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
-
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeDeleted, attributeList, attributeList, attributeTypeChanged, clone, 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
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
-
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getDisplayName, getFullName, getName, getName
-
-
-
-
Constructor Detail
-
TokenEffigy
public TokenEffigy(Workspace workspace)
Create a new effigy in the specified workspace with an empty string for its name.- Parameters:
workspace
- The workspace for this effigy.
-
TokenEffigy
public TokenEffigy(CompositeEntity container, java.lang.String name) throws IllegalActionException, NameDuplicationException
Create a new effigy in the given directory with the given name.- Parameters:
container
- The directory that contains this effigy.name
- The name of this effigy.- Throws:
IllegalActionException
- If the entity cannot be contained by the proposed container.NameDuplicationException
- If the name coincides with an entity already in the container.
-
-
Method Detail
-
append
public void append(Token token) throws IllegalActionException
Append the specified token to the token array associated with this effigy.- Parameters:
token
- The token to append.- Throws:
IllegalActionException
- If the token is not acceptable.
-
attributeChanged
public void attributeChanged(Attribute attribute) throws IllegalActionException
If the argument is the uri parameter, then read the specified URL and parse the data contained in it.- Overrides:
attributeChanged
in classEffigy
- Parameters:
attribute
- The attribute that changed.- Throws:
IllegalActionException
- If the URL cannot be read or if the data is malformed.
-
clear
public void clear()
Clear the token array associated with this effigy.
-
getTokens
public java.util.ArrayList getTokens()
Return an array of the tokens in the file.- Returns:
- An array of tokens in the file.
- See Also:
setTokens(List)
-
read
public void read(java.net.URL input) throws java.io.IOException
Read the specified URL and parse the data.- Parameters:
input
- The URL to read.- Throws:
java.io.IOException
- If an error occurs while reading the URL or parsing the data.
-
setTokens
public void setTokens(java.util.List tokens) throws IllegalActionException
Set the token array associated with this effigy.- Parameters:
tokens
- An array of tokens.- Throws:
IllegalActionException
- If the tokens are not acceptable.- See Also:
getTokens()
-
writeFile
public void writeFile(java.io.File file) throws java.io.IOException
Write the current data of this effigy to the specified file. This is done by producing one line per token using its toString() method.
-
-