arlut.csd.ganymede
Interface SchemaEdit

All Superinterfaces:
java.rmi.Remote
All Known Implementing Classes:
DBSchemaEdit

public interface SchemaEdit
extends java.rmi.Remote

Primary remote interface for Ganymede schema editing. The Ganymede admin console calls the editSchema() method on a server-side GanymedeAdmin object to get access to the DBObjectBase objects which hold the type definitions for the objects held in the Ganymede server. The DBObjectBase objects in turn provide access to the definitions for the fields held in those object types.


Method Summary
 void commit()
          Commit this schema edit, instantiate the modified schema
 Base createNewBase(Category category, boolean embedded, boolean lowRange)
          This method creates a new DBObjectBase object and returns a remote handle to it so that the admin client can set fields on the base, set attributes, and generally make a nuisance of itself.
 NameSpace createNewNameSpace(java.lang.String name, boolean caseInsensitive)
          This method creates a new DBNameSpace object and returns a remote handle to it so that the admin client can set attributes on the DBNameSpace, and generally make a nuisance of itself.
 ReturnVal deleteBase(java.lang.String baseName)
          This method deletes a DBObjectBase, removing it from the Schema Editor's working set of bases.
 ReturnVal deleteNameSpace(java.lang.String name)
          This method deletes a DBNameSpace object, returning true if the deletion could be carried out, false otherwise.
 Base getBase(short id)
          Returns a Base reference to match the id, or null if no match.
 Base getBase(java.lang.String baseName)
          Returns a Base reference to match the baseName, or null if no match.
 Base[] getBases()
          Returns a list of bases from the current (non-committed) state of the system.
 Base[] getBases(boolean embedded)
          Returns a list of bases from the current (non-committed) state of the system.
 NameSpace getNameSpace(java.lang.String spaceName)
          This method returns a NameSpace by matching name, or null if no match is found.
 NameSpace[] getNameSpaces()
          This method returns an array of defined NameSpace objects.
 Category getRootCategory()
          Returns the root category node from the server
 void release()
          Abort this schema edit, return the schema to its prior state.
 

Method Detail

getRootCategory

public Category getRootCategory()
                         throws java.rmi.RemoteException

Returns the root category node from the server


getBases

public Base[] getBases(boolean embedded)
                throws java.rmi.RemoteException

Returns a list of bases from the current (non-committed) state of the system.

Parameters:
embedded - If true, getBases() will only show bases that are intended for embedding in other objects. If false, getBases() will only show bases that are not to be embedded.

getBases

public Base[] getBases()
                throws java.rmi.RemoteException

Returns a list of bases from the current (non-committed) state of the system.


getBase

public Base getBase(short id)
             throws java.rmi.RemoteException

Returns a Base reference to match the id, or null if no match.


getBase

public Base getBase(java.lang.String baseName)
             throws java.rmi.RemoteException

Returns a Base reference to match the baseName, or null if no match.


createNewBase

public Base createNewBase(Category category,
                          boolean embedded,
                          boolean lowRange)
                   throws java.rmi.RemoteException

This method creates a new DBObjectBase object and returns a remote handle to it so that the admin client can set fields on the base, set attributes, and generally make a nuisance of itself.


deleteBase

public ReturnVal deleteBase(java.lang.String baseName)
                     throws java.rmi.RemoteException

This method deletes a DBObjectBase, removing it from the Schema Editor's working set of bases. The removal won't take place for real unless the SchemaEdit is committed.


getNameSpaces

public NameSpace[] getNameSpaces()
                          throws java.rmi.RemoteException

This method returns an array of defined NameSpace objects.


getNameSpace

public NameSpace getNameSpace(java.lang.String spaceName)
                       throws java.rmi.RemoteException

This method returns a NameSpace by matching name, or null if no match is found.


createNewNameSpace

public NameSpace createNewNameSpace(java.lang.String name,
                                    boolean caseInsensitive)
                             throws java.rmi.RemoteException

This method creates a new DBNameSpace object and returns a remote handle to it so that the admin client can set attributes on the DBNameSpace, and generally make a nuisance of itself.


deleteNameSpace

public ReturnVal deleteNameSpace(java.lang.String name)
                          throws java.rmi.RemoteException

This method deletes a DBNameSpace object, returning true if the deletion could be carried out, false otherwise.


commit

public void commit()
            throws java.rmi.RemoteException

Commit this schema edit, instantiate the modified schema

It is an error to attempt any schema editing operations after this method has been called.


release

public void release()
             throws java.rmi.RemoteException

Abort this schema edit, return the schema to its prior state.

It is an error to attempt any schema editing operations after this method has been called.