KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > daffodilwoods > daffodildb > server > sql99 > dcl > sqlsessionstatement > setsessionuseridentifierstatement


1 package com.daffodilwoods.daffodildb.server.sql99.dcl.sqlsessionstatement;
2
3 import com.daffodilwoods.daffodildb.server.datadictionarysystem.*;
4 import com.daffodilwoods.daffodildb.server.serversystem.*;
5 import com.daffodilwoods.daffodildb.server.sessionsystem.*;
6 import com.daffodilwoods.daffodildb.server.sql99.ddl.descriptors.*;
7 import com.daffodilwoods.daffodildb.server.sql99.dql.iterator.*;
8 import com.daffodilwoods.daffodildb.server.sql99.expression.expressionprimary.*;
9 import com.daffodilwoods.daffodildb.server.sql99.token.*;
10 import com.daffodilwoods.database.resource.*;
11
12 public class setsessionuseridentifierstatement implements com.daffodilwoods.daffodildb.utils.parser.StatementExecuter, SQLsessionstatement {
13    public valuespecification _valuespecification0;
14    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439221;
15    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439222;
16    public SRESERVEDWORD1206543922 _SRESERVEDWORD12065439223;
17
18    public Object JavaDoc run(Object JavaDoc object) throws com.daffodilwoods.database.resource.DException {
19       ServerSession serverSession = null;
20       try {
21          _StatementExecutionContext sec = (_StatementExecutionContext) object;
22          serverSession = (ServerSession) sec.getServerSession();
23       } catch (ClassCastException JavaDoc ex) {
24          serverSession = (ServerSession) object;
25       }
26       String JavaDoc value = _valuespecification0.toString().trim();
27       String JavaDoc query = "select * from " + SystemTables.users_TableName + " where user_name = '" + value + "'";
28       _Iterator iterator = SqlSchemaConstants.getIterator(serverSession, query, null);
29       if (!iterator.first())
30         throw new DException("DSE1308",new Object JavaDoc[]{value});
31
32       _UserSession userSession = serverSession.getUserSession();
33       if(userSession.getSession().isDataModified() )
34         throw new DException("DSE2055", null);
35       userSession.removeAllTables();
36       userSession.setAuthorizationIdentifier(value);
37       userSession.setPrivilegeCharacteristics(serverSession.getDataDictionary().getPrivilegeCharacteristics(value, _PrivilegeCharacteristics.AUTHORIZATION_USER));
38       return null;
39    }
40
41    public Object JavaDoc clone() throws CloneNotSupportedException JavaDoc {
42       return this;
43    }
44
45    public String JavaDoc toString() {
46       StringBuffer JavaDoc sb = new StringBuffer JavaDoc();
47       sb.append(" ");
48       sb.append(_SRESERVEDWORD12065439223);
49       sb.append(" ");
50       sb.append(_SRESERVEDWORD12065439222);
51       sb.append(" ");
52       sb.append(_SRESERVEDWORD12065439221);
53       sb.append(" ");
54       sb.append(_valuespecification0);
55       return sb.toString();
56    }
57 }
58
Popular Tags