Class SecureAdminPrincipal.Resolver

  • All Implemented Interfaces:
    CrudResolver
    Enclosing interface:
    SecureAdminPrincipal

    @Service
    @PerLookup
    public static class SecureAdminPrincipal.Resolver
    extends Object
    implements CrudResolver
    Resolves using the type and any name, with no restrictions on the name and with an optional mapping from a cert alias to the name.

    The similar TypeAndNameResolver restricts the name to one that excludes commas, because TypeAndNameResolver uses habitat.getComponent which (ultimately) uses habitat.getInhabitantByContract which splits the name using a comma to get a list of names to try to match against.

    In some cases the name might actually contain a comma, so this resolver supports those cases.

    This resolver also allows the caller to specify an alias instead of the name (the DN) itself, in which case the resolver maps the alias to the corresponding cert's DN and uses that as the name.

    Author:
    Tim Quinn
    • Constructor Detail

      • Resolver

        public Resolver()
    • Method Detail

      • resolve

        public <T extends ConfigBeanProxy> T resolve​(AdminCommandContext context,
                                                     Class<T> type)
        Description copied from interface: CrudResolver
        Retrieves the existing configuration object a command invocation is intented to mutate.
        Specified by:
        resolve in interface CrudResolver
        Parameters:
        context - the command invocation context
        type - the type of the expected instance
        Returns:
        the instance or null if not found