Index: src/main/java/org/apache/http/impl/cookie/BasicClientCookie.java =================================================================== --- src/main/java/org/apache/http/impl/cookie/BasicClientCookie.java (revision 1391043) +++ src/main/java/org/apache/http/impl/cookie/BasicClientCookie.java (working copy) @@ -320,15 +320,29 @@ buffer.append("[value: "); buffer.append(this.value); buffer.append("]"); - buffer.append("[domain: "); - buffer.append(this.cookieDomain); + if (this.cookieDomain != null) { + buffer.append("[domain: "); + buffer.append(this.cookieDomain); + buffer.append("]"); + } + if (this.cookiePath != null) { + buffer.append("[path: "); + buffer.append(this.cookiePath); + buffer.append("]"); + } + if (this.cookieExpiryDate != null) { + buffer.append("[expiry: "); + buffer.append(this.cookieExpiryDate); + buffer.append("]"); + } + buffer.append("[secure: "); + buffer.append(this.isSecure); buffer.append("]"); - buffer.append("[path: "); - buffer.append(this.cookiePath); - buffer.append("]"); - buffer.append("[expiry: "); - buffer.append(this.cookieExpiryDate); - buffer.append("]"); + if (this.cookieComment != null) { + buffer.append("[comment: "); + buffer.append(this.cookieComment); + buffer.append("]"); + } return buffer.toString(); } Index: src/main/java/org/apache/http/impl/cookie/BasicClientCookie2.java =================================================================== --- src/main/java/org/apache/http/impl/cookie/BasicClientCookie2.java (revision 1391043) +++ src/main/java/org/apache/http/impl/cookie/BasicClientCookie2.java (working copy) @@ -28,6 +28,7 @@ package org.apache.http.impl.cookie; import java.io.Serializable; +import java.util.Arrays; import java.util.Date; import org.apache.http.annotation.NotThreadSafe; @@ -99,5 +100,23 @@ return clone; } + @Override + public String toString() { + StringBuilder buffer = new StringBuilder(super.toString()); + if (this.ports != null) { + buffer.append("[ports: "); + buffer.append(Arrays.toString(this.ports)); + buffer.append("]"); + } + buffer.append("[discard: "); + buffer.append(this.discard); + buffer.append("]"); + if (this.commentURL != null) { + buffer.append("[commentURL: "); + buffer.append(this.commentURL); + buffer.append("]"); + } + return buffer.toString(); + } } Index: src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie.java =================================================================== --- src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie.java (revision 1391043) +++ src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie.java (working copy) @@ -88,4 +88,12 @@ Assert.assertEquals(orig.getAttribute("attrib"), clone.getAttribute("attrib")); } + @Test + public void testToString() throws Exception { + BasicClientCookie cookie = new BasicClientCookie("name", "value"); + Assert.assertEquals( + "[version: 0][name: name][value: value][secure: false]", + cookie.toString()); + } + } Index: src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie2.java =================================================================== --- src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie2.java (revision 1391043) +++ src/test/java/org/apache/http/impl/cookie/TestBasicClientCookie2.java (working copy) @@ -115,5 +115,13 @@ Assert.assertEquals(expected[i], clones[i]); } } + + @Test + public void testToString() throws Exception { + BasicClientCookie2 cookie = new BasicClientCookie2("name", "value"); + Assert.assertEquals( + "[version: 0][name: name][value: value][secure: false][discard: false]", + cookie.toString()); + } }