Package org.apache.sling.jackrabbit.usermanager

# Interface PrincipalNameGenerator

All Known Implementing Classes:
  `PrincipalNameGeneratorImpl`

public interface PrincipalNameGenerator
Service interface which allows for custom principal name generation

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static class`
`PrincipalNameGenerator.NameInfo`

## Method Summary

Modifier and Type
Method
Description
`PrincipalNameGenerator.NameInfo`
`getPrincipalName(Map<String,?> parameters, org.apache.jackrabbit.oak.spi.security.user.AuthorizableType type, PrincipalNameFilter principalNameFilter, PrincipalNameGenerator defaultPrincipalNameGenerator)`
Get the to-be-created principal name candidate from the request.

## Method Details

### getPrincipalName

PrincipalNameGenerator.NameInfo getPrincipalName(Map<String,?> parameters, org.apache.jackrabbit.oak.spi.security.user.AuthorizableType type, PrincipalNameFilter principalNameFilter, PrincipalNameGenerator defaultPrincipalNameGenerator)
Get the to-be-created principal name candidate from the request.

Parameters:
  `parameters` - the current request parameters map
  `type` - the type of principal
  `principalNameFilter` - for filtering what characters are allowed in a name
  `defaultPrincipalNameGenerator` - the default principal name generator
Returns:
  the info about the principal name to be created or null if unable to do so