diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:18 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:18 -0800 |
commit | e5d9544310b857f3ee9ec172bdbff8077323f9a1 (patch) | |
tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /src/org/apache/http/HttpHost.java | |
parent | 8b7d40049e7f35f9770fc024363a9fa6e88dff15 (diff) | |
download | external_apache-http-e5d9544310b857f3ee9ec172bdbff8077323f9a1.zip external_apache-http-e5d9544310b857f3ee9ec172bdbff8077323f9a1.tar.gz external_apache-http-e5d9544310b857f3ee9ec172bdbff8077323f9a1.tar.bz2 |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'src/org/apache/http/HttpHost.java')
-rw-r--r-- | src/org/apache/http/HttpHost.java | 218 |
1 files changed, 0 insertions, 218 deletions
diff --git a/src/org/apache/http/HttpHost.java b/src/org/apache/http/HttpHost.java deleted file mode 100644 index 869f5af..0000000 --- a/src/org/apache/http/HttpHost.java +++ /dev/null @@ -1,218 +0,0 @@ -/* - * $HeadURL: http://svn.apache.org/repos/asf/httpcomponents/httpcore/trunk/module-main/src/main/java/org/apache/http/HttpHost.java $ - * $Revision: 653058 $ - * $Date: 2008-05-03 05:01:10 -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; - -import java.util.Locale; - -import org.apache.http.util.CharArrayBuffer; -import org.apache.http.util.LangUtils; - -/** - * Holds all of the variables needed to describe an HTTP connection to a host. - * This includes remote host name, port and scheme. - * - * @author <a href="mailto:becke@u.washington.edu">Michael Becke</a> - * @author <a href="mailto:mbowler@GargoyleSoftware.com">Mike Bowler</a> - * @author <a href="mailto:oleg at ural.ru">Oleg Kalnichevski</a> - * @author Laura Werner - * - * @since 4.0 - */ -public final class HttpHost implements Cloneable { - - /** The default scheme is "http". */ - public static final String DEFAULT_SCHEME_NAME = "http"; - - /** The host to use. */ - protected final String hostname; - - /** The lowercase host, for {@link #equals} and {@link #hashCode}. */ - protected final String lcHostname; - - - /** The port to use. */ - protected final int port; - - /** The scheme */ - protected final String schemeName; - - - /** - * Creates a new {@link HttpHost HttpHost}, specifying all values. - * Constructor for HttpHost. - * - * @param hostname the hostname (IP or DNS name) - * @param port the port number. - * <code>-1</code> indicates the scheme default port. - * @param scheme the name of the scheme. - * <code>null</code> indicates the - * {@link #DEFAULT_SCHEME_NAME default scheme} - */ - public HttpHost(final String hostname, int port, final String scheme) { - super(); - if (hostname == null) { - throw new IllegalArgumentException("Host name may not be null"); - } - this.hostname = hostname; - this.lcHostname = hostname.toLowerCase(Locale.ENGLISH); - if (scheme != null) { - this.schemeName = scheme.toLowerCase(Locale.ENGLISH); - } else { - this.schemeName = DEFAULT_SCHEME_NAME; - } - this.port = port; - } - - /** - * Creates a new {@link HttpHost HttpHost}, with default scheme. - * - * @param hostname the hostname (IP or DNS name) - * @param port the port number. - * <code>-1</code> indicates the scheme default port. - */ - public HttpHost(final String hostname, int port) { - this(hostname, port, null); - } - - /** - * Creates a new {@link HttpHost HttpHost}, with default scheme and port. - * - * @param hostname the hostname (IP or DNS name) - */ - public HttpHost(final String hostname) { - this(hostname, -1, null); - } - - /** - * Copy constructor for {@link HttpHost HttpHost}. - * - * @param httphost the HTTP host to copy details from - */ - public HttpHost (final HttpHost httphost) { - this(httphost.hostname, httphost.port, httphost.schemeName); - } - - /** - * Returns the host name. - * - * @return the host name (IP or DNS name) - */ - public String getHostName() { - return this.hostname; - } - - /** - * Returns the port. - * - * @return the host port, or <code>-1</code> if not set - */ - public int getPort() { - return this.port; - } - - /** - * Returns the scheme name. - * - * @return the scheme name - */ - public String getSchemeName() { - return this.schemeName; - } - - /** - * Return the host URI, as a string. - * - * @return the host URI - */ - public String toURI() { - CharArrayBuffer buffer = new CharArrayBuffer(32); - buffer.append(this.schemeName); - buffer.append("://"); - buffer.append(this.hostname); - if (this.port != -1) { - buffer.append(':'); - buffer.append(Integer.toString(this.port)); - } - return buffer.toString(); - } - - - /** - * Obtains the host string, without scheme prefix. - * - * @return the host string, for example <code>localhost:8080</code> - */ - public String toHostString() { - CharArrayBuffer buffer = new CharArrayBuffer(32); - buffer.append(this.hostname); - if (this.port != -1) { - buffer.append(':'); - buffer.append(Integer.toString(this.port)); - } - return buffer.toString(); - } - - - public String toString() { - return toURI(); - } - - - public boolean equals(final Object obj) { - if (obj == null) return false; - if (this == obj) return true; - if (obj instanceof HttpHost) { - HttpHost that = (HttpHost) obj; - return this.lcHostname.equals(that.lcHostname) - && this.port == that.port - && this.schemeName.equals(that.schemeName); - } else { - return false; - } - } - - /** - * @see java.lang.Object#hashCode() - */ - public int hashCode() { - int hash = LangUtils.HASH_SEED; - hash = LangUtils.hashCode(hash, this.lcHostname); - hash = LangUtils.hashCode(hash, this.port); - hash = LangUtils.hashCode(hash, this.schemeName); - return hash; - } - - public Object clone() throws CloneNotSupportedException { - return super.clone(); - } - -} |