Home | History | Annotate | Download | only in cookie
      1 /*
      2  * $HeadURL: http://svn.apache.org/repos/asf/httpcomponents/httpclient/trunk/module-client/src/main/java/org/apache/http/cookie/CookieAttributeHandler.java $
      3  * $Revision: 558519 $
      4  * $Date: 2007-07-22 11:19:49 -0700 (Sun, 22 Jul 2007) $
      5  *
      6  * ====================================================================
      7  * Licensed to the Apache Software Foundation (ASF) under one
      8  * or more contributor license agreements.  See the NOTICE file
      9  * distributed with this work for additional information
     10  * regarding copyright ownership.  The ASF licenses this file
     11  * to you under the Apache License, Version 2.0 (the
     12  * "License"); you may not use this file except in compliance
     13  * with the License.  You may obtain a copy of the License at
     14  *
     15  *   http://www.apache.org/licenses/LICENSE-2.0
     16  *
     17  * Unless required by applicable law or agreed to in writing,
     18  * software distributed under the License is distributed on an
     19  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
     20  * KIND, either express or implied.  See the License for the
     21  * specific language governing permissions and limitations
     22  * under the License.
     23  * ====================================================================
     24  *
     25  * This software consists of voluntary contributions made by many
     26  * individuals on behalf of the Apache Software Foundation.  For more
     27  * information on the Apache Software Foundation, please see
     28  * <http://www.apache.org/>.
     29  *
     30  */
     31 package org.apache.http.cookie;
     32 
     33 /**
     34  * Ths interface represents a cookie attribute handler responsible
     35  * for parsing, validating, and matching a specific cookie attribute,
     36  * such as path, domain, port, etc.
     37  *
     38  * Different cookie specifications can provide a specific
     39  * implementation for this class based on their cookie handling
     40  * rules.
     41  *
     42  * @author jain.samit (at) gmail.com (Samit Jain)
     43  *
     44  * @since 4.0
     45  *
     46  * @deprecated Please use {@link java.net.URL#openConnection} instead.
     47  *     Please visit <a href="http://android-developers.blogspot.com/2011/09/androids-http-clients.html">this webpage</a>
     48  *     for further details.
     49  */
     50 @Deprecated
     51 public interface CookieAttributeHandler {
     52 
     53   /**
     54    * Parse the given cookie attribute value and update the corresponding
     55    * {@link org.apache.http.cookie.Cookie} property.
     56    *
     57    * @param cookie {@link org.apache.http.cookie.Cookie} to be updated
     58    * @param value cookie attribute value from the cookie response header
     59    */
     60   void parse(SetCookie cookie, String value)
     61           throws MalformedCookieException;
     62 
     63   /**
     64    * Peforms cookie validation for the given attribute value.
     65    *
     66    * @param cookie {@link org.apache.http.cookie.Cookie} to validate
     67    * @param origin the cookie source to validate against
     68    * @throws MalformedCookieException if cookie validation fails for this attribute
     69    */
     70   void validate(Cookie cookie, CookieOrigin origin)
     71           throws MalformedCookieException;
     72 
     73   /**
     74    * Matches the given value (property of the destination host where request is being
     75    * submitted) with the corresponding cookie attribute.
     76    *
     77    * @param cookie {@link org.apache.http.cookie.Cookie} to match
     78    * @param origin the cookie source to match against
     79    * @return <tt>true</tt> if the match is successful; <tt>false</tt> otherwise
     80    */
     81   boolean match(Cookie cookie, CookieOrigin origin);
     82 
     83 }
     84