View Javadoc
1 /* 2 * $Header: /home/cvs/jakarta-commons/httpclient/src/java/org/apache/commons/httpclient/NameValuePair.java,v 1.14 2003/01/31 00:33:36 jsdever Exp $ 3 * $Revision: 1.14 $ 4 * $Date: 2003/01/31 00:33:36 $ 5 * 6 * ==================================================================== 7 * 8 * The Apache Software License, Version 1.1 9 * 10 * Copyright (c) 1999-2003 The Apache Software Foundation. All rights 11 * reserved. 12 * 13 * Redistribution and use in source and binary forms, with or without 14 * modification, are permitted provided that the following conditions 15 * are met: 16 * 17 * 1. Redistributions of source code must retain the above copyright 18 * notice, this list of conditions and the following disclaimer. 19 * 20 * 2. Redistributions in binary form must reproduce the above copyright 21 * notice, this list of conditions and the following disclaimer in 22 * the documentation and/or other materials provided with the 23 * distribution. 24 * 25 * 3. The end-user documentation included with the redistribution, if 26 * any, must include the following acknowlegement: 27 * "This product includes software developed by the 28 * Apache Software Foundation (http://www.apache.org/)." 29 * Alternately, this acknowlegement may appear in the software itself, 30 * if and wherever such third-party acknowlegements normally appear. 31 * 32 * 4. The names "The Jakarta Project", "Commons", and "Apache Software 33 * Foundation" must not be used to endorse or promote products derived 34 * from this software without prior written permission. For written 35 * permission, please contact apache@apache.org. 36 * 37 * 5. Products derived from this software may not be called "Apache" 38 * nor may "Apache" appear in their names without prior written 39 * permission of the Apache Group. 40 * 41 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 42 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 43 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 44 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 45 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 46 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 47 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 48 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 49 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 50 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 51 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 52 * SUCH DAMAGE. 53 * ==================================================================== 54 * 55 * This software consists of voluntary contributions made by many 56 * individuals on behalf of the Apache Software Foundation. For more 57 * information on the Apache Software Foundation, please see 58 * <http://www.apache.org/>. 59 * 60 * [Additional notices, if required by prior licensing conditions] 61 * 62 */ 63 64 package org.apache.commons.httpclient; 65 66 import java.io.Serializable; 67 68 /*** 69 * <p>A simple class encapsulating a name/value pair.</p> 70 * 71 * @author <a href="mailto:bcholmes@interlog.com">B.C. Holmes</a> 72 * @author Sean C. Sullivan 73 * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a> 74 * 75 * @version $Revision: 1.14 $ $Date: 2003/01/31 00:33:36 $ 76 * 77 */ 78 public class NameValuePair implements Serializable { 79 80 // ----------------------------------------------------------- Constructors 81 82 /*** 83 * Default constructor. 84 * 85 */ 86 public NameValuePair() { 87 this (null, null); 88 } 89 90 /*** 91 * Constructor. 92 * @param name The name. 93 * @param value The value. 94 */ 95 public NameValuePair(String name, String value) { 96 this.name = name; 97 this.value = value; 98 } 99 100 // ----------------------------------------------------- Instance Variables 101 102 /*** 103 * Name. 104 */ 105 private String name = null; 106 107 /*** 108 * Value. 109 */ 110 private String value = null; 111 112 // ------------------------------------------------------------- Properties 113 114 /*** 115 * Set the name. 116 * 117 * @param name The new name 118 * @see #getName() 119 */ 120 public void setName(String name) { 121 this.name = name; 122 } 123 124 125 /*** 126 * Return the name. 127 * 128 * @return String name The name 129 * @see #setName(String) 130 */ 131 public String getName() { 132 return name; 133 } 134 135 136 /*** 137 * Set the value. 138 * 139 * @param value The new value. 140 */ 141 public void setValue(String value) { 142 this.value = value; 143 } 144 145 146 /*** 147 * Return the current value. 148 * 149 * @return String value The current value. 150 */ 151 public String getValue() { 152 return value; 153 } 154 155 // --------------------------------------------------------- Public Methods 156 157 /*** 158 * Get a String representation of this pair. 159 * @return A string representation. 160 */ 161 public String toString() { 162 return ("name=" + name + ", " + "value=" + value); 163 } 164 165 /*** 166 * Test if the given <i>object</i> is equal to me. In this implementation, 167 * an <i>object</i> is equal to me iff it has the same runtime type and the 168 * <i>name</i> and <i>value</i> attributes are both <tt>equal</tt> (or 169 * <tt>==</tt>). 170 * 171 * @param object the {@link Object} to compare to 172 * @return true if the objects are equal. 173 */ 174 public boolean equals(Object object) { 175 if (this == object) { 176 return true; 177 } else if (this.getClass().equals(object.getClass())) { 178 NameValuePair pair = (NameValuePair) object; 179 return ((null == name ? null == pair.name : name.equals(pair.name)) 180 && (null == value ? null == pair.value : value.equals(pair.value))); 181 } else { 182 return false; 183 } 184 } 185 186 /*** 187 * hashCode. Returns a hash code for this object such that if <tt>a.{@link 188 * #equals equals}(b)</tt> then <tt>a.hashCode() == b.hashCode()</tt>. 189 * @return The hash code. 190 */ 191 public int hashCode() { 192 return (this.getClass().hashCode() 193 ^ (null == name ? 0 : name.hashCode()) 194 ^ (null == value ? 0 : value.hashCode())); 195 } 196 197 /* 198 public Object clone() { 199 try { 200 NameValuePair that = (NameValuePair)(super.clone()); 201 that.setName(this.getName()); 202 that.setValue(this.getValue()); 203 return that; 204 } catch(CloneNotSupportedException e) { 205 // this should never happen 206 throw new RuntimeException("Panic. super.clone not supported in NameValuePair."); 207 } 208 } 209 */ 210 }

This page was automatically generated by Maven