1 9 package org.jboss.portal.test.core.security; 10 11 import java.security.DomainCombiner ; 12 import java.security.Principal ; 13 import java.security.ProtectionDomain ; 14 15 21 public class RoleDomainCombiner implements DomainCombiner 22 { 23 24 private Principal [] principals; 25 26 public RoleDomainCombiner(Principal [] principals) 27 { 28 this.principals = principals; 29 } 30 31 public ProtectionDomain [] combine(ProtectionDomain [] currentDomains, ProtectionDomain [] assignedDomains) 32 { 33 ProtectionDomain source = null; 34 if (currentDomains.length == 0) 35 { 36 throw new Error ("Not possible"); 37 } 38 else if (currentDomains.length == 1) 39 { 40 41 source = currentDomains[0]; 42 } 43 else 44 { 45 source = currentDomains[1]; 46 } 47 ProtectionDomain [] result = new ProtectionDomain [] 48 { 49 new ProtectionDomain (source.getCodeSource(), 50 source.getPermissions(), 51 source.getClassLoader(), 52 principals) 53 }; 54 return result; 55 } 56 } 57 | Popular Tags |