stsci.arci
Interface SourceArchive

All Superinterfaces:
Archive, java.rmi.Remote
All Known Implementing Classes:
HTTPArchive, SourceFileArchive

public interface SourceArchive
extends Archive

The archive must be implemented for the particular archive system. It defines methods for accessing data in the an archive of sources. The complex storage organisation is hidden by the archive interface which is used by the client. This interface is simplified since there is no updates allowed - it is only a viewing interface.


Method Summary
 RemoteIter area(double alpha, double delta, double radius)
          The most simple interface is an area search specified by alpha,delta and width of a box.
 RemoteIter area(double alpha, double delta, double radius, java.lang.String predicate)
          Must also support this plus some predicate to cut down on the number entries returned
 RemoteIter area(double alpha, double delta, double radius, java.lang.String[] htmsegments)
          Specify HTM segments but not the predicate
 RemoteIter area(double alpha, double delta, double radius, java.lang.String predicate, java.lang.String[] htmsegments)
          We can make an area even more efficient by allowing the specification of which HTM seqments we want.
 ArchiveObject lookup(java.lang.String id)
          We should support ID lookup for a given archive ..
 RemoteIter scan(java.lang.String classname, java.lang.String predicate)
          The definiton of a predicate is a little tricky.
 
Methods inherited from interface stsci.arci.Archive
name
 

Method Detail

lookup

public ArchiveObject lookup(java.lang.String id)
                     throws ArchiveException,
                            java.rmi.RemoteException
We should support ID lookup for a given archive ..

scan

public RemoteIter scan(java.lang.String classname,
                       java.lang.String predicate)
                throws ArchiveException,
                       java.rmi.RemoteException
The definiton of a predicate is a little tricky. For most systems simple boolean comparisons are okay but it gets more complex with String regular expression testing .e.g. this is not the same in Oracle and Objectivity.

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius)
                throws ArchiveException,
                       java.rmi.RemoteException
The most simple interface is an area search specified by alpha,delta and width of a box.

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String predicate)
                throws ArchiveException,
                       java.rmi.RemoteException
Must also support this plus some predicate to cut down on the number entries returned

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String predicate,
                       java.lang.String[] htmsegments)
                throws ArchiveException,
                       java.rmi.RemoteException
We can make an area even more efficient by allowing the specification of which HTM seqments we want. The server implementation would need to deal with a deapth mismatch in case there was one.

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String[] htmsegments)
                throws ArchiveException,
                       java.rmi.RemoteException
Specify HTM segments but not the predicate