You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by cl...@apache.org on 2015/01/20 20:57:28 UTC

jena git commit: Added the StaticSecurityEvaluator (for real this time)

Repository: jena
Updated Branches:
  refs/heads/master 8b4624a09 -> cd62e6d29


Added the StaticSecurityEvaluator (for real this time)


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/cd62e6d2
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/cd62e6d2
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/cd62e6d2

Branch: refs/heads/master
Commit: cd62e6d29276685b7df7220e69647c6b48bf0830
Parents: 8b4624a
Author: Claude Warren <cl...@apache.org>
Authored: Tue Jan 20 19:56:37 2015 +0000
Committer: Claude Warren <cl...@apache.org>
Committed: Tue Jan 20 19:56:37 2015 +0000

----------------------------------------------------------------------
 .../jena/security/SecuredAssemblerTest.java     | 104 +++++++++----------
 .../jena/security/StaticSecurityEvaluator.java  |  61 +++++++++++
 2 files changed, 112 insertions(+), 53 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/cd62e6d2/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
----------------------------------------------------------------------
diff --git a/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java b/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
index cf7ddfa..cbc737a 100644
--- a/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
+++ b/jena-security/src/test/java/org/apache/jena/security/SecuredAssemblerTest.java
@@ -32,57 +32,55 @@ import org.junit.Test;
 
 public class SecuredAssemblerTest
 {
-    // 2015-01-20 : Does not compile (missing StaticSecurityEvaluator)
-    
-//	private Assembler assembler;
-//	private Model model;
-//	
-//	public SecuredAssemblerTest() 
-//	{
-//		assembler = Assembler.general;
-//	}
-//	
-//	@Before
-//	public void setUp() throws Exception {
-//		model = ModelFactory.createDefaultModel();
-//		URL url = SecuredAssemblerTest.class.getClassLoader().getResource( SecuredAssemblerTest.class.getName().replace(".", "/")+".ttl");
-//		model.read( url.toURI().toString(), "TURTLE" );
-//		//model.write( System.out, "TURTLE" );
-//	}
-//	
-//	@Test
-//	public void testCreation() throws Exception {
-//		
-//		Resource r = model.createResource( "http://apache.org/jena/security/test#secModel");
-//		Object o = assembler.open( r );
-//		Assert.assertTrue( o instanceof Model);
-//		Assert.assertTrue( o instanceof SecuredModel );
-//	}
-//
-//	@Test
-//	public void testCreationWithArgs() throws Exception {
-//		
-//		Resource r = model.createResource( "http://apache.org/jena/security/test#secModel2");
-//		Object o = assembler.open( r );
-//		Assert.assertTrue( o instanceof Model);
-//		Assert.assertTrue( o instanceof SecuredModel );
-//	}
-//	
-//	@Test
-//	public void testSecurityEvaluatorWithStringArgs() throws Exception {
-//		
-//		Resource r = model.createResource( "http://apache.org/jena/security/test#secEvaluator");
-//		Object o = assembler.open( r );
-//		Assert.assertTrue( o instanceof SecurityEvaluator );
-//		Assert.assertTrue( o instanceof StaticSecurityEvaluator );
-//	}
-//	
-//	@Test
-//	public void testSecurityEvaluatorWithModelArgs() throws Exception {
-//		
-//		Resource r = model.createResource( "http://apache.org/jena/security/test#secEvaluator2");
-//		Object o = assembler.open( r );
-//		Assert.assertTrue( o instanceof SecurityEvaluator );
-//		Assert.assertTrue( o instanceof ModelBasedSecurityEvaluator );
-//	}
+    private Assembler assembler;
+	private Model model;
+	
+	public SecuredAssemblerTest() 
+	{
+		assembler = Assembler.general;
+	}
+	
+	@Before
+	public void setUp() throws Exception {
+		model = ModelFactory.createDefaultModel();
+		URL url = SecuredAssemblerTest.class.getClassLoader().getResource( SecuredAssemblerTest.class.getName().replace(".", "/")+".ttl");
+		model.read( url.toURI().toString(), "TURTLE" );
+		//model.write( System.out, "TURTLE" );
+	}
+	
+	@Test
+	public void testCreation() throws Exception {
+		
+		Resource r = model.createResource( "http://apache.org/jena/security/test#secModel");
+		Object o = assembler.open( r );
+		Assert.assertTrue( o instanceof Model);
+		Assert.assertTrue( o instanceof SecuredModel );
+	}
+
+	@Test
+	public void testCreationWithArgs() throws Exception {
+		
+		Resource r = model.createResource( "http://apache.org/jena/security/test#secModel2");
+		Object o = assembler.open( r );
+		Assert.assertTrue( o instanceof Model);
+		Assert.assertTrue( o instanceof SecuredModel );
+	}
+	
+	@Test
+	public void testSecurityEvaluatorWithStringArgs() throws Exception {
+		
+		Resource r = model.createResource( "http://apache.org/jena/security/test#secEvaluator");
+		Object o = assembler.open( r );
+		Assert.assertTrue( o instanceof SecurityEvaluator );
+		Assert.assertTrue( o instanceof StaticSecurityEvaluator );
+	}
+	
+	@Test
+	public void testSecurityEvaluatorWithModelArgs() throws Exception {
+		
+		Resource r = model.createResource( "http://apache.org/jena/security/test#secEvaluator2");
+		Object o = assembler.open( r );
+		Assert.assertTrue( o instanceof SecurityEvaluator );
+		Assert.assertTrue( o instanceof ModelBasedSecurityEvaluator );
+	}
 }

http://git-wip-us.apache.org/repos/asf/jena/blob/cd62e6d2/jena-security/src/test/java/org/apache/jena/security/StaticSecurityEvaluator.java
----------------------------------------------------------------------
diff --git a/jena-security/src/test/java/org/apache/jena/security/StaticSecurityEvaluator.java b/jena-security/src/test/java/org/apache/jena/security/StaticSecurityEvaluator.java
new file mode 100644
index 0000000..a8164d8
--- /dev/null
+++ b/jena-security/src/test/java/org/apache/jena/security/StaticSecurityEvaluator.java
@@ -0,0 +1,61 @@
+package org.apache.jena.security;
+
+import java.util.Set;
+
+public class StaticSecurityEvaluator implements SecurityEvaluator {
+
+	private String user;
+	
+	public StaticSecurityEvaluator( String user) {
+		this.user = user;
+	}
+	
+	public void setUser( String user )
+	{
+		this.user = user;
+	}
+
+	@Override
+	public boolean evaluate(Action action, SecNode graphIRI) {
+		return true;
+	}
+
+	@Override
+	public boolean evaluate(Action action, SecNode graphIRI, SecTriple triple) {
+		return triple.getSubject().getValue().equals( "urn:"+getPrincipal() );
+	}
+
+	@Override
+	public boolean evaluate(Set<Action> actions, SecNode graphIRI) {
+		return true;
+	}
+
+	@Override
+	public boolean evaluate(Set<Action> actions, SecNode graphIRI,
+			SecTriple triple) {
+		return triple.getSubject().getValue().equals( "urn:"+getPrincipal() );
+	}
+
+	@Override
+	public boolean evaluateAny(Set<Action> actions, SecNode graphIRI) {
+		return true;
+	}
+
+	@Override
+	public boolean evaluateAny(Set<Action> actions, SecNode graphIRI,
+			SecTriple triple) {
+		return triple.getSubject().getValue().equals( "urn:"+getPrincipal() );
+	}
+
+	@Override
+	public boolean evaluateUpdate(SecNode graphIRI, SecTriple from, SecTriple to) {
+		return from.getSubject().getValue().equals( "urn:"+getPrincipal() ) && 
+				to.getSubject().getValue().equals( "urn:"+getPrincipal() );
+	}
+
+	@Override
+	public Object getPrincipal() {
+		return user;
+	}
+
+}