uci.uml.ui
Class Project

java.lang.Object
  |
  +--uci.uml.ui.Project

public class Project
extends Object
implements Serializable

A datastructure that represents the designer's current project. A Project consists of diagrams and UML models.

See Also:
Serialized Form

Field Summary
 String _authorname
           
 GenerationPreferences _cgPrefs
           
 Namespace _curModel
           
 Hashtable _definedTypes
           
 String _description
           
 Vector _diagrams
           
 String _historyFile
           
 Hashtable _idRegistry
           
 Vector _members
           
 Vector _models
           
 boolean _needsSave
           
 Vector _searchpath
           
 String _version
           
 VetoableChangeSupport _vetoSupport
           
static String EMPTY_PROJ
           
static String FILE_EXT
           
static String SEPARATOR
           
static String TEMPLATES
           
static String UNTITLED_FILE
           
 
Constructor Summary
Project()
           
Project(File file)
           
Project(URL url)
           
 
Method Summary
 void addDiagram(Diagram d)
           
 void addMember(Diagram d)
           
 void addMember(Model m)
           
 void addMember(String name, String type)
           
 void addModel(Namespace m)
           
 void addSearchPath(String searchpath)
           
static void addStat(Vector stats, String name, int value)
           
 void addVetoableChangeListener(VetoableChangeListener l)
           
 void defineType(Classifier cls)
           
 ProjectMember findMemberByName(String name)
           
 URL findMemberURLInSearchPath(String name)
           
 Classifier findType(String s)
           
 Classifier findTypeInModel(String s, Namespace ns)
           
 String getAuthorname()
           
 String getBaseName()
           
 Namespace getCurrentNamespace()
           
 Hashtable getDefinedTypes()
           
 Vector getDefinedTypesVector()
           
 String getDescription()
           
 Vector getDiagrams()
           
 GenerationPreferences getGenerationPrefs()
           
 String getHistoryFile()
           
 Hashtable getIDRegistry()
           
 Object getInitialTarget()
           
 Vector getMembers()
           
 Vector getModels()
           
 String getName()
           
 boolean getNeedsSave()
           
 int getPresentationCountFor(ModelElement me)
           
 Vector getSearchPath()
           
static Vector getStats()
           
 URL getURL()
           
 String getVersion()
           
 VetoableChangeSupport getVetoSupport()
           
 boolean isInTrash(Object dm)
           
static Project load(URL url)
           
 void loadAllMembers()
           
static Project loadEmpty()
           
static Project loadEmptyProject()
          This method is currently not called.
 void loadMembersOfType(String type)
           
static Project makeEmptyProject()
           
 void moveFromTrash(Object obj)
           
 void moveToTrash(Object obj)
           
 void needsSave()
           
 void postLoad()
           
 void postSave()
           
 void preSave()
           
 void removeDiagram(Diagram d)
           
 void removeMember(Diagram d)
           
 void removeVetoableChangeListener(VetoableChangeListener l)
           
static void resetStats()
           
 void saveAllMembers(String path, boolean overwrite)
           
 void setAuthorname(String s)
           
 void setCurrentNamespace(Namespace m)
           
 void setDefinedTypes(Hashtable h)
           
 void setDescription(String s)
           
 void setFile(File file)
           
 void setGenerationPrefs(GenerationPreferences cgp)
           
 void setHistoryFile(String s)
           
 void setName(String n)
           
 void setNeedsSave(boolean ns)
           
static void setStat(String n, int v)
           
 void setURL(URL url)
           
 void setVersion(String s)
           
protected  void trashDiagramsOn(Namespace ns)
           
protected  void trashInternal(Object obj)
           
 void updateMemberNames()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SEPARATOR

public static final String SEPARATOR

FILE_EXT

public static final String FILE_EXT

TEMPLATES

public static final String TEMPLATES

EMPTY_PROJ

public static final String EMPTY_PROJ

UNTITLED_FILE

public static final String UNTITLED_FILE

_authorname

public String _authorname

_description

public String _description

_version

public String _version

_searchpath

public Vector _searchpath

_members

public Vector _members

_historyFile

public String _historyFile

_models

public Vector _models

_diagrams

public Vector _diagrams

_needsSave

public boolean _needsSave

_curModel

public Namespace _curModel

_definedTypes

public Hashtable _definedTypes

_idRegistry

public Hashtable _idRegistry

_cgPrefs

public GenerationPreferences _cgPrefs

_vetoSupport

public transient VetoableChangeSupport _vetoSupport
Constructor Detail

Project

public Project(File file)
        throws MalformedURLException,
               IOException

Project

public Project(URL url)

Project

public Project()
Method Detail

makeEmptyProject

public static Project makeEmptyProject()

loadEmptyProject

public static Project loadEmptyProject()
This method is currently not called. It is an example of how to support loading template files. However, makeEmptyProject() is much faster, and that is important since it is done often.

getIDRegistry

public Hashtable getIDRegistry()

getBaseName

public String getBaseName()

getName

public String getName()

setName

public void setName(String n)
             throws PropertyVetoException,
                    MalformedURLException

updateMemberNames

public void updateMemberNames()

getURL

public URL getURL()

setURL

public void setURL(URL url)
            throws PropertyVetoException

setFile

public void setFile(File file)
             throws PropertyVetoException

getSearchPath

public Vector getSearchPath()

addSearchPath

public void addSearchPath(String searchpath)

findMemberURLInSearchPath

public URL findMemberURLInSearchPath(String name)

getMembers

public Vector getMembers()

addMember

public void addMember(String name,
                      String type)

addMember

public void addMember(Diagram d)
               throws PropertyVetoException

addMember

public void addMember(Model m)
               throws PropertyVetoException

addModel

public void addModel(Namespace m)
              throws PropertyVetoException

removeMember

public void removeMember(Diagram d)
                  throws PropertyVetoException

findMemberByName

public ProjectMember findMemberByName(String name)

load

public static Project load(URL url)
                    throws IOException,
                           org.xml.sax.SAXException

loadEmpty

public static Project loadEmpty()
                         throws IOException,
                                org.xml.sax.SAXException

loadMembersOfType

public void loadMembersOfType(String type)

loadAllMembers

public void loadAllMembers()

saveAllMembers

public void saveAllMembers(String path,
                           boolean overwrite)

getAuthorname

public String getAuthorname()

setAuthorname

public void setAuthorname(String s)

getVersion

public String getVersion()

setVersion

public void setVersion(String s)

getDescription

public String getDescription()

setDescription

public void setDescription(String s)

getHistoryFile

public String getHistoryFile()

setHistoryFile

public void setHistoryFile(String s)

getNeedsSave

public boolean getNeedsSave()

setNeedsSave

public void setNeedsSave(boolean ns)

needsSave

public void needsSave()

getModels

public Vector getModels()

getDefinedTypesVector

public Vector getDefinedTypesVector()

getDefinedTypes

public Hashtable getDefinedTypes()

setDefinedTypes

public void setDefinedTypes(Hashtable h)

defineType

public void defineType(Classifier cls)

findType

public Classifier findType(String s)

findTypeInModel

public Classifier findTypeInModel(String s,
                                  Namespace ns)

setCurrentNamespace

public void setCurrentNamespace(Namespace m)

getCurrentNamespace

public Namespace getCurrentNamespace()

getDiagrams

public Vector getDiagrams()

addDiagram

public void addDiagram(Diagram d)
                throws PropertyVetoException

removeDiagram

public void removeDiagram(Diagram d)
                   throws PropertyVetoException

getPresentationCountFor

public int getPresentationCountFor(ModelElement me)

getInitialTarget

public Object getInitialTarget()

setGenerationPrefs

public void setGenerationPrefs(GenerationPreferences cgp)

getGenerationPrefs

public GenerationPreferences getGenerationPrefs()

addVetoableChangeListener

public void addVetoableChangeListener(VetoableChangeListener l)

removeVetoableChangeListener

public void removeVetoableChangeListener(VetoableChangeListener l)

getVetoSupport

public VetoableChangeSupport getVetoSupport()

preSave

public void preSave()

postSave

public void postSave()

postLoad

public void postLoad()

moveToTrash

public void moveToTrash(Object obj)

trashInternal

protected void trashInternal(Object obj)

trashDiagramsOn

protected void trashDiagramsOn(Namespace ns)

moveFromTrash

public void moveFromTrash(Object obj)

isInTrash

public boolean isInTrash(Object dm)

resetStats

public static void resetStats()

setStat

public static void setStat(String n,
                           int v)

getStats

public static Vector getStats()

addStat

public static void addStat(Vector stats,
                           String name,
                           int value)