KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sessionsystem > sessioncondition > InsertedCondition


1 package com.daffodilwoods.daffodildb.server.sessionsystem.sessioncondition;
2
3 import com.daffodilwoods.database.resource.DException;
4 import com.daffodilwoods.database.general.SystemFields;
5 import com.daffodilwoods.daffodildb.utils.field.FieldBase;
6 import com.daffodilwoods.daffodildb.server.sql99.dql.iterator._Iterator;
7 import com.daffodilwoods.daffodildb.server.sessionsystem.SystemFieldsCharacteristics;
8
9 /**
10  *
11  * <p>Description: Condition for newly inserted records </p>
12  * <p>Company: Daffodil Software Ltd.</p>
13  * @version 1.0
14  */

15 public class InsertedCondition implements _SessionCondition {
16
17     Object JavaDoc[] condition;
18    private static int[] ST = {SystemFields.sessionId ,SystemFields.transactionId } ;
19     public InsertedCondition(Object JavaDoc presentConditionValues) {
20         condition = new Object JavaDoc[2];
21         condition[0] = presentConditionValues ; //sessionId
22
condition[1] = (FieldBase)SystemFields.maxIntegerValue;
23     }
24
25 /**
26  * Evaluates the condition given above.
27  * @param values
28  * @return
29  * @throws DException
30  */

31
32     public boolean evaluate(_Iterator nonIndexedIterator ) throws DException {
33         Object JavaDoc[] valuesToCompare = (Object JavaDoc[])nonIndexedIterator.getColumnValues( ST);//new int[]{SystemFields.sessionId ,SystemFields.transactionId } ) ;
34
return (StaticConditionHelper.compare(condition[0],valuesToCompare[0]) == 0)
35             && (StaticConditionHelper.compare(condition[1],valuesToCompare[1]) == 0);
36     }
37
38     /**
39      * refreshes the condition with new sessionId.
40      * @param values
41      * @throws DException
42      */

43
44     public void setParameterValues(Object JavaDoc[] values) throws DException {
45         condition[0] = values[0];
46     }
47
48     public String JavaDoc toString(){
49         return "[ INSERTED_CONDITION => sessionId = "+condition[0]+" and transactionId = maxIntegerValue ]";
50     }
51 }
52
Popular Tags