Overview | Package | Class | Tree | Serialized | Deprecated | Index | Help
| OSGi Service Platform Release 3
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.osgi.service.useradmin
Interface Role

All Known Subinterfaces:
  Group, User

public interface Role

The base interface for `Role` objects managed by the User Admin service.

This interface exposes the characteristics shared by all `Role` classes: a name, a type, and a set of properties.

Properties represent public information about the `Role` object that can be read by anyone. Specific `UserAdminPermission`objects are required to change a `Role` object's properties.

`Role` object properties are `Dictionary` objects. Changes to these objects are propagated to the User Admin service and made persistent.

Every User Admin service contains a set of predefined `Role` objects that are always present and cannot be removed. All predefined `Role` objects are of type `ROLE`. This version of the `org.osgi.service.useradmin` package defines a single predefined role named "user.anyone", which is inherited by any other role. Other predefined roles may be added in the future. Since "user.anyone" is a `Role` object that has properties associated with it that can be read and modified. Access to these properties and their use is application specific and is controlled using `UserAdminPermission` in the same way that properties for other `Role` objects are.

Field Summary
`static int` | `GROUP` The type of a `Group`role.
`static int` | `ROLE` The type of a predefined role.
`static int` | `USER` The type of a `User`role.

Method Summary
`java.lang.String` | `getName()` Returns the name of this role.
`java.util.Dictionary` | `getProperties()` Returns a `Dictionary` of the (public) properties of this `Role` object.
`int` | `getType()` Returns the type of this role.

Field Detail

### ROLE

    public static final int ROLE

  The type of a predefined role.

  The value of `ROLE` is 0.

### USER

    public static final int USER

  The type of a `User`role.

  The value of `USER` is 1.

### GROUP

    public static final int GROUP

  The type of a `Group`role.

  The value of `GROUP` is 2.

Method Detail

### getName

    public java.lang.String getName()

  Returns the name of this role.
  Returns:
    The role's name.

### getType

    public int getType()

  Returns the type of this role.
  Returns:
    The role's type.

### getProperties

    public java.util.Dictionary getProperties()

  Returns a `Dictionary` of the (public) properties of this `Role` object. Any changes to the returned `Dictionary` will change the properties of this `Role` object. This will cause a `UserAdminEvent` object of type `UserAdminEvent.ROLE_CHANGED`to be broadcast to any `UserAdminListener` objects.

  Only objects of type `String` may be used as property keys, and only objects of type `String` or `byte[]` may be used as property values. Any other types will cause an exception of type `IllegalArgumentException` to be raised.

  In order to add, change, or remove a property in the returned `Dictionary`, a `UserAdminPermission`named after the property name (or a prefix of it) with action `changeProperty` is required.

  Returns:
    `Dictionary` containing the properties of this `Role` object.

Overview | Package | Class | Tree | Serialized | Deprecated | Index | Help
| OSGi Service Platform Release 3
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (c) OSGi Alliance (2000, 2003). All Rights Reserved.