[teiid-commits] teiid SVN: r2533 - in branches/7.1.x/engine/src: test/java/org/teiid/dqp/internal/process and 1 other directory.

teiid-commits at lists.jboss.org teiid-commits at lists.jboss.org
Fri Sep 3 23:29:29 EDT 2010


Author: rareddy
Date: 2010-09-03 23:29:29 -0400 (Fri, 03 Sep 2010)
New Revision: 2533

Modified:
   branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java
   branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPWorkContext.java
Log:
TEIID-1247: The policies for the logged in user were cached in the DQP Context. If session was reset the policies were not reset. Fixed the issue.

Modified: branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java
===================================================================
--- branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java	2010-09-03 22:22:18 UTC (rev 2532)
+++ branches/7.1.x/engine/src/main/java/org/teiid/dqp/internal/process/DQPWorkContext.java	2010-09-04 03:29:29 UTC (rev 2533)
@@ -82,6 +82,7 @@
     
     public void setSession(SessionMetadata session) {
 		this.session = session;
+		this.policies = null;
 	}
     
     public void setSecurityHelper(SecurityHelper securityHelper) {

Modified: branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPWorkContext.java
===================================================================
--- branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPWorkContext.java	2010-09-03 22:22:18 UTC (rev 2532)
+++ branches/7.1.x/engine/src/test/java/org/teiid/dqp/internal/process/TestDQPWorkContext.java	2010-09-04 03:29:29 UTC (rev 2533)
@@ -22,6 +22,11 @@
 
 package org.teiid.dqp.internal.process;
 
+import java.util.Map;
+
+import org.mockito.Mockito;
+import org.teiid.adminapi.DataPolicy;
+import org.teiid.adminapi.impl.SessionMetadata;
 import org.teiid.core.util.UnitTestUtil;
 
 import junit.framework.TestCase;
@@ -58,4 +63,16 @@
 		assertEquals("querybuilder", copy.getAppName()); //$NON-NLS-1$
 	}
 
+	
+	public void testClearPolicies() {
+		DQPWorkContext message = new DQPWorkContext();
+		message.setSession(Mockito.mock(SessionMetadata.class));
+		Map<String, DataPolicy> map = message.getAllowedDataPolicies();
+		map.put("role", Mockito.mock(DataPolicy.class)); //$NON-NLS-1$
+		assertFalse(map.isEmpty());
+		
+		message.setSession(Mockito.mock(SessionMetadata.class));
+		map = message.getAllowedDataPolicies();
+		assertTrue(map.isEmpty());
+	}
 }



More information about the teiid-commits mailing list