Constructor.
Parameters: key - to identify if this object made by a given CasAuthenticationProvider Parameters: principal - typically the UserDetails object (cannot be null) Parameters: credentials - the service/proxy ticket ID from CAS (cannot benull) Parameters: authorities - the authorities granted to the user (from CasAuthoritiesPopulator) (cannot be null) Parameters: userDetails - the user details (from CasAuthoritiesPopulator) (cannot be null) Parameters: proxyList - the list of proxies from CAS (cannot benull) Parameters: proxyGrantingTicketIou - the PGT-IOU ID from CAS (cannot benull, but may be an empty String if noPGT-IOU ID was provided) throws: IllegalArgumentException - if a null was passed