Class Mapping
- java.lang.Object
-
- org.apache.sling.serviceusermapping.Mapping
-
- All Implemented Interfaces:
Comparable<Mapping>
public class Mapping extends Object implements Comparable<Mapping>
TheMapping
class defines the mapping of a service's name and optional service information to a user name and optionally to a set of principal names.
-
-
Field Summary
Fields Modifier and Type Field Description static String
SERVICENAME
The name of the osgi property holding the service name.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(Mapping o)
static Set<String>
extractPrincipalNames(String s)
String
getServiceName()
String
getSubServiceName()
String
map(String serviceName, String subServiceName)
Returns the user name if theserviceName
and theserviceInfo
match and a single user name is configured (in contrast to a set of principal names).Iterable<String>
mapPrincipals(String serviceName, String subServiceName)
Returns the principal names if theserviceName
and theserviceInfo
match and principal names have been configured.String
toString()
-
-
-
Field Detail
-
SERVICENAME
public static String SERVICENAME
The name of the osgi property holding the service name.
-
-
Constructor Detail
-
Mapping
public Mapping(String spec)
Creates a mapping entry for the entry specification of the form:spec = serviceName [ ":" subServiceName ] "=" userName | "[" principalNames "]" principalNames = principalName ["," principalNames]
- Parameters:
spec
- The mapping specification.- Throws:
NullPointerException
- ifspec
isnull
.IllegalArgumentException
- ifspec
does not match the expected pattern.
-
-
Method Detail
-
map
public String map(String serviceName, String subServiceName)
Returns the user name if theserviceName
and theserviceInfo
match and a single user name is configured (in contrast to a set of principal names). Otherwisenull
is returned.- Parameters:
serviceName
- The name of the service to match. If this isnull
this mapping will not match.subServiceName
- The Subservice Name to match. This may benull
.- Returns:
- The user name if this mapping matches and the configuration doesn't specify a set of principal names;
null
otherwise.
-
mapPrincipals
public Iterable<String> mapPrincipals(String serviceName, String subServiceName)
Returns the principal names if theserviceName
and theserviceInfo
match and principal names have been configured. Otherwisenull
is returned. If no principal names are configuredmap(String, String)
needs to be used instead.- Parameters:
serviceName
- The name of the service to match. If this isnull
this mapping will not match.subServiceName
- The Subservice Name to match. This may benull
.- Returns:
- An iterable of principals names this mapping matches and the configuration
does specify a set of principal names (intstead of a single user name);
null
otherwise.
-
getServiceName
public String getServiceName()
-
getSubServiceName
public String getSubServiceName()
-
compareTo
public int compareTo(Mapping o)
- Specified by:
compareTo
in interfaceComparable<Mapping>
-
-