diff options
Diffstat (limited to 'src/org/apache/http/impl/cookie/CookieSpecBase.java')
-rw-r--r-- | src/org/apache/http/impl/cookie/CookieSpecBase.java | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/src/org/apache/http/impl/cookie/CookieSpecBase.java b/src/org/apache/http/impl/cookie/CookieSpecBase.java deleted file mode 100644 index 8e70bb1..0000000 --- a/src/org/apache/http/impl/cookie/CookieSpecBase.java +++ /dev/null @@ -1,131 +0,0 @@ -/* - * $HeadURL: http://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/impl/cookie/CookieSpecBase.java $ - * $Revision: 653041 $ - * $Date: 2008-05-03 03:39:28 -0700 (Sat, 03 May 2008) $ - * - * ==================================================================== - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * ==================================================================== - * - * This software consists of voluntary contributions made by many - * individuals on behalf of the Apache Software Foundation. For more - * information on the Apache Software Foundation, please see - * <http://www.apache.org/>. - * - */ - -package org.apache.http.impl.cookie; - -import java.util.ArrayList; -import java.util.List; -import java.util.Locale; - -import org.apache.http.HeaderElement; -import org.apache.http.NameValuePair; -import org.apache.http.cookie.Cookie; -import org.apache.http.cookie.CookieAttributeHandler; -import org.apache.http.cookie.CookieOrigin; -import org.apache.http.cookie.MalformedCookieException; - -/** - * Cookie management functions shared by all specification. - * - * @author <a href="mailto:oleg at ural.ru">Oleg Kalnichevski</a> - * - * @since 4.0 - */ -public abstract class CookieSpecBase extends AbstractCookieSpec { - - protected static String getDefaultPath(final CookieOrigin origin) { - String defaultPath = origin.getPath(); - int lastSlashIndex = defaultPath.lastIndexOf('/'); - if (lastSlashIndex >= 0) { - if (lastSlashIndex == 0) { - //Do not remove the very first slash - lastSlashIndex = 1; - } - defaultPath = defaultPath.substring(0, lastSlashIndex); - } - return defaultPath; - } - - protected static String getDefaultDomain(final CookieOrigin origin) { - return origin.getHost(); - } - - protected List<Cookie> parse(final HeaderElement[] elems, final CookieOrigin origin) - throws MalformedCookieException { - List<Cookie> cookies = new ArrayList<Cookie>(elems.length); - for (HeaderElement headerelement : elems) { - String name = headerelement.getName(); - String value = headerelement.getValue(); - if (name == null || name.length() == 0) { - throw new MalformedCookieException("Cookie name may not be empty"); - } - - BasicClientCookie cookie = new BasicClientCookie(name, value); - cookie.setPath(getDefaultPath(origin)); - cookie.setDomain(getDefaultDomain(origin)); - - // cycle through the parameters - NameValuePair[] attribs = headerelement.getParameters(); - for (int j = attribs.length - 1; j >= 0; j--) { - NameValuePair attrib = attribs[j]; - String s = attrib.getName().toLowerCase(Locale.ENGLISH); - - cookie.setAttribute(s, attrib.getValue()); - - CookieAttributeHandler handler = findAttribHandler(s); - if (handler != null) { - handler.parse(cookie, attrib.getValue()); - } - } - cookies.add(cookie); - } - return cookies; - } - - public void validate(final Cookie cookie, final CookieOrigin origin) - throws MalformedCookieException { - if (cookie == null) { - throw new IllegalArgumentException("Cookie may not be null"); - } - if (origin == null) { - throw new IllegalArgumentException("Cookie origin may not be null"); - } - for (CookieAttributeHandler handler: getAttribHandlers()) { - handler.validate(cookie, origin); - } - } - - public boolean match(final Cookie cookie, final CookieOrigin origin) { - if (cookie == null) { - throw new IllegalArgumentException("Cookie may not be null"); - } - if (origin == null) { - throw new IllegalArgumentException("Cookie origin may not be null"); - } - for (CookieAttributeHandler handler: getAttribHandlers()) { - if (!handler.match(cookie, origin)) { - return false; - } - } - return true; - } - -} |