Search in sources :

Example 11 with PermissionInfo

use of org.osgi.service.permissionadmin.PermissionInfo in project aries by apache.

the class PermissionAdminTest method testSetDefaultPermissions.

@Test
public void testSetDefaultPermissions() throws IOException {
    PermissionInfo info1 = new PermissionInfo("Admin", "test", "get");
    PermissionInfo info2 = new PermissionInfo("Admin", "test2", "get");
    PermissionInfo[] permInfos = new PermissionInfo[] { info1, info2 };
    String[] encodedPermissions = new String[2];
    int i = 0;
    for (PermissionInfo info : permInfos) {
        encodedPermissions[i++] = info.getEncoded();
    }
    mbean.setDefaultPermissions(encodedPermissions);
    Mockito.verify(permAdmin).setDefaultPermissions(permInfos);
}
Also used : PermissionInfo(org.osgi.service.permissionadmin.PermissionInfo) Test(org.junit.Test)

Example 12 with PermissionInfo

use of org.osgi.service.permissionadmin.PermissionInfo in project aries by apache.

the class PermissionAdminTest method testListDefaultPermissions.

@Test
public void testListDefaultPermissions() throws IOException {
    PermissionInfo info = new PermissionInfo("Admin", "test", "get");
    PermissionInfo[] permInfos = new PermissionInfo[] { info, info };
    Mockito.when(permAdmin.getDefaultPermissions()).thenReturn(permInfos);
    String[] permissions = mbean.listDefaultPermissions();
    Assert.assertNotNull(permissions);
    Assert.assertEquals(2, permissions.length);
    Assert.assertArrayEquals("Checks encoded default permissions", new String[] { info.getEncoded(), info.getEncoded() }, permissions);
    Mockito.reset(permAdmin);
    Mockito.when(permAdmin.getDefaultPermissions()).thenReturn(null);
    String[] permissions2 = mbean.listDefaultPermissions();
    Assert.assertNull(permissions2);
}
Also used : PermissionInfo(org.osgi.service.permissionadmin.PermissionInfo) Test(org.junit.Test)

Example 13 with PermissionInfo

use of org.osgi.service.permissionadmin.PermissionInfo in project bnd by bndtools.

the class SimplePermissionPolicy method setPermissions.

/**
	 * Sets the permissions of a bundle from a resource, if exists.
	 */
public void setPermissions(Bundle bundle) {
    PermissionAdmin permissionAdmin = getPermissionAdmin();
    if (permissionAdmin == null) /* no permission admin service */
    {
        return;
    }
    PermissionInfo[] info = getPermissions(bundle);
    if (info == null) {
        launcher.trace("Using default permissions for %s", bundle.getLocation());
        info = defaultPermissions;
    } else
        launcher.trace("For permissions inside bundle %s", bundle.getLocation());
    if (info != null && info.length > 0) {
        bundles.add(bundle);
        permissionAdmin.setPermissions(bundle.getLocation(), info);
    } else
        launcher.trace("No permissions for %s", bundle.getLocation());
}
Also used : PermissionInfo(org.osgi.service.permissionadmin.PermissionInfo) PermissionAdmin(org.osgi.service.permissionadmin.PermissionAdmin)

Example 14 with PermissionInfo

use of org.osgi.service.permissionadmin.PermissionInfo in project bnd by bndtools.

the class SimplePermissionPolicy method getPermissions.

/**
	 * Get the resource and parse it into PermissionInfo objects.
	 */
public PermissionInfo[] getPermissions(Bundle bundle) {
    URL url = bundle.getEntry("/OSGI-INF/permissions.perm");
    if (url == null)
        url = bundle.getEntry("/OSGI-INF/permissions.perm".toUpperCase());
    PermissionInfo[] info = null;
    if (url != null)
        try {
            InputStream in = url.openStream();
            info = parse(in);
        } catch (IOException e) {
            System.err.println("Unable to read permission info for bundle  " + bundle.getLocation() + " " + e);
        }
    return info;
}
Also used : PermissionInfo(org.osgi.service.permissionadmin.PermissionInfo) InputStream(java.io.InputStream) IOException(java.io.IOException) URL(java.net.URL)

Aggregations

PermissionInfo (org.osgi.service.permissionadmin.PermissionInfo)14 Test (org.junit.Test)5 IOException (java.io.IOException)2 ArrayList (java.util.ArrayList)2 BlankNodeOrIRI (org.apache.clerezza.commons.rdf.BlankNodeOrIRI)2 Triple (org.apache.clerezza.commons.rdf.Triple)2 PermissionAdmin (org.osgi.service.permissionadmin.PermissionAdmin)2 BufferedReader (java.io.BufferedReader)1 InputStream (java.io.InputStream)1 URL (java.net.URL)1 AbstractIntegrationTest (org.apache.aries.jmx.AbstractIntegrationTest)1 IRI (org.apache.clerezza.commons.rdf.IRI)1 ImmutableGraph (org.apache.clerezza.commons.rdf.ImmutableGraph)1 Literal (org.apache.clerezza.commons.rdf.Literal)1 SimpleGraph (org.apache.clerezza.commons.rdf.impl.utils.simple.SimpleGraph)1 PermissionDefinitions (org.apache.stanbol.commons.security.PermissionDefinitions)1 Bundle (org.osgi.framework.Bundle)1 PermissionAdminMBean (org.osgi.jmx.service.permissionadmin.PermissionAdminMBean)1