mobile/android/thirdparty/ch/boye/httpclientandroidlib/params/HttpParams.java

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /*
     2  * ====================================================================
     3  * Licensed to the Apache Software Foundation (ASF) under one
     4  * or more contributor license agreements.  See the NOTICE file
     5  * distributed with this work for additional information
     6  * regarding copyright ownership.  The ASF licenses this file
     7  * to you under the Apache License, Version 2.0 (the
     8  * "License"); you may not use this file except in compliance
     9  * with the License.  You may obtain a copy of the License at
    10  *
    11  *   http://www.apache.org/licenses/LICENSE-2.0
    12  *
    13  * Unless required by applicable law or agreed to in writing,
    14  * software distributed under the License is distributed on an
    15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    16  * KIND, either express or implied.  See the License for the
    17  * specific language governing permissions and limitations
    18  * under the License.
    19  * ====================================================================
    20  *
    21  * This software consists of voluntary contributions made by many
    22  * individuals on behalf of the Apache Software Foundation.  For more
    23  * information on the Apache Software Foundation, please see
    24  * <http://www.apache.org/>.
    25  *
    26  */
    28 package ch.boye.httpclientandroidlib.params;
    30 /**
    31  * HttpParams interface represents a collection of immutable values that define
    32  * a runtime behavior of a component. HTTP parameters should be simple objects:
    33  * integers, doubles, strings, collections and objects that remain immutable
    34  * at runtime. HttpParams is expected to be used in 'write once - read many' mode.
    35  * Once initialized, HTTP parameters are not expected to mutate in
    36  * the course of HTTP message processing.
    37  * <p>
    38  * The purpose of this interface is to define a behavior of other components.
    39  * Usually each complex component has its own HTTP parameter collection.
    40  * <p>
    41  * Instances of this interface can be linked together to form a hierarchy.
    42  * In the simplest form one set of parameters can use content of another one
    43  * to obtain default values of parameters not present in the local set.
    44  *
    45  * @see DefaultedHttpParams
    46  *
    47  * @since 4.0
    48  */
    49 public interface HttpParams {
    51     /**
    52      * Obtains the value of the given parameter.
    53      *
    54      * @param name the parent name.
    55      *
    56      * @return  an object that represents the value of the parameter,
    57      *          <code>null</code> if the parameter is not set or if it
    58      *          is explicitly set to <code>null</code>
    59      *
    60      * @see #setParameter(String, Object)
    61      */
    62     Object getParameter(String name);
    64     /**
    65      * Assigns the value to the parameter with the given name.
    66      *
    67      * @param name parameter name
    68      * @param value parameter value
    69      */
    70     HttpParams setParameter(String name, Object value);
    72     /**
    73      * Creates a copy of these parameters.
    74      *
    75      * @return  a new set of parameters holding the same values as this one
    76      *
    77      * @deprecated
    78      */
    79     HttpParams copy();
    81     /**
    82      * Removes the parameter with the specified name.
    83      *
    84      * @param name parameter name
    85      *
    86      * @return true if the parameter existed and has been removed, false else.
    87      */
    88     boolean removeParameter(String name);
    90     /**
    91      * Returns a {@link Long} parameter value with the given name.
    92      * If the parameter is not explicitly set, the default value is returned.
    93      *
    94      * @param name the parent name.
    95      * @param defaultValue the default value.
    96      *
    97      * @return a {@link Long} that represents the value of the parameter.
    98      *
    99      * @see #setLongParameter(String, long)
   100      */
   101     long getLongParameter(String name, long defaultValue);
   103     /**
   104      * Assigns a {@link Long} to the parameter with the given name
   105      *
   106      * @param name parameter name
   107      * @param value parameter value
   108      */
   109     HttpParams setLongParameter(String name, long value);
   111     /**
   112      * Returns an {@link Integer} parameter value with the given name.
   113      * If the parameter is not explicitly set, the default value is returned.
   114      *
   115      * @param name the parent name.
   116      * @param defaultValue the default value.
   117      *
   118      * @return a {@link Integer} that represents the value of the parameter.
   119      *
   120      * @see #setIntParameter(String, int)
   121      */
   122     int getIntParameter(String name, int defaultValue);
   124     /**
   125      * Assigns an {@link Integer} to the parameter with the given name
   126      *
   127      * @param name parameter name
   128      * @param value parameter value
   129      */
   130     HttpParams setIntParameter(String name, int value);
   132     /**
   133      * Returns a {@link Double} parameter value with the given name.
   134      * If the parameter is not explicitly set, the default value is returned.
   135      *
   136      * @param name the parent name.
   137      * @param defaultValue the default value.
   138      *
   139      * @return a {@link Double} that represents the value of the parameter.
   140      *
   141      * @see #setDoubleParameter(String, double)
   142      */
   143     double getDoubleParameter(String name, double defaultValue);
   145     /**
   146      * Assigns a {@link Double} to the parameter with the given name
   147      *
   148      * @param name parameter name
   149      * @param value parameter value
   150      */
   151     HttpParams setDoubleParameter(String name, double value);
   153     /**
   154      * Returns a {@link Boolean} parameter value with the given name.
   155      * If the parameter is not explicitly set, the default value is returned.
   156      *
   157      * @param name the parent name.
   158      * @param defaultValue the default value.
   159      *
   160      * @return a {@link Boolean} that represents the value of the parameter.
   161      *
   162      * @see #setBooleanParameter(String, boolean)
   163      */
   164     boolean getBooleanParameter(String name, boolean defaultValue);
   166     /**
   167      * Assigns a {@link Boolean} to the parameter with the given name
   168      *
   169      * @param name parameter name
   170      * @param value parameter value
   171      */
   172     HttpParams setBooleanParameter(String name, boolean value);
   174     /**
   175      * Checks if a boolean parameter is set to <code>true</code>.
   176      *
   177      * @param name parameter name
   178      *
   179      * @return <tt>true</tt> if the parameter is set to value <tt>true</tt>,
   180      *         <tt>false</tt> if it is not set or set to <code>false</code>
   181      */
   182     boolean isParameterTrue(String name);
   184     /**
   185      * Checks if a boolean parameter is not set or <code>false</code>.
   186      *
   187      * @param name parameter name
   188      *
   189      * @return <tt>true</tt> if the parameter is either not set or
   190      *         set to value <tt>false</tt>,
   191      *         <tt>false</tt> if it is set to <code>true</code>
   192      */
   193     boolean isParameterFalse(String name);
   195 }

mercurial