You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by pe...@apache.org on 2010/03/30 02:53:30 UTC
svn commit: r928951 - in /incubator/river/jtsk/trunk:
src/org/apache/river/security/policy/util/PolicyEntry.java
test/src/org/apache/river/security/policy/util/PolicyEntryTest.java
Author: peter_firmstone
Date: Tue Mar 30 00:53:29 2010
New Revision: 928951
URL: http://svn.apache.org/viewvc?rev=928951&view=rev
Log:
Slight PolicyEntry refactoring.
Modified:
incubator/river/jtsk/trunk/src/org/apache/river/security/policy/util/PolicyEntry.java
incubator/river/jtsk/trunk/test/src/org/apache/river/security/policy/util/PolicyEntryTest.java
Modified: incubator/river/jtsk/trunk/src/org/apache/river/security/policy/util/PolicyEntry.java
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/src/org/apache/river/security/policy/util/PolicyEntry.java?rev=928951&r1=928950&r2=928951&view=diff
==============================================================================
--- incubator/river/jtsk/trunk/src/org/apache/river/security/policy/util/PolicyEntry.java (original)
+++ incubator/river/jtsk/trunk/src/org/apache/river/security/policy/util/PolicyEntry.java Tue Mar 30 00:53:29 2010
@@ -46,16 +46,20 @@ import java.util.Set;
*
*
*/
-public class PolicyEntry {
+public final class PolicyEntry {
// Store CodeSource
private final CodeSource cs;
// Array of principals
private final List<Principal> principals;
+ private static final List<Principal> noPrincipals =
+ Collections.unmodifiableList(new ArrayList<Principal>(0));
// Permissions collection
private final Collection<Permission> permissions;
+ private static final Collection<Permission> noPermissions =
+ Collections.unmodifiableCollection(new HashSet<Permission>(0));
private transient final int hashcode;
@@ -67,14 +71,13 @@ public class PolicyEntry {
Collection<? extends Permission> permissions) {
this.cs = (cs != null) ? normalizeCodeSource(cs) : null;
if ( prs == null || prs.isEmpty()) {
- this.principals = new ArrayList<Principal>(0);
+ this.principals = noPrincipals;
}else{
this.principals = new ArrayList<Principal>(prs.size());
this.principals.addAll(prs);
}
if (permissions == null || permissions.isEmpty()) {
- Set<Permission> perm = new HashSet<Permission>(0);
- this.permissions = Collections.unmodifiableCollection(perm);
+ this.permissions = noPermissions;
}else{
Set<Permission> perm = new HashSet<Permission>(permissions.size());
perm.addAll(permissions);
@@ -141,7 +144,7 @@ public class PolicyEntry {
* PolicyEntry, may be <code>null</code>.
*/
public Collection<Permission> getPermissions() {
- if (permissions.isEmpty()) return null; // not sure if this is good needs further investigation
+// if (permissions.isEmpty()) return null; // not sure if this is good needs further investigation
return permissions;
}
Modified: incubator/river/jtsk/trunk/test/src/org/apache/river/security/policy/util/PolicyEntryTest.java
URL: http://svn.apache.org/viewvc/incubator/river/jtsk/trunk/test/src/org/apache/river/security/policy/util/PolicyEntryTest.java?rev=928951&r1=928950&r2=928951&view=diff
==============================================================================
--- incubator/river/jtsk/trunk/test/src/org/apache/river/security/policy/util/PolicyEntryTest.java (original)
+++ incubator/river/jtsk/trunk/test/src/org/apache/river/security/policy/util/PolicyEntryTest.java Tue Mar 30 00:53:29 2010
@@ -50,12 +50,12 @@ public class PolicyEntryTest extends Tes
public void testCtor() {
PolicyEntry pe = new PolicyEntry(null, null, null);
assertTrue(pe.isVoid());
- assertNull(pe.getPermissions());
+ assertTrue(pe.getPermissions().isEmpty());
pe = new PolicyEntry(new CodeSource(null, (Certificate[])null),
new ArrayList(), new ArrayList());
assertTrue(pe.isVoid());
- assertNull(pe.getPermissions());
+ assertTrue(pe.getPermissions().isEmpty());
Collection perms = Arrays.asList(new Permission[] {
new SecurityPermission("dsfg"), new AllPermission() });