You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gora.apache.org by le...@apache.org on 2015/09/05 18:05:50 UTC

[2/3] gora git commit: Java 7 changes and improvements including diamond operators, automatic resource handling, unnecessary boxing, collapsing exceptions, and iterations.

Java 7 changes and improvements including diamond operators, automatic resource handling, unnecessary boxing, collapsing exceptions, and iterations.


Project: http://git-wip-us.apache.org/repos/asf/gora/repo
Commit: http://git-wip-us.apache.org/repos/asf/gora/commit/f681764a
Tree: http://git-wip-us.apache.org/repos/asf/gora/tree/f681764a
Diff: http://git-wip-us.apache.org/repos/asf/gora/diff/f681764a

Branch: refs/heads/master
Commit: f681764a1b3fb9daeac57266418a874794d22809
Parents: 550c895
Author: Furkan KAMACI <fu...@gmail.com>
Authored: Sat Sep 5 18:45:33 2015 +0300
Committer: Furkan KAMACI <fu...@gmail.com>
Committed: Sat Sep 5 18:45:33 2015 +0300

----------------------------------------------------------------------
 .../gora/accumulo/encoders/HexEncoder.java      | 10 +--
 .../gora/accumulo/store/AccumuloMapping.java    |  6 +-
 .../gora/accumulo/store/AccumuloStore.java      | 54 +++++---------
 .../accumulo/util/SignedBinaryEncoderTest.java  |  4 +-
 .../gora/cassandra/query/CassandraResult.java   |  8 +--
 .../cassandra/query/CassandraResultSet.java     |  2 +-
 .../cassandra/query/CassandraSuperColumn.java   | 10 +--
 .../serializers/AvroSerializerUtil.java         | 10 +--
 .../cassandra/serializers/ListSerializer.java   |  8 +--
 .../cassandra/serializers/MapSerializer.java    | 10 +--
 .../serializers/SpecificFixedSerializer.java    |  2 +-
 .../gora/cassandra/store/CassandraClient.java   | 10 +--
 .../gora/cassandra/store/CassandraMapping.java  | 12 ++--
 .../store/CassandraMappingManager.java          |  9 +--
 .../gora/cassandra/store/CassandraStore.java    | 33 +++++----
 .../org/apache/gora/compiler/GoraCompiler.java  | 15 ++--
 .../gora/compiler/utils/LicenseHeaders.java     | 13 +---
 .../gora/examples/WebPageDataCreator.java       |  2 +-
 .../org/apache/gora/avro/store/AvroStore.java   |  8 +--
 .../gora/avro/store/DataFileAvroStore.java      |  8 +--
 .../java/org/apache/gora/filter/FilterList.java |  4 +-
 .../apache/gora/filter/MapFieldValueFilter.java |  5 +-
 .../gora/filter/SingleFieldValueFilter.java     |  7 +-
 .../apache/gora/mapreduce/GoraInputFormat.java  |  4 +-
 .../gora/mapreduce/PersistentDeserializer.java  |  2 +-
 .../gora/mapreduce/PersistentSerializer.java    |  2 +-
 .../org/apache/gora/memory/store/MemStore.java  | 12 ++--
 .../impl/DirtyCollectionWrapper.java            |  2 +-
 .../gora/persistency/impl/DirtyListWrapper.java |  6 +-
 .../gora/persistency/impl/DirtyMapWrapper.java  |  4 +-
 .../persistency/ws/impl/BeanFactoryWSImpl.java  |  5 +-
 .../persistency/ws/impl/PersistentWSBase.java   |  6 +-
 .../apache/gora/store/impl/DataStoreBase.java   | 12 ++--
 .../store/impl/FileBackedDataStoreBase.java     |  4 +-
 .../java/org/apache/gora/util/AvroUtils.java    |  6 +-
 .../main/java/org/apache/gora/util/IOUtils.java | 14 ++--
 .../java/org/apache/gora/util/NodeWalker.java   |  2 +-
 .../java/org/apache/gora/util/StringUtils.java  |  6 +-
 .../java/org/apache/gora/GoraTestDriver.java    |  2 +-
 .../TestDataFileAvroStoreMapReduce.java         |  2 +-
 .../apache/gora/avro/store/TestAvroStore.java   |  4 +-
 .../gora/avro/store/TestDataFileAvroStore.java  |  4 +-
 .../gora/examples/TestWebPageDataCreator.java   |  2 +-
 .../gora/filter/TestMapFieldValueFilter.java    |  8 +--
 .../gora/filter/TestSingleFieldValueFilter.java |  8 +--
 .../gora/mapreduce/MapReduceTestUtils.java      |  6 +-
 .../gora/mapreduce/TestGoraInputFormat.java     |  2 +-
 .../apache/gora/memory/store/MemStoreTest.java  |  4 +-
 .../apache/gora/mock/store/MockDataStore.java   |  4 +-
 .../gora/query/impl/TestPartitionQueryImpl.java |  2 +-
 .../apache/gora/store/DataStoreTestUtil.java    | 76 ++++++++++----------
 .../apache/gora/store/TestDataStoreFactory.java |  2 +-
 .../java/org/apache/gora/util/TestIOUtils.java  |  4 +-
 .../java/org/apache/gora/goraci/Generator.java  |  2 +-
 .../java/org/apache/gora/goraci/Verify.java     |  6 +-
 .../apache/gora/hbase/store/HBaseMapping.java   |  6 +-
 .../org/apache/gora/hbase/store/HBaseStore.java | 20 +++---
 .../gora/hbase/store/HBaseTableConnection.java  |  4 +-
 .../apache/gora/hbase/util/DefaultFactory.java  |  2 +-
 .../gora/hbase/util/HBaseByteInterface.java     | 10 +--
 .../apache/gora/hbase/util/HBaseFilterUtil.java |  2 +-
 .../gora/hbase/util/TestHBaseByteInterface.java |  4 +-
 .../gora/mongodb/filters/DefaultFactory.java    |  4 +-
 .../gora/mongodb/filters/MongoFilterUtil.java   |  2 +-
 .../apache/gora/mongodb/store/MongoMapping.java |  6 +-
 .../apache/gora/mongodb/store/MongoStore.java   | 26 +++----
 .../mongodb/filters/DefaultFactoryTest.java     | 14 ++--
 .../mongodb/store/TestMongoMappingBuilder.java  |  4 +-
 .../gora/shims/hadoop/HadoopShimFactory.java    |  2 +-
 .../org/apache/gora/solr/query/SolrResult.java  |  2 +-
 .../org/apache/gora/solr/store/SolrMapping.java |  2 +-
 .../org/apache/gora/solr/store/SolrStore.java   | 19 +++--
 .../apache/gora/solr/store/TestSolrStore.java   |  4 +-
 .../apache/gora/tutorial/log/LogManager.java    | 35 +++++----
 74 files changed, 296 insertions(+), 347 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-accumulo/src/main/java/org/apache/gora/accumulo/encoders/HexEncoder.java
----------------------------------------------------------------------
diff --git a/gora-accumulo/src/main/java/org/apache/gora/accumulo/encoders/HexEncoder.java b/gora-accumulo/src/main/java/org/apache/gora/accumulo/encoders/HexEncoder.java
index d2291c5..6db5295 100644
--- a/gora-accumulo/src/main/java/org/apache/gora/accumulo/encoders/HexEncoder.java
+++ b/gora-accumulo/src/main/java/org/apache/gora/accumulo/encoders/HexEncoder.java
@@ -43,9 +43,9 @@ public class HexEncoder implements Encoder {
   
   private long decode(byte[] a) {
     long b = 0;
-    for (int i = 0; i < a.length; i++) {
+    for (byte anA : a) {
       b = b << 4;
-      b |= fromChar(a[i]);
+      b |= fromChar(anA);
     }
     
     return b;
@@ -183,9 +183,9 @@ public class HexEncoder implements Encoder {
     byte[] hex = new byte[bin.length * 2];
     
     int j = 0;
-    for (int i = 0; i < bin.length; i++) {
-      hex[j++] = chars[0x0f & (bin[i] >>> 4)];
-      hex[j++] = chars[0x0f & bin[i]];
+    for (byte aBin : bin) {
+      hex[j++] = chars[0x0f & (aBin >>> 4)];
+      hex[j++] = chars[0x0f & aBin];
     }
     
     return hex;

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloMapping.java
----------------------------------------------------------------------
diff --git a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloMapping.java b/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloMapping.java
index 08911e0..e0744b6 100644
--- a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloMapping.java
+++ b/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloMapping.java
@@ -23,9 +23,9 @@ import org.apache.accumulo.core.util.Pair;
 import org.apache.hadoop.io.Text;
 
 public class AccumuloMapping {
-  Map<String,Pair<Text,Text>> fieldMap = new HashMap<String,Pair<Text,Text>>();
-  Map<Pair<Text,Text>,String> columnMap = new HashMap<Pair<Text,Text>,String>();
-  Map<String,String> tableConfig = new HashMap<String,String>();
+  Map<String,Pair<Text,Text>> fieldMap = new HashMap<>();
+  Map<Pair<Text,Text>,String> columnMap = new HashMap<>();
+  Map<String,String> tableConfig = new HashMap<>();
   String tableName;
   String encoder;
 

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloStore.java
----------------------------------------------------------------------
diff --git a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloStore.java b/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloStore.java
index 6b213db..31141c3 100644
--- a/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloStore.java
+++ b/gora-accumulo/src/main/java/org/apache/gora/accumulo/store/AccumuloStore.java
@@ -349,11 +349,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
       } else {
         try {
           encoder = (Encoder) getClass().getClassLoader().loadClass(mapping.encoder).newInstance();
-        } catch (InstantiationException e) {
-          throw new IOException(e);
-        } catch (IllegalAccessException e) {
-          throw new IOException(e);
-        } catch (ClassNotFoundException e) {
+        } catch (InstantiationException | IllegalAccessException | ClassNotFoundException e) {
           throw new IOException(e);
         }
       }
@@ -371,9 +367,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
 
         if (autoCreateSchema && !schemaExists())
           createSchema();
-      } catch (AccumuloException e) {
-        throw new IOException(e);
-      } catch (AccumuloSecurityException e) {
+      } catch (AccumuloException | AccumuloSecurityException e) {
         throw new IOException(e);
       }
     } catch(IOException e){
@@ -411,7 +405,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
             if (qualifier.equals(""))
               qualifier = null;
 
-            Pair<Text,Text> col = new Pair<Text,Text>(new Text(family), qualifier == null ? null : new Text(qualifier));
+            Pair<Text,Text> col = new Pair<>(new Text(family), qualifier == null ? null : new Text(qualifier));
             mapping.fieldMap.put(name, col);
             mapping.columnMap.put(col, name);
           }
@@ -458,11 +452,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
         conn.tableOperations().setProperty(mapping.tableName, entry.getKey(), entry.getValue());
       }
 
-    } catch (AccumuloException e) {
-      LOG.error(e.getMessage(), e);
-    } catch (AccumuloSecurityException e) {
-      LOG.error(e.getMessage(), e);
-    } catch (TableExistsException e) {
+    } catch (AccumuloException | AccumuloSecurityException | TableExistsException e) {
       LOG.error(e.getMessage(), e);
     }
   }
@@ -474,11 +464,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
         batchWriter.close();
       batchWriter = null;
       conn.tableOperations().delete(mapping.tableName);
-    } catch (AccumuloException e) {
-      LOG.error(e.getMessage(), e);
-    } catch (AccumuloSecurityException e) {
-      LOG.error(e.getMessage(), e);
-    } catch (TableNotFoundException e) {
+    } catch (AccumuloException | AccumuloSecurityException | TableNotFoundException e) {
       LOG.error(e.getMessage(), e);
     }
   }
@@ -531,7 +517,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
 
       switch (field.schema().getType()) {
       case MAP:  // first entry only. Next are handled above on the next loop
-        currentMap = new DirtyMapWrapper<Utf8, Object>(new HashMap<Utf8, Object>());
+        currentMap = new DirtyMapWrapper<>(new HashMap<Utf8, Object>());
         currentPos = field.pos();
         currentFam = entry.getKey().getColumnFamily();
         currentSchema = field.schema().getValueType();
@@ -540,7 +526,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
             fromBytes(currentSchema, entry.getValue().get()));
         break;
       case ARRAY:
-        currentArray = new DirtyListWrapper<Object>(new ArrayList<Object>());
+        currentArray = new DirtyListWrapper<>(new ArrayList<>());
         currentPos = field.pos();
         currentFam = entry.getKey().getColumnFamily();
         currentSchema = field.schema().getElementType();
@@ -554,7 +540,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
         .get(firstNotNullSchemaTypeIndex(field.schema()));
         // map and array were coded without union index so need to be read the same way
         if (effectiveSchema.getType() == Type.ARRAY) {
-          currentArray = new DirtyListWrapper<Object>(new ArrayList<Object>());
+          currentArray = new DirtyListWrapper<>(new ArrayList<>());
           currentPos = field.pos();
           currentFam = entry.getKey().getColumnFamily();
           currentSchema = field.schema().getElementType();
@@ -564,7 +550,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
           break;
         }
         else if (effectiveSchema.getType() == Type.MAP) {
-          currentMap = new DirtyMapWrapper<Utf8, Object>(new HashMap<Utf8, Object>());
+          currentMap = new DirtyMapWrapper<>(new HashMap<Utf8, Object>());
           currentPos = field.pos();
           currentFam = entry.getKey().getColumnFamily();
           currentSchema = effectiveSchema.getValueType();
@@ -600,7 +586,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
    * @return String The field name
    */
   private String getFieldName(Entry<Key, Value> entry) {
-    String fieldName = mapping.columnMap.get(new Pair<Text,Text>(entry.getKey().getColumnFamily(),
+    String fieldName = mapping.columnMap.get(new Pair<>(entry.getKey().getColumnFamily(),
         entry.getKey().getColumnQualifier()));
     if (fieldName == null) {
       fieldName = mapping.columnMap.get(new Pair<Text,Text>(entry.getKey().getColumnFamily(), null));
@@ -693,7 +679,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
           }
           // continue like a regular top-level union
         case RECORD:
-          SpecificDatumWriter<Object> writer = new SpecificDatumWriter<Object>(field.schema());
+          SpecificDatumWriter<Object> writer = new SpecificDatumWriter<>(field.schema());
           ByteArrayOutputStream os = new ByteArrayOutputStream();
           org.apache.avro.io.BinaryEncoder encoder = EncoderFactory.get().binaryEncoder(os, null);
           writer.write(o, encoder);
@@ -854,7 +840,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
   public Result<K,T> execute(Query<K,T> query) {
     try {
       Scanner scanner = createScanner(query);
-      return new AccumuloResult<K,T>(this, query, scanner);
+      return new AccumuloResult<>(this, query, scanner);
     } catch (TableNotFoundException e) {
       // TODO return empty result?
       LOG.error(e.getMessage(), e);
@@ -864,7 +850,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
 
   @Override
   public Query<K,T> newQuery() {
-    return new AccumuloQuery<K,T>(this);
+    return new AccumuloQuery<>(this);
   }
 
   Text pad(Text key, int bytes) {
@@ -887,7 +873,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
       else
         tl = TabletLocator.getInstance(conn.getInstance(), new Text(Tables.getTableId(conn.getInstance(), mapping.tableName)));
 
-      Map<String,Map<KeyExtent,List<Range>>> binnedRanges = new HashMap<String,Map<KeyExtent,List<Range>>>();
+      Map<String,Map<KeyExtent,List<Range>>> binnedRanges = new HashMap<>();
 
       tl.invalidateCache();
       while (tl.binRanges(Collections.singletonList(createRange(query)), binnedRanges, credentials).size() > 0) {
@@ -900,7 +886,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
         tl.invalidateCache();
       }
 
-      List<PartitionQuery<K,T>> ret = new ArrayList<PartitionQuery<K,T>>();
+      List<PartitionQuery<K,T>> ret = new ArrayList<>();
 
       Text startRow = null;
       Text endRow = null;
@@ -910,7 +896,7 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
         endRow = new Text(toBytes(query.getEndKey()));
 
       //hadoop expects hostnames, accumulo keeps track of IPs... so need to convert
-      HashMap<String,String> hostNameCache = new HashMap<String,String>();
+      HashMap<String,String> hostNameCache = new HashMap<>();
 
       for (Entry<String,Map<KeyExtent,List<Range>>> entry : binnedRanges.entrySet()) {
         String ip = entry.getKey().split(":", 2)[0];
@@ -941,18 +927,14 @@ public class AccumuloStore<K,T extends PersistentBase> extends DataStoreBase<K,T
             endKey = fromBytes(getKeyClass(), TextUtil.getBytes(endRow));
           }
 
-          PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<K,T>(query, startKey, endKey, location);
+          PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<>(query, startKey, endKey, location);
           pqi.setConf(getConf());
           ret.add(pqi);
         }
       }
 
       return ret;
-    } catch (TableNotFoundException e) {
-      throw new IOException(e);
-    } catch (AccumuloException e) {
-      throw new IOException(e);
-    } catch (AccumuloSecurityException e) {
+    } catch (TableNotFoundException | AccumuloException | AccumuloSecurityException e) {
       throw new IOException(e);
     }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-accumulo/src/test/java/org/apache/gora/accumulo/util/SignedBinaryEncoderTest.java
----------------------------------------------------------------------
diff --git a/gora-accumulo/src/test/java/org/apache/gora/accumulo/util/SignedBinaryEncoderTest.java b/gora-accumulo/src/test/java/org/apache/gora/accumulo/util/SignedBinaryEncoderTest.java
index 16d54a7..0ae2c47 100644
--- a/gora-accumulo/src/test/java/org/apache/gora/accumulo/util/SignedBinaryEncoderTest.java
+++ b/gora-accumulo/src/test/java/org/apache/gora/accumulo/util/SignedBinaryEncoderTest.java
@@ -104,7 +104,7 @@ public class SignedBinaryEncoderTest {
   @Test
   public void testDouble() {
     
-    ArrayList<Double> testData = new ArrayList<Double>();
+    ArrayList<Double> testData = new ArrayList<>();
     testData.add(Double.NEGATIVE_INFINITY);
     testData.add(Double.MIN_VALUE);
     testData.add(Math.nextUp(Double.NEGATIVE_INFINITY));
@@ -135,7 +135,7 @@ public class SignedBinaryEncoderTest {
   @Test
   public void testFloat() {
     
-    ArrayList<Float> testData = new ArrayList<Float>();
+    ArrayList<Float> testData = new ArrayList<>();
     testData.add(Float.NEGATIVE_INFINITY);
     testData.add(Float.MIN_VALUE);
     testData.add(Math.nextUp(Float.NEGATIVE_INFINITY));

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResult.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResult.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResult.java
index 46dad15..dc99258 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResult.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResult.java
@@ -69,9 +69,9 @@ public class CassandraResult<K, T extends PersistentBase> extends ResultBase<K,
    * @return
    */
   private CassandraColumn getUnionTypeColumn(String pFieldName, Object[] pCassandraRow){
-    
-    for (int iCnt = 0; iCnt < pCassandraRow.length; iCnt++){
-      CassandraColumn cColumn = (CassandraColumn)pCassandraRow[iCnt];
+
+    for (Object currentPCassandraRow : pCassandraRow) {
+      CassandraColumn cColumn = (CassandraColumn) currentPCassandraRow;
       String columnName = StringSerializer.get().fromByteBuffer(cColumn.getName().duplicate());
       if (pFieldName.equals(columnName))
         return cColumn;
@@ -102,7 +102,7 @@ public class CassandraResult<K, T extends PersistentBase> extends ResultBase<K,
       
       if (fieldName != null) {
         // get field
-        if (fieldName.indexOf(CassandraStore.UNION_COL_SUFIX) < 0) {
+        if (!fieldName.contains(CassandraStore.UNION_COL_SUFIX)) {
 
           int pos = this.persistent.getSchema().getField(fieldName).pos();
           Field field = fields.get(pos);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResultSet.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResultSet.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResultSet.java
index 5fc4e6c..c994860 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResultSet.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraResultSet.java
@@ -34,7 +34,7 @@ public class CassandraResultSet<K> extends ArrayList<CassandraRow<K>> {
   /**
    * Maps keys to indices in the list.
    */
-  private HashMap<K, Integer> indexMap = new HashMap<K, Integer>();
+  private HashMap<K, Integer> indexMap = new HashMap<>();
 
   public CassandraRow<K> getRow(K key) {
     Integer integer = this.indexMap.get(key);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraSuperColumn.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraSuperColumn.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraSuperColumn.java
index b529316..84848bb 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraSuperColumn.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/query/CassandraSuperColumn.java
@@ -52,7 +52,7 @@ public class CassandraSuperColumn extends CassandraColumn {
     
     switch (type) {
       case ARRAY:
-        List<Object> array = new ArrayList<Object>();
+        List<Object> array = new ArrayList<>();
         
         for (HColumn<ByteBuffer, ByteBuffer> hColumn : this.hSuperColumn.getColumns()) {
           Object memberValue = fromByteBuffer(fieldSchema.getElementType(), hColumn.getValue());
@@ -63,11 +63,11 @@ public class CassandraSuperColumn extends CassandraColumn {
         
         break;
       case MAP:
-        Map<CharSequence, Object> map = new HashMap<CharSequence, Object>();
+        Map<CharSequence, Object> map = new HashMap<>();
 
         for (HColumn<ByteBuffer, ByteBuffer> hColumn : this.hSuperColumn.getColumns()) {
           CharSequence mapKey = CharSequenceSerializer.get().fromByteBuffer(hColumn.getName());
-          if (mapKey.toString().indexOf(CassandraStore.UNION_COL_SUFIX) < 0) {
+          if (!mapKey.toString().contains(CassandraStore.UNION_COL_SUFIX)) {
             Object memberValue = null;
             // We need detect real type for UNION Fields
             if (fieldSchema.getValueType().getType().equals(Type.UNION)){
@@ -170,9 +170,9 @@ public class CassandraSuperColumn extends CassandraColumn {
 }
 
   private HColumn<ByteBuffer, ByteBuffer> getUnionTypeColumn(String fieldName, Object[] hColumns) {
-    for (int iCnt = 0; iCnt < hColumns.length; iCnt++){
+    for (Object currentHColumn : hColumns) {
       @SuppressWarnings("unchecked")
-      HColumn<ByteBuffer, ByteBuffer> hColumn = (HColumn<ByteBuffer, ByteBuffer>)hColumns[iCnt];
+      HColumn<ByteBuffer, ByteBuffer> hColumn = (HColumn<ByteBuffer, ByteBuffer>) currentHColumn;
       String columnName = StringSerializer.get().fromByteBuffer(hColumn.getNameBytes().duplicate());
       if (fieldName.equals(columnName))
         return hColumn;

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/AvroSerializerUtil.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/AvroSerializerUtil.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/AvroSerializerUtil.java
index a8f40d2..1fa6883 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/AvroSerializerUtil.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/AvroSerializerUtil.java
@@ -18,13 +18,13 @@ public class AvroSerializerUtil {
    * Threadlocals maintaining reusable binary decoders and encoders.
    */
   private static ThreadLocal<ByteArrayOutputStream> outputStream =
-      new ThreadLocal<ByteArrayOutputStream>();
+      new ThreadLocal<>();
   
   public static final ThreadLocal<BinaryEncoder> encoders =
-      new ThreadLocal<BinaryEncoder>();
+      new ThreadLocal<>();
 
   public static final ThreadLocal<BinaryDecoder> decoders =
-      new ThreadLocal<BinaryDecoder>();
+      new ThreadLocal<>();
   
   /**
    * Create a {@link java.util.concurrent.ConcurrentHashMap} for the 
@@ -36,10 +36,10 @@ public class AvroSerializerUtil {
    * @see <a href="https://issues.apache.org/jira/browse/AVRO-650">AVRO-650</a>
    */
   public static final ConcurrentHashMap<String, SpecificDatumWriter<?>> writerMap = 
-      new ConcurrentHashMap<String, SpecificDatumWriter<?>>();  
+      new ConcurrentHashMap<>();
   
   public static final ConcurrentHashMap<String, SpecificDatumReader<?>> readerMap = 
-      new ConcurrentHashMap<String, SpecificDatumReader<?>>();
+      new ConcurrentHashMap<>();
   
   @SuppressWarnings({ "unchecked", "rawtypes" })
   public static <T> byte[] serializer(T value, Schema schema) throws IOException{

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/ListSerializer.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/ListSerializer.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/ListSerializer.java
index 7530421..6422082 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/ListSerializer.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/ListSerializer.java
@@ -43,8 +43,8 @@ public class ListSerializer<T> extends AbstractSerializer<List<T>> {
 
   public static final Logger LOG = LoggerFactory.getLogger(ListSerializer.class);
 
-  private static Map<Type, ListSerializer> elementTypeToSerializerMap = new HashMap<Type, ListSerializer>();
-  private static Map<Class, ListSerializer> fixedClassToSerializerMap = new HashMap<Class, ListSerializer>();
+  private static Map<Type, ListSerializer> elementTypeToSerializerMap = new HashMap<>();
+  private static Map<Class, ListSerializer> fixedClassToSerializerMap = new HashMap<>();
 
   public static ListSerializer get(Type elementType) {
     ListSerializer serializer = elementTypeToSerializerMap.get(elementType);
@@ -140,7 +140,7 @@ public class ListSerializer<T> extends AbstractSerializer<List<T>> {
 
   private ByteBuffer toByteBufferWithVariableLengthElements(List<T> array) {
     int n = array.size();
-    List<byte[]> list = new ArrayList<byte[]>(n);
+    List<byte[]> list = new ArrayList<>(n);
     n *= 4;
     for (T element : array) {
       byte[] bytes = BytesArraySerializer.get().fromByteBuffer(elementSerializer.toByteBuffer(element));
@@ -161,7 +161,7 @@ public class ListSerializer<T> extends AbstractSerializer<List<T>> {
     if (byteBuffer == null) {
       return null;
     }
-    ArrayList<T> array = new ArrayList<T>();
+    ArrayList<T> array = new ArrayList<>();
     while (true) {
       T element = null;
       try {

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/MapSerializer.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/MapSerializer.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/MapSerializer.java
index 52849b8..2bdcea0 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/MapSerializer.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/MapSerializer.java
@@ -43,8 +43,8 @@ public class MapSerializer<T> extends AbstractSerializer<Map<CharSequence, T>> {
 
   public static final Logger LOG = LoggerFactory.getLogger(MapSerializer.class);
 
-  private static Map<Type, MapSerializer> valueTypeToSerializerMap = new HashMap<Type, MapSerializer>();
-  private static Map<Class, MapSerializer> fixedClassToSerializerMap = new HashMap<Class, MapSerializer>();
+  private static Map<Type, MapSerializer> valueTypeToSerializerMap = new HashMap<>();
+  private static Map<Class, MapSerializer> fixedClassToSerializerMap = new HashMap<>();
 
   public static MapSerializer get(Type valueType) {
     MapSerializer serializer = valueTypeToSerializerMap.get(valueType);
@@ -131,7 +131,7 @@ public class MapSerializer<T> extends AbstractSerializer<Map<CharSequence, T>> {
 
   private ByteBuffer toByteBufferWithFixedLengthElements(Map<CharSequence, T> map) {
     int n = map.size();
-    List<byte[]> list = new ArrayList<byte[]>(n);
+    List<byte[]> list = new ArrayList<>(n);
     n *= 4;
     for (CharSequence key : map.keySet()) {
       T value = map.get(key);
@@ -157,7 +157,7 @@ public class MapSerializer<T> extends AbstractSerializer<Map<CharSequence, T>> {
 
   private ByteBuffer toByteBufferWithVariableLengthElements(Map<CharSequence, T> map) {
     int n = map.size();
-    List<byte[]> list = new ArrayList<byte[]>(n);
+    List<byte[]> list = new ArrayList<>(n);
     n *= 8;
     for (CharSequence key : map.keySet()) {
       T value = map.get(key);
@@ -182,7 +182,7 @@ public class MapSerializer<T> extends AbstractSerializer<Map<CharSequence, T>> {
     if (byteBuffer == null) {
       return null;
     }
-    Map<CharSequence, T> map = new HashMap<CharSequence, T>();
+    Map<CharSequence, T> map = new HashMap<>();
     while (true) {
       CharSequence key = null;
       T value = null;

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/SpecificFixedSerializer.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/SpecificFixedSerializer.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/SpecificFixedSerializer.java
index 2232c08..71f935a 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/SpecificFixedSerializer.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/serializers/SpecificFixedSerializer.java
@@ -47,7 +47,7 @@ public class SpecificFixedSerializer extends AbstractSerializer<SpecificFixed> {
     return serializer;
   }
 
-  private static Map<Class, SpecificFixedSerializer> classToSerializerMap = new HashMap<Class, SpecificFixedSerializer>();
+  private static Map<Class, SpecificFixedSerializer> classToSerializerMap = new HashMap<>();
 
   public static SpecificFixedSerializer get(Class clazz) {
     SpecificFixedSerializer serializer = classToSerializerMap.get(clazz);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraClient.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraClient.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraClient.java
index 4cca6f0..661bb21 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraClient.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraClient.java
@@ -127,7 +127,7 @@ public class CassandraClient<K, T extends PersistentBase> {
       String username = properties
           .getProperty("gora.cassandrastore.username");
       if (username != null) {
-        accessMap = new HashMap<String, String>();
+        accessMap = new HashMap<>();
         accessMap.put("username", username);
         String password = properties
             .getProperty("gora.cassandrastore.password");
@@ -240,7 +240,7 @@ public class CassandraClient<K, T extends PersistentBase> {
    * @return Map<String, HConsistencyLevel> with the mapping between colFams and consistency level.
    */
   private Map<String, HConsistencyLevel> getConsisLevelForColFams(List<ColumnFamilyDefinition> pColFams) {
-    Map<String, HConsistencyLevel> clMap = new HashMap<String, HConsistencyLevel>();
+    Map<String, HConsistencyLevel> clMap = new HashMap<>();
     // Get columnFamily consistency level.
     String colFamConsisLvl = (colFamConsLvl != null && !colFamConsLvl.isEmpty())?colFamConsLvl:DEFAULT_HECTOR_CONSIS_LEVEL;
     LOG.debug("ColumnFamily consistency level configured to '" + colFamConsisLvl + "'.");
@@ -554,7 +554,7 @@ public class CassandraClient<K, T extends PersistentBase> {
    * corresponding column names required to get all the query fields.
    */
   public Map<String, List<String>> getFamilyMap(Query<K, T> query) {
-    Map<String, List<String>> map = new HashMap<String, List<String>>();
+    Map<String, List<String>> map = new HashMap<>();
     Schema persistentSchema = query.getDataStore().newPersistent().getSchema();
     for (String field: query.getFields()) {
       String family = this.getMappingFamily(field);
@@ -563,7 +563,7 @@ public class CassandraClient<K, T extends PersistentBase> {
       // check if the family value was already initialized 
       List<String> list = map.get(family);
       if (list == null) {
-        list = new ArrayList<String>();
+        list = new ArrayList<>();
         map.put(family, list);
       }
       if (persistentSchema.getField(field).schema().getType() == Type.UNION)
@@ -593,7 +593,7 @@ public class CassandraClient<K, T extends PersistentBase> {
    * names and values the query fields
    */
   public Map<String, String> getReverseMap(Query<K, T> query) {
-    Map<String, String> map = new HashMap<String, String>();
+    Map<String, String> map = new HashMap<>();
     Schema persistentSchema = query.getDataStore().newPersistent().getSchema();
     for (String field: query.getFields()) {
       String family = this.getMappingFamily(field);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
index e3b1243..a748bb4 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMapping.java
@@ -64,28 +64,28 @@ public class CassandraMapping {
   /**
    * List of the super column families.
    */
-  private List<String> superFamilies = new ArrayList<String>();
+  private List<String> superFamilies = new ArrayList<>();
 
   /**
    * Look up the column family associated to the Avro field.
    */
-  private Map<String, String> familyMap = new HashMap<String, String>();
+  private Map<String, String> familyMap = new HashMap<>();
   
   /**
    * Look up the column associated to the Avro field.
    */
-  private Map<String, String> columnMap = new HashMap<String, String>();
+  private Map<String, String> columnMap = new HashMap<>();
 
   /**
    * Helps storing attributes defined for each field.
    */
-  private Map<String, String> columnAttrMap = new HashMap<String, String>();
+  private Map<String, String> columnAttrMap = new HashMap<>();
   
   /**
    * Look up the column family from its name.
    */
   private Map<String, BasicColumnFamilyDefinition> columnFamilyDefinitions = 
-		  new HashMap<String, BasicColumnFamilyDefinition>();
+		  new HashMap<>();
 
   
   /**
@@ -313,7 +313,7 @@ public class CassandraMapping {
   }
 
   public List<ColumnFamilyDefinition> getColumnFamilyDefinitions() {
-    List<ColumnFamilyDefinition> list = new ArrayList<ColumnFamilyDefinition>();
+    List<ColumnFamilyDefinition> list = new ArrayList<>();
     for (String key: this.columnFamilyDefinitions.keySet()) {
       ColumnFamilyDefinition columnFamilyDefinition = this.columnFamilyDefinitions.get(key);
       ThriftCfDef thriftCfDef = new ThriftCfDef(columnFamilyDefinition);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java
index 1e55178..18ea7c8 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraMappingManager.java
@@ -56,15 +56,12 @@ public class CassandraMappingManager {
   private Map<String, Element>  mappingMap = null;
 
   private CassandraMappingManager() {
-    keyspaceMap = new HashMap<String, Element>();
-    mappingMap  = new HashMap<String, Element>();
+    keyspaceMap = new HashMap<>();
+    mappingMap  = new HashMap<>();
     try {
       loadConfiguration();
     }
-    catch (JDOMException e) {
-      LOG.error(e.toString());
-    }
-    catch (IOException e) {
+    catch (JDOMException | IOException e) {
       LOG.error(e.toString());
     }
   }

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraStore.java
----------------------------------------------------------------------
diff --git a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraStore.java b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraStore.java
index 10aea99..f13d91a 100644
--- a/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraStore.java
+++ b/gora-cassandra/src/main/java/org/apache/gora/cassandra/store/CassandraStore.java
@@ -90,7 +90,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
   public static String readOpConsLvl;
   public static String writeOpConsLvl;
   
-  private CassandraClient<K, T> cassandraClient = new CassandraClient<K, T>();
+  private CassandraClient<K, T> cassandraClient = new CassandraClient<>();
 
   /**
    * Fixed string with value "UnionIndex" used to generate an extra column based on 
@@ -113,7 +113,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
   private Map<K, T> buffer = Collections.synchronizedMap(new LinkedHashMap<K, T>());
 
   public static final ThreadLocal<BinaryEncoder> encoders =
-      new ThreadLocal<BinaryEncoder>();
+      new ThreadLocal<>();
   
   /**
    * Create a {@link java.util.concurrent.ConcurrentHashMap} for the 
@@ -125,7 +125,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
    * @see <a href="https://issues.apache.org/jira/browse/AVRO-650">AVRO-650</a>
    */
   public static final ConcurrentHashMap<String, SpecificDatumWriter<?>> writerMap = 
-      new ConcurrentHashMap<String, SpecificDatumWriter<?>>();
+      new ConcurrentHashMap<>();
   
   /** The default constructor for CassandraStore */
   public CassandraStore() throws Exception {
@@ -196,14 +196,14 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
     Map<String, List<String>> familyMap = this.cassandraClient.getFamilyMap(query);
     Map<String, String> reverseMap = this.cassandraClient.getReverseMap(query);
 
-    CassandraQuery<K, T> cassandraQuery = new CassandraQuery<K, T>();
+    CassandraQuery<K, T> cassandraQuery = new CassandraQuery<>();
     cassandraQuery.setQuery(query);
     cassandraQuery.setFamilyMap(familyMap);
 
-    CassandraResult<K, T> cassandraResult = new CassandraResult<K, T>(this, query);
+    CassandraResult<K, T> cassandraResult = new CassandraResult<>(this, query);
     cassandraResult.setReverseMap(reverseMap);
 
-    CassandraResultSet<K> cassandraResultSet = new CassandraResultSet<K>();
+    CassandraResultSet<K> cassandraResultSet = new CassandraResultSet<>();
 
     // We query Cassandra keyspace by families.
     for (String family : familyMap.keySet()) {
@@ -239,7 +239,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
       // find associated row in the resultset
       CassandraRow<K> cassandraRow = cassandraResultSet.getRow(key);
       if (cassandraRow == null) {
-        cassandraRow = new CassandraRow<K>();
+        cassandraRow = new CassandraRow<>();
         cassandraResultSet.putRow(key, cassandraRow);
         cassandraRow.setKey(key);
       }
@@ -269,7 +269,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
       K key = superRow.getKey();
       CassandraRow<K> cassandraRow = cassandraResultSet.getRow(key);
       if (cassandraRow == null) {
-        cassandraRow = new CassandraRow<K>();
+        cassandraRow = new CassandraRow<>();
         cassandraResultSet.putRow(key, cassandraRow);
         cassandraRow.setKey(key);
       }
@@ -327,7 +327,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
 
   @Override
   public T get(K key, String[] fields) {
-    CassandraQuery<K,T> query = new CassandraQuery<K,T>();
+    CassandraQuery<K,T> query = new CassandraQuery<>();
     query.setDataStore(this);
     query.setKeyRange(key, key);
     
@@ -352,8 +352,8 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
   public List<PartitionQuery<K, T>> getPartitions(Query<K, T> query)
       throws IOException {
     // TODO GORA-298 Implement CassandraStore#getPartitions
-    List<PartitionQuery<K,T>> partitions = new ArrayList<PartitionQuery<K,T>>();
-    PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<K, T>(query);
+    List<PartitionQuery<K,T>> partitions = new ArrayList<>();
+    PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<>(query);
     pqi.setConf(getConf());
     partitions.add(pqi);
     return partitions;
@@ -370,7 +370,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
 
   @Override
   public Query<K, T> newQuery() {
-    Query<K,T> query = new CassandraQuery<K, T>(this);
+    Query<K,T> query = new CassandraQuery<>(this);
     query.setFields(getFieldsToQuery(null));
     return query;
   }
@@ -530,7 +530,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
             Schema valueSchema = schema.getValueType();
             Type valueType = valueSchema.getType();
             if (Type.UNION.equals(valueType)){
-              Map<CharSequence,Object> valueMap = new HashMap<CharSequence, Object>();
+              Map<CharSequence,Object> valueMap = new HashMap<>();
               for (CharSequence mapKey: map.keySet()) {
                 Object mapValue = map.get(mapKey);
                 int valueUnionIndex = getUnionSchema(mapValue, valueSchema);
@@ -625,9 +625,8 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
   private int getUnionSchema(Object pValue, Schema pUnionSchema){
     int unionSchemaPos = 0;
 //    String valueType = pValue.getClass().getSimpleName();
-    Iterator<Schema> it = pUnionSchema.getTypes().iterator();
-    while ( it.hasNext() ){
-      Type schemaType = it.next().getType();
+    for (Schema currentSchema : pUnionSchema.getTypes()) {
+      Type schemaType = currentSchema.getType();
       if (pValue instanceof CharSequence && schemaType.equals(Type.STRING))
         return unionSchemaPos;
       else if (pValue instanceof ByteBuffer && schemaType.equals(Type.BYTES))
@@ -648,7 +647,7 @@ public class CassandraStore<K, T extends PersistentBase> extends DataStoreBase<K
         return unionSchemaPos;
       else if (pValue instanceof Persistent && schemaType.equals(Type.RECORD))
         return unionSchemaPos;
-      unionSchemaPos ++;
+      unionSchemaPos++;
     }
     // if we weren't able to determine which data type it is, then we return the default
     return DEFAULT_UNION_SCHEMA;

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-compiler/src/main/java/org/apache/gora/compiler/GoraCompiler.java
----------------------------------------------------------------------
diff --git a/gora-compiler/src/main/java/org/apache/gora/compiler/GoraCompiler.java b/gora-compiler/src/main/java/org/apache/gora/compiler/GoraCompiler.java
index c1f5293..a3a4797 100644
--- a/gora-compiler/src/main/java/org/apache/gora/compiler/GoraCompiler.java
+++ b/gora-compiler/src/main/java/org/apache/gora/compiler/GoraCompiler.java
@@ -45,13 +45,13 @@ public class GoraCompiler extends SpecificCompiler {
 
   public static final int FIRST_UNMANAGED_FIELD_INDEX = 1;
 
-  private static final Set<String> GORA_RESERVED_NAMES = new HashSet<String>();
+  private static final Set<String> GORA_RESERVED_NAMES = new HashSet<>();
   
   static {
     GORA_RESERVED_NAMES.addAll(Arrays.asList(DIRTY_BYTES_FIELD_NAME));
   }
 
-  private static final Set<String> GORA_HIDDEN_FIELD_NAMES = new HashSet<String>();
+  private static final Set<String> GORA_HIDDEN_FIELD_NAMES = new HashSet<>();
   
   static {
     GORA_HIDDEN_FIELD_NAMES.add(DIRTY_BYTES_FIELD_NAME);
@@ -64,7 +64,7 @@ public class GoraCompiler extends SpecificCompiler {
     for (File src : srcFiles) {
       LOG.info("Compiling: {}", src.getAbsolutePath());
       Schema originalSchema = parser.parse(src);
-      Map<Schema,Schema> queue = new HashMap<Schema,Schema>();
+      //Map<Schema,Schema> queue = new HashMap<>();
       //Schema newSchema = getSchemaWithDirtySupport(originalSchema, queue);
       Schema newSchema = originalSchema;
       GoraCompiler compiler = new GoraCompiler(newSchema);
@@ -222,10 +222,9 @@ public class GoraCompiler extends SpecificCompiler {
 
   private static Schema getUnionSchemaWithDirtySupport(Schema originalSchema, Map<Schema,Schema> queue) throws IOException {
     List<Schema> schemaTypes = originalSchema.getTypes();
-    List<Schema> newTypeSchemas = new ArrayList<Schema>();
-    for (int i = 0; i < schemaTypes.size(); i++) {
-      Schema currentTypeSchema = schemaTypes.get(i);
-      newTypeSchemas.add(getSchemaWithDirtySupport(currentTypeSchema,queue));
+    List<Schema> newTypeSchemas = new ArrayList<>();
+    for (Schema currentTypeSchema : schemaTypes) {
+      newTypeSchemas.add(getSchemaWithDirtySupport(currentTypeSchema, queue));
     }
     return Schema.createUnion(newTypeSchemas);
   }
@@ -248,7 +247,7 @@ public class GoraCompiler extends SpecificCompiler {
     
     queue.put(originalSchema, newSchema);
     
-    List<Field> newFields = new ArrayList<Schema.Field>();
+    List<Field> newFields = new ArrayList<>();
     byte[] defaultDirtyBytesValue = new byte[getNumberOfBytesNeededForDirtyBits(originalSchema)];
     Arrays.fill(defaultDirtyBytesValue, (byte) 0);
     JsonNode defaultDirtyJsonValue = JsonNodeFactory.instance

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-compiler/src/main/java/org/apache/gora/compiler/utils/LicenseHeaders.java
----------------------------------------------------------------------
diff --git a/gora-compiler/src/main/java/org/apache/gora/compiler/utils/LicenseHeaders.java b/gora-compiler/src/main/java/org/apache/gora/compiler/utils/LicenseHeaders.java
index 6428e36..1bba8a0 100644
--- a/gora-compiler/src/main/java/org/apache/gora/compiler/utils/LicenseHeaders.java
+++ b/gora-compiler/src/main/java/org/apache/gora/compiler/utils/LicenseHeaders.java
@@ -228,22 +228,13 @@ public class LicenseHeaders {
    * Initializes relations between supported licenses and license text
    */
   public void initializeRelations(){
-    relatedLicenses = new HashMap<String, String>();
+    relatedLicenses = new HashMap<>();
     try {
         for (String licenseValue : supportedLicenses) {
           String var = (String) this.getClass().getDeclaredField(licenseValue).get(licenseValue);
           relatedLicenses.put(licenseValue,var);
         }
-    } catch (SecurityException e) {
-      LOG.error(e.getMessage());
-      throw new RuntimeException(e);
-    } catch (NoSuchFieldException e) {
-      LOG.error(e.getMessage());
-      throw new RuntimeException(e);
-    } catch (IllegalArgumentException e) {
-      LOG.error(e.getMessage());
-      throw new RuntimeException(e);
-    } catch (IllegalAccessException e) {
+    } catch (SecurityException | NoSuchFieldException | IllegalArgumentException | IllegalAccessException e) {
       LOG.error(e.getMessage());
       throw new RuntimeException(e);
     }

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
----------------------------------------------------------------------
diff --git a/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java b/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
index cd933d5..38c13a9 100644
--- a/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
+++ b/gora-core/src/examples/java/org/apache/gora/examples/WebPageDataCreator.java
@@ -55,7 +55,7 @@ public class WebPageDataCreator {
     //"http://example.com",
   };
   
-  public static HashMap<String, Integer> URL_INDEXES = new HashMap<String, Integer>();
+  public static HashMap<String, Integer> URL_INDEXES = new HashMap<>();
   
   static {
     for(int i=0; i<URLS.length; i++) {

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/avro/store/AvroStore.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/avro/store/AvroStore.java b/gora-core/src/main/java/org/apache/gora/avro/store/AvroStore.java
index 817885d..1eb1efe 100644
--- a/gora-core/src/main/java/org/apache/gora/avro/store/AvroStore.java
+++ b/gora-core/src/main/java/org/apache/gora/avro/store/AvroStore.java
@@ -141,7 +141,7 @@ public class AvroStore<K, T extends PersistentBase>
    */
   @Override
   protected Result<K,T> executeQuery(Query<K,T> query) throws IOException {
-    return new AvroResult<K,T>(this, (AvroQuery<K,T>)query,
+    return new AvroResult<>(this, (AvroQuery<K,T>)query,
         getDatumReader(), getDecoder());
   }
 
@@ -172,7 +172,7 @@ public class AvroStore<K, T extends PersistentBase>
 
   @Override
   public AvroQuery<K,T> newQuery() {
-    return new AvroQuery<K,T>(this);
+    return new AvroQuery<>(this);
   }
 
   @Override
@@ -233,11 +233,11 @@ public class AvroStore<K, T extends PersistentBase>
   }
 
   protected DatumWriter<T> createDatumWriter() {
-    return new SpecificDatumWriter<T>(schema);
+    return new SpecificDatumWriter<>(schema);
   }
 
   protected DatumReader<T> createDatumReader() {
-    return new SpecificDatumReader<T>(schema);
+    return new SpecificDatumReader<>(schema);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/avro/store/DataFileAvroStore.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/avro/store/DataFileAvroStore.java b/gora-core/src/main/java/org/apache/gora/avro/store/DataFileAvroStore.java
index 3d490b7..35c4cbf 100644
--- a/gora-core/src/main/java/org/apache/gora/avro/store/DataFileAvroStore.java
+++ b/gora-core/src/main/java/org/apache/gora/avro/store/DataFileAvroStore.java
@@ -65,7 +65,7 @@ public class DataFileAvroStore<K, T extends PersistentBase> extends AvroStore<K,
 
   private DataFileWriter<T> getWriter() throws IOException {
     if(writer == null) {
-      writer = new DataFileWriter<T>(getDatumWriter());
+      writer = new DataFileWriter<>(getDatumWriter());
       writer.create(schema, getOrCreateOutputStream());
     }
     return writer;
@@ -74,7 +74,7 @@ public class DataFileAvroStore<K, T extends PersistentBase> extends AvroStore<K,
   @Override
   protected Result<K, T> executeQuery(Query<K, T> query) {
     try{
-      return new DataFileAvroResult<K, T>(this, query
+      return new DataFileAvroResult<>(this, query
           , createReader(createFsInput()));
     } catch(IOException ex){
       LOG.error(ex.getMessage(), ex);
@@ -87,7 +87,7 @@ public class DataFileAvroStore<K, T extends PersistentBase> extends AvroStore<K,
     try{
       FsInput fsInput = createFsInput();
       DataFileReader<T> reader = createReader(fsInput);
-      return new DataFileAvroResult<K, T>(this, query, reader, fsInput
+      return new DataFileAvroResult<>(this, query, reader, fsInput
           , query.getStart(), query.getLength());
     } catch(IOException ex){
       LOG.error(ex.getMessage(), ex);
@@ -96,7 +96,7 @@ public class DataFileAvroStore<K, T extends PersistentBase> extends AvroStore<K,
   }
   
   private DataFileReader<T> createReader(FsInput fsInput) throws IOException {
-    return new DataFileReader<T>(fsInput, getDatumReader());
+    return new DataFileReader<>(fsInput, getDatumReader());
   }
   
   private FsInput createFsInput() throws IOException {

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/filter/FilterList.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/filter/FilterList.java b/gora-core/src/main/java/org/apache/gora/filter/FilterList.java
index b0bca20..3700c89 100644
--- a/gora-core/src/main/java/org/apache/gora/filter/FilterList.java
+++ b/gora-core/src/main/java/org/apache/gora/filter/FilterList.java
@@ -38,7 +38,7 @@ public class FilterList<K, T extends PersistentBase> implements Filter<K, T> {
   }
   
   private Operator operator = Operator.MUST_PASS_ALL;
-  private List<Filter<K, T>> filters = new ArrayList<Filter<K, T>>();
+  private List<Filter<K, T>> filters = new ArrayList<>();
   
   public FilterList() {
   }
@@ -74,7 +74,7 @@ public class FilterList<K, T extends PersistentBase> implements Filter<K, T> {
     operator = Operator.values()[opByte];
     int size = in.readInt();
     if (size > 0) {
-      filters = new ArrayList<Filter<K, T>>(size);
+      filters = new ArrayList<>(size);
       try {
         for (int i = 0; i < size; i++) {
           @SuppressWarnings("unchecked")

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/filter/MapFieldValueFilter.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/filter/MapFieldValueFilter.java b/gora-core/src/main/java/org/apache/gora/filter/MapFieldValueFilter.java
index 40c7b41..f4c4383 100644
--- a/gora-core/src/main/java/org/apache/gora/filter/MapFieldValueFilter.java
+++ b/gora-core/src/main/java/org/apache/gora/filter/MapFieldValueFilter.java
@@ -42,7 +42,7 @@ public class MapFieldValueFilter<K, T extends PersistentBase> implements Filter<
   protected String fieldName;
   protected Utf8 mapKey;
   protected FilterOp filterOp;
-  protected List<Object> operands = new ArrayList<Object>();
+  protected List<Object> operands = new ArrayList<>();
   protected boolean filterIfMissing = false;
 
   private Configuration conf = new Configuration(); // just create empty conf,
@@ -54,8 +54,7 @@ public class MapFieldValueFilter<K, T extends PersistentBase> implements Filter<
     Text.writeString(out, mapKey.toString());
     WritableUtils.writeEnum(out, filterOp);
     WritableUtils.writeVInt(out, operands.size());
-    for (int i = 0; i < operands.size(); i++) {
-      Object operand = operands.get(i);
+    for (Object operand : operands) {
       if (operand instanceof String) {
         throw new IllegalStateException("Use Utf8 instead of String for operands");
       }

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/filter/SingleFieldValueFilter.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/filter/SingleFieldValueFilter.java b/gora-core/src/main/java/org/apache/gora/filter/SingleFieldValueFilter.java
index a000bc0..5b701a3 100644
--- a/gora-core/src/main/java/org/apache/gora/filter/SingleFieldValueFilter.java
+++ b/gora-core/src/main/java/org/apache/gora/filter/SingleFieldValueFilter.java
@@ -40,7 +40,7 @@ public class SingleFieldValueFilter<K, T extends PersistentBase> implements Filt
 
   protected String fieldName;
   protected FilterOp filterOp;
-  protected List<Object> operands = new ArrayList<Object>();
+  protected List<Object> operands = new ArrayList<>();
   protected boolean filterIfMissing = false;
 
   private Configuration conf = new Configuration(); //just create empty conf,
@@ -50,13 +50,12 @@ public class SingleFieldValueFilter<K, T extends PersistentBase> implements Filt
     Text.writeString(out, fieldName);
     WritableUtils.writeEnum(out, filterOp);
     WritableUtils.writeVInt(out, operands.size());
-    for (int i = 0; i < operands.size(); i++) {
-      Object operand = operands.get(i);
+    for (Object operand : operands) {
       if (operand instanceof String) {
         throw new IllegalStateException("Use Utf8 instead of String for operands");
       }
       if (operand instanceof Utf8) {
-        operand=operand.toString();
+        operand = operand.toString();
       }
       if (operand instanceof Boolean) {
         ObjectWritable.writeObject(out, operand, Boolean.TYPE, conf);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/mapreduce/GoraInputFormat.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/mapreduce/GoraInputFormat.java b/gora-core/src/main/java/org/apache/gora/mapreduce/GoraInputFormat.java
index 9249af8..320cfe7 100644
--- a/gora-core/src/main/java/org/apache/gora/mapreduce/GoraInputFormat.java
+++ b/gora-core/src/main/java/org/apache/gora/mapreduce/GoraInputFormat.java
@@ -84,7 +84,7 @@ public class GoraInputFormat<K, T extends PersistentBase>
       ((GoraInputSplit)split).getQuery();
 
     setInputPath(partitionQuery, context);
-    return new GoraRecordReader<K, T>(partitionQuery, context);
+    return new GoraRecordReader<>(partitionQuery, context);
   }
 
   @Override
@@ -92,7 +92,7 @@ public class GoraInputFormat<K, T extends PersistentBase>
       InterruptedException {
 
     List<PartitionQuery<K, T>> queries = dataStore.getPartitions(query);
-    List<InputSplit> splits = new ArrayList<InputSplit>(queries.size());
+    List<InputSplit> splits = new ArrayList<>(queries.size());
 
     for(PartitionQuery<K,T> query : queries) {
       splits.add(new GoraInputSplit(context.getConfiguration(), query));

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentDeserializer.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentDeserializer.java b/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentDeserializer.java
index e331b4e..d592872 100644
--- a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentDeserializer.java
+++ b/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentDeserializer.java
@@ -45,7 +45,7 @@ public class PersistentDeserializer
     this.reuseObjects = reuseObjects;
     try {
       Schema schema = AvroUtils.getSchema(persistentClass);
-      datumReader = new SpecificDatumReader<Persistent>(schema);
+      datumReader = new SpecificDatumReader<>(schema);
 
     } catch (Exception ex) {
       throw new RuntimeException(ex);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentSerializer.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentSerializer.java b/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentSerializer.java
index 96ed10b..4b1a646 100644
--- a/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentSerializer.java
+++ b/gora-core/src/main/java/org/apache/gora/mapreduce/PersistentSerializer.java
@@ -36,7 +36,7 @@ public class PersistentSerializer implements Serializer<Persistent> {
   private BinaryEncoder encoder;
   
   public PersistentSerializer() {
-    this.datumWriter = new SpecificDatumWriter<Persistent>();
+    this.datumWriter = new SpecificDatumWriter<>();
   }
   
   @Override

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/memory/store/MemStore.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/memory/store/MemStore.java b/gora-core/src/main/java/org/apache/gora/memory/store/MemStore.java
index 444c0ba..162485c 100644
--- a/gora-core/src/main/java/org/apache/gora/memory/store/MemStore.java
+++ b/gora-core/src/main/java/org/apache/gora/memory/store/MemStore.java
@@ -136,7 +136,7 @@ public class MemStore<K, T extends PersistentBase> extends DataStoreBase<K, T> {
 
     ConcurrentNavigableMap<K,T> submap = map.subMap(startKey, true, endKey, true);
 
-    return new MemResult<K,T>(this, query, submap);
+    return new MemResult<>(this, query, submap);
   }
   
   @SuppressWarnings("unchecked")
@@ -162,8 +162,8 @@ public class MemStore<K, T extends PersistentBase> extends DataStoreBase<K, T> {
       return obj;
     }
     T newObj = AvroUtils.deepClonePersistent(obj);
-    for(int i = 0; i<otherFields.size(); i++) {
-      int index = otherFields.get(i).pos(); 
+    for (Field otherField : otherFields) {
+      int index = otherField.pos();
       newObj.put(index, obj.get(index));
     }
     return newObj;
@@ -171,7 +171,7 @@ public class MemStore<K, T extends PersistentBase> extends DataStoreBase<K, T> {
 
   @Override
   public Query<K, T> newQuery() {
-    return new MemQuery<K, T>(this);
+    return new MemQuery<>(this);
   }
   
   @SuppressWarnings("unchecked")
@@ -185,8 +185,8 @@ public class MemStore<K, T extends PersistentBase> extends DataStoreBase<K, T> {
    * Returns a single partition containing the original query
    */
   public List<PartitionQuery<K, T>> getPartitions(Query<K, T> query){
-    List<PartitionQuery<K, T>> list = new ArrayList<PartitionQuery<K,T>>();
-    PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<K, T>(query);
+    List<PartitionQuery<K, T>> list = new ArrayList<>();
+    PartitionQueryImpl<K, T> pqi = new PartitionQueryImpl<>(query);
     pqi.setConf(getConf());
     list.add(pqi);
     return list;

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyCollectionWrapper.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyCollectionWrapper.java b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyCollectionWrapper.java
index 87fc00c..d9b85f5 100644
--- a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyCollectionWrapper.java
+++ b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyCollectionWrapper.java
@@ -65,7 +65,7 @@ public class DirtyCollectionWrapper<T> implements Dirtyable,
 
   @Override
   public Iterator<T> iterator() {
-    return new DirtyIteratorWrapper<T>(delegate.iterator(), dirtyFlag);
+    return new DirtyIteratorWrapper<>(delegate.iterator(), dirtyFlag);
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyListWrapper.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyListWrapper.java b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyListWrapper.java
index ecc8715..3b09310 100644
--- a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyListWrapper.java
+++ b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyListWrapper.java
@@ -73,19 +73,19 @@ public class DirtyListWrapper<T> extends DirtyCollectionWrapper<T> implements
 
   @Override
   public ListIterator<T> listIterator() {
-    return new DirtyListIterator<T>(getDelegate().listIterator(),
+    return new DirtyListIterator<>(getDelegate().listIterator(),
         getDirtyFlag());
   }
 
   @Override
   public ListIterator<T> listIterator(int index) {
-    return new DirtyListIterator<T>(getDelegate().listIterator(index),
+    return new DirtyListIterator<>(getDelegate().listIterator(index),
         getDirtyFlag());
   }
 
   @Override
   public List<T> subList(int fromIndex, int toIndex) {
-    return new DirtyListWrapper<T>(getDelegate().subList(fromIndex, toIndex),
+    return new DirtyListWrapper<>(getDelegate().subList(fromIndex, toIndex),
         getDirtyFlag());
   }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyMapWrapper.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyMapWrapper.java b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyMapWrapper.java
index 44adfdc..74e320d 100644
--- a/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyMapWrapper.java
+++ b/gora-core/src/main/java/org/apache/gora/persistency/impl/DirtyMapWrapper.java
@@ -164,7 +164,7 @@ public class DirtyMapWrapper<K, V> implements Map<K, V>, Dirtyable {
 
   @Override
   public Collection<V> values() {
-    return new DirtyCollectionWrapper<V>(delegate.values(), dirtyFlag);
+    return new DirtyCollectionWrapper<>(delegate.values(), dirtyFlag);
   }
 
   @Override
@@ -175,7 +175,7 @@ public class DirtyMapWrapper<K, V> implements Map<K, V>, Dirtyable {
         new Function<Entry<K, V>, DirtyEntryWrapper<K, V>>() {
           @Override
           public DirtyEntryWrapper<K, V> apply(java.util.Map.Entry<K, V> input) {
-            return new DirtyEntryWrapper<K, V>(input, dirtyFlag);
+            return new DirtyEntryWrapper<>(input, dirtyFlag);
           }
         });
     return new DirtySetWrapper(dirtyEntrySet, dirtyFlag);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/BeanFactoryWSImpl.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/BeanFactoryWSImpl.java b/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/BeanFactoryWSImpl.java
index ff6e1c3..ccb8971 100644
--- a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/BeanFactoryWSImpl.java
+++ b/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/BeanFactoryWSImpl.java
@@ -111,10 +111,7 @@ public class BeanFactoryWSImpl<K, T extends Persistent> implements BeanFactory<K
   public T newPersistent() {
     try {
       return persistentClass.newInstance();
-    } catch (InstantiationException e) {
-      LOG.error(e.getMessage());
-      throw new RuntimeException(e);
-    } catch (IllegalAccessException e) {
+    } catch (InstantiationException | IllegalAccessException e) {
       LOG.error(e.getMessage());
       throw new RuntimeException(e);
     }

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java b/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java
index 58cf566..fd17e94 100644
--- a/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java
+++ b/gora-core/src/main/java/org/apache/gora/persistency/ws/impl/PersistentWSBase.java
@@ -34,13 +34,13 @@ public abstract class PersistentWSBase implements Persistent  {
    * Maps keys to their own classes
    */
   protected static Map<Class<?>, Map<String, Integer>> FIELD_MAP =
-    new HashMap<Class<?>, Map<String,Integer>>();
+    new HashMap<>();
 
   /**
    * Maps fields to their own classes
    */
   protected static Map<Class<?>, String[]> FIELDS =
-    new HashMap<Class<?>, String[]>();
+    new HashMap<>();
     
 
   /** Subclasses should call this function for all the persistable fields
@@ -51,7 +51,7 @@ public abstract class PersistentWSBase implements Persistent  {
   protected static void registerFields(Class<?> clazz, String... fields) {
     FIELDS.put(clazz, fields);
     int fieldsLength = fields == null ? 0 :fields.length;
-    HashMap<String, Integer> map = new HashMap<String, Integer>(fieldsLength);
+    HashMap<String, Integer> map = new HashMap<>(fieldsLength);
 
     for(int i=0; i < fieldsLength; i++) {
       map.put(fields[i], i);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java b/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java
index 5f73104..3b18532 100644
--- a/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java
+++ b/gora-core/src/main/java/org/apache/gora/store/impl/DataStoreBase.java
@@ -88,7 +88,7 @@ public abstract class DataStoreBase<K, T extends PersistentBase>
     setKeyClass(keyClass);
     setPersistentClass(persistentClass);
     if (this.beanFactory == null) {
-      this.beanFactory = new BeanFactoryImpl<K, T>(keyClass, persistentClass);
+      this.beanFactory = new BeanFactoryImpl<>(keyClass, persistentClass);
     }
     schema = this.beanFactory.getCachedPersistent().getSchema();
     fieldMap = AvroUtils.getFieldMap(schema);
@@ -96,8 +96,8 @@ public abstract class DataStoreBase<K, T extends PersistentBase>
     autoCreateSchema = DataStoreFactory.getAutoCreateSchema(properties, this);
     this.properties = properties;
 
-    datumReader = new SpecificDatumReader<T>(schema);
-    datumWriter = new SpecificDatumWriter<T>(schema);
+    datumReader = new SpecificDatumReader<>(schema);
+    datumWriter = new SpecificDatumWriter<>(schema);
   }
 
   @Override
@@ -171,7 +171,7 @@ public abstract class DataStoreBase<K, T extends PersistentBase>
   protected String[] getFields() {
     List<Field> schemaFields = beanFactory.getCachedPersistent().getSchema().getFields();
     
-    List<Field> list = new ArrayList<Field>();
+    List<Field> list = new ArrayList<>();
     for (Field field : schemaFields) {
       if (!Persistent.DIRTY_BYTES_FIELD_NAME.equalsIgnoreCase(field.name())) {
         list.add(field);
@@ -211,10 +211,8 @@ public abstract class DataStoreBase<K, T extends PersistentBase>
       Class<T> persistentClass = (Class<T>)ClassLoadingUtils.loadClass(Text.readString(in));
       Properties props = WritableUtils.readProperties(in);
       initialize(keyClass, persistentClass, props);
-    } catch (ClassNotFoundException ex) {
+    } catch (ClassNotFoundException | IOException ex) {
       LOG.error(ex.getMessage(), ex);
-    } catch (IOException e) {
-      LOG.error(e.getMessage(), e);
     }
   }
 

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/store/impl/FileBackedDataStoreBase.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/store/impl/FileBackedDataStoreBase.java b/gora-core/src/main/java/org/apache/gora/store/impl/FileBackedDataStoreBase.java
index de14f4a..c559243 100644
--- a/gora-core/src/main/java/org/apache/gora/store/impl/FileBackedDataStoreBase.java
+++ b/gora-core/src/main/java/org/apache/gora/store/impl/FileBackedDataStoreBase.java
@@ -163,10 +163,10 @@ public InputStream getInputStream() {
     List<PartitionQuery<K, T>> queries = null;
     try{
       splits = GoraMapReduceUtils.getSplits(getConf(), inputPath);
-      queries = new ArrayList<PartitionQuery<K,T>>(splits.size());
+      queries = new ArrayList<>(splits.size());
   
       for(InputSplit split : splits) {
-        queries.add(new FileSplitPartitionQuery<K, T>(query, (FileSplit) split));
+        queries.add(new FileSplitPartitionQuery<>(query, (FileSplit) split));
       }
     }catch(IOException ex){
       LOG.error(ex.getMessage(), ex);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java b/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java
index 3f51995..86ab4a3 100644
--- a/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java
+++ b/gora-core/src/main/java/org/apache/gora/util/AvroUtils.java
@@ -45,7 +45,7 @@ public class AvroUtils {
    */
   public static Map<String, Field> getFieldMap(Schema schema) {
     List<Field> fields = schema.getFields();
-    HashMap<String, Field> fieldMap = new HashMap<String, Field>(fields.size());
+    HashMap<String, Field> fieldMap = new HashMap<>(fields.size());
     for (Field field : fields) {
       fieldMap.put(field.name(), field);
     }
@@ -103,7 +103,7 @@ public class AvroUtils {
   public static <T extends Persistent> T deepClonePersistent(T persistent) {
     ByteArrayOutputStream bos = new ByteArrayOutputStream();
     BinaryEncoder enc = EncoderFactory.get().binaryEncoder(bos, null);
-    SpecificDatumWriter<Persistent> writer = new SpecificDatumWriter<Persistent>(
+    SpecificDatumWriter<Persistent> writer = new SpecificDatumWriter<>(
         persistent.getSchema());
     try {
       writer.write(persistent, enc);
@@ -117,7 +117,7 @@ public class AvroUtils {
     byte[] value = bos.toByteArray();
     Decoder dec = DecoderFactory.get().binaryDecoder(value, null);
     @SuppressWarnings("unchecked")
-    SpecificDatumReader<T> reader = new SpecificDatumReader<T>(
+    SpecificDatumReader<T> reader = new SpecificDatumReader<>(
         (Class<T>) persistent.getClass());
     try {
       return reader.read(null, dec);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/util/IOUtils.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/util/IOUtils.java b/gora-core/src/main/java/org/apache/gora/util/IOUtils.java
index eb39cec..bc60360 100644
--- a/gora-core/src/main/java/org/apache/gora/util/IOUtils.java
+++ b/gora-core/src/main/java/org/apache/gora/util/IOUtils.java
@@ -106,8 +106,7 @@ public class IOUtils {
     SerializationFactory serializationFactory = new SerializationFactory(getOrCreateConf(conf));
     Serializer<T> serializer = serializationFactory.getSerializer(objClass);
 
-    ByteBufferOutputStream os = new ByteBufferOutputStream();
-    try {
+    try (ByteBufferOutputStream os = new ByteBufferOutputStream()) {
       serializer.open(os);
       serializer.serialize(obj);
 
@@ -126,8 +125,6 @@ public class IOUtils {
     }finally {
       if(serializer != null)
         serializer.close();
-      if(os != null)
-        os.close();
     }
   }
 
@@ -219,11 +216,10 @@ public class IOUtils {
     int length = WritableUtils.readVInt(in);
     byte[] arr = new byte[length];
     in.readFully(arr);
-    List<ByteBuffer> list = new ArrayList<ByteBuffer>();
+    List<ByteBuffer> list = new ArrayList<>();
     list.add(ByteBuffer.wrap(arr));
-    ByteBufferInputStream is = new ByteBufferInputStream(list);
 
-    try {
+    try (ByteBufferInputStream is = new ByteBufferInputStream(list)) {
       deserializer.open(is);
       T newObj = deserializer.deserialize(obj);
       return newObj;
@@ -231,8 +227,6 @@ public class IOUtils {
     }finally {
       if(deserializer != null)
         deserializer.close();
-      if(is != null)
-        is.close();
     }
   }
 
@@ -519,7 +513,7 @@ public class IOUtils {
    * Reads until the end of the input stream, and returns the contents as a byte[]
    */
   public static byte[] readFully(InputStream in) throws IOException {
-    List<ByteBuffer> buffers = new ArrayList<ByteBuffer>(4);
+    List<ByteBuffer> buffers = new ArrayList<>(4);
     while(true) {
       ByteBuffer buffer = ByteBuffer.allocate(BUFFER_SIZE);
       int count = in.read(buffer.array(), 0, BUFFER_SIZE);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/util/NodeWalker.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/util/NodeWalker.java b/gora-core/src/main/java/org/apache/gora/util/NodeWalker.java
index 9a586c0..216e658 100644
--- a/gora-core/src/main/java/org/apache/gora/util/NodeWalker.java
+++ b/gora-core/src/main/java/org/apache/gora/util/NodeWalker.java
@@ -46,7 +46,7 @@ public class NodeWalker {
    */
   public NodeWalker(Node rootNode) {
 
-    nodes = new Stack<Node>();
+    nodes = new Stack<>();
     nodes.add(rootNode);
   }
   

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/main/java/org/apache/gora/util/StringUtils.java
----------------------------------------------------------------------
diff --git a/gora-core/src/main/java/org/apache/gora/util/StringUtils.java b/gora-core/src/main/java/org/apache/gora/util/StringUtils.java
index 75c03cd..9a38d8b 100644
--- a/gora-core/src/main/java/org/apache/gora/util/StringUtils.java
+++ b/gora-core/src/main/java/org/apache/gora/util/StringUtils.java
@@ -34,7 +34,7 @@ public class StringUtils {
    * Joins the two given arrays, removing dup elements.
    */
   public static String[] joinStringArrays(String[] arr1, String... arr2) {
-    HashSet<String> set = new HashSet<String>();
+    HashSet<String> set = new HashSet<>();
     Collections.addAll(set, arr1);
     Collections.addAll(set, arr2);
 
@@ -83,7 +83,7 @@ public class StringUtils {
   public static LinkedHashSet<Set<String>> powerset(String[] set) {
 
     //create the empty power set
-    LinkedHashSet<Set<String>> power = new LinkedHashSet<Set<String>>();
+    LinkedHashSet<Set<String>> power = new LinkedHashSet<>();
 
     //get the number of elements in the set
     int elements = set.length;
@@ -98,7 +98,7 @@ public class StringUtils {
       String binary = intToBinary(i, elements);
 
       //create a new set
-      LinkedHashSet<String> innerSet = new LinkedHashSet<String>();
+      LinkedHashSet<String> innerSet = new LinkedHashSet<>();
 
       //convert each digit in the current binary number to the corresponding element
       //in the given set

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/GoraTestDriver.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/GoraTestDriver.java b/gora-core/src/test/java/org/apache/gora/GoraTestDriver.java
index 817d57b..02006d9 100644
--- a/gora-core/src/test/java/org/apache/gora/GoraTestDriver.java
+++ b/gora-core/src/test/java/org/apache/gora/GoraTestDriver.java
@@ -48,7 +48,7 @@ public class GoraTestDriver {
   @SuppressWarnings({ "rawtypes", "unchecked" })
   protected GoraTestDriver(Class<? extends DataStore> dataStoreClass) {
     this.dataStoreClass = (Class<? extends DataStore<?, ?>>) dataStoreClass;
-    this.dataStores = new HashSet<DataStore>();
+    this.dataStores = new HashSet<>();
   }
 
   /** Should be called once before the tests are started, probably in the

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/avro/mapreduce/TestDataFileAvroStoreMapReduce.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/avro/mapreduce/TestDataFileAvroStoreMapReduce.java b/gora-core/src/test/java/org/apache/gora/avro/mapreduce/TestDataFileAvroStoreMapReduce.java
index e3f02bf..2f0aee5 100644
--- a/gora-core/src/test/java/org/apache/gora/avro/mapreduce/TestDataFileAvroStoreMapReduce.java
+++ b/gora-core/src/test/java/org/apache/gora/avro/mapreduce/TestDataFileAvroStoreMapReduce.java
@@ -40,7 +40,7 @@ public class TestDataFileAvroStoreMapReduce extends DataStoreMapReduceTestBase {
   @Override
   protected DataStore<String, WebPage> createWebPageDataStore() 
     throws IOException {
-    DataFileAvroStore<String,WebPage> webPageStore = new DataFileAvroStore<String, WebPage>();
+    DataFileAvroStore<String,WebPage> webPageStore = new DataFileAvroStore<>();
     webPageStore.initialize(String.class, WebPage.class, DataStoreFactory.createProps());
     webPageStore.setOutputPath(WEBPAGE_OUTPUT);
     webPageStore.setInputPath(WEBPAGE_OUTPUT);

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/avro/store/TestAvroStore.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/avro/store/TestAvroStore.java b/gora-core/src/test/java/org/apache/gora/avro/store/TestAvroStore.java
index 6baf504..d870b68 100644
--- a/gora-core/src/test/java/org/apache/gora/avro/store/TestAvroStore.java
+++ b/gora-core/src/test/java/org/apache/gora/avro/store/TestAvroStore.java
@@ -61,7 +61,7 @@ public class TestAvroStore {
     employeeStore.setOutputPath(EMPLOYEE_OUTPUT);
     employeeStore.setInputPath(EMPLOYEE_OUTPUT);
 
-    webPageStore = new AvroStore<String, WebPage>();
+    webPageStore = new AvroStore<>();
     webPageStore.initialize(String.class, WebPage.class, DataStoreFactory.createProps());
     webPageStore.setOutputPath(WEBPAGE_OUTPUT);
     webPageStore.setInputPath(WEBPAGE_OUTPUT);
@@ -74,7 +74,7 @@ public class TestAvroStore {
   }
 
   protected AvroStore<String, WebPage> createWebPageDataStore() {
-    return new AvroStore<String, WebPage>();
+    return new AvroStore<>();
   }
 
   @After

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/avro/store/TestDataFileAvroStore.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/avro/store/TestDataFileAvroStore.java b/gora-core/src/test/java/org/apache/gora/avro/store/TestDataFileAvroStore.java
index 0d7d485..88c9c4b 100644
--- a/gora-core/src/test/java/org/apache/gora/avro/store/TestDataFileAvroStore.java
+++ b/gora-core/src/test/java/org/apache/gora/avro/store/TestDataFileAvroStore.java
@@ -30,12 +30,12 @@ public class TestDataFileAvroStore extends TestAvroStore {
 
   @Override
   protected AvroStore<String, Employee> createEmployeeDataStore() {
-    return new DataFileAvroStore<String, Employee>();
+    return new DataFileAvroStore<>();
   }
   
   @Override
   protected AvroStore<String, WebPage> createWebPageDataStore() {
-    return new DataFileAvroStore<String, WebPage>();
+    return new DataFileAvroStore<>();
   }
   
   //import all tests from super class

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java b/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java
index 68fbfb1..8825dd7 100644
--- a/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java
+++ b/gora-core/src/test/java/org/apache/gora/examples/TestWebPageDataCreator.java
@@ -13,7 +13,7 @@ public class TestWebPageDataCreator {
 
   @Test 
   public void testCreatesData() throws IOException{
-    MemStore<String, WebPage> dataStore = new MemStore<String, WebPage>();
+    MemStore<String, WebPage> dataStore = new MemStore<>();
     WebPageDataCreator.createWebPageData(dataStore);
   }
   

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/filter/TestMapFieldValueFilter.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/filter/TestMapFieldValueFilter.java b/gora-core/src/test/java/org/apache/gora/filter/TestMapFieldValueFilter.java
index b53207a..bd8abfa 100644
--- a/gora-core/src/test/java/org/apache/gora/filter/TestMapFieldValueFilter.java
+++ b/gora-core/src/test/java/org/apache/gora/filter/TestMapFieldValueFilter.java
@@ -31,7 +31,7 @@ public class TestMapFieldValueFilter {
 
   @Test
   public void testSerialization() throws IOException {
-    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<String, WebPage>();
+    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<>();
     //set filter field name as metadata
     filter.setFieldName(WebPage.Field.METADATA.toString());
     filter.setMapKey(new Utf8("fetchTime"));
@@ -39,7 +39,7 @@ public class TestMapFieldValueFilter {
     filter.setFilterIfMissing(true);
     filter.getOperands().add(new Utf8("http://example.org"));
     byte[] byteArray = WritableUtils.toByteArray(filter);
-    MapFieldValueFilter<String, WebPage> filter2 = new MapFieldValueFilter<String, WebPage>();
+    MapFieldValueFilter<String, WebPage> filter2 = new MapFieldValueFilter<>();
     filter2.readFields(new DataInputStream(new ByteArrayInputStream(byteArray)));
     assertEquals(filter.getFieldName(), filter2.getFieldName());
     assertEquals(filter.getMapKey(), filter2.getMapKey());
@@ -50,7 +50,7 @@ public class TestMapFieldValueFilter {
   
   @Test
   public void testFilterBasics() {
-    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<String, WebPage>();
+    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<>();
     //set filter field name as outlinks
     filter.setFieldName(WebPage.Field.OUTLINKS.toString());
     filter.setMapKey(new Utf8("example"));
@@ -72,7 +72,7 @@ public class TestMapFieldValueFilter {
   
   @Test
   public void testFilterEntryInMap() {
-    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<String, WebPage>();
+    MapFieldValueFilter<String, WebPage> filter = new MapFieldValueFilter<>();
     //set filter field name as outlinks
     filter.setFieldName(WebPage.Field.OUTLINKS.toString());
     filter.setMapKey(new Utf8("foobar.whatever"));

http://git-wip-us.apache.org/repos/asf/gora/blob/f681764a/gora-core/src/test/java/org/apache/gora/filter/TestSingleFieldValueFilter.java
----------------------------------------------------------------------
diff --git a/gora-core/src/test/java/org/apache/gora/filter/TestSingleFieldValueFilter.java b/gora-core/src/test/java/org/apache/gora/filter/TestSingleFieldValueFilter.java
index 6390b0d..6eb9c3d 100644
--- a/gora-core/src/test/java/org/apache/gora/filter/TestSingleFieldValueFilter.java
+++ b/gora-core/src/test/java/org/apache/gora/filter/TestSingleFieldValueFilter.java
@@ -32,14 +32,14 @@ public class TestSingleFieldValueFilter {
 
   @Test
   public void testSerialization() throws IOException {
-    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<String, WebPage>();
+    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<>();
     //set filter field to url
     filter.setFieldName(WebPage.Field.URL.toString());
     filter.setFilterOp(FilterOp.EQUALS);
     filter.setFilterIfMissing(true);
     filter.getOperands().add(new Utf8("http://example.org"));
     byte[] byteArray = WritableUtils.toByteArray(filter);
-    SingleFieldValueFilter<String, WebPage> filter2 = new SingleFieldValueFilter<String, WebPage>();
+    SingleFieldValueFilter<String, WebPage> filter2 = new SingleFieldValueFilter<>();
     filter2.readFields(new DataInputStream(new ByteArrayInputStream(byteArray)));
     assertEquals(filter.getFieldName(), filter2.getFieldName());
     assertEquals(filter.getFilterOp(), filter2.getFilterOp());
@@ -49,7 +49,7 @@ public class TestSingleFieldValueFilter {
   
   @Test
   public void testFilterBasics() {
-    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<String, WebPage>();
+    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<>();
     //set filter field to url
     filter.setFieldName(WebPage.Field.URL.toString());
     filter.setFilterOp(FilterOp.EQUALS);
@@ -71,7 +71,7 @@ public class TestSingleFieldValueFilter {
   
   @Test
   public void testFilterInequals() {
-    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<String, WebPage>();
+    SingleFieldValueFilter<String, WebPage> filter = new SingleFieldValueFilter<>();
     //set filter field to url
     filter.setFieldName(WebPage.Field.URL.toString());
     filter.setFilterOp(FilterOp.NOT_EQUALS);