package com.ibm.emb.meb.test.ejb;

import javax.ejb.CreateException;
import javax.ejb.EJBObject;
import javax.ejb.FinderException;
import javax.ejb.RemoveException;
import javax.emb.MediaException;
import javax.emb.MediaFormat;
import javax.naming.NamingException;

import com.ibm.emb.meb.wrapper.MetaDataEntityWrapper;

/**
 * Remote interface for Enterprise Bean: TestDriver
 */
public interface MetaDataEntityLocalTestDriver extends EJBObject, MetaDataEntityWrapper {

    public static int NULLPOINTER = 1;

    public static int VERSIONCHAININTEGRITY = 2;

    public static int FINDER = 3;

    public static int METADATAVALIDATION = 4;

    public static int METADATASYNTAX = 5;

    public static int MALFORMEDQUERY = 6;

    public static int UNSUPPORTEDQUERYLANG = 7;

    public static int ILLEGALOPTION = 8;

    public int addChildExceptions(String pk, String childpk) throws NamingException, FinderException, MediaException,
            java.rmi.RemoteException;

    public int addMediaExceptions(String pk, String mebpk) throws NamingException, FinderException, MediaException,
            java.rmi.RemoteException;

    public int retrieveSupportedOptionsExceptions(String queryLanguage) throws NamingException, MediaException,
            java.rmi.RemoteException;

    public int getMediaByFormatExceptions(String pk, MediaFormat format, boolean searchChildren)
            throws NamingException, FinderException, MediaException, java.rmi.RemoteException;

    public int getMediaByMimeTypeExceptions(String pk, String mimeType, boolean searchChildren) throws NamingException,
            FinderException, MediaException, java.rmi.RemoteException;

    public int removeChildExceptions(String pk, String childpk) throws FinderException, NamingException,
            MediaException, java.rmi.RemoteException;

    public int removeMediaExceptions(String pk, String mebpk) throws NamingException, FinderException, MediaException,
            java.rmi.RemoteException;

    public int setNameExceptions(String pk, String name) throws FinderException, NamingException, MediaException,
            java.rmi.RemoteException;

    public int setXMLExceptions(String pk, String xml, boolean validate) throws MediaException, FinderException,
            NamingException, java.rmi.RemoteException;

    public int findByPKExceptions(String pk) throws NamingException, java.rmi.RemoteException;

    public int queryExceptions(String query, String queryLanguage, java.util.Map options) throws MediaException,
            NamingException, java.rmi.RemoteException;

    public String createMediaSetName(String name) throws NamingException, CreateException, MediaException,
            java.rmi.RemoteException;

    public void bindMediaFormat(String fileExt, MediaFormat format) throws MediaException, java.rmi.RemoteException;

    public int setPreviousVersionExceptions(String pk, String prevpk) throws MediaException, FinderException,
            NamingException, java.rmi.RemoteException;

    public void removeMEBByPK(String pk) throws NamingException, FinderException, RemoveException,
            java.rmi.RemoteException;

    public void removeMDEBByPK(String pk) throws NamingException, FinderException, RemoveException,
            java.rmi.RemoteException;

    public int getXMLExceptions(String pk) throws NamingException, FinderException, MediaException,
            java.rmi.RemoteException;
}