You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hc.apache.org by ol...@apache.org on 2016/06/07 18:24:12 UTC
svn commit: r1747290 [4/4] - in /httpcomponents/httpcore/branches/4.4.x: ./
httpcore-nio/src/main/java-deprecated/org/apache/http/impl/nio/
httpcore-nio/src/main/java-deprecated/org/apache/http/impl/nio/ssl/
httpcore-nio/src/main/java-deprecated/org/ap...
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicRequestLine.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicRequestLine.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicRequestLine.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicRequestLine.java Tue Jun 7 18:24:10 2016
@@ -31,7 +31,8 @@ import java.io.Serializable;
import org.apache.http.ProtocolVersion;
import org.apache.http.RequestLine;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -39,7 +40,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class BasicRequestLine implements RequestLine, Cloneable, Serializable {
private static final long serialVersionUID = 2810581718468737193L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicStatusLine.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicStatusLine.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicStatusLine.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicStatusLine.java Tue Jun 7 18:24:10 2016
@@ -31,7 +31,8 @@ import java.io.Serializable;
import org.apache.http.ProtocolVersion;
import org.apache.http.StatusLine;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -39,7 +40,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class BasicStatusLine implements StatusLine, Cloneable, Serializable {
private static final long serialVersionUID = -2443303766890459269L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicTokenIterator.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicTokenIterator.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicTokenIterator.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BasicTokenIterator.java Tue Jun 7 18:24:10 2016
@@ -32,7 +32,6 @@ import java.util.NoSuchElementException;
import org.apache.http.HeaderIterator;
import org.apache.http.ParseException;
import org.apache.http.TokenIterator;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.Args;
/**
@@ -43,7 +42,6 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@NotThreadSafe
public class BasicTokenIterator implements TokenIterator {
/** The HTTP separator characters. Defined in RFC 2616, section 2.2. */
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BufferedHeader.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BufferedHeader.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BufferedHeader.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/BufferedHeader.java Tue Jun 7 18:24:10 2016
@@ -32,7 +32,6 @@ import java.io.Serializable;
import org.apache.http.FormattedHeader;
import org.apache.http.HeaderElement;
import org.apache.http.ParseException;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.Args;
import org.apache.http.util.CharArrayBuffer;
@@ -42,7 +41,6 @@ import org.apache.http.util.CharArrayBuf
*
* @since 4.0
*/
-@NotThreadSafe
public class BufferedHeader implements FormattedHeader, Cloneable, Serializable {
private static final long serialVersionUID = -2768352615787625448L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/HeaderGroup.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/HeaderGroup.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/HeaderGroup.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/HeaderGroup.java Tue Jun 7 18:24:10 2016
@@ -35,7 +35,6 @@ import java.util.Locale;
import org.apache.http.Header;
import org.apache.http.HeaderIterator;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.CharArrayBuffer;
/**
@@ -46,7 +45,6 @@ import org.apache.http.util.CharArrayBuf
*
* @since 4.0
*/
-@NotThreadSafe
public class HeaderGroup implements Cloneable, Serializable {
private static final long serialVersionUID = 2608834160639271617L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/ParserCursor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/ParserCursor.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/ParserCursor.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/ParserCursor.java Tue Jun 7 18:24:10 2016
@@ -27,8 +27,6 @@
package org.apache.http.message;
-import org.apache.http.annotation.NotThreadSafe;
-
/**
* This class represents a context of a parsing operation:
* <ul>
@@ -38,7 +36,6 @@ import org.apache.http.annotation.NotThr
*
* @since 4.0
*/
-@NotThreadSafe
public class ParserCursor {
private final int lowerBound;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/TokenParser.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/TokenParser.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/TokenParser.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/message/TokenParser.java Tue Jun 7 18:24:10 2016
@@ -29,7 +29,8 @@ package org.apache.http.message;
import java.util.BitSet;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.CharArrayBuffer;
/**
@@ -40,7 +41,7 @@ import org.apache.http.util.CharArrayBuf
*
* @since 4.4
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class TokenParser {
public static BitSet INIT_BITSET(final int ... b) {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/params/BasicHttpParams.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/params/BasicHttpParams.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/params/BasicHttpParams.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/params/BasicHttpParams.java Tue Jun 7 18:24:10 2016
@@ -27,14 +27,15 @@
package org.apache.http.params;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
+
import java.io.Serializable;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.http.annotation.ThreadSafe;
-
/**
* Default implementation of {@link HttpParams} interface.
* <p>
@@ -47,7 +48,7 @@ import org.apache.http.annotation.Thread
* and 'org.apache.http.client.config'
*/
@Deprecated
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE)
public class BasicHttpParams extends AbstractHttpParams implements Serializable, Cloneable {
private static final long serialVersionUID = -7086398485908701455L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/AbstractConnPool.java Tue Jun 7 18:24:10 2016
@@ -40,7 +40,8 @@ import java.util.concurrent.TimeoutExcep
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.concurrent.FutureCallback;
import org.apache.http.util.Args;
import org.apache.http.util.Asserts;
@@ -60,7 +61,7 @@ import org.apache.http.util.Asserts;
* @param <E> the type of the pool entry containing a pooled connection.
* @since 4.2
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE_CONDITIONAL)
public abstract class AbstractConnPool<T, C, E extends PoolEntry<T, C>>
implements ConnPool<T, E>, ConnPoolControl<T> {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntry.java Tue Jun 7 18:24:10 2016
@@ -28,8 +28,8 @@ package org.apache.http.pool;
import java.util.concurrent.TimeUnit;
-import org.apache.http.annotation.GuardedBy;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -48,7 +48,7 @@ import org.apache.http.util.Args;
* @param <C> the connection type.
* @since 4.2
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE_CONDITIONAL)
public abstract class PoolEntry<T, C> {
private final String id;
@@ -57,10 +57,8 @@ public abstract class PoolEntry<T, C> {
private final long created;
private final long validityDeadline;
- @GuardedBy("this")
private long updated;
- @GuardedBy("this")
private long expiry;
private volatile Object state;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntryFuture.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntryFuture.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntryFuture.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolEntryFuture.java Tue Jun 7 18:24:10 2016
@@ -35,11 +35,12 @@ import java.util.concurrent.TimeoutExcep
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.Lock;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.concurrent.FutureCallback;
import org.apache.http.util.Args;
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE_CONDITIONAL)
abstract class PoolEntryFuture<T> implements Future<T> {
private final Lock lock;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolStats.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolStats.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolStats.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/PoolStats.java Tue Jun 7 18:24:10 2016
@@ -26,9 +26,10 @@
*/
package org.apache.http.pool;
-import java.io.Serializable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
-import org.apache.http.annotation.Immutable;
+import java.io.Serializable;
/**
* Pool statistics.
@@ -38,7 +39,7 @@ import org.apache.http.annotation.Immuta
*
* @since 4.2
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class PoolStats implements Serializable {
private static final long serialVersionUID = -2807686144795228544L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/pool/RouteSpecificPool.java Tue Jun 7 18:24:10 2016
@@ -31,11 +31,9 @@ import java.util.Iterator;
import java.util.LinkedList;
import java.util.Set;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.Args;
import org.apache.http.util.Asserts;
-@NotThreadSafe
abstract class RouteSpecificPool<T, C, E extends PoolEntry<T, C>> {
private final T route;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/BasicHttpContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/BasicHttpContext.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/BasicHttpContext.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/BasicHttpContext.java Tue Jun 7 18:24:10 2016
@@ -30,7 +30,8 @@ package org.apache.http.protocol;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -41,7 +42,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE_CONDITIONAL)
public class BasicHttpContext implements HttpContext {
private final HttpContext parentContext;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ChainBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ChainBuilder.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ChainBuilder.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ChainBuilder.java Tue Jun 7 18:24:10 2016
@@ -32,8 +32,6 @@ import java.util.HashMap;
import java.util.LinkedList;
import java.util.Map;
-import org.apache.http.annotation.NotThreadSafe;
-
/**
* Builder class to build a linked list (chain) of unique class instances. Each class can have
* only one instance in the list. Useful for building lists of protocol interceptors.
@@ -42,7 +40,6 @@ import org.apache.http.annotation.NotThr
*
* @since 4.3
*/
-@NotThreadSafe
final class ChainBuilder<E> {
private final LinkedList<E> list;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpCoreContext.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpCoreContext.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpCoreContext.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpCoreContext.java Tue Jun 7 18:24:10 2016
@@ -31,7 +31,6 @@ import org.apache.http.HttpConnection;
import org.apache.http.HttpHost;
import org.apache.http.HttpRequest;
import org.apache.http.HttpResponse;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.Args;
/**
@@ -40,7 +39,6 @@ import org.apache.http.util.Args;
*
* @since 4.3
*/
-@NotThreadSafe
public class HttpCoreContext implements HttpContext {
/**
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpDateGenerator.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpDateGenerator.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpDateGenerator.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpDateGenerator.java Tue Jun 7 18:24:10 2016
@@ -27,21 +27,21 @@
package org.apache.http.protocol;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
+
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
-import org.apache.http.annotation.GuardedBy;
-import org.apache.http.annotation.ThreadSafe;
-
/**
* Generates a date in the format required by the HTTP protocol.
*
* @since 4.0
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE)
public class HttpDateGenerator {
/** Date format pattern used to generate the header in RFC 1123 format. */
@@ -51,11 +51,8 @@ public class HttpDateGenerator {
/** The time zone to use in the date header. */
public static final TimeZone GMT = TimeZone.getTimeZone("GMT");
- @GuardedBy("this")
private final DateFormat dateformat;
- @GuardedBy("this")
private long dateAsLong = 0L;
- @GuardedBy("this")
private String dateAsText = null;
public HttpDateGenerator() {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpRequestExecutor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpRequestExecutor.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpRequestExecutor.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpRequestExecutor.java Tue Jun 7 18:24:10 2016
@@ -38,7 +38,8 @@ import org.apache.http.HttpStatus;
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolException;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -54,7 +55,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class HttpRequestExecutor {
public static final int DEFAULT_WAIT_FOR_CONTINUE = 3000;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpService.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpService.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpService.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/HttpService.java Tue Jun 7 18:24:10 2016
@@ -42,7 +42,8 @@ import org.apache.http.HttpVersion;
import org.apache.http.MethodNotSupportedException;
import org.apache.http.ProtocolException;
import org.apache.http.UnsupportedHttpVersionException;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.Contract;
+import org.apache.http.annotation.ThreadingBehavior;
import org.apache.http.entity.ByteArrayEntity;
import org.apache.http.impl.DefaultConnectionReuseStrategy;
import org.apache.http.impl.DefaultHttpResponseFactory;
@@ -71,7 +72,7 @@ import org.apache.http.util.EntityUtils;
* @since 4.0
*/
@SuppressWarnings("deprecation")
-@Immutable // provided injected dependencies are immutable and deprecated methods are not used
+@Contract(threading = ThreadingBehavior.IMMUTABLE_CONDITIONAL)
public class HttpService {
/**
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ImmutableHttpProcessor.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ImmutableHttpProcessor.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ImmutableHttpProcessor.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ImmutableHttpProcessor.java Tue Jun 7 18:24:10 2016
@@ -34,14 +34,15 @@ import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
/**
* Immutable {@link HttpProcessor}.
*
* @since 4.1
*/
-@ThreadSafe // provided injected dependencies are immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE_CONDITIONAL)
public final class ImmutableHttpProcessor implements HttpProcessor {
private final HttpRequestInterceptor[] requestInterceptors;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestConnControl.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestConnControl.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestConnControl.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestConnControl.java Tue Jun 7 18:24:10 2016
@@ -32,7 +32,8 @@ import java.io.IOException;
import org.apache.http.HttpException;
import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -43,7 +44,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class RequestConnControl implements HttpRequestInterceptor {
public RequestConnControl() {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestContent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestContent.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestContent.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestContent.java Tue Jun 7 18:24:10 2016
@@ -37,7 +37,8 @@ import org.apache.http.HttpRequestInterc
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolException;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -50,7 +51,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class RequestContent implements HttpRequestInterceptor {
private final boolean overwrite;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestDate.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestDate.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestDate.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestDate.java Tue Jun 7 18:24:10 2016
@@ -33,7 +33,8 @@ import org.apache.http.HttpEntityEnclosi
import org.apache.http.HttpException;
import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -43,7 +44,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE)
public class RequestDate implements HttpRequestInterceptor {
private static final HttpDateGenerator DATE_GENERATOR = new HttpDateGenerator();
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestExpectContinue.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestExpectContinue.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestExpectContinue.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestExpectContinue.java Tue Jun 7 18:24:10 2016
@@ -36,7 +36,8 @@ import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.params.CoreProtocolPNames;
import org.apache.http.util.Args;
@@ -47,7 +48,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
@SuppressWarnings("deprecation")
public class RequestExpectContinue implements HttpRequestInterceptor {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestTargetHost.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestTargetHost.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestTargetHost.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestTargetHost.java Tue Jun 7 18:24:10 2016
@@ -39,7 +39,8 @@ import org.apache.http.HttpRequestInterc
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolException;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -48,7 +49,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class RequestTargetHost implements HttpRequestInterceptor {
public RequestTargetHost() {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestUserAgent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestUserAgent.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestUserAgent.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/RequestUserAgent.java Tue Jun 7 18:24:10 2016
@@ -32,7 +32,8 @@ import java.io.IOException;
import org.apache.http.HttpException;
import org.apache.http.HttpRequest;
import org.apache.http.HttpRequestInterceptor;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.params.CoreProtocolPNames;
import org.apache.http.params.HttpParams;
import org.apache.http.util.Args;
@@ -44,7 +45,7 @@ import org.apache.http.util.Args;
* @since 4.0
*/
@SuppressWarnings("deprecation")
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class RequestUserAgent implements HttpRequestInterceptor {
private final String userAgent;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseConnControl.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseConnControl.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseConnControl.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseConnControl.java Tue Jun 7 18:24:10 2016
@@ -38,7 +38,8 @@ import org.apache.http.HttpResponseInter
import org.apache.http.HttpStatus;
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -49,7 +50,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class ResponseConnControl implements HttpResponseInterceptor {
public ResponseConnControl() {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseContent.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseContent.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseContent.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseContent.java Tue Jun 7 18:24:10 2016
@@ -37,7 +37,8 @@ import org.apache.http.HttpStatus;
import org.apache.http.HttpVersion;
import org.apache.http.ProtocolException;
import org.apache.http.ProtocolVersion;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -50,7 +51,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class ResponseContent implements HttpResponseInterceptor {
private final boolean overwrite;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseDate.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseDate.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseDate.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseDate.java Tue Jun 7 18:24:10 2016
@@ -33,7 +33,8 @@ import org.apache.http.HttpException;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
import org.apache.http.HttpStatus;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -43,7 +44,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE)
public class ResponseDate implements HttpResponseInterceptor {
private static final HttpDateGenerator DATE_GENERATOR = new HttpDateGenerator();
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseServer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseServer.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseServer.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/ResponseServer.java Tue Jun 7 18:24:10 2016
@@ -32,7 +32,8 @@ import java.io.IOException;
import org.apache.http.HttpException;
import org.apache.http.HttpResponse;
import org.apache.http.HttpResponseInterceptor;
-import org.apache.http.annotation.Immutable;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -41,7 +42,7 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@Immutable
+@Contract(threading = ThreadingBehavior.IMMUTABLE)
public class ResponseServer implements HttpResponseInterceptor {
private final String originServer;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriHttpRequestHandlerMapper.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriHttpRequestHandlerMapper.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriHttpRequestHandlerMapper.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriHttpRequestHandlerMapper.java Tue Jun 7 18:24:10 2016
@@ -28,7 +28,8 @@
package org.apache.http.protocol;
import org.apache.http.HttpRequest;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -48,7 +49,7 @@ import org.apache.http.util.Args;
*
* @since 4.3
*/
-@ThreadSafe // provided injected dependencies are thread-safe
+@Contract(threading = ThreadingBehavior.SAFE)
public class UriHttpRequestHandlerMapper implements HttpRequestHandlerMapper {
private final UriPatternMatcher<HttpRequestHandler> matcher;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriPatternMatcher.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriPatternMatcher.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriPatternMatcher.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/protocol/UriPatternMatcher.java Tue Jun 7 18:24:10 2016
@@ -30,8 +30,8 @@ package org.apache.http.protocol;
import java.util.HashMap;
import java.util.Map;
-import org.apache.http.annotation.GuardedBy;
-import org.apache.http.annotation.ThreadSafe;
+import org.apache.http.annotation.ThreadingBehavior;
+import org.apache.http.annotation.Contract;
import org.apache.http.util.Args;
/**
@@ -49,10 +49,9 @@ import org.apache.http.util.Args;
*
* @since 4.0
*/
-@ThreadSafe
+@Contract(threading = ThreadingBehavior.SAFE)
public class UriPatternMatcher<T> {
- @GuardedBy("this")
private final Map<String, T> map;
public UriPatternMatcher() {
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContextBuilder.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContextBuilder.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContextBuilder.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContextBuilder.java Tue Jun 7 18:24:10 2016
@@ -58,7 +58,6 @@ import javax.net.ssl.TrustManagerFactory
import javax.net.ssl.X509ExtendedKeyManager;
import javax.net.ssl.X509TrustManager;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.util.Args;
/**
@@ -73,7 +72,6 @@ import org.apache.http.util.Args;
*
* @since 4.4
*/
-@NotThreadSafe
public class SSLContextBuilder {
static final String TLS = "TLS";
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContexts.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContexts.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContexts.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/ssl/SSLContexts.java Tue Jun 7 18:24:10 2016
@@ -32,14 +32,11 @@ import java.security.NoSuchAlgorithmExce
import javax.net.ssl.SSLContext;
-import org.apache.http.annotation.Immutable;
-
/**
* {@link javax.net.ssl.SSLContext} factory methods.
*
* @since 4.4
*/
-@Immutable
public class SSLContexts {
/**
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/ByteArrayBuffer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/ByteArrayBuffer.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/ByteArrayBuffer.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/ByteArrayBuffer.java Tue Jun 7 18:24:10 2016
@@ -29,14 +29,11 @@ package org.apache.http.util;
import java.io.Serializable;
-import org.apache.http.annotation.NotThreadSafe;
-
/**
* A resizable byte array.
*
* @since 4.0
*/
-@NotThreadSafe
public final class ByteArrayBuffer implements Serializable {
private static final long serialVersionUID = 4359112959524048036L;
Modified: httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/CharArrayBuffer.java
URL: http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/CharArrayBuffer.java?rev=1747290&r1=1747289&r2=1747290&view=diff
==============================================================================
--- httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/CharArrayBuffer.java (original)
+++ httpcomponents/httpcore/branches/4.4.x/httpcore/src/main/java/org/apache/http/util/CharArrayBuffer.java Tue Jun 7 18:24:10 2016
@@ -30,7 +30,6 @@ package org.apache.http.util;
import java.io.Serializable;
import java.nio.CharBuffer;
-import org.apache.http.annotation.NotThreadSafe;
import org.apache.http.protocol.HTTP;
/**
@@ -38,7 +37,6 @@ import org.apache.http.protocol.HTTP;
*
* @since 4.0
*/
-@NotThreadSafe
public final class CharArrayBuffer implements CharSequence, Serializable {
private static final long serialVersionUID = -6208952725094867135L;