1    package com.instantbank.component.job.ejb;
2    
3    import javax.ejb.EJBObject;
4    import java.rmi.RemoteException;
5    import java.io.*;
6    import java.util.Hashtable;
7    import java.util.Collection;
8    
9    import com.instantbank.component.job.model.JobModel;
10   import com.instantbank.common.utilcomponents.DAOException;
11   
12   /**
13    *  Business interface of job EJB: models a job
14    *  (Entity BMP EJB, master-details)
15    *
16    * @author Instant-bank (Consuelo Franky)
17    * @created October 2002
18    */
19   public interface Job extends EJBObject {
20   
21     /**
22      *  Gets state value of ejb instance
23      *
24      * @return value of jobModel attribute
25      * @exception RemoteException
26      */
27     public JobModel getState() throws RemoteException;
28   
29   
30     /**
31      *  Sets value to the state of ejb instance
32      *
33      * @param jobModel new value to assign to jobModel attribute
34      * @exception RemoteException
35      */
36   
37     public void setState(JobModel jobModel) throws RemoteException;
38   
39   
40     /**
41      *  Sets value to the templateCode of ejb instance
42      *  (updates state of ejb instance: jobModel.templateCode)
43      *
44      * @param templateCode new value to assign to templateCode
45      * @throws RemoteException Description of the Exception
46      */
47     public void setTemplate(long templateCode) throws RemoteException;
48   
49   
50     /**
51      *  Sets value to the description of ejb instance
52      *  (updates state of ejb instance: jobModel.description)
53      *
54      * @param description new value to assign to description
55      * @throws RemoteException Description of the Exception
56      */
57     public void setDescription(String description) throws RemoteException;
58   
59   
60     /**
61      *  Sets value to the jobSELECT of ejb instance
62      *  (updates state of ejb instance: jobModel.jobSELECT)
63      *
64      * @param jobSELECT new value to assign to jobSELECT
65      * @throws RemoteException Description of the Exception
66      */
67     public void setJobSELECT(Collection jobSELECT) throws RemoteException;
68   
69   
70     /**
71      *  Sets value to the jobWHERE of ejb instance
72      *  (updates state of ejb instance: jobModel.jobWHERE)
73      *
74      * @param jobWHERE new value to assign to jobWHERE
75      * @throws RemoteException Description of the Exception
76      */
77     public void setJobWHERE(Collection jobWHERE) throws RemoteException;
78   
79   
80     /**
81      *  Sets value to the jobORDER of ejb instance
82      *  (updates state of ejb instance: jobModel.jobORDER)
83      *
84      * @param jobORDER new value to assign to jobORDER
85      * @throws RemoteException Description of the Exception
86      */
87     public void setJobORDER(Collection jobORDER) throws RemoteException;
88   
89   
90     /**
91      *  Generate sqlText associated to the job
92      *  (updates state of ejb instance: jobModel.sqlText)
93      *
94      * @param systemFields Hashtable of system Fields for current company
95      *                        key: fieldId (long), value: Field object
96      * @param systemAlias Hashtable of system Alias
97      *                        key: String[2] = [tableAlias, rootType],
98      *                        value: Alias object
99      * @param rootType root type for joins
100     * @return sql text generated
101     * @exception RemoteException
102     */
103    public String generateSQLtext(Hashtable systemFields,
104                                  Hashtable systemAlias, String rootType)
105       throws RemoteException;
106  }
107