Author: markt
Date: Wed Jul  9 22:08:17 2014
New Revision: 1609327

URL: http://svn.apache.org/r1609327
Log:
Revert r1609326 as it contained fixes for multiple separate issues
Modified:
    tomcat/trunk/java/org/apache/tomcat/buildutil/SignCode.java
    tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/   (props changed)
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseGenericObjectPool.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseObjectPoolConfig.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPoolMXBean.java
    tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPool.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPoolMXBean.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/InterruptibleReentrantLock.java
    
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java   
(contents, props changed)
    tomcat/trunk/res/checkstyle/org-import-control.xml
    tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/java/org/apache/tomcat/buildutil/SignCode.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/buildutil/SignCode.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/buildutil/SignCode.java (original)
+++ tomcat/trunk/java/org/apache/tomcat/buildutil/SignCode.java Wed Jul  9 
22:08:17 2014
@@ -16,34 +16,14 @@
 */
 package org.apache.tomcat.buildutil;
 
-import java.io.ByteArrayOutputStream;
 import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.net.URL;
 import java.util.ArrayList;
 import java.util.List;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipOutputStream;
 
-import javax.xml.soap.MessageFactory;
-import javax.xml.soap.SOAPBody;
-import javax.xml.soap.SOAPConnection;
-import javax.xml.soap.SOAPConnectionFactory;
-import javax.xml.soap.SOAPConstants;
-import javax.xml.soap.SOAPElement;
-import javax.xml.soap.SOAPEnvelope;
-import javax.xml.soap.SOAPException;
-import javax.xml.soap.SOAPMessage;
-import javax.xml.soap.SOAPPart;
-
-import org.apache.tomcat.util.codec.binary.Base64;
 import org.apache.tools.ant.BuildException;
 import org.apache.tools.ant.DirectoryScanner;
 import org.apache.tools.ant.Task;
 import org.apache.tools.ant.types.FileSet;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
 
 /**
  * Ant task that submits a file to the Symantec code-signing service.
@@ -52,9 +32,6 @@ public class SignCode extends Task {
 
     private final List<FileSet> filesets = new ArrayList<>();
 
-    private static String USERNAME = "AOOAPI";
-    private static String PASSWORD = "Demo1234!";
-    private static String PARTNERCODE = "4615797APA95264";
 
     public void addFileset(FileSet fileset) {
         filesets.add(fileset);
@@ -76,151 +53,9 @@ public class SignCode extends Task {
                 for (int i = 0; i < files.length; i++) {
                     File file = new File(basedir, files[i]);
                     filesToSign.add(file);
+                    log("TODO: Sign " + file.getAbsolutePath());
                 }
             }
         }
-
-        try {
-            // Construct the signing request
-            log("Constructing the code signing request");
-
-            // Create the SOAP message
-            MessageFactory factory = 
MessageFactory.newInstance(SOAPConstants.SOAP_1_1_PROTOCOL);
-            SOAPMessage message = factory.createMessage();
-
-            // Populate envelope
-            SOAPPart soapPart = message.getSOAPPart();
-            SOAPEnvelope envelope = soapPart.getEnvelope();
-            
envelope.addNamespaceDeclaration("soapenv","http://schemas.xmlsoap.org/soap/envelope/";);
-            
envelope.addNamespaceDeclaration("cod","http://api.ws.symantec.com/webtrust/codesigningservice";);
-
-            SOAPBody body = envelope.getBody();
-
-            SOAPElement requestSigning =
-                    body.addChildElement("requestSigning", "cod");
-
-            SOAPElement requestSigningRequest =
-                    requestSigning.addChildElement("requestSigningRequest", 
"cod");
-
-            SOAPElement authToken = 
requestSigningRequest.addChildElement("authToken", "cod");
-            SOAPElement userName = authToken.addChildElement("userName", 
"cod");
-            userName.addTextNode(USERNAME);
-            SOAPElement password = authToken.addChildElement("password", 
"cod");
-            password.addTextNode(PASSWORD);
-            SOAPElement partnerCode = authToken.addChildElement("partnerCode", 
"cod");
-            partnerCode.addTextNode(PARTNERCODE);
-
-            SOAPElement applicationName =
-                    requestSigningRequest.addChildElement("applicationName", 
"cod");
-            applicationName.addTextNode("Apache Tomcat");
-
-            SOAPElement applicationVersion =
-                    
requestSigningRequest.addChildElement("applicationVersion", "cod");
-            applicationVersion.addTextNode("8.0.x trunk");
-
-            SOAPElement signingServiceName =
-                    
requestSigningRequest.addChildElement("signingServiceName", "cod");
-            signingServiceName.addTextNode("Microsoft Signing");
-
-            SOAPElement commaDelimitedFileNames =
-                    
requestSigningRequest.addChildElement("commaDelimitedFileNames", "cod");
-            
commaDelimitedFileNames.addTextNode(getFileNames(filesToSign.size()));
-
-            SOAPElement application =
-                    requestSigningRequest.addChildElement("application", 
"cod");
-            application.addTextNode(getApplicationString(filesToSign));
-
-            // Send the message
-            SOAPConnectionFactory soapConnectionFactory = 
SOAPConnectionFactory.newInstance();
-            SOAPConnection connection = 
soapConnectionFactory.createConnection();
-            java.net.URL endpoint = new 
URL("https://test-api.ws.symantec.com:443/webtrust/SigningService";);
-
-            log("Sending siging request to server and waiting for reponse");
-            SOAPMessage response = connection.call(message, endpoint);
-
-            log("Processing response");
-            SOAPElement responseBody = response.getSOAPBody();
-            log(responseBody.getTextContent());
-
-            // Should come back signed
-            NodeList bodyNodes = responseBody.getChildNodes();
-            NodeList requestSigningResponseNodes = 
bodyNodes.item(0).getChildNodes();
-            NodeList returnNodes = 
requestSigningResponseNodes.item(0).getChildNodes();
-
-            String signingSetID = null;
-            String signingSetStatus = null;
-
-            for (int i = 0; i < returnNodes.getLength(); i++) {
-                Node returnNode = returnNodes.item(i);
-                if (returnNode.getLocalName().equals("signingSetID")) {
-                    signingSetID = returnNode.getTextContent();
-                } else if 
(returnNode.getLocalName().equals("signingSetStatus")) {
-                    signingSetStatus = returnNode.getTextContent();
-                }
-            }
-
-            if (!"SIGNED".equals(signingSetStatus)) {
-                throw new BuildException("Signing failed. Status was: " + 
signingSetStatus);
-            }
-
-            log("TODO: Download signingSet: " + signingSetID);
-
-
-        } catch (SOAPException | IOException e) {
-            throw new BuildException(e);
-        }
-    }
-
-    /**
-     * Signing service requires unique files names. Since files will be 
returned
-     * in order, use dummy names that we know are unique.
-     */
-    private String getFileNames(int fileCount) {
-        StringBuilder sb = new StringBuilder();
-
-        boolean first = true;
-
-        for (int i = 0; i < fileCount; i++) {
-            if (first) {
-                first = false;
-            } else {
-                sb.append(',');
-            }
-            sb.append(Integer.toString(i));
-        }
-        return sb.toString();
-    }
-
-    /**
-     * Zips the files, base 64 encodes the resulting zip and then returns the
-     * string. It would be far more efficient to stream this directly to the
-     * signing server but the files that need to be signed are relatively small
-     * and this simpler to write.
-     *
-     * @param files Files to be signed
-     */
-    private String getApplicationString(List<File> files) throws IOException {
-        // 10 MB should be more than enough for Tomcat
-        ByteArrayOutputStream baos = new ByteArrayOutputStream(10 * 1024 * 
1024);
-        try (ZipOutputStream zos = new ZipOutputStream(baos)) {
-
-            byte[] buf = new byte[32 * 1024];
-
-            for (int i = 0; i < files.size() ; i++) {
-                try (FileInputStream fis = new FileInputStream(files.get(i))) {
-                    ZipEntry zipEntry = new ZipEntry(Integer.toString(i));
-                    zos.putNextEntry(zipEntry);
-
-                    int numRead;
-                    while ( (numRead = fis.read(buf) ) >= 0) {
-                        zos.write(buf, 0, numRead);
-                    }
-                }
-            }
-        }
-
-        log("" + baos.size());
-
-        return Base64.encodeBase64String(baos.toByteArray());
     }
 }

Propchange: tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/
------------------------------------------------------------------------------
  Reverse-merged 
/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2:r1593564-1609323

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseGenericObjectPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseGenericObjectPool.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseGenericObjectPool.java 
(original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseGenericObjectPool.java 
Wed Jul  9 22:08:17 2014
@@ -63,7 +63,6 @@ public abstract class BaseGenericObjectP
     private volatile long maxWaitMillis =
             BaseObjectPoolConfig.DEFAULT_MAX_WAIT_MILLIS;
     private volatile boolean lifo = BaseObjectPoolConfig.DEFAULT_LIFO;
-    private final boolean fairness;
     private volatile boolean testOnCreate =
             BaseObjectPoolConfig.DEFAULT_TEST_ON_CREATE;
     private volatile boolean testOnBorrow =
@@ -136,7 +135,6 @@ public abstract class BaseGenericObjectP
 
         // save the current CCL to be used later by the evictor Thread
         factoryClassLoader = Thread.currentThread().getContextClassLoader();
-        fairness = config.getFairness();
     }
 
 
@@ -249,17 +247,6 @@ public abstract class BaseGenericObjectP
     public final boolean getLifo() {
         return lifo;
     }
-    
-    /**
-     * Returns whether or not the pool serves threads waiting to borrow 
objects fairly.
-     * True means that waiting threads are served as if waiting in a FIFO 
queue.
-     *
-     * @return <code>true</code> if waiting threads are to be served
-     *             by the pool in arrival order
-     */
-    public final boolean getFairness() {
-        return fairness;
-    }
 
     /**
      * Sets whether the pool has LIFO (last in, first out) behaviour with

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseObjectPoolConfig.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseObjectPoolConfig.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseObjectPoolConfig.java 
(original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/BaseObjectPoolConfig.java 
Wed Jul  9 22:08:17 2014
@@ -33,13 +33,6 @@ public abstract class BaseObjectPoolConf
      * @see GenericKeyedObjectPool#getLifo()
      */
     public static final boolean DEFAULT_LIFO = true;
-    
-    /**
-     * The default value for the {@code fairness} configuration attribute.
-     * @see GenericObjectPool#getFairness()
-     * @see GenericKeyedObjectPool#getFairness()
-     */
-    public static final boolean DEFAULT_FAIRNESS = false;
 
     /**
      * The default value for the {@code maxWait} configuration attribute.
@@ -153,8 +146,6 @@ public abstract class BaseObjectPoolConf
 
 
     private boolean lifo = DEFAULT_LIFO;
-    
-    private boolean fairness = DEFAULT_FAIRNESS;
 
     private long maxWaitMillis = DEFAULT_MAX_WAIT_MILLIS;
 
@@ -203,20 +194,6 @@ public abstract class BaseObjectPoolConf
     public boolean getLifo() {
         return lifo;
     }
-    
-    /**
-     * Get the value for the {@code fairness} configuration attribute for pools
-     * created with this configuration instance.
-     *
-     * @return  The current setting of {@code fairness} for this configuration
-     *          instance
-     *
-     * @see GenericObjectPool#getFairness()
-     * @see GenericKeyedObjectPool#getFairness()
-     */
-    public boolean getFairness() {
-        return fairness;
-    }
 
     /**
      * Set the value for the {@code lifo} configuration attribute for pools
@@ -231,20 +208,6 @@ public abstract class BaseObjectPoolConf
     public void setLifo(boolean lifo) {
         this.lifo = lifo;
     }
-    
-    /**
-     * Set the value for the {@code fairness} configuration attribute for pools
-     * created with this configuration instance.
-     *
-     * @param fairness The new setting of {@code fairness}
-     *        for this configuration instance
-     *
-     * @see GenericObjectPool#getFairness()
-     * @see GenericKeyedObjectPool#getFairness()
-     */
-    public void setFairness(boolean fairness) {
-        this.fairness = fairness;
-    }
 
     /**
      * Get the value for the {@code maxWait} configuration attribute for pools

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java 
(original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPool.java 
Wed Jul  9 22:08:17 2014
@@ -103,7 +103,6 @@ public class GenericKeyedObjectPool<K,T>
             throw new IllegalArgumentException("factory may not be null");
         }
         this.factory = factory;
-        this.fairness = config.getFairness();
 
         setConfig(config);
 
@@ -341,7 +340,7 @@ public class GenericKeyedObjectPool<K,T>
         boolean blockWhenExhausted = getBlockWhenExhausted();
 
         boolean create;
-        long waitTime = System.currentTimeMillis();
+        long waitTime = 0;
         ObjectDeque<T> objectDeque = register(key);
 
         try {
@@ -357,8 +356,10 @@ public class GenericKeyedObjectPool<K,T>
                         if (borrowMaxWaitMillis < 0) {
                             p = objectDeque.getIdleObjects().takeFirst();
                         } else {
+                            waitTime = System.currentTimeMillis();
                             p = objectDeque.getIdleObjects().pollFirst(
                                     borrowMaxWaitMillis, 
TimeUnit.MILLISECONDS);
+                            waitTime = System.currentTimeMillis() - waitTime;
                         }
                     }
                     if (p == null) {
@@ -430,7 +431,7 @@ public class GenericKeyedObjectPool<K,T>
             deregister(key);
         }
 
-        updateStatsBorrow(p, System.currentTimeMillis() - waitTime);
+        updateStatsBorrow(p, waitTime);
 
         return p.getObject();
     }
@@ -533,12 +534,6 @@ public class GenericKeyedObjectPool<K,T>
             } else {
                 idleObjects.addLast(p);
             }
-            if (isClosed()) {
-                // Pool closed while object was being added to idle objects.
-                // Make sure the returned object is destroyed rather than left
-                // in the idle object pool (which would effectively be a leak)
-                clear(key);
-            }
         }
 
         if (hasBorrowWaiters()) {
@@ -1088,7 +1083,7 @@ public class GenericKeyedObjectPool<K,T>
                 lock.lock();
                 objectDeque = poolMap.get(k);
                 if (objectDeque == null) {
-                    objectDeque = new ObjectDeque<>(fairness);
+                    objectDeque = new ObjectDeque<>();
                     objectDeque.getNumInterested().incrementAndGet();
                     // NOTE: Keys must always be added to both poolMap and
                     //       poolKeyList at the same time while protected by
@@ -1404,7 +1399,8 @@ public class GenericKeyedObjectPool<K,T>
      */
     private class ObjectDeque<S> {
 
-        private final LinkedBlockingDeque<PooledObject<S>> idleObjects;
+        private final LinkedBlockingDeque<PooledObject<S>> idleObjects =
+                new LinkedBlockingDeque<>();
 
         /*
          * Number of instances created - number destroyed.
@@ -1429,15 +1425,6 @@ public class GenericKeyedObjectPool<K,T>
         private final AtomicLong numInterested = new AtomicLong(0);
 
         /**
-         * Create a new ObjecDeque with the given fairness policy.
-         * @param fairness true means client threads waiting to borrow / 
return instances
-         * will be served as if waiting in a FIFO queue.
-         */
-        public ObjectDeque(boolean fairness) {
-            idleObjects = new LinkedBlockingDeque<>(fairness);
-        }
-
-        /**
          * Obtain the idle objects for the current key.
          *
          * @return The idle objects
@@ -1483,7 +1470,6 @@ public class GenericKeyedObjectPool<K,T>
     private volatile int maxTotalPerKey =
         GenericKeyedObjectPoolConfig.DEFAULT_MAX_TOTAL_PER_KEY;
     private final KeyedPooledObjectFactory<K,T> factory;
-    private final boolean fairness;
 
 
     //--- internal attributes 
--------------------------------------------------

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPoolMXBean.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPoolMXBean.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPoolMXBean.java
 (original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericKeyedObjectPoolMXBean.java
 Wed Jul  9 22:08:17 2014
@@ -41,11 +41,6 @@ public interface GenericKeyedObjectPoolM
      */
     boolean getBlockWhenExhausted();
     /**
-     * See {@link GenericKeyedObjectPool#getFairness()}
-     * @return See {@link GenericKeyedObjectPool#getFairness()}
-     */
-    boolean getFairness();
-    /**
      * See {@link GenericKeyedObjectPool#getLifo()}
      * @return See {@link GenericKeyedObjectPool#getLifo()}
      */

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPool.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPool.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPool.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPool.java 
Wed Jul  9 22:08:17 2014
@@ -109,8 +109,6 @@ public class GenericObjectPool<T> extend
         }
         this.factory = factory;
 
-        idleObjects = new LinkedBlockingDeque<>(config.getFairness());
-
         setConfig(config);
 
         startEvictor(getTimeBetweenEvictionRunsMillis());
@@ -422,7 +420,7 @@ public class GenericObjectPool<T> extend
         boolean blockWhenExhausted = getBlockWhenExhausted();
 
         boolean create;
-        long waitTime = System.currentTimeMillis();
+        long waitTime = 0;
 
         while (p == null) {
             create = false;
@@ -436,8 +434,10 @@ public class GenericObjectPool<T> extend
                     if (borrowMaxWaitMillis < 0) {
                         p = idleObjects.takeFirst();
                     } else {
+                        waitTime = System.currentTimeMillis();
                         p = idleObjects.pollFirst(borrowMaxWaitMillis,
                                 TimeUnit.MILLISECONDS);
+                        waitTime = System.currentTimeMillis() - waitTime;
                     }
                 }
                 if (p == null) {
@@ -506,7 +506,7 @@ public class GenericObjectPool<T> extend
             }
         }
 
-        updateStatsBorrow(p, System.currentTimeMillis() - waitTime);
+        updateStatsBorrow(p, waitTime);
 
         return p.getObject();
     }
@@ -607,12 +607,6 @@ public class GenericObjectPool<T> extend
             } else {
                 idleObjects.addLast(p);
             }
-            if (isClosed()) {
-                // Pool closed while object was being added to idle objects.
-                // Make sure the returned object is destroyed rather than left
-                // in the idle object pool (which would effectively be a leak)
-                clear();
-            }
         }
         updateStatsReturn(activeTime);
     }
@@ -909,12 +903,6 @@ public class GenericObjectPool<T> extend
                 idleObjects.addLast(p);
             }
         }
-        if (isClosed()) {
-            // Pool closed while object was being added to idle objects.
-            // Make sure the returned object is destroyed rather than left
-            // in the idle object pool (which would effectively be a leak)
-            clear();
-        }
     }
 
     /**
@@ -1109,7 +1097,8 @@ public class GenericObjectPool<T> extend
      * {@link #_maxActive} objects created at any one time.
      */
     private final AtomicLong createCount = new AtomicLong(0);
-    private final LinkedBlockingDeque<PooledObject<T>> idleObjects;
+    private final LinkedBlockingDeque<PooledObject<T>> idleObjects =
+        new LinkedBlockingDeque<>();
 
     // JMX specific attributes
     private static final String ONAME_BASE =

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPoolMXBean.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPoolMXBean.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPoolMXBean.java
 (original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/GenericObjectPoolMXBean.java
 Wed Jul  9 22:08:17 2014
@@ -41,11 +41,6 @@ public interface GenericObjectPoolMXBean
      * See {@link GenericObjectPool#getLifo()}
      * @return See {@link GenericObjectPool#getLifo()}
      */
-    boolean getFairness();  
-    /**
-     * See {@link GenericObjectPool#getFairness()}
-     * @return See {@link GenericObjectPool#getFairness()}
-     */
     boolean getLifo();
     /**
      * See {@link GenericObjectPool#getMaxIdle()}

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/InterruptibleReentrantLock.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/InterruptibleReentrantLock.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/InterruptibleReentrantLock.java
 (original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/InterruptibleReentrantLock.java
 Wed Jul  9 22:08:17 2014
@@ -34,16 +34,6 @@ class InterruptibleReentrantLock extends
     private static final long serialVersionUID = 1L;
 
     /**
-     * Create a new InterruptibleReentrantLock with the given fairness policy.
-     * 
-     * @param fairness true means threads should acquire contended locks as if
-     * waiting in a FIFO queue
-     */
-    public InterruptibleReentrantLock(boolean fairness) {
-        super(fairness);
-    }
-
-    /**
      * Interrupt the threads that are waiting on a specific condition
      *
      * @param condition the condition on which the threads are waiting.

Modified: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java 
(original)
+++ 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java 
Wed Jul  9 22:08:17 2014
@@ -146,13 +146,14 @@ class LinkedBlockingDeque<E> extends Abs
     private final int capacity;
 
     /** Main lock guarding all access */
-    private final InterruptibleReentrantLock lock;
+    private final InterruptibleReentrantLock lock =
+            new InterruptibleReentrantLock();
 
     /** Condition for waiting takes */
-    private final Condition notEmpty;
+    private final Condition notEmpty = lock.newCondition();
 
     /** Condition for waiting puts */
-    private final Condition notFull;
+    private final Condition notFull = lock.newCondition();
 
     /**
      * Creates a {@code LinkedBlockingDeque} with a capacity of
@@ -161,16 +162,6 @@ class LinkedBlockingDeque<E> extends Abs
     public LinkedBlockingDeque() {
         this(Integer.MAX_VALUE);
     }
-    
-    /**
-     * Creates a {@code LinkedBlockingDeque} with a capacity of
-     * {@link Integer#MAX_VALUE} and the given fairness policy.
-     * @param fairness true means threads waiting on the deque should be served
-     * as if waiting in a FIFO request queue
-     */
-    public LinkedBlockingDeque(boolean fairness) {
-        this(Integer.MAX_VALUE, fairness);
-    }
 
     /**
      * Creates a {@code LinkedBlockingDeque} with the given (fixed) capacity.
@@ -179,24 +170,8 @@ class LinkedBlockingDeque<E> extends Abs
      * @throws IllegalArgumentException if {@code capacity} is less than 1
      */
     public LinkedBlockingDeque(int capacity) {
-        this(capacity, false);
-    }
-    
-    /**
-     * Creates a {@code LinkedBlockingDeque} with the given (fixed) capacity
-     * and fairness policy.
-     *
-     * @param capacity the capacity of this deque
-     * @param fairness true means threads waiting on the deque should be served
-     * as if waiting in a FIFO request queue
-     * @throws IllegalArgumentException if {@code capacity} is less than 1
-     */
-    public LinkedBlockingDeque(int capacity, boolean fairness) {
         if (capacity <= 0) throw new IllegalArgumentException();
         this.capacity = capacity;
-        lock = new InterruptibleReentrantLock(fairness);
-        notEmpty = lock.newCondition();
-        notFull = lock.newCondition();
     }
 
     /**

Propchange: 
tomcat/trunk/java/org/apache/tomcat/dbcp/pool2/impl/LinkedBlockingDeque.java
------------------------------------------------------------------------------
--- svn:mergeinfo (added)
+++ svn:mergeinfo Wed Jul  9 22:08:17 2014
@@ -0,0 +1,9 @@
+/commons/proper/pool/trunk/src/main/java/org/apache/commons/pool2/impl/LinkedBlockingDeque.java:1593516-1593563
+/harmony/enhanced/classlib/trunk/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:713674-735919,765923-926091,926318-926838
+/harmony/enhanced/classlib/trunk/working_classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:884014-884286
+/harmony/enhanced/java/branches/mrh/classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:935751-941490
+/harmony/enhanced/java/trunk/classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:929253-1049534
+/harmony/enhanced/trunk/classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:476395-929252
+/harmony/enhanced/trunk/working_classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:476396-920147
+/incubator/harmony/enhanced/trunk/classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:292550-476394
+/incubator/harmony/enhanced/trunk/working_classlib/modules/concurrent/src/main/java/java/util/concurrent/LinkedBlockingDeque.java:423974-476394

Modified: tomcat/trunk/res/checkstyle/org-import-control.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/res/checkstyle/org-import-control.xml?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- tomcat/trunk/res/checkstyle/org-import-control.xml (original)
+++ tomcat/trunk/res/checkstyle/org-import-control.xml Wed Jul  9 22:08:17 2014
@@ -124,7 +124,6 @@
     <allow pkg="javax.servlet"/>
     <subpackage name="buildutil">
       <allow pkg="org.apache.tools.ant"/>
-      <allow pkg="org.apache.tomcat.util"/>
     </subpackage>
     <subpackage name="dbcp">
       <allow pkg="org.apache.juli"/>

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1609327&r1=1609326&r2=1609327&view=diff
==============================================================================
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Wed Jul  9 22:08:17 2014
@@ -217,10 +217,6 @@
         <bug>56685</bug>: Add quotes necessary for <code>daemon.sh</code> to
         work correctly on Solaris. Based on a suggesiton by lfuka. (markt)
       </fix>
-      <update>
-        Update package renamed Apache Commons Pool2 to r1609323 to pick various
-        bug fixes. (markt)
-      </update>
     </changelog>
   </subsection>
 </section>



---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to