stsci.server
Class SourceFileArchive

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--java.rmi.server.UnicastRemoteObject
                    |
                    +--stsci.server.FileArchive
                          |
                          +--stsci.server.SourceFileArchive
All Implemented Interfaces:
Archive, java.rmi.Remote, java.io.Serializable, SourceArchive

public class SourceFileArchive
extends FileArchive
implements SourceArchive

Author:
 
See Also:
Serialized Form

Fields inherited from class stsci.server.FileArchive
cmd, factory, factoryName, name
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Constructor Summary
SourceFileArchive(java.lang.String facName, java.lang.String cmd, java.lang.String name)
          Pass the factory class name the command for the factory and the name for this server to the constructor - these will have to be passed on the command line tot he main loop.
 
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 class stsci.server.FileArchive
main, name, register
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
, clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface stsci.arci.Archive
name
 

Constructor Detail

SourceFileArchive

public SourceFileArchive(java.lang.String facName,
                         java.lang.String cmd,
                         java.lang.String name)
                  throws java.lang.Exception
Pass the factory class name the command for the factory and the name for this server to the constructor - these will have to be passed on the command line tot he main loop. * @param facName
Parameters:
cmd -  
name -  
Throws:
java.lang.Exception -  
Method Detail

lookup

public ArchiveObject lookup(java.lang.String id)
                     throws ArchiveException,
                            java.rmi.RemoteException
Description copied from interface: SourceArchive
We should support ID lookup for a given archive ..
Specified by:
lookup in interface SourceArchive
Parameters:
id -  
Returns:
ArchiveObject
Throws:
ArchiveException,RemoteException -  

scan

public RemoteIter scan(java.lang.String classname,
                       java.lang.String predicate)
                throws ArchiveException,
                       java.rmi.RemoteException
Description copied from interface: SourceArchive
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.
Specified by:
scan in interface SourceArchive
Parameters:
classname -  
predicate -  
Returns:
RemoteIter
Throws:
ArchiveException,RemoteException -  

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius)
                throws ArchiveException,
                       java.rmi.RemoteException
Description copied from interface: SourceArchive
The most simple interface is an area search specified by alpha,delta and width of a box.
Specified by:
area in interface SourceArchive
Parameters:
alpha -  
delta -  
radius -  
Returns:
RemoteIter
Throws:
ArchiveException,RemoteException -  

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String predicate)
                throws ArchiveException,
                       java.rmi.RemoteException
Description copied from interface: SourceArchive
Must also support this plus some predicate to cut down on the number entries returned
Specified by:
area in interface SourceArchive
Parameters:
alpha -  
delta -  
radius -  
predicate -  
Returns:
RemoteIter
Throws:
ArchiveException,RemoteException -  

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String predicate,
                       java.lang.String[] htmsegments)
                throws ArchiveException,
                       java.rmi.RemoteException
Description copied from interface: SourceArchive
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.
Specified by:
area in interface SourceArchive
Parameters:
alpha -  
delta -  
radius -  
predicate -  
htmsegments -  
Returns:
RemoteIter
Throws:
ArchiveException,RemoteException -  

area

public RemoteIter area(double alpha,
                       double delta,
                       double radius,
                       java.lang.String[] htmsegments)
                throws ArchiveException,
                       java.rmi.RemoteException
Description copied from interface: SourceArchive
Specify HTM segments but not the predicate
Specified by:
area in interface SourceArchive
Parameters:
alpha -  
delta -  
radius -  
htmsegments -  
Returns:
RemoteIter
Throws:
ArchiveException,RemoteException -