1 28 package net.sf.jguard.core.authorization.policy; 29 30 import java.lang.reflect.Array ; 31 import java.net.URL ; 32 import java.security.CodeSource ; 33 import java.security.Principal ; 34 import java.security.ProtectionDomain ; 35 import java.security.cert.Certificate ; 36 import java.util.Collection ; 37 38 44 public class ProtectionDomainUtils { 45 46 51 public static ProtectionDomain getEmptyProtectionDomain(Principal principal) { 52 URL url = null; 53 Certificate [] certs = null; 54 CodeSource cs = new CodeSource (url,certs); 55 Principal [] array = (Principal [])Array.newInstance(principal.getClass(),1); 56 Array.set(array,0,principal); 57 ProtectionDomain pd = new ProtectionDomain (cs,null,Thread.currentThread().getContextClassLoader(),array); 58 return pd; 59 } 60 61 66 public static ProtectionDomain getEmptyProtectionDomain(Collection principals) { 67 Principal [] ppals = (Principal [])principals.toArray(new Principal [principals.size()]); 68 URL url = null; 69 Certificate [] certs = null; 70 CodeSource cs = new CodeSource (url,certs); 71 ProtectionDomain pd = new ProtectionDomain (cs,null,Thread.currentThread().getContextClassLoader(),ppals); 72 return pd; 73 } 74 75 } 76 | Popular Tags |