You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directmemory.apache.org by to...@apache.org on 2013/02/07 09:04:08 UTC

svn commit: r1443345 - in /directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory: cache/ measures/ memory/ memory/allocator/ memory/buffer/ serialization/

Author: tommaso
Date: Thu Feb  7 08:04:07 2013
New Revision: 1443345

URL: http://svn.apache.org/viewvc?rev=1443345&view=rev
Log:
DIRECTMEMORY-125 - using final modifiers, for each loops, avoiding unnecessary (un)boxing

Modified:
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/cache/CacheServiceImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/In.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/Monitor.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/MonitorServiceImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManager.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManagerServiceImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/PointerImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/RoundRobinAllocationPolicy.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/UnsafeMemoryManagerServiceImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/AbstractByteBufferAllocator.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeByteBufferAllocatorImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeUnsafeAllocatorImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/LazyUnsafeAllocatorImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/MergingByteBufferAllocatorImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/SlabByteBufferAllocatorImpl.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/buffer/AbstractMemoryBuffer.java
    directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/serialization/SerializerFactory.java

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/cache/CacheServiceImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/cache/CacheServiceImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/cache/CacheServiceImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/cache/CacheServiceImpl.java Thu Feb  7 08:04:07 2013
@@ -40,7 +40,7 @@ public class CacheServiceImpl<K, V>
     implements MutableCacheService<K, V>
 {
 
-    private static Logger logger = LoggerFactory.getLogger( CacheServiceImpl.class );
+    private static final Logger logger = LoggerFactory.getLogger( CacheServiceImpl.class );
 
     private ConcurrentMap<K, Pointer<V>> map;
 

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/In.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/In.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/In.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/In.java Thu Feb  7 08:04:07 2013
@@ -28,7 +28,7 @@ public class In
 
     private static final int HOUR_IN_DAY = 24;
 
-    private double measure;
+    private final double measure;
 
     public In( double measure )
     {

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/Monitor.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/Monitor.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/Monitor.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/Monitor.java Thu Feb  7 08:04:07 2013
@@ -36,7 +36,7 @@ public class Monitor
     //TODO: MONITORS looks like a good candidate to become a private field
     public static final Map<String, MonitorService> MONITORS = new HashMap<String, MonitorService>();
 
-    private MonitorService monitorService;
+    private final MonitorService monitorService;
 
     public static MonitorService get( String key )
     {

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/MonitorServiceImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/MonitorServiceImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/MonitorServiceImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/measures/MonitorServiceImpl.java Thu Feb  7 08:04:07 2013
@@ -33,7 +33,7 @@ public class MonitorServiceImpl
     implements MonitorService
 {
 
-    private AtomicLong hits = new AtomicLong( 0 );
+    private final AtomicLong hits = new AtomicLong( 0 );
 
     private long totalTime = 0;
 
@@ -41,7 +41,7 @@ public class MonitorServiceImpl
 
     private long max = -1;
 
-    public String name;
+    public final String name;
 
     private static final Logger LOG = LoggerFactory.getLogger( MonitorServiceImpl.class );
 

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManager.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManager.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManager.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManager.java Thu Feb  7 08:04:07 2013
@@ -23,7 +23,7 @@ import java.io.IOException;
 
 public class MemoryManager
 {
-    private static MemoryManagerService<Object> memoryManager = new MemoryManagerServiceImpl<Object>();
+    private static final MemoryManagerService<Object> memoryManager = new MemoryManagerServiceImpl<Object>();
 
     private MemoryManager()
     {

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManagerServiceImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManagerServiceImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManagerServiceImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/MemoryManagerServiceImpl.java Thu Feb  7 08:04:07 2013
@@ -39,7 +39,7 @@ public class MemoryManagerServiceImpl<V>
     implements MemoryManagerService<V>
 {
 
-    protected static Logger logger = LoggerFactory.getLogger( MemoryManager.class );
+    protected static final Logger logger = LoggerFactory.getLogger( MemoryManager.class );
 
     List<Allocator> allocators;
 

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/PointerImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/PointerImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/PointerImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/PointerImpl.java Thu Feb  7 08:04:07 2013
@@ -43,9 +43,9 @@ public class PointerImpl<T>
 
     public long hits;
 
-    public AtomicBoolean free = new AtomicBoolean( true );
+    public final AtomicBoolean free = new AtomicBoolean( true );
 
-    public AtomicLong lastHit = new AtomicLong();
+    public final AtomicLong lastHit = new AtomicLong();
 
     public Class<? extends T> clazz;
 

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/RoundRobinAllocationPolicy.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/RoundRobinAllocationPolicy.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/RoundRobinAllocationPolicy.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/RoundRobinAllocationPolicy.java Thu Feb  7 08:04:07 2013
@@ -42,7 +42,7 @@ public class RoundRobinAllocationPolicy
     private List<Allocator> allocators;
 
     // Cyclic counter
-    private AtomicInteger buffersIndexCounter = new AtomicInteger( BUFFERS_INDEX_INITIAL_VALUE );
+    private final AtomicInteger buffersIndexCounter = new AtomicInteger( BUFFERS_INDEX_INITIAL_VALUE );
 
     // Default max number of allocations before returning null buffer.
     private static final int DEFAULT_MAX_ALLOCATIONS = 2;
@@ -73,9 +73,7 @@ public class RoundRobinAllocationPolicy
         // Thread safely increment and get the next buffer's index
         int i = incrementAndGetBufferIndex();
 
-        final Allocator allocator = allocators.get( i );
-
-        return allocator;
+        return allocators.get( i );
     }
 
     @Override

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/UnsafeMemoryManagerServiceImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/UnsafeMemoryManagerServiceImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/UnsafeMemoryManagerServiceImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/UnsafeMemoryManagerServiceImpl.java Thu Feb  7 08:04:07 2013
@@ -105,10 +105,8 @@ public class UnsafeMemoryManagerServiceI
     @Override
     public void clear()
     {
-        for ( Iterator<Pointer<V>> iterator = pointers.iterator(); iterator.hasNext(); )
-        {
-            Pointer<V> pointer = iterator.next();
-            free( pointer );
+        for (Pointer<V> pointer : pointers) {
+            free(pointer);
         }
     }
 

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/AbstractByteBufferAllocator.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/AbstractByteBufferAllocator.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/AbstractByteBufferAllocator.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/AbstractByteBufferAllocator.java Thu Feb  7 08:04:07 2013
@@ -64,7 +64,7 @@ public abstract class AbstractByteBuffer
 
     protected static Integer getHash( final ByteBuffer buffer )
     {
-        return Integer.valueOf( System.identityHashCode( buffer ) );
+        return System.identityHashCode(buffer);
     }
 
 }

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeByteBufferAllocatorImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeByteBufferAllocatorImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeByteBufferAllocatorImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeByteBufferAllocatorImpl.java Thu Feb  7 08:04:07 2013
@@ -52,13 +52,13 @@ public class FixedSizeByteBufferAllocato
     private final int sliceSize;
 
     // Total size of the current slab
-    private int totalSize;
+    private final int totalSize;
 
     // Tells if it returns null or throw an BufferOverflowException when the requested size is bigger than the size of the slices
-    private boolean returnNullWhenOversizingSliceSize = true;
+    private final boolean returnNullWhenOversizingSliceSize = true;
 
     // Tells if it returns null when no buffers are available
-    private boolean returnNullWhenNoBufferAvailable = true;
+    private final boolean returnNullWhenNoBufferAvailable = true;
 
     // Collection that keeps track of borrowed buffers
     private final Map<Integer, ByteBuffer> usedSliceBuffers = new ConcurrentHashMap<Integer, ByteBuffer>();

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeUnsafeAllocatorImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeUnsafeAllocatorImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeUnsafeAllocatorImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/FixedSizeUnsafeAllocatorImpl.java Thu Feb  7 08:04:07 2013
@@ -76,11 +76,8 @@ public class FixedSizeUnsafeAllocatorImp
     @Override
     public void clear()
     {
-        Iterator<UnsafeMemoryBuffer> iterator = memoryBuffers.iterator();
-        while ( iterator.hasNext() )
-        {
-            UnsafeMemoryBuffer memoryBuffer = iterator.next();
-            unsafe.setMemory( memoryBuffer.baseAddress, memoryBuffer.capacity, (byte) 0 );
+        for (UnsafeMemoryBuffer memoryBuffer : memoryBuffers) {
+            unsafe.setMemory(memoryBuffer.baseAddress, memoryBuffer.capacity, (byte) 0);
         }
     }
 
@@ -88,10 +85,8 @@ public class FixedSizeUnsafeAllocatorImp
     public int getCapacity()
     {
         long capacity = 0;
-        Iterator<UnsafeMemoryBuffer> iterator = memoryBuffers.iterator();
-        while ( iterator.hasNext() )
-        {
-            capacity += iterator.next().capacity;
+        for (UnsafeMemoryBuffer memoryBuffer : memoryBuffers) {
+            capacity += memoryBuffer.capacity;
         }
         return (int) capacity;
     }
@@ -194,8 +189,7 @@ public class FixedSizeUnsafeAllocatorImp
         @Override
         protected byte readByte( long offset )
         {
-            byte value = unsafe.getByte( baseAddress + offset );
-            return value;
+            return unsafe.getByte( baseAddress + offset );
         }
 
         @Override

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/LazyUnsafeAllocatorImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/LazyUnsafeAllocatorImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/LazyUnsafeAllocatorImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/LazyUnsafeAllocatorImpl.java Thu Feb  7 08:04:07 2013
@@ -84,11 +84,8 @@ public class LazyUnsafeAllocatorImpl
     @Override
     public void clear()
     {
-        Iterator<UnsafeMemoryBuffer> iterator = memoryBuffers.iterator();
-        while ( iterator.hasNext() )
-        {
-            UnsafeMemoryBuffer memoryBuffer = iterator.next();
-            unsafe.setMemory( memoryBuffer.baseAddress, memoryBuffer.capacity, (byte) 0 );
+        for (UnsafeMemoryBuffer memoryBuffer : memoryBuffers) {
+            unsafe.setMemory(memoryBuffer.baseAddress, memoryBuffer.capacity, (byte) 0);
         }
     }
 
@@ -96,10 +93,8 @@ public class LazyUnsafeAllocatorImpl
     public int getCapacity()
     {
         long capacity = 0;
-        Iterator<UnsafeMemoryBuffer> iterator = memoryBuffers.iterator();
-        while ( iterator.hasNext() )
-        {
-            capacity += iterator.next().capacity;
+        for (UnsafeMemoryBuffer memoryBuffer : memoryBuffers) {
+            capacity += memoryBuffer.capacity;
         }
         return (int) capacity;
     }
@@ -184,8 +179,7 @@ public class LazyUnsafeAllocatorImpl
         @Override
         protected byte readByte( long offset )
         {
-            byte value = unsafe.getByte( baseAddress + offset );
-            return value;
+            return unsafe.getByte( baseAddress + offset );
         }
 
         @Override

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/MergingByteBufferAllocatorImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/MergingByteBufferAllocatorImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/MergingByteBufferAllocatorImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/MergingByteBufferAllocatorImpl.java Thu Feb  7 08:04:07 2013
@@ -101,7 +101,7 @@ public class MergingByteBufferAllocatorI
      */
     protected void init()
     {
-        Integer totalSize = Integer.valueOf( parentBuffer.capacity() );
+        Integer totalSize = parentBuffer.capacity();
 
         for ( Integer i : generateFreeSizesRange( totalSize ) )
         {
@@ -271,7 +271,7 @@ public class MergingByteBufferAllocatorI
 
     private Collection<LinkedByteBuffer> getFreeLinkedByteBufferCollection( final LinkedByteBuffer linkedBuffer )
     {
-        final Integer size = Integer.valueOf( linkedBuffer.getBuffer().capacity() - 1 );
+        final Integer size = linkedBuffer.getBuffer().capacity() - 1;
         final Map.Entry<Integer, Collection<LinkedByteBuffer>> bufferCollectionEntry =
             freePointers.ceilingEntry( size );
         return bufferCollectionEntry.getValue();

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/SlabByteBufferAllocatorImpl.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/SlabByteBufferAllocatorImpl.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/SlabByteBufferAllocatorImpl.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/allocator/SlabByteBufferAllocatorImpl.java Thu Feb  7 08:04:07 2013
@@ -41,7 +41,7 @@ public class SlabByteBufferAllocatorImpl
 {
 
     // Tells if it returns null when no buffers are available
-    private boolean returnNullWhenNoBufferAvailable = true;
+    private final boolean returnNullWhenNoBufferAvailable = true;
 
     // Internal slabs sorted by sliceSize
     private final NavigableMap<Long, FixedSizeByteBufferAllocatorImpl> slabs =

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/buffer/AbstractMemoryBuffer.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/buffer/AbstractMemoryBuffer.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/buffer/AbstractMemoryBuffer.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/memory/buffer/AbstractMemoryBuffer.java Thu Feb  7 08:04:07 2013
@@ -45,7 +45,7 @@ public abstract class AbstractMemoryBuff
     @Override
     public boolean readBoolean()
     {
-        return readByte() == 1 ? true : false;
+        return readByte() == 1;
     }
 
     @Override
@@ -369,7 +369,7 @@ public abstract class AbstractMemoryBuff
         }
         if ( offset >= maxCapacity() )
         {
-            throw new IndexOutOfBoundsException( String.format( "Offset %s is higher than maximum legal index ",
+            throw new IndexOutOfBoundsException( String.format( "Offset %s is higher than maximum legal index %d",
                                                                 offset, ( maxCapacity() - 1 ) ) );
         }
     }

Modified: directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/serialization/SerializerFactory.java
URL: http://svn.apache.org/viewvc/directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/serialization/SerializerFactory.java?rev=1443345&r1=1443344&r2=1443345&view=diff
==============================================================================
--- directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/serialization/SerializerFactory.java (original)
+++ directmemory/trunk/directmemory-cache/src/main/java/org/apache/directmemory/serialization/SerializerFactory.java Thu Feb  7 08:04:07 2013
@@ -35,18 +35,13 @@ public final class SerializerFactory
 
     public static Serializer createNewSerializer( ClassLoader classLoader )
     {
-        Iterator<Serializer> serializers = load( Serializer.class, classLoader ).iterator();
 
         // iterate over all found services
-        while ( serializers.hasNext() )
-        {
+        for (Serializer serializer : load(Serializer.class, classLoader)) {
             // try getting the current service and return
-            try
-            {
-                return serializers.next();
-            }
-            catch ( Throwable t )
-            {
+            try {
+                return serializer;
+            } catch (Throwable t) {
                 // just ignore, skip and try getting the next
             }
         }
@@ -57,22 +52,16 @@ public final class SerializerFactory
     public static <S extends Serializer> S createNewSerializer( Class<S> serializer )
         throws SerializerNotFoundException
     {
-        Iterator<Serializer> serializers = load( Serializer.class, serializer.getClassLoader() ).iterator();
 
         // iterate over all found services
-        while ( serializers.hasNext() )
-        {
+        for (Serializer serializer1 : load(Serializer.class, serializer.getClassLoader())) {
             // try getting the current service and return
-            try
-            {
-                Serializer next = serializers.next();
-                if ( serializer.isInstance( next ) )
-                {
-                    return serializer.cast( next );
+            try {
+                Serializer next = serializer1;
+                if (serializer.isInstance(next)) {
+                    return serializer.cast(next);
                 }
-            }
-            catch ( Throwable t )
-            {
+            } catch (Throwable t) {
                 // just ignore, skip and try getting the next
             }
         }