/*************************************************** * * cismet GmbH, Saarbruecken, Germany * * ... and it just works. * ****************************************************/ /* * SearchService.java * * Created on 12. November 2003, 18:31 */ package Sirius.server.middleware.interfaces.domainserver; import Sirius.server.middleware.types.*; import Sirius.server.newuser.*; import Sirius.server.search.*; import java.rmi.*; import java.util.*; /** * DOCUMENT ME! * * @author schlob * @version $Revision$, $Date$ */ public interface SearchService extends Remote { //~ Methods ---------------------------------------------------------------- /** * add single query root and leaf returns a query_id. * * @param name DOCUMENT ME! * @param description DOCUMENT ME! * @param statement DOCUMENT ME! * @param resultType DOCUMENT ME! * @param isUpdate DOCUMENT ME! * @param isBatch DOCUMENT ME! * @param isRoot DOCUMENT ME! * @param isUnion DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ int addQuery( String name, String description, String statement, int resultType, char isUpdate, char isBatch, char isRoot, char isUnion) throws RemoteException; /** * DOCUMENT ME! * * @param name DOCUMENT ME! * @param description DOCUMENT ME! * @param statement DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ int addQuery(String name, String description, String statement) throws RemoteException; /** * DOCUMENT ME! * * @param queryId DOCUMENT ME! * @param typeId DOCUMENT ME! * @param paramkey DOCUMENT ME! * @param description DOCUMENT ME! * @param isQueryResult DOCUMENT ME! * @param queryPosition DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ boolean addQueryParameter( int queryId, int typeId, String paramkey, String description, char isQueryResult, int queryPosition) throws RemoteException; /** * position set in order of the addition. * * @param queryId DOCUMENT ME! * @param paramkey DOCUMENT ME! * @param description DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ boolean addQueryParameter(int queryId, String paramkey, String description) throws RemoteException; /** * DOCUMENT ME! * * @param user DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ HashMap getSearchOptions(User user) throws RemoteException; /** * DOCUMENT ME! * * @param user DOCUMENT ME! * @param classIds DOCUMENT ME! * @param query DOCUMENT ME! * * @return DOCUMENT ME! * * @throws RemoteException DOCUMENT ME! */ SearchResult search(User user, int[] classIds, Query query) throws RemoteException; }