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: [email protected]
For additional commands, e-mail: [email protected]