Package ptolemy.actor.gui
Class PlotEffigy.Factory
- java.lang.Object
-
- ptolemy.kernel.util.NamedObj
-
- ptolemy.kernel.InstantiableNamedObj
-
- ptolemy.kernel.Entity<T>
-
- ptolemy.kernel.ComponentEntity
-
- ptolemy.kernel.CompositeEntity
-
- ptolemy.actor.gui.EffigyFactory
-
- ptolemy.actor.gui.PlotEffigy.Factory
-
- All Implemented Interfaces:
java.lang.Cloneable
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
- Enclosing class:
- PlotEffigy
public static class PlotEffigy.Factory extends EffigyFactory
A factory for creating new effigies.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.CompositeEntity
CompositeEntity.ContainedObjectsIterator
-
-
Field Summary
-
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 Factory(CompositeEntity container, java.lang.String name)
Create a factory with the given name and container.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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.-
Methods inherited from class ptolemy.actor.gui.EffigyFactory
checkForDTD, createEffigy, getExtension
-
Methods inherited from class ptolemy.kernel.CompositeEntity
_addEntity, _addRelation, _adjustDeferrals, _containedDecorators, _deepOpaqueEntityList, _description, _exportMoMLContents, _finishedAddEntity, _removeEntity, _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, setContainer, 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, attributeChanged, 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
-
Factory
public Factory(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.
-
-
Method Detail
-
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 classEffigyFactory
- 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. If the specified URL is null, or if the URL does not end with extension ".plt", ".plot", or ".xml", then return null. If the extension is ".xml", then read the file and return null if it does not contain a line that starts with the string>!DOCTYPE plot PUBLIC "-//UC Berkeley//DTD PlotML
within the first five lines. Note that as of this writing, the plotter parses any file you give it without complaint, so we cannot rely on the plotter to report that this file is not a plot file. Thus, we assume that if the extension matches, then it is.- Overrides:
createEffigy
in classEffigyFactory
- Parameters:
container
- The container for the effigy.base
- The base for relative file references, or null if there are no relative file references. This is ignored in this class.input
- The input URL.- Returns:
- A new instance of PlotEffigy, or null if the URL does not have a recognized extension.
- Throws:
java.lang.Exception
- If the URL cannot be read.
-
-