ptolemy.hsif
Class HSIFEffigyFactory
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.kernel.CompositeEntity
ptolemy.actor.gui.EffigyFactory
ptolemy.hsif.HSIFEffigyFactory
- All Implemented Interfaces:
- java.io.Serializable, java.lang.Cloneable, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable
public class HSIFEffigyFactory
- extends EffigyFactory
An object that can create a new Effigy from an HSIF file.
An HSIF filename can end with either .xml or .hsif
- Since:
- Ptolemy II 2.2
- Version:
- $Id: HSIFEffigyFactory.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Haiyang Zheng, Edward A. Lee, Christopher Hylands
- See Also:
Configuration
,
Effigy
,
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 |
Method Summary |
boolean |
canCreateBlankEffigy()
Return false, indicating that this effigy factory is not
capable of creating an effigy without a URL being specified. |
Effigy |
createEffigy(CompositeEntity container,
java.net.URL base,
java.net.URL input)
Create a new effigy in the given container by reading the
specified URL, which must end with either .xml or .hsif. |
Methods inherited from class ptolemy.kernel.CompositeEntity |
_addEntity, _addRelation, _adjustDeferrals, _deepOpaqueEntityList, _description, _exportMoMLContents, _finishedAddEntity, _recordDecoratedAttributes, _removeEntity, _removeRelation, _validateSettables, allAtomicEntityList, allCompositeEntityList, allowLevelCrossingConnect, classDefinitionList, clone, connect, connect, containedObjectsIterator, deepEntityList, deepGetEntities, deepOpaqueEntityList, deepRelationSet, entityList, entityList, exportLinks, exportMoML, getAttribute, getEntities, getEntity, getPort, getRelation, getRelations, isAtomic, isOpaque, lazyAllAtomicEntityList, lazyAllCompositeEntityList, lazyClassDefinitionList, lazyDeepEntityList, lazyEntityList, lazyRelationList, newRelation, numberOfEntities, numberOfRelations, numEntities, numRelations, relationList, removeAllEntities, removeAllRelations, setClassDefinition, setContainer, statistics, uniqueName |
Methods inherited from class ptolemy.kernel.ComponentEntity |
_addPort, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, newPort, propagateExistence, setName |
Methods inherited from class ptolemy.kernel.util.NamedObj |
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, attributeTypeChanged, clone, 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, propagateValue, propagateValues, removeChangeListener, removeDebugListener, 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 |
_inCreateEffigy
private boolean _inCreateEffigy
HSIFEffigyFactory
public HSIFEffigyFactory(CompositeEntity container,
java.lang.String name)
throws IllegalActionException,
NameDuplicationException
- Create a factory with the given name and container.
- Parameters:
container
- The container.name
- The name.
- Throws:
IllegalActionException
- If the container is incompatible
with this entity.
NameDuplicationException
- If the name coincides with
an entity already in the container.
canCreateBlankEffigy
public boolean canCreateBlankEffigy()
- Return false, indicating that this effigy factory is not
capable of creating an effigy without a URL being specified.
- Overrides:
canCreateBlankEffigy
in class EffigyFactory
- Returns:
- False.
createEffigy
public Effigy createEffigy(CompositeEntity container,
java.net.URL base,
java.net.URL input)
throws java.lang.Exception
- Create a new effigy in the given container by reading the
specified URL, which must end with either .xml or .hsif. If
the first 20 lines of the file contain the string "HSIF.dtd",
then the specified URL refers to an HSIF file. If the URL is
an HSIF file, then invok the HSIF to MoML translator to create
a MoML temporary file, and then delegate to the container of
this effigy factory to open that file. If the specified file
is not HSIF, return null.
- Overrides:
createEffigy
in class EffigyFactory
- Parameters:
container
- The container for the effigy.base
- The base for relative file references, or null if
there are no relative file references.input
- The input URL.
- Returns:
- A new effigy.
- Throws:
java.lang.Exception
- If the stream cannot be read, or if the data
is malformed in some way.