org.argouml.persistence
Class PersistenceManager

java.lang.Object
  extended byorg.argouml.persistence.PersistenceManager

public class PersistenceManager
extends Object

This class shall be the only one that knows in which file formats ArgoUML is able to save and load. And all that knowledge is concentrated in the constructor...

The PersisterManager manages the list of persisters.

This class is a singleton, since this allows external modules to add extra persisters to the ArgoUML application.


Field Summary
private  AbstractFilePersister defaultPersister
           
private  DiagramMemberFilePersister diagramMemberFilePersister
          Create the default diagram persister.
private static PersistenceManager INSTANCE
           
private  List otherPersisters
           
private  UmlFilePersister quickViewDump
           
 
Constructor Summary
private PersistenceManager()
          The constructor.
 
Method Summary
 String fixExtension(String in)
           
 URL fixUrlExtension(URL in)
           
 String getBaseName(String n)
          Find the base name of the given filename.
 String getDefaultExtension()
           
(package private)  DiagramMemberFilePersister getDiagramMemberFilePersister()
          Get the file persister for diagrams
static PersistenceManager getInstance()
           
 AbstractFilePersister getPersisterFromFileName(String name)
           
 String getQuickViewDump(Project project)
          Generates a String dump of the current model for quick viewing.
 void register(AbstractFilePersister fp)
          This function allows e.g.
 void setDiagramMemberFilePersister(DiagramMemberFilePersister persister)
          Set an alternative file persister for diagrams
 void setFileChooserFilters(JFileChooser chooser)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

private static final PersistenceManager INSTANCE

defaultPersister

private AbstractFilePersister defaultPersister

otherPersisters

private List otherPersisters

quickViewDump

private UmlFilePersister quickViewDump

diagramMemberFilePersister

private DiagramMemberFilePersister diagramMemberFilePersister
Create the default diagram persister.

Constructor Detail

PersistenceManager

private PersistenceManager()
The constructor.

Method Detail

getInstance

public static PersistenceManager getInstance()
Returns:
returns the singleton

register

public void register(AbstractFilePersister fp)
This function allows e.g. modules to easily add new persisters.

Parameters:
fp - the persister

getPersisterFromFileName

public AbstractFilePersister getPersisterFromFileName(String name)
Parameters:
name - the filename
Returns:
the persister

setFileChooserFilters

public void setFileChooserFilters(JFileChooser chooser)
Parameters:
chooser - the filechooser of which the filters will be set

getDefaultExtension

public String getDefaultExtension()
Returns:
the extension of the default persister (just the text, not the ".")

fixExtension

public String fixExtension(String in)
Parameters:
in - the input file or path name which may or may not have a recognised extension
Returns:
the amended file or pathname, guaranteed to have a recognised extension

fixUrlExtension

public URL fixUrlExtension(URL in)
Parameters:
in - the input url which may or may not have a recognised extension
Returns:
the url with default extension added, if it did not have a valid extension yet

getBaseName

public String getBaseName(String n)
Find the base name of the given filename.

This is the name minus any valid file extension. Invalid extensions are left alone.

Parameters:
n - the given file name
Returns:
the name (a String) without extension

getQuickViewDump

public String getQuickViewDump(Project project)
Generates a String dump of the current model for quick viewing.

Parameters:
project - The project to generate.
Returns:
The whole model in a String.

getDiagramMemberFilePersister

DiagramMemberFilePersister getDiagramMemberFilePersister()
Get the file persister for diagrams

Returns:
the diagram file persister.

setDiagramMemberFilePersister

public void setDiagramMemberFilePersister(DiagramMemberFilePersister persister)
Set an alternative file persister for diagrams

Parameters:
persister - the persister to use instead of the default


ArgoUML © 1996-2004 (20050222)ArgoUML HomepageArgoUML Developers' pageArgoUML Cookbook