cpiArray[0] = new ConditionalPermissionInfoImpl(new ConditionInfo[0], (PermissionInfo[]) piList.toArray(new PermissionInfo[0]));
cpiArray[0] = new ConditionalPermissionInfoImpl(null, new ConditionInfo[0], (PermissionInfo[]) piList.toArray(new PermissionInfo[0]));
	protected BundleProtectionDomain createProtectionDomain(AbstractBundle bundle) {		BundlePermissionCollection implied = getImpliedPermissions(bundle);		BundleCombinedPermissions combined = new BundleCombinedPermissions(implied);		BundlePermissionCollection assigned = getAssignedPermissions(bundle);		combined.setAssignedPermissions(assigned, assigned == defaultAssignedPermissions);		combined.setConditionalPermissions(new ConditionalPermissions(bundle, framework.condPermAdmin));		/* now process the permissions.perm file, if it exists, and build the		 * restrictedPermissions using it. */		URL u = bundle.getEntry("OSGI-INF/permissions.perm"); //$NON-NLS-1$		if (u != null) {			try {				DataInputStream dis = new DataInputStream(u.openStream());				String line;				Vector piList = new Vector();				while ((line = dis.readLine()) != null) {					line = line.trim();					if (line.startsWith("#") || line.startsWith("//") || line.length() == 0)  //$NON-NLS-1$//$NON-NLS-2$						continue;					try {						PermissionInfo pi = new PermissionInfo(line);						piList.add(pi);					} catch (Exception e) {						// Right now we just eat any exception that happens when						// parsing the PermissionInfo						framework.publishFrameworkEvent(FrameworkEvent.ERROR, bundle, e);					}				}				ConditionalPermissionInfoImpl cpiArray[] = new ConditionalPermissionInfoImpl[1];				cpiArray[0] = new ConditionalPermissionInfoImpl(new ConditionInfo[0], (PermissionInfo[]) piList.toArray(new PermissionInfo[0]));				ConditionalPermissionSet cps = new ConditionalPermissionSet(cpiArray, new Condition[0]);				combined.setRestrictedPermissions(cps);			} catch (IOException e) {				// TODO What do we do here? The fact that we got the URL indicates that				// the file exists, but now we can't read it for some reason...				framework.publishFrameworkEvent(FrameworkEvent.ERROR, bundle, e);			}		}		return new BundleProtectionDomainImpl(bundle, combined);	}