Java Code Examples for org.apache.commons.httpclient.Cookie#setPath()
The following examples show how to use
org.apache.commons.httpclient.Cookie#setPath() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: RFC2965Spec.java From knopflerfish.org with BSD 3-Clause "New" or "Revised" License | 6 votes |
/** * Parse cookie path attribute. */ public void parse(final Cookie cookie, final String path) throws MalformedCookieException { if (cookie == null) { throw new IllegalArgumentException("Cookie may not be null"); } if (path == null) { throw new MalformedCookieException( "Missing value for path attribute"); } if (path.trim().equals("")) { throw new MalformedCookieException( "Blank value for path attribute"); } cookie.setPath(path); cookie.setPathAttributeSpecified(true); }
Example 2
Source File: CrawlerPack.java From CrawlerPack with Apache License 2.0 | 6 votes |
/** * Return a Cookie array * and auto importing domain and path when domain was empty. * * @param uri required Apache Common VFS supported file systems and response JSON format content. * @return Cookie[] */ Cookie[] getCookies(String uri){ if( null == cookies || 0 == cookies.size()) return null; for(Cookie cookie: cookies){ if("".equals(cookie.getDomain())){ String domain = uri.replaceAll("^.*:\\/\\/([^\\/]+)[\\/]?.*$", "$1"); cookie.setDomain(domain); cookie.setPath("/"); cookie.setExpiryDate(null); cookie.setSecure(false); } } return cookies.toArray(new Cookie[cookies.size()]); }
Example 3
Source File: DavMailCookieSpec.java From davmail with GNU General Public License v2.0 | 5 votes |
@Override public void validate(String host, int port, String path, boolean secure, final Cookie cookie) throws MalformedCookieException { // workaround for space in cookie name String cookieName = cookie.getName(); if (cookieName != null && cookieName.indexOf(' ') >= 0) { cookie.setName(cookieName.replaceAll(" ", "")); } else { cookieName = null; } // workaround for invalid cookie path String cookiePath = cookie.getPath(); if (cookiePath != null && !path.startsWith(cookiePath)) { cookie.setPath(path); } else { cookiePath = null; } // workaround for invalid cookie domain int dotIndex = -1; if (host.endsWith(cookie.getDomain())) { String hostWithoutDomain = host.substring(0, host.length() - cookie.getDomain().length()); dotIndex = hostWithoutDomain.indexOf('.'); } if (".login.microsoftonline.com".equals(cookie.getDomain())) { cookie.setDomain(host); } if (dotIndex != -1) { // discard additional host name part super.validate(host.substring(dotIndex + 1), port, path, secure, cookie); } else { super.validate(host, port, path, secure, cookie); } if (cookieName != null) { cookie.setName(cookieName); } if (cookiePath != null) { cookie.setPath(cookiePath); } }
Example 4
Source File: SsoUtil.java From iaf with Apache License 2.0 | 5 votes |
public static void addSsoCredential(HttpMethod method, HttpState state, String defaultForwardHost) { try { String name=SsoUtil.getSsoTokenName(); String value=SsoUtil.getSsoToken(); if (StringUtils.isEmpty(value)) { if (log.isDebugEnabled()) log.debug("no value for SsoCredential ["+name+"]"); } else { if (log.isDebugEnabled()) log.debug("constructing SsoCredentialCookie ["+name+"]"); Cookie ssoCookie = new Cookie(); ssoCookie.setName(name); ssoCookie.setValue(value); String forwardHost; try { URI uri = method.getURI(); forwardHost = uri.getHost(); if (StringUtils.isEmpty(forwardHost)) { if (log.isDebugEnabled()) log.debug("did not find host from URI ["+uri.getURI()+"], will use default ["+defaultForwardHost+"] for SSO credential cookie"); forwardHost=defaultForwardHost; } } catch (Throwable t) { log.warn("could not extract host from URI", t); forwardHost = defaultForwardHost; } ssoCookie.setDomain(forwardHost); // path must have a value, otherwise cookie is not appended to request ssoCookie.setPath("/"); if (log.isDebugEnabled()) log.debug("set SSOcookie attributes: domain ["+ssoCookie.getDomain()+"] path ["+ssoCookie.getPath()+"]"); state.addCookie(ssoCookie); } } catch (Exception e) { log.warn("could not obtain SsoToken: "+e.getMessage()); } }
Example 5
Source File: CookieSpecBase.java From knopflerfish.org with BSD 3-Clause "New" or "Revised" License | 4 votes |
/** * Parse the cookie attribute and update the corresponsing {@link Cookie} * properties. * * @param attribute {@link HeaderElement} cookie attribute from the * <tt>Set- Cookie</tt> * @param cookie {@link Cookie} to be updated * @throws MalformedCookieException if an exception occurs during parsing */ public void parseAttribute( final NameValuePair attribute, final Cookie cookie) throws MalformedCookieException { if (attribute == null) { throw new IllegalArgumentException("Attribute may not be null."); } if (cookie == null) { throw new IllegalArgumentException("Cookie may not be null."); } final String paramName = attribute.getName().toLowerCase(); String paramValue = attribute.getValue(); if (paramName.equals("path")) { if ((paramValue == null) || (paramValue.trim().equals(""))) { paramValue = "/"; } cookie.setPath(paramValue); cookie.setPathAttributeSpecified(true); } else if (paramName.equals("domain")) { if (paramValue == null) { throw new MalformedCookieException( "Missing value for domain attribute"); } if (paramValue.trim().equals("")) { throw new MalformedCookieException( "Blank value for domain attribute"); } cookie.setDomain(paramValue); cookie.setDomainAttributeSpecified(true); } else if (paramName.equals("max-age")) { if (paramValue == null) { throw new MalformedCookieException( "Missing value for max-age attribute"); } int age; try { age = Integer.parseInt(paramValue); } catch (NumberFormatException e) { throw new MalformedCookieException ("Invalid max-age " + "attribute: " + e.getMessage()); } cookie.setExpiryDate( new Date(System.currentTimeMillis() + age * 1000L)); } else if (paramName.equals("secure")) { cookie.setSecure(true); } else if (paramName.equals("comment")) { cookie.setComment(paramValue); } else if (paramName.equals("expires")) { if (paramValue == null) { throw new MalformedCookieException( "Missing value for expires attribute"); } try { cookie.setExpiryDate(DateUtil.parseDate(paramValue, this.datepatterns)); } catch (DateParseException dpe) { LOG.debug("Error parsing cookie date", dpe); throw new MalformedCookieException( "Unable to parse expiration date parameter: " + paramValue); } } else { if (LOG.isDebugEnabled()) { LOG.debug("Unrecognized cookie attribute: " + attribute.toString()); } } }
Example 6
Source File: RFC2109Spec.java From knopflerfish.org with BSD 3-Clause "New" or "Revised" License | 4 votes |
/** * Parse RFC 2109 specific cookie attribute and update the corresponsing * {@link Cookie} properties. * * @param attribute {@link NameValuePair} cookie attribute from the * <tt>Set- Cookie</tt> * @param cookie {@link Cookie} to be updated * @throws MalformedCookieException if an exception occurs during parsing */ public void parseAttribute( final NameValuePair attribute, final Cookie cookie) throws MalformedCookieException { if (attribute == null) { throw new IllegalArgumentException("Attribute may not be null."); } if (cookie == null) { throw new IllegalArgumentException("Cookie may not be null."); } final String paramName = attribute.getName().toLowerCase(); final String paramValue = attribute.getValue(); if (paramName.equals("path")) { if (paramValue == null) { throw new MalformedCookieException( "Missing value for path attribute"); } if (paramValue.trim().equals("")) { throw new MalformedCookieException( "Blank value for path attribute"); } cookie.setPath(paramValue); cookie.setPathAttributeSpecified(true); } else if (paramName.equals("version")) { if (paramValue == null) { throw new MalformedCookieException( "Missing value for version attribute"); } try { cookie.setVersion(Integer.parseInt(paramValue)); } catch (NumberFormatException e) { throw new MalformedCookieException("Invalid version: " + e.getMessage()); } } else { super.parseAttribute(attribute, cookie); } }