package org.pac4j.http.client.direct; import org.pac4j.core.client.DirectClient; import org.pac4j.core.context.WebContext; import org.pac4j.core.credentials.authenticator.Authenticator; import org.pac4j.core.profile.CommonProfile; import org.pac4j.core.util.CommonHelper; import org.pac4j.core.credentials.TokenCredentials; import org.pac4j.http.credentials.extractor.CookieExtractor; /** * Allows direct authentication based on a cookie. * * @author Misagh Moayyed * @since 1.8.0 */ public class CookieClient extends DirectClient<TokenCredentials, CommonProfile> { private String cookieName; public CookieClient() {} public CookieClient(final String cookieName, final Authenticator cookieAuthenticator) { this.cookieName = cookieName; defaultAuthenticator(cookieAuthenticator); } @Override protected void clientInit(final WebContext context) { CommonHelper.assertNotBlank("cookieName", this.cookieName); defaultCredentialsExtractor(new CookieExtractor(this.cookieName, getName())); } public String getCookieName() { return cookieName; } public void setCookieName(String cookieName) { this.cookieName = cookieName; } }