You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2014/08/13 14:49:35 UTC

svn commit: r1617716 - in /qpid/trunk/qpid/java: amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/ broker-core/src/main/java/org/apache/qpid/server/message/internal/ broker-plugins/management-http/src/main/java/org/apache/...

Author: rgodfrey
Date: Wed Aug 13 12:49:35 2014
New Revision: 1617716

URL: http://svn.apache.org/r1617716
Log:
QPID-5993 : [Java] Address issues identified by Findbugs

Modified:
    qpid/trunk/qpid/java/amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/Hello.java
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessageMetaDataType.java
    qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/DefinedFileServlet.java
    qpid/trunk/qpid/java/client/example/src/main/java/org/apache/qpid/example/Hello.java
    qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/AbstractRunner.java
    qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/SpawnedBrokerHolder.java
    qpid/trunk/qpid/java/tools/src/main/java/org/apache/qpid/tools/JNDICheck.java

Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/Hello.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/Hello.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/Hello.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/example/src/main/java/org/apache/qpid/amqp_1_0/jms/example/Hello.java Wed Aug 13 12:49:35 2014
@@ -20,6 +20,7 @@
  */
 package org.apache.qpid.amqp_1_0.jms.example;
 
+import java.io.InputStream;
 import java.util.Properties;
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;
@@ -51,11 +52,11 @@ public class Hello
 
     private void runExample()
     {
-        try
+        try(InputStream propertiesStream = getClass().getResourceAsStream("hello.properties"))
         {
-            // Read the hello.properties JNDI properties file and use contents to create the InitialContext.
             Properties properties = new Properties();
-            properties.load(getClass().getResourceAsStream("hello.properties"));
+            // Read the hello.properties JNDI properties file and use contents to create the InitialContext.
+            properties.load(propertiesStream);
             Context context = new InitialContext(properties);
             // Alternatively, JNDI information can be supplied by setting the "java.naming.factory.initial"
             // system property to value "org.apache.qpid.amqp_1_0.jms.jndi.PropertiesFileInitialContextFactory"

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessage.java Wed Aug 13 12:49:35 2014
@@ -62,9 +62,8 @@ public class InternalMessage extends Abs
         _contentSize = msg.getMetaData().getContentSize();
         ByteBuffer buf = msg.getContent(0, _contentSize);
 
-        try
+        try(ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf)))
         {
-            ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf));
             _messageBody = is.readObject();
 
         }
@@ -128,9 +127,8 @@ public class InternalMessage extends Abs
             internalHeader = new InternalMessageHeader(header);
         }
         ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-        try
+        try (ObjectOutputStream os = new ObjectOutputStream(bytesOut))
         {
-            ObjectOutputStream os = new ObjectOutputStream(bytesOut);
             os.writeObject(bodyObject);
             byte[] bytes = bytesOut.toByteArray();
 
@@ -181,76 +179,79 @@ public class InternalMessage extends Abs
                                                                                final Object messageBody)
     {
 
-        ByteArrayOutputStream bytesOut = new ByteArrayOutputStream();
-        try
+
+        try(ByteArrayOutputStream bytesOut = new ByteArrayOutputStream())
         {
-            ObjectOutputStream os = new ObjectOutputStream(bytesOut);
-            os.writeObject(messageBody);
-            final byte[] bytes = bytesOut.toByteArray();
+            try(ObjectOutputStream os = new ObjectOutputStream(bytesOut))
+            {
+                os.writeObject(messageBody);
+                final byte[] bytes = bytesOut.toByteArray();
 
 
-            final InternalMessageMetaData metaData = InternalMessageMetaData.create(persistent, header, bytes.length);
+                final InternalMessageMetaData metaData =
+                        InternalMessageMetaData.create(persistent, header, bytes.length);
 
 
-            return new StoredMessage<InternalMessageMetaData>()
-            {
-                @Override
-                public InternalMessageMetaData getMetaData()
+                return new StoredMessage<InternalMessageMetaData>()
                 {
-                    return metaData;
-                }
+                    @Override
+                    public InternalMessageMetaData getMetaData()
+                    {
+                        return metaData;
+                    }
 
-                @Override
-                public long getMessageNumber()
-                {
-                    return messageNumber;
-                }
+                    @Override
+                    public long getMessageNumber()
+                    {
+                        return messageNumber;
+                    }
 
-                @Override
-                public void addContent(final int offsetInMessage, final ByteBuffer src)
-                {
-                    throw new UnsupportedOperationException();
-                }
+                    @Override
+                    public void addContent(final int offsetInMessage, final ByteBuffer src)
+                    {
+                        throw new UnsupportedOperationException();
+                    }
 
-                @Override
-                public int getContent(final int offsetInMessage, final ByteBuffer dst)
-                {
-                    ByteBuffer buffer = ByteBuffer.wrap(bytes);
-                    buffer.position(offsetInMessage);
-                    buffer = buffer.slice();
-                    if(dst.remaining() < buffer.remaining())
-                    {
-                        buffer.limit(dst.remaining());
-                    }
-                    int pos = dst.position();
-                    dst.put(buffer);
-                    return dst.position()-pos;
-                }
+                    @Override
+                    public int getContent(final int offsetInMessage, final ByteBuffer dst)
+                    {
+                        ByteBuffer buffer = ByteBuffer.wrap(bytes);
+                        buffer.position(offsetInMessage);
+                        buffer = buffer.slice();
+                        if (dst.remaining() < buffer.remaining())
+                        {
+                            buffer.limit(dst.remaining());
+                        }
+                        int pos = dst.position();
+                        dst.put(buffer);
+                        return dst.position() - pos;
+                    }
 
-                @Override
-                public ByteBuffer getContent(final int offsetInMessage, final int size)
-                {
-                    return ByteBuffer.wrap(bytes,offsetInMessage,size);
-                }
+                    @Override
+                    public ByteBuffer getContent(final int offsetInMessage, final int size)
+                    {
+                        return ByteBuffer.wrap(bytes, offsetInMessage, size);
+                    }
 
-                @Override
-                public void remove()
-                {
-                    throw new UnsupportedOperationException();
-                }
+                    @Override
+                    public void remove()
+                    {
+                        throw new UnsupportedOperationException();
+                    }
 
-                @Override
-                public boolean isInMemory()
-                {
-                    return true;
-                }
+                    @Override
+                    public boolean isInMemory()
+                    {
+                        return true;
+                    }
 
-                @Override
-                public boolean flowToDisk()
-                {
-                    return false;
-                }
-            };
+                    @Override
+                    public boolean flowToDisk()
+                    {
+                        return false;
+                    }
+                };
+            }
         }
         catch (IOException e)
         {

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessageMetaDataType.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessageMetaDataType.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessageMetaDataType.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/message/internal/InternalMessageMetaDataType.java Wed Aug 13 12:49:35 2014
@@ -46,9 +46,8 @@ public class InternalMessageMetaDataType
     @Override
     public InternalMessageMetaData createMetaData(final ByteBuffer buf)
     {
-        try
+        try(ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf)))
         {
-            ObjectInputStream is = new ObjectInputStream(new ByteBufferInputStream(buf));
             InternalMessageMetaData metaData = (InternalMessageMetaData) is.readObject();
             return metaData;
         }

Modified: qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/DefinedFileServlet.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/DefinedFileServlet.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/DefinedFileServlet.java (original)
+++ qpid/trunk/qpid/java/broker-plugins/management-http/src/main/java/org/apache/qpid/server/management/plugin/servlet/DefinedFileServlet.java Wed Aug 13 12:49:35 2014
@@ -59,23 +59,25 @@ public class DefinedFileServlet extends 
     @Override
     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
     {
-        final OutputStream output = HttpManagementUtil.getOutputStream(request, response);
-        InputStream fileInput = getClass().getResourceAsStream("/resources/"+_filename);
-
-        if(fileInput != null)
+        try (OutputStream output = HttpManagementUtil.getOutputStream(request, response))
         {
-            byte[] buffer = new byte[1024];
-            response.setStatus(HttpServletResponse.SC_OK);
-            int read = 0;
+            InputStream fileInput = getClass().getResourceAsStream("/resources/" + _filename);
 
-            while((read = fileInput.read(buffer)) > 0)
+            if (fileInput != null)
             {
-                output.write(buffer, 0, read);
+                byte[] buffer = new byte[1024];
+                response.setStatus(HttpServletResponse.SC_OK);
+                int read = 0;
+
+                while ((read = fileInput.read(buffer)) > 0)
+                {
+                    output.write(buffer, 0, read);
+                }
+            }
+            else
+            {
+                response.sendError(HttpServletResponse.SC_NOT_FOUND, "unknown file: " + _filename);
             }
-        }
-        else
-        {
-            response.sendError(HttpServletResponse.SC_NOT_FOUND, "unknown file: "+ _filename);
         }
     }
 }

Modified: qpid/trunk/qpid/java/client/example/src/main/java/org/apache/qpid/example/Hello.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/example/src/main/java/org/apache/qpid/example/Hello.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/client/example/src/main/java/org/apache/qpid/example/Hello.java (original)
+++ qpid/trunk/qpid/java/client/example/src/main/java/org/apache/qpid/example/Hello.java Wed Aug 13 12:49:35 2014
@@ -21,10 +21,18 @@
 
 package org.apache.qpid.example;
 
-import javax.jms.*;
+import java.io.InputStream;
+import java.util.Properties;
+
+import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
+import javax.jms.Destination;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+import javax.jms.TextMessage;
 import javax.naming.Context;
 import javax.naming.InitialContext;
-import java.util.Properties;
 
 
 public class Hello 
@@ -42,9 +50,10 @@ public class Hello 
 
     private void runTest() 
     {
-        try {
+        try (InputStream resourceAsStream = this.getClass().getResourceAsStream("hello.properties"))
+        {
             Properties properties = new Properties();
-            properties.load(this.getClass().getResourceAsStream("hello.properties"));
+            properties.load(resourceAsStream);
             Context context = new InitialContext(properties);
 
             ConnectionFactory connectionFactory = (ConnectionFactory) context.lookup("qpidConnectionfactory");

Modified: qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/AbstractRunner.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/AbstractRunner.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/AbstractRunner.java (original)
+++ qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/AbstractRunner.java Wed Aug 13 12:49:35 2014
@@ -42,10 +42,10 @@ public class AbstractRunner
     {
         Context context = null;
 
-        try
+        try(FileInputStream inStream = new FileInputStream(getJndiConfig()))
         {
             final Properties properties = new Properties();
-            properties.load(new FileInputStream(getJndiConfig()));
+            properties.load(inStream);
             context = new InitialContext(properties);
         }
         catch (Exception e)
@@ -71,4 +71,4 @@ public class AbstractRunner
     {
         return _cliOptions;
     }
-}
\ No newline at end of file
+}

Modified: qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/SpawnedBrokerHolder.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/SpawnedBrokerHolder.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/SpawnedBrokerHolder.java (original)
+++ qpid/trunk/qpid/java/systests/src/main/java/org/apache/qpid/test/utils/SpawnedBrokerHolder.java Wed Aug 13 12:49:35 2014
@@ -85,62 +85,61 @@ public class SpawnedBrokerHolder impleme
         try
         {
             Process p = Runtime.getRuntime().exec(new String[] {"wmic", "process", "list"});
-            BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
-            String line;
-            String headers = reader.readLine();
-            int processIdOffset = headers.indexOf(" ProcessId") + 1;
-            int parentProcessIdOffset = headers.indexOf(" ParentProcessId") + 1;
-            String parentProcess = null;
-            Map<String,List<String>> parentProcessMap = new HashMap<String, List<String>>();
-
-            while ((line = reader.readLine()) != null)
+            try(BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream())))
             {
-                if(line.length() > processIdOffset)
+                String line;
+                String headers = reader.readLine();
+                int processIdOffset = headers.indexOf(" ProcessId") + 1;
+                int parentProcessIdOffset = headers.indexOf(" ParentProcessId") + 1;
+                String parentProcess = null;
+                Map<String, List<String>> parentProcessMap = new HashMap<String, List<String>>();
+
+                while ((line = reader.readLine()) != null)
                 {
-                    String processIdStr = line.substring(processIdOffset);
-                    processIdStr = processIdStr.substring(0, processIdStr.indexOf(' '));
-                    processIdStr = processIdStr.trim();
-
-                    String parentProcessIdStr = line.substring(parentProcessIdOffset);
-                    parentProcessIdStr = parentProcessIdStr.substring(0, parentProcessIdStr.indexOf(' '));
-                    parentProcessIdStr = parentProcessIdStr.trim();
-                    if(parentProcessIdStr.length() > 0 && (parentProcess == null || parentProcess.equals(parentProcessIdStr)))
+                    if (line.length() > processIdOffset)
                     {
-                        List<String> children = parentProcessMap.get(parentProcessIdStr);
-                        if(children == null)
+                        String processIdStr = line.substring(processIdOffset);
+                        processIdStr = processIdStr.substring(0, processIdStr.indexOf(' '));
+                        processIdStr = processIdStr.trim();
+
+                        String parentProcessIdStr = line.substring(parentProcessIdOffset);
+                        parentProcessIdStr = parentProcessIdStr.substring(0, parentProcessIdStr.indexOf(' '));
+                        parentProcessIdStr = parentProcessIdStr.trim();
+                        if (parentProcessIdStr.length() > 0 && (parentProcess == null || parentProcess.equals(
+                                parentProcessIdStr)))
                         {
-                            children = new ArrayList<String>();
-                            parentProcessMap.put(parentProcessIdStr,children);
+                            List<String> children = parentProcessMap.get(parentProcessIdStr);
+                            if (children == null)
+                            {
+                                children = new ArrayList<String>();
+                                parentProcessMap.put(parentProcessIdStr, children);
+                            }
+                            children.add(processIdStr);
+                        }
+                        if (line.substring(0, _brokerCommand.length() + 7)
+                                .toLowerCase()
+                                .contains(_brokerCommand.toLowerCase()))
+                        {
+                            parentProcess = processIdStr;
                         }
-                        children.add(processIdStr);
-                    }
-                    if(line.substring(0,_brokerCommand.length()+7).toLowerCase().contains(_brokerCommand.toLowerCase()))
-                    {
-                        parentProcess = processIdStr;
-                    }
 
-                }
-                if(parentProcess != null)
-                {
-                    List<String> children = parentProcessMap.get(parentProcess);
-                    if(children != null)
+                    }
+                    if (parentProcess != null)
                     {
-                        for(String child : children)
+                        List<String> children = parentProcessMap.get(parentProcess);
+                        if (children != null)
                         {
-                            p = Runtime.getRuntime().exec(new String[] {"taskkill", "/PID", child, "/T", "/F"});
-                            reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
-                            while((line = reader.readLine()) != null)
+                            for (String child : children)
                             {
+                                p = Runtime.getRuntime().exec(new String[]{"taskkill", "/PID", child, "/T", "/F"});
+                                consumeAllOutput(p);
                             }
                         }
+                        p = Runtime.getRuntime().exec(new String[]{"taskkill", "/PID", parentProcess, "/T", "/F"});
+                        consumeAllOutput(p);
                     }
-                    p = Runtime.getRuntime().exec(new String[] {"taskkill", "/PID", parentProcess, "/T", "/F"});
-                    reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
-                    while((line = reader.readLine()) != null)
-                    {
-                    }
-                }
 
+                }
             }
         }
         catch (IOException e)
@@ -149,6 +148,19 @@ public class SpawnedBrokerHolder impleme
         }
     }
 
+    private static void consumeAllOutput(Process p) throws IOException
+    {
+        try(InputStreamReader inputStreamReader = new InputStreamReader(p.getInputStream()))
+        {
+            try (BufferedReader reader = new BufferedReader(inputStreamReader))
+            {
+                while (reader.readLine() != null)
+                {
+                }
+            }
+        }
+    }
+
     @Override
     public void kill()
     {

Modified: qpid/trunk/qpid/java/tools/src/main/java/org/apache/qpid/tools/JNDICheck.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/tools/src/main/java/org/apache/qpid/tools/JNDICheck.java?rev=1617716&r1=1617715&r2=1617716&view=diff
==============================================================================
--- qpid/trunk/qpid/java/tools/src/main/java/org/apache/qpid/tools/JNDICheck.java (original)
+++ qpid/trunk/qpid/java/tools/src/main/java/org/apache/qpid/tools/JNDICheck.java Wed Aug 13 12:49:35 2014
@@ -21,21 +21,22 @@
 
 package org.apache.qpid.tools;
 
-import org.apache.qpid.client.AMQDestination;
-import org.apache.qpid.client.AMQConnectionFactory;
-import org.apache.qpid.jms.FailoverPolicy;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.util.Enumeration;
+import java.util.Hashtable;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Properties;
 
 import javax.naming.Context;
 import javax.naming.InitialContext;
 import javax.naming.NamingException;
-import java.util.Properties;
-import java.util.Hashtable;
-import java.util.Enumeration;
-import java.util.List;
-import java.util.LinkedList;
-import java.io.IOException;
-import java.io.File;
-import java.io.FileInputStream;
+
+import org.apache.qpid.client.AMQConnectionFactory;
+import org.apache.qpid.client.AMQDestination;
+import org.apache.qpid.jms.FailoverPolicy;
 
 public class JNDICheck
 {
@@ -79,9 +80,9 @@ public class JNDICheck
         // Load JNDI properties
         Properties properties = new Properties();
 
-        try
+        try(FileInputStream propertiesStream = new FileInputStream(new File(propertyFile)))
         {
-            properties.load(new FileInputStream(new File(propertyFile)));
+            properties.load(propertiesStream);
         }
         catch (IOException e)
         {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org