edu.stanford.smi.protegex.owl.repository
Interface Repository

All Known Implementing Classes:
AbstractLocalRepository, DublinCoreDLVersionRedirectRepository, ForcedURLRetrievalRepository, FTPRepository, HTTPRepository

public interface Repository

User: matthewhorridge
The University Of Manchester
Medical Informatics Group
Date: Sep 12, 2005

matthew.horridge@cs.man.ac.uk
www.cs.man.ac.uk/~horridgm


Method Summary
 boolean contains(URI ontologyName)
          Determines if the repository contains the specified ontology.
 InputStream getInputStream(URI ontologyName)
          Gets an inputstream to read the specified ontology from
 Collection getOntologies()
          Gets the name of the ontologies that this repository contains.
 String getOntologyLocationDescription(URI ontologyName)
          Gets a description of where the specified ontology is located.
 OutputStream getOutputStream(URI ontologyName)
          Gets an output stream which can be used to write changes to the specified ontology.
 String getRepositoryDescription()
          Gets a description of the type of the repository.
 String getRepositoryDescriptor()
          Gets the descriptor for this repository.
 boolean isSystem()
          Determines if the ontology repository is a system repository.
 boolean isWritable(URI ontologyName)
          Determines if the specified ontology is writable.
 void refresh()
          Causes the repository to contain the latest information.
 

Method Detail

contains

public boolean contains(URI ontologyName)
Determines if the repository contains the specified ontology.

Parameters:
ontologyName - The name of the ontology.

refresh

public void refresh()
Causes the repository to contain the latest information.


getOntologies

public Collection getOntologies()
Gets the name of the ontologies that this repository contains.

Returns:
A Collection containing URIs.

getInputStream

public InputStream getInputStream(URI ontologyName)
                           throws IOException
Gets an inputstream to read the specified ontology from

Parameters:
ontologyName - The name of the ontology.
Returns:
an InputStream to read the ontology from, or null if the repository does not contain the ontology or the ontology cannot be retrieved.
Throws:
IOException

isWritable

public boolean isWritable(URI ontologyName)
Determines if the specified ontology is writable.

Parameters:
ontologyName -
Returns:
true if the ontology is writable, or false if the ontology is not writable.

getOutputStream

public OutputStream getOutputStream(URI ontologyName)
                             throws IOException
Gets an output stream which can be used to write changes to the specified ontology.

Parameters:
ontologyName - The ontology to be written
Returns:
an OutputStream that can be used to write changes to the ontology, or null if the ontology is not writable.
Throws:
IOException

isSystem

public boolean isSystem()
Determines if the ontology repository is a system repository.


getRepositoryDescription

public String getRepositoryDescription()
Gets a description of the type of the repository. For example, "Local folder".


getOntologyLocationDescription

public String getOntologyLocationDescription(URI ontologyName)
Gets a description of where the specified ontology is located.

Parameters:
ontologyName - The name of the ontology.
Returns:
A String description of the location of the ontology, for example, "file:/Users/Blah/Blah/Blah". This return value will be an empty String if the repository does not contain the specified ontology.

getRepositoryDescriptor

public String getRepositoryDescriptor()
Gets the descriptor for this repository. This is used to serialise the repository in a list of the available repositories.