You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2012/07/12 23:27:13 UTC
svn commit: r1360957 - in /tomcat/trunk/java/org/apache/catalina/core:
StandardServer.java StandardService.java
Author: markt
Date: Thu Jul 12 21:27:13 2012
New Revision: 1360957
URL: http://svn.apache.org/viewvc?rev=1360957&view=rev
Log:
Fix FindBugs issues (sync on mutated object)
Modified:
tomcat/trunk/java/org/apache/catalina/core/StandardServer.java
tomcat/trunk/java/org/apache/catalina/core/StandardService.java
Modified: tomcat/trunk/java/org/apache/catalina/core/StandardServer.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardServer.java?rev=1360957&r1=1360956&r2=1360957&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/StandardServer.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardServer.java Thu Jul 12 21:27:13 2012
@@ -128,6 +128,7 @@ public final class StandardServer extend
* The set of Services associated with this Server.
*/
private Service services[] = new Service[0];
+ private final Object servicesLock = new Object();
/**
@@ -336,7 +337,7 @@ public final class StandardServer extend
service.setServer(this);
- synchronized (services) {
+ synchronized (servicesLock) {
Service results[] = new Service[services.length + 1];
System.arraycopy(services, 0, results, 0, services.length);
results[services.length] = service;
@@ -518,7 +519,7 @@ public final class StandardServer extend
if (name == null) {
return (null);
}
- synchronized (services) {
+ synchronized (servicesLock) {
for (int i = 0; i < services.length; i++) {
if (name.equals(services[i].getName())) {
return (services[i]);
@@ -536,7 +537,7 @@ public final class StandardServer extend
@Override
public Service[] findServices() {
- return (services);
+ return services;
}
@@ -561,7 +562,7 @@ public final class StandardServer extend
@Override
public void removeService(Service service) {
- synchronized (services) {
+ synchronized (servicesLock) {
int j = -1;
for (int i = 0; i < services.length; i++) {
if (service == services[i]) {
@@ -739,7 +740,7 @@ public final class StandardServer extend
globalNamingResources.start();
// Start our defined Services
- synchronized (services) {
+ synchronized (servicesLock) {
for (int i = 0; i < services.length; i++) {
services[i].start();
}
Modified: tomcat/trunk/java/org/apache/catalina/core/StandardService.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/core/StandardService.java?rev=1360957&r1=1360956&r2=1360957&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/core/StandardService.java (original)
+++ tomcat/trunk/java/org/apache/catalina/core/StandardService.java Thu Jul 12 21:27:13 2012
@@ -80,6 +80,7 @@ public class StandardService extends Lif
* The set of Connectors associated with this Service.
*/
protected Connector connectors[] = new Connector[0];
+ private final Object connectorsLock = new Object();
/**
*
@@ -204,7 +205,7 @@ public class StandardService extends Lif
@Override
public void addConnector(Connector connector) {
- synchronized (connectors) {
+ synchronized (connectorsLock) {
connector.setService(this);
Connector results[] = new Connector[connectors.length + 1];
System.arraycopy(connectors, 0, results, 0, connectors.length);
@@ -254,7 +255,7 @@ public class StandardService extends Lif
@Override
public Connector[] findConnectors() {
- return (connectors);
+ return connectors;
}
@@ -269,7 +270,7 @@ public class StandardService extends Lif
@Override
public void removeConnector(Connector connector) {
- synchronized (connectors) {
+ synchronized (connectorsLock) {
int j = -1;
for (int i = 0; i < connectors.length; i++) {
if (connector == connectors[i]) {
@@ -426,7 +427,7 @@ public class StandardService extends Lif
}
// Start our defined Connectors second
- synchronized (connectors) {
+ synchronized (connectorsLock) {
for (Connector connector: connectors) {
try {
// If it has already failed, don't try and start it
@@ -455,7 +456,7 @@ public class StandardService extends Lif
protected void stopInternal() throws LifecycleException {
// Pause connectors first
- synchronized (connectors) {
+ synchronized (connectorsLock) {
for (Connector connector: connectors) {
try {
connector.pause();
@@ -479,7 +480,7 @@ public class StandardService extends Lif
}
// Now stop the connectors
- synchronized (connectors) {
+ synchronized (connectorsLock) {
for (Connector connector: connectors) {
if (!LifecycleState.STARTED.equals(
connector.getState())) {
@@ -528,7 +529,7 @@ public class StandardService extends Lif
}
// Initialize our defined Connectors
- synchronized (connectors) {
+ synchronized (connectorsLock) {
for (Connector connector : connectors) {
try {
connector.init();
@@ -547,7 +548,7 @@ public class StandardService extends Lif
@Override
protected void destroyInternal() throws LifecycleException {
// Destroy our defined Connectors
- synchronized (connectors) {
+ synchronized (connectorsLock) {
for (Connector connector : connectors) {
try {
connector.destroy();
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org