You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2014/03/16 20:39:37 UTC

svn commit: r1578144 [17/37] - in /lucene/dev/branches/lucene5376_2: ./ dev-tools/ dev-tools/idea/.idea/libraries/ dev-tools/idea/solr/contrib/dataimporthandler/ dev-tools/idea/solr/contrib/map-reduce/ dev-tools/idea/solr/core/src/test/ dev-tools/scrip...

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/config/QueryConfigHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/config/QueryConfigHandler.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/config/QueryConfigHandler.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/config/QueryConfigHandler.java Sun Mar 16 19:39:10 2014
@@ -40,7 +40,7 @@ import org.apache.lucene.queryparser.fle
  */
 public abstract class QueryConfigHandler extends AbstractQueryConfig {
   
-  final private LinkedList<FieldConfigListener> listeners = new LinkedList<FieldConfigListener>();
+  final private LinkedList<FieldConfigListener> listeners = new LinkedList<>();
 
   /**
    * Returns an implementation of

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/GroupQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/GroupQueryNode.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/GroupQueryNode.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/GroupQueryNode.java Sun Mar 16 19:39:10 2014
@@ -73,7 +73,7 @@ public class GroupQueryNode extends Quer
   }
 
   public void setChild(QueryNode child) {
-    List<QueryNode> list = new ArrayList<QueryNode>();
+    List<QueryNode> list = new ArrayList<>();
     list.add(child);
     this.set(list);
   }

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/ModifierQueryNode.java Sun Mar 16 19:39:10 2014
@@ -151,7 +151,7 @@ public class ModifierQueryNode extends Q
   }
 
   public void setChild(QueryNode child) {
-    List<QueryNode> list = new ArrayList<QueryNode>();
+    List<QueryNode> list = new ArrayList<>();
     list.add(child);
     this.set(list);
   }

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/PathQueryNode.java Sun Mar 16 19:39:10 2014
@@ -162,7 +162,7 @@ public class PathQueryNode extends Query
    * @return a List QueryText element from position startIndex
    */
   public List<QueryText> getPathElements(int startIndex) {
-    List<PathQueryNode.QueryText> rValues = new ArrayList<PathQueryNode.QueryText>();
+    List<PathQueryNode.QueryText> rValues = new ArrayList<>();
     for (int i = startIndex; i < this.values.size(); i++) {
       try {
         rValues.add(this.values.get(i).clone());
@@ -209,7 +209,7 @@ public class PathQueryNode extends Query
 
     // copy children
     if (this.values != null) {
-      List<QueryText> localValues = new ArrayList<QueryText>();
+      List<QueryText> localValues = new ArrayList<>();
       for (QueryText value : this.values) {
         localValues.add(value.clone());
       }

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNodeImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNodeImpl.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNodeImpl.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/nodes/QueryNodeImpl.java Sun Mar 16 19:39:10 2014
@@ -41,14 +41,14 @@ public abstract class QueryNodeImpl impl
 
   private boolean isLeaf = true;
 
-  private Hashtable<String, Object> tags = new Hashtable<String, Object>();
+  private Hashtable<String, Object> tags = new Hashtable<>();
 
   private List<QueryNode> clauses = null;
 
   protected void allocate() {
 
     if (this.clauses == null) {
-      this.clauses = new ArrayList<QueryNode>();
+      this.clauses = new ArrayList<>();
 
     } else {
       this.clauses.clear();
@@ -106,7 +106,7 @@ public abstract class QueryNodeImpl impl
       child.removeFromParent();
     }
     
-    ArrayList<QueryNode> existingChildren = new ArrayList<QueryNode>(getChildren());
+    ArrayList<QueryNode> existingChildren = new ArrayList<>(getChildren());
     for (QueryNode existingChild : existingChildren) {
       existingChild.removeFromParent();
     }
@@ -124,11 +124,11 @@ public abstract class QueryNodeImpl impl
     clone.isLeaf = this.isLeaf;
 
     // Reset all tags
-    clone.tags = new Hashtable<String, Object>();
+    clone.tags = new Hashtable<>();
 
     // copy children
     if (this.clauses != null) {
-      List<QueryNode> localClauses = new ArrayList<QueryNode>();
+      List<QueryNode> localClauses = new ArrayList<>();
       for (QueryNode clause : this.clauses) {
         localClauses.add(clause.cloneTree());
       }
@@ -156,7 +156,7 @@ public abstract class QueryNodeImpl impl
     if (isLeaf() || this.clauses == null) {
       return null;
     }
-    return new ArrayList<QueryNode>(this.clauses);
+    return new ArrayList<>(this.clauses);
   }
 
   @Override

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorImpl.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorImpl.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorImpl.java Sun Mar 16 19:39:10 2014
@@ -73,7 +73,7 @@ import org.apache.lucene.queryparser.fle
  */
 public abstract class QueryNodeProcessorImpl implements QueryNodeProcessor {
 
-  private ArrayList<ChildrenList> childrenListPool = new ArrayList<ChildrenList>();
+  private ArrayList<ChildrenList> childrenListPool = new ArrayList<>();
 
   private QueryConfigHandler queryConfig;
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorPipeline.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorPipeline.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorPipeline.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/processors/QueryNodeProcessorPipeline.java Sun Mar 16 19:39:10 2014
@@ -40,7 +40,7 @@ import org.apache.lucene.queryparser.fle
 public class QueryNodeProcessorPipeline implements QueryNodeProcessor,
     List<QueryNodeProcessor> {
 
-  private LinkedList<QueryNodeProcessor> processors = new LinkedList<QueryNodeProcessor>();
+  private LinkedList<QueryNodeProcessor> processors = new LinkedList<>();
 
   private QueryConfigHandler queryConfig;
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/QueryNodeOperation.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/QueryNodeOperation.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/QueryNodeOperation.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/core/util/QueryNodeOperation.java Sun Mar 16 19:39:10 2014
@@ -66,7 +66,7 @@ public final class QueryNodeOperation {
       QueryNode result = null;
       switch (op) {
       case NONE:
-        List<QueryNode> children = new ArrayList<QueryNode>();
+        List<QueryNode> children = new ArrayList<>();
         children.add(q1.cloneTree());
         children.add(q2.cloneTree());
         result = new AndQueryNode(children);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/messages/NLS.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/messages/NLS.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/messages/NLS.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/messages/NLS.java Sun Mar 16 19:39:10 2014
@@ -46,7 +46,7 @@ import java.util.ResourceBundle;
 public class NLS {
 
   private static Map<String, Class<? extends NLS>> bundles = 
-    new HashMap<String, Class<? extends NLS>>(0);
+    new HashMap<>(0);
 
   protected NLS() {
     // Do not instantiate
@@ -129,7 +129,7 @@ public class NLS {
 
     // build a map of field names to Field objects
     final int len = fieldArray.length;
-    Map<String, Field> fields = new HashMap<String, Field>(len * 2);
+    Map<String, Field> fields = new HashMap<>(len * 2);
     for (int i = 0; i < len; i++) {
       fields.put(fieldArray[i].getName(), fieldArray[i]);
       loadfieldValue(fieldArray[i], isFieldAccessible, clazz);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/precedence/processors/BooleanModifiersQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/precedence/processors/BooleanModifiersQueryNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/precedence/processors/BooleanModifiersQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/precedence/processors/BooleanModifiersQueryNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -46,7 +46,7 @@ import org.apache.lucene.queryparser.fle
  */
 public class BooleanModifiersQueryNodeProcessor extends QueryNodeProcessorImpl {
 
-  private ArrayList<QueryNode> childrenBuffer = new ArrayList<QueryNode>();
+  private ArrayList<QueryNode> childrenBuffer = new ArrayList<>();
 
   private Boolean usingAnd = false;
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/MultiPhraseQueryNodeBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/MultiPhraseQueryNodeBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/MultiPhraseQueryNodeBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/builders/MultiPhraseQueryNodeBuilder.java Sun Mar 16 19:39:10 2014
@@ -49,7 +49,7 @@ public class MultiPhraseQueryNodeBuilder
     List<QueryNode> children = phraseNode.getChildren();
 
     if (children != null) {
-      TreeMap<Integer, List<Term>> positionTermMap = new TreeMap<Integer, List<Term>>();
+      TreeMap<Integer, List<Term>> positionTermMap = new TreeMap<>();
 
       for (QueryNode child : children) {
         FieldQueryNode termNode = (FieldQueryNode) child;
@@ -59,7 +59,7 @@ public class MultiPhraseQueryNodeBuilder
             .getPositionIncrement());
 
         if (termList == null) {
-          termList = new LinkedList<Term>();
+          termList = new LinkedList<>();
           positionTermMap.put(termNode.getPositionIncrement(), termList);
 
         }

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/nodes/AbstractRangeQueryNode.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/nodes/AbstractRangeQueryNode.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/nodes/AbstractRangeQueryNode.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/nodes/AbstractRangeQueryNode.java Sun Mar 16 19:39:10 2014
@@ -163,7 +163,7 @@ public class AbstractRangeQueryNode<T ex
       this.lowerInclusive = lowerInclusive;
       this.upperInclusive = upperInclusive;
       
-      ArrayList<QueryNode> children = new ArrayList<QueryNode>(2);
+      ArrayList<QueryNode> children = new ArrayList<>(2);
       children.add(lower);
       children.add(upper);
       

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/parser/StandardSyntaxParser.java Sun Mar 16 19:39:10 2014
@@ -185,7 +185,7 @@ public class StandardSyntaxParser implem
       }
       c = DisjQuery(field);
        if (clauses == null) {
-           clauses = new Vector<QueryNode>();
+           clauses = new Vector<>();
            clauses.addElement(first);
         }
         clauses.addElement(c);
@@ -215,7 +215,7 @@ public class StandardSyntaxParser implem
       jj_consume_token(OR);
       c = ConjQuery(field);
      if (clauses == null) {
-         clauses = new Vector<QueryNode>();
+         clauses = new Vector<>();
          clauses.addElement(first);
      }
      clauses.addElement(c);
@@ -245,7 +245,7 @@ public class StandardSyntaxParser implem
       jj_consume_token(AND);
       c = ModClause(field);
      if (clauses == null) {
-         clauses = new Vector<QueryNode>();
+         clauses = new Vector<>();
          clauses.addElement(first);
      }
      clauses.addElement(c);
@@ -986,7 +986,7 @@ public class StandardSyntaxParser implem
       return (jj_ntk = jj_nt.kind);
   }
 
-  private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>();
+  private java.util.List<int[]> jj_expentries = new java.util.ArrayList<>();
   private int[] jj_expentry;
   private int jj_kind = -1;
   private int[] jj_lasttokens = new int[100];

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/AnalyzerQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/AnalyzerQueryNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/AnalyzerQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/AnalyzerQueryNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -193,7 +193,7 @@ public class AnalyzerQueryNodeProcessor 
             
             if (positionCount == 1) {
               // simple case: only one position, with synonyms
-              LinkedList<QueryNode> children = new LinkedList<QueryNode>();
+              LinkedList<QueryNode> children = new LinkedList<>();
               
               for (int i = 0; i < numTokens; i++) {
                 String term = null;
@@ -257,7 +257,7 @@ public class AnalyzerQueryNodeProcessor 
             // phrase query:
             MultiPhraseQueryNode mpq = new MultiPhraseQueryNode();
   
-            List<FieldQueryNode> multiTerms = new ArrayList<FieldQueryNode>();
+            List<FieldQueryNode> multiTerms = new ArrayList<>();
             int position = -1;
             int i = 0;
             int termGroupCount = 0;

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/BooleanQuery2ModifierNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/BooleanQuery2ModifierNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/BooleanQuery2ModifierNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/BooleanQuery2ModifierNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -68,7 +68,7 @@ public class BooleanQuery2ModifierNodePr
   
   QueryConfigHandler queryConfigHandler;
   
-  private final ArrayList<QueryNode> childrenBuffer = new ArrayList<QueryNode>();
+  private final ArrayList<QueryNode> childrenBuffer = new ArrayList<>();
   
   private Boolean usingAnd = false;
   

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/GroupQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/GroupQueryNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/GroupQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/GroupQueryNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -80,7 +80,7 @@ public class GroupQueryNodeProcessor imp
       queryTree = ((GroupQueryNode) queryTree).getChild();
     }
 
-    this.queryNodeList = new ArrayList<QueryNode>();
+    this.queryNodeList = new ArrayList<>();
     this.latestNodeVerified = false;
     readTree(queryTree);
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/MultiFieldQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/MultiFieldQueryNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/MultiFieldQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/MultiFieldQueryNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -93,7 +93,7 @@ public class MultiFieldQueryNodeProcesso
             return fieldNode;
 
           } else {
-            LinkedList<QueryNode> children = new LinkedList<QueryNode>();
+            LinkedList<QueryNode> children = new LinkedList<>();
             children.add(fieldNode);
 
             for (int i = 1; i < fields.length; i++) {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/RemoveEmptyNonLeafQueryNodeProcessor.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/RemoveEmptyNonLeafQueryNodeProcessor.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/RemoveEmptyNonLeafQueryNodeProcessor.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/flexible/standard/processors/RemoveEmptyNonLeafQueryNodeProcessor.java Sun Mar 16 19:39:10 2014
@@ -42,7 +42,7 @@ import org.apache.lucene.queryparser.fle
 public class RemoveEmptyNonLeafQueryNodeProcessor extends
     QueryNodeProcessorImpl {
 
-  private LinkedList<QueryNode> childrenBuffer = new LinkedList<QueryNode>();
+  private LinkedList<QueryNode> childrenBuffer = new LinkedList<>();
 
   public RemoveEmptyNonLeafQueryNodeProcessor() {
     // empty constructor

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/parser/QueryParser.java Sun Mar 16 19:39:10 2014
@@ -185,7 +185,7 @@ public class QueryParser implements Quer
           fieldName = jj_consume_token(TERM);
       jj_consume_token(COLON);
       if (fieldNames == null) {
-        fieldNames = new ArrayList<String>();
+        fieldNames = new ArrayList<>();
       }
       fieldNames.add(fieldName.image);
     }
@@ -211,7 +211,7 @@ public class QueryParser implements Quer
       oprt = jj_consume_token(OR);
                   /* keep only last used operator */
       if (queries == null) {
-        queries = new ArrayList<SrndQuery>();
+        queries = new ArrayList<>();
         queries.add(q);
       }
       q = AndQuery();
@@ -239,7 +239,7 @@ public class QueryParser implements Quer
       oprt = jj_consume_token(AND);
                    /* keep only last used operator */
       if (queries == null) {
-        queries = new ArrayList<SrndQuery>();
+        queries = new ArrayList<>();
         queries.add(q);
       }
       q = NotQuery();
@@ -267,7 +267,7 @@ public class QueryParser implements Quer
       oprt = jj_consume_token(NOT);
                     /* keep only last used operator */
       if (queries == null) {
-        queries = new ArrayList<SrndQuery>();
+        queries = new ArrayList<>();
         queries.add(q);
       }
       q = NQuery();
@@ -293,7 +293,7 @@ public class QueryParser implements Quer
         break label_5;
       }
       dt = jj_consume_token(N);
-      queries = new ArrayList<SrndQuery>();
+      queries = new ArrayList<>();
       queries.add(q); /* left associative */
 
       q = WQuery();
@@ -320,7 +320,7 @@ public class QueryParser implements Quer
         break label_6;
       }
       wt = jj_consume_token(W);
-      queries = new ArrayList<SrndQuery>();
+      queries = new ArrayList<>();
       queries.add(q); /* left associative */
 
       q = PrimaryQuery();
@@ -401,7 +401,7 @@ public class QueryParser implements Quer
 
   final public List<SrndQuery> FieldsQueryList() throws ParseException {
   SrndQuery q;
-  ArrayList<SrndQuery> queries = new ArrayList<SrndQuery>();
+  ArrayList<SrndQuery> queries = new ArrayList<>();
     jj_consume_token(LPAREN);
     q = FieldsQuery();
                      queries.add(q);
@@ -644,7 +644,7 @@ public class QueryParser implements Quer
       return (jj_ntk = jj_nt.kind);
   }
 
-  private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>();
+  private java.util.List<int[]> jj_expentries = new java.util.ArrayList<>();
   private int[] jj_expentry;
   private int jj_kind = -1;
   private int[] jj_lasttokens = new int[100];

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/ComposedQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/ComposedQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/ComposedQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/ComposedQuery.java Sun Mar 16 19:39:10 2014
@@ -51,7 +51,7 @@ public abstract class ComposedQuery exte
   public boolean isOperatorInfix() { return operatorInfix; } /* else prefix operator */
   
   public List<Query> makeLuceneSubQueriesField(String fn, BasicQueryFactory qf) {
-    List<Query> luceneSubQueries = new ArrayList<Query>();
+    List<Query> luceneSubQueries = new ArrayList<>();
     Iterator<SrndQuery> sqi = getSubQueriesIterator();
     while (sqi.hasNext()) {
       luceneSubQueries.add( (sqi.next()).makeLuceneQueryField(fn, qf));

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/FieldsQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/FieldsQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/FieldsQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/FieldsQuery.java Sun Mar 16 19:39:10 2014
@@ -39,7 +39,7 @@ public class FieldsQuery extends SrndQue
   
   public FieldsQuery(SrndQuery q, String fieldName, char fieldOp) {
     this.q = q;
-    fieldNames = new ArrayList<String>();
+    fieldNames = new ArrayList<>();
     fieldNames.add(fieldName);
     this.fieldOp = fieldOp;
   }
@@ -53,7 +53,7 @@ public class FieldsQuery extends SrndQue
     if (fieldNames.size() == 1) { /* single field name: no new queries needed */
       return q.makeLuceneQueryFieldNoBoost(fieldNames.get(0), qf);
     } else { /* OR query over the fields */
-      List<SrndQuery> queries = new ArrayList<SrndQuery>();
+      List<SrndQuery> queries = new ArrayList<>();
       Iterator<String> fni = getFieldNames().listIterator();
       SrndQuery qc;
       while (fni.hasNext()) {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SimpleTermRewriteQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SimpleTermRewriteQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SimpleTermRewriteQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SimpleTermRewriteQuery.java Sun Mar 16 19:39:10 2014
@@ -35,7 +35,7 @@ class SimpleTermRewriteQuery extends Rew
 
   @Override
   public Query rewrite(IndexReader reader) throws IOException {
-    final List<Query> luceneSubQueries = new ArrayList<Query>();
+    final List<Query> luceneSubQueries = new ArrayList<>();
     srndQuery.visitMatchingTerms(reader, fieldName,
     new SimpleTerm.MatchingTermVisitor() {
       @Override

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/surround/query/SpanNearClauseFactory.java Sun Mar 16 19:39:10 2014
@@ -71,7 +71,7 @@ public class SpanNearClauseFactory { // 
   public SpanNearClauseFactory(IndexReader reader, String fieldName, BasicQueryFactory qf) {
     this.reader = reader;
     this.fieldName = fieldName;
-    this.weightBySpanQuery = new HashMap<SpanQuery, Float>(); 
+    this.weightBySpanQuery = new HashMap<>();
     this.qf = qf;
   }
   private IndexReader reader;

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/FilterBuilderFactory.java Sun Mar 16 19:39:10 2014
@@ -29,7 +29,7 @@ import java.util.HashMap;
  */
 public class FilterBuilderFactory implements FilterBuilder {
 
-  HashMap<String, FilterBuilder> builders = new HashMap<String, FilterBuilder>();
+  HashMap<String, FilterBuilder> builders = new HashMap<>();
 
   @Override
   public Filter getFilter(Element n) throws ParserException {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryBuilderFactory.java Sun Mar 16 19:39:10 2014
@@ -29,7 +29,7 @@ import java.util.HashMap;
  */
 public class QueryBuilderFactory implements QueryBuilder {
 
-  HashMap<String, QueryBuilder> builders = new HashMap<String, QueryBuilder>();
+  HashMap<String, QueryBuilder> builders = new HashMap<>();
 
   @Override
   public Query getQuery(Element n) throws ParserException {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryTemplateManager.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryTemplateManager.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryTemplateManager.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/QueryTemplateManager.java Sun Mar 16 19:39:10 2014
@@ -48,7 +48,7 @@ public class QueryTemplateManager {
   static final DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
   static final TransformerFactory tFactory = TransformerFactory.newInstance();
 
-  HashMap<String, Templates> compiledTemplatesCache = new HashMap<String, Templates>();
+  HashMap<String, Templates> compiledTemplatesCache = new HashMap<>();
   Templates defaultCompiledTemplates = null;
 
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/CachedFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/CachedFilterBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/CachedFilterBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/CachedFilterBuilder.java Sun Mar 16 19:39:10 2014
@@ -65,7 +65,7 @@ public class CachedFilterBuilder impleme
     Element childElement = DOMUtils.getFirstChildOrFail(e);
 
     if (filterCache == null) {
-      filterCache = new LRUCache<Object, Filter>(cacheSize);
+      filterCache = new LRUCache<>(cacheSize);
     }
 
     // Test to see if child Element is a query or filter that needs to be

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/LikeThisQueryBuilder.java Sun Mar 16 19:39:10 2014
@@ -71,7 +71,7 @@ public class LikeThisQueryBuilder implem
     String stopWords = e.getAttribute("stopWords");
     Set<String> stopWordsSet = null;
     if ((stopWords != null) && (fields != null)) {
-      stopWordsSet = new HashSet<String>();
+      stopWordsSet = new HashSet<>();
       for (String field : fields) {
         try (TokenStream ts = analyzer.tokenStream(field, stopWords)) {
           CharTermAttribute termAtt = ts.addAttribute(CharTermAttribute.class);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanNearBuilder.java Sun Mar 16 19:39:10 2014
@@ -42,7 +42,7 @@ public class SpanNearBuilder extends Spa
     String slopString = DOMUtils.getAttributeOrFail(e, "slop");
     int slop = Integer.parseInt(slopString);
     boolean inOrder = DOMUtils.getAttribute(e, "inOrder", false);
-    List<SpanQuery> spans = new ArrayList<SpanQuery>();
+    List<SpanQuery> spans = new ArrayList<>();
     for (Node kid = e.getFirstChild(); kid != null; kid = kid.getNextSibling()) {
       if (kid.getNodeType() == Node.ELEMENT_NODE) {
         spans.add(factory.getSpanQuery((Element) kid));

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrBuilder.java Sun Mar 16 19:39:10 2014
@@ -39,7 +39,7 @@ public class SpanOrBuilder extends SpanB
 
   @Override
   public SpanQuery getSpanQuery(Element e) throws ParserException {
-    List<SpanQuery> clausesList = new ArrayList<SpanQuery>();
+    List<SpanQuery> clausesList = new ArrayList<>();
     for (Node kid = e.getFirstChild(); kid != null; kid = kid.getNextSibling()) {
       if (kid.getNodeType() == Node.ELEMENT_NODE) {
         SpanQuery clause = factory.getSpanQuery((Element) kid);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanOrTermsBuilder.java Sun Mar 16 19:39:10 2014
@@ -49,7 +49,7 @@ public class SpanOrTermsBuilder extends 
     String fieldName = DOMUtils.getAttributeWithInheritanceOrFail(e, "fieldName");
     String value = DOMUtils.getNonBlankTextOrFail(e);
 
-    List<SpanQuery> clausesList = new ArrayList<SpanQuery>();
+    List<SpanQuery> clausesList = new ArrayList<>();
 
     try (TokenStream ts = analyzer.tokenStream(fieldName, value)) {
       TermToBytesRefAttribute termAtt = ts.addAttribute(TermToBytesRefAttribute.class);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/SpanQueryBuilderFactory.java Sun Mar 16 19:39:10 2014
@@ -29,7 +29,7 @@ import java.util.Map;
  */
 public class SpanQueryBuilderFactory implements SpanQueryBuilder {
 
-  private final Map<String, SpanQueryBuilder> builders = new HashMap<String, SpanQueryBuilder>();
+  private final Map<String, SpanQueryBuilder> builders = new HashMap<>();
 
   @Override
   public Query getQuery(Element e) throws ParserException {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/java/org/apache/lucene/queryparser/xml/builders/TermsFilterBuilder.java Sun Mar 16 19:39:10 2014
@@ -50,7 +50,7 @@ public class TermsFilterBuilder implemen
     */
   @Override
   public Filter getFilter(Element e) throws ParserException {
-    List<BytesRef> terms = new ArrayList<BytesRef>();
+    List<BytesRef> terms = new ArrayList<>();
     String text = DOMUtils.getNonBlankTextOrFail(e);
     String fieldName = DOMUtils.getAttributeWithInheritanceOrFail(e, "fieldName");
 

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/analyzing/TestAnalyzingQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/analyzing/TestAnalyzingQueryParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/analyzing/TestAnalyzingQueryParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/analyzing/TestAnalyzingQueryParser.java Sun Mar 16 19:39:10 2014
@@ -61,8 +61,8 @@ public class TestAnalyzingQueryParser ex
   private String[] fuzzyInput;
   private String[] fuzzyExpected;
 
-  private Map<String, String> wildcardEscapeHits = new TreeMap<String, String>();
-  private Map<String, String> wildcardEscapeMisses = new TreeMap<String, String>();
+  private Map<String, String> wildcardEscapeHits = new TreeMap<>();
+  private Map<String, String> wildcardEscapeMisses = new TreeMap<>();
 
   @Override
   public void setUp() throws Exception {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/classic/TestMultiFieldQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/classic/TestMultiFieldQueryParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/classic/TestMultiFieldQueryParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/classic/TestMultiFieldQueryParser.java Sun Mar 16 19:39:10 2014
@@ -132,7 +132,7 @@ public class TestMultiFieldQueryParser e
   }
   
   public void testBoostsSimple() throws Exception {
-      Map<String,Float> boosts = new HashMap<String,Float>();
+      Map<String,Float> boosts = new HashMap<>();
       boosts.put("b", Float.valueOf(5));
       boosts.put("t", Float.valueOf(10));
       String[] fields = {"b", "t"};

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/complexPhrase/TestComplexPhraseQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/complexPhrase/TestComplexPhraseQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/complexPhrase/TestComplexPhraseQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/complexPhrase/TestComplexPhraseQuery.java Sun Mar 16 19:39:10 2014
@@ -49,6 +49,8 @@ public class TestComplexPhraseQuery exte
 
   String defaultFieldName = "name";
 
+  boolean inOrder = true;
+
   public void testComplexPhrases() throws Exception {
     checkMatches("\"john smith\"", "1"); // Simple multi-term still works
     checkMatches("\"j*   smyth~\"", "1,2"); // wildcards and fuzzies are OK in
@@ -72,8 +74,20 @@ public class TestComplexPhraseQuery exte
     checkBadQuery("\"jo* \"smith\" \""); // phrases inside phrases is bad
   }
 
+
+  public void testUnOrderedProximitySearches() throws Exception {
+
+    inOrder = true;
+    checkMatches("\"smith jo*\"~2", ""); // ordered proximity produces empty set
+
+    inOrder = false;
+    checkMatches("\"smith jo*\"~2", "1,2,3"); // un-ordered proximity
+
+  }
+
   private void checkBadQuery(String qString) {
-    QueryParser qp = new ComplexPhraseQueryParser(TEST_VERSION_CURRENT, defaultFieldName, analyzer);
+    ComplexPhraseQueryParser qp = new ComplexPhraseQueryParser(TEST_VERSION_CURRENT, defaultFieldName, analyzer);
+    qp.setInOrder(inOrder);
     Throwable expected = null;
     try {
       qp.parse(qString);
@@ -86,12 +100,13 @@ public class TestComplexPhraseQuery exte
 
   private void checkMatches(String qString, String expectedVals)
       throws Exception {
-    QueryParser qp = new ComplexPhraseQueryParser(TEST_VERSION_CURRENT, defaultFieldName, analyzer);
+    ComplexPhraseQueryParser qp = new ComplexPhraseQueryParser(TEST_VERSION_CURRENT, defaultFieldName, analyzer);
+    qp.setInOrder(inOrder);
     qp.setFuzzyPrefixLength(1); // usually a good idea
 
     Query q = qp.parse(qString);
 
-    HashSet<String> expecteds = new HashSet<String>();
+    HashSet<String> expecteds = new HashSet<>();
     String[] vals = expectedVals.split(",");
     for (int i = 0; i < vals.length; i++) {
       if (vals[i].length() > 0)

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/precedence/TestPrecedenceQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/precedence/TestPrecedenceQueryParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/precedence/TestPrecedenceQueryParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/precedence/TestPrecedenceQueryParser.java Sun Mar 16 19:39:10 2014
@@ -431,7 +431,7 @@ public class TestPrecedenceQueryParser e
     final String hourField = "hour";
     PrecedenceQueryParser qp = new PrecedenceQueryParser(new MockAnalyzer(random()));
 
-    Map<CharSequence, DateTools.Resolution> fieldMap = new HashMap<CharSequence,DateTools.Resolution>();
+    Map<CharSequence, DateTools.Resolution> fieldMap = new HashMap<>();
     // set a field specific date resolution
     fieldMap.put(monthField, DateTools.Resolution.MONTH);
     qp.setDateResolution(fieldMap);

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestMultiFieldQPHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestMultiFieldQPHelper.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestMultiFieldQPHelper.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestMultiFieldQPHelper.java Sun Mar 16 19:39:10 2014
@@ -145,7 +145,7 @@ public class TestMultiFieldQPHelper exte
   }
 
   public void testBoostsSimple() throws Exception {
-    Map<String,Float> boosts = new HashMap<String,Float>();
+    Map<String,Float> boosts = new HashMap<>();
     boosts.put("b", Float.valueOf(5));
     boosts.put("t", Float.valueOf(10));
     String[] fields = { "b", "t" };

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestNumericQueryParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestNumericQueryParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestNumericQueryParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestNumericQueryParser.java Sun Mar 16 19:39:10 2014
@@ -103,7 +103,7 @@ public class TestNumericQueryParser exte
     
     qp = new StandardQueryParser(ANALYZER);
     
-    final HashMap<String,Number> randomNumberMap = new HashMap<String,Number>();
+    final HashMap<String,Number> randomNumberMap = new HashMap<>();
     
     SimpleDateFormat dateFormat;
     long randomDate;
@@ -194,8 +194,8 @@ public class TestNumericQueryParser exte
             .setMergePolicy(newLogMergePolicy()));
     
     Document doc = new Document();
-    HashMap<String,NumericConfig> numericConfigMap = new HashMap<String,NumericConfig>();
-    HashMap<String,Field> numericFieldMap = new HashMap<String,Field>();
+    HashMap<String,NumericConfig> numericConfigMap = new HashMap<>();
+    HashMap<String,Field> numericFieldMap = new HashMap<>();
     qp.setNumericConfigMap(numericConfigMap);
     
     for (NumericType type : NumericType.values()) {

Modified: lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/queryparser/src/test/org/apache/lucene/queryparser/flexible/standard/TestQPHelper.java Sun Mar 16 19:39:10 2014
@@ -741,7 +741,7 @@ public class TestQPHelper extends Lucene
     final String hourField = "hour";
     StandardQueryParser qp = new StandardQueryParser();
 
-    Map<CharSequence, DateTools.Resolution> dateRes =  new HashMap<CharSequence, DateTools.Resolution>();
+    Map<CharSequence, DateTools.Resolution> dateRes =  new HashMap<>();
     
     // set a field specific date resolution    
     dateRes.put(monthField, DateTools.Resolution.MONTH);

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexAndTaxonomyRevision.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexAndTaxonomyRevision.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexAndTaxonomyRevision.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexAndTaxonomyRevision.java Sun Mar 16 19:39:10 2014
@@ -110,7 +110,7 @@ public class IndexAndTaxonomyRevision im
   /** Returns a singleton map of the revision files from the given {@link IndexCommit}. */
   public static Map<String, List<RevisionFile>> revisionFiles(IndexCommit indexCommit, IndexCommit taxoCommit)
       throws IOException {
-    HashMap<String,List<RevisionFile>> files = new HashMap<String,List<RevisionFile>>();
+    HashMap<String,List<RevisionFile>> files = new HashMap<>();
     files.put(INDEX_SOURCE, IndexRevision.revisionFiles(indexCommit).values().iterator().next());
     files.put(TAXONOMY_SOURCE, IndexRevision.revisionFiles(taxoCommit).values().iterator().next());
     return files;

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexReplicationHandler.java Sun Mar 16 19:39:10 2014
@@ -150,7 +150,7 @@ public class IndexReplicationHandler imp
       // if there were any IO errors reading the expected commit point (i.e.
       // segments files mismatch), then ignore that commit either.
       if (commit != null && commit.getSegmentsFileName().equals(segmentsFile)) {
-        Set<String> commitFiles = new HashSet<String>();
+        Set<String> commitFiles = new HashSet<>();
         commitFiles.addAll(commit.getFileNames());
         commitFiles.add(IndexFileNames.SEGMENTS_GEN);
         Matcher matcher = IndexFileNames.CODEC_FILE_PATTERN.matcher("");

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexRevision.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexRevision.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexRevision.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/IndexRevision.java Sun Mar 16 19:39:10 2014
@@ -69,7 +69,7 @@ public class IndexRevision implements Re
   /** Returns a singleton map of the revision files from the given {@link IndexCommit}. */
   public static Map<String,List<RevisionFile>> revisionFiles(IndexCommit commit) throws IOException {
     Collection<String> commitFiles = commit.getFileNames();
-    List<RevisionFile> revisionFiles = new ArrayList<RevisionFile>(commitFiles.size());
+    List<RevisionFile> revisionFiles = new ArrayList<>(commitFiles.size());
     String segmentsFile = commit.getSegmentsFileName();
     Directory dir = commit.getDirectory();
     

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/LocalReplicator.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/LocalReplicator.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/LocalReplicator.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/LocalReplicator.java Sun Mar 16 19:39:10 2014
@@ -109,7 +109,7 @@ public class LocalReplicator implements 
   private volatile boolean closed = false;
   
   private final AtomicInteger sessionToken = new AtomicInteger(0);
-  private final Map<String, ReplicationSession> sessions = new HashMap<String, ReplicationSession>();
+  private final Map<String, ReplicationSession> sessions = new HashMap<>();
   
   private void checkExpiredSessions() throws IOException {
     Iterator<ReplicationSession> it = sessions.values().iterator();

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/ReplicationClient.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/ReplicationClient.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/ReplicationClient.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/ReplicationClient.java Sun Mar 16 19:39:10 2014
@@ -188,8 +188,8 @@ public class ReplicationClient implement
   
   private void doUpdate() throws IOException {
     SessionToken session = null;
-    final Map<String,Directory> sourceDirectory = new HashMap<String,Directory>();
-    final Map<String,List<String>> copiedFiles = new HashMap<String,List<String>>();
+    final Map<String,Directory> sourceDirectory = new HashMap<>();
+    final Map<String,List<String>> copiedFiles = new HashMap<>();
     boolean notify = false;
     try {
       final String version = handler.currentVersion();
@@ -209,7 +209,7 @@ public class ReplicationClient implement
         String source = e.getKey();
         Directory dir = factory.getDirectory(session.id, source);
         sourceDirectory.put(source, dir);
-        List<String> cpFiles = new ArrayList<String>();
+        List<String> cpFiles = new ArrayList<>();
         copiedFiles.put(source, cpFiles);
         for (RevisionFile file : e.getValue()) {
           if (closed) {
@@ -298,16 +298,16 @@ public class ReplicationClient implement
       return newRevisionFiles;
     }
     
-    Map<String,List<RevisionFile>> requiredFiles = new HashMap<String,List<RevisionFile>>();
+    Map<String,List<RevisionFile>> requiredFiles = new HashMap<>();
     for (Entry<String,List<RevisionFile>> e : handlerRevisionFiles.entrySet()) {
       // put the handler files in a Set, for faster contains() checks later
-      Set<String> handlerFiles = new HashSet<String>();
+      Set<String> handlerFiles = new HashSet<>();
       for (RevisionFile file : e.getValue()) {
         handlerFiles.add(file.fileName);
       }
       
       // make sure to preserve revisionFiles order
-      ArrayList<RevisionFile> res = new ArrayList<RevisionFile>();
+      ArrayList<RevisionFile> res = new ArrayList<>();
       String source = e.getKey();
       assert newRevisionFiles.containsKey(source) : "source not found in newRevisionFiles: " + newRevisionFiles;
       for (RevisionFile file : newRevisionFiles.get(source)) {

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/SessionToken.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/SessionToken.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/SessionToken.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/SessionToken.java Sun Mar 16 19:39:10 2014
@@ -60,12 +60,12 @@ public final class SessionToken {
   public SessionToken(DataInput in) throws IOException {
     this.id = in.readUTF();
     this.version = in.readUTF();
-    this.sourceFiles = new HashMap<String,List<RevisionFile>>();
+    this.sourceFiles = new HashMap<>();
     int numSources = in.readInt();
     while (numSources > 0) {
       String source = in.readUTF();
       int numFiles = in.readInt();
-      List<RevisionFile> files = new ArrayList<RevisionFile>(numFiles);
+      List<RevisionFile> files = new ArrayList<>(numFiles);
       for (int i = 0; i < numFiles; i++) {
         String fileName = in.readUTF();
         RevisionFile file = new RevisionFile(fileName);

Modified: lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/http/ReplicationService.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/http/ReplicationService.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/http/ReplicationService.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/replicator/src/java/org/apache/lucene/replicator/http/ReplicationService.java Sun Mar 16 19:39:10 2014
@@ -106,7 +106,7 @@ public class ReplicationService {
     // than using String.split() since the latter may return empty elements in
     // the array
     StringTokenizer stok = new StringTokenizer(path.substring(startIdx), "/");
-    ArrayList<String> elements = new ArrayList<String>();
+    ArrayList<String> elements = new ArrayList<>();
     while (stok.hasMoreTokens()) {
       elements.add(stok.nextToken());
     }

Modified: lucene/dev/branches/lucene5376_2/lucene/sandbox/src/java/org/apache/lucene/sandbox/queries/FuzzyLikeThisQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/sandbox/src/java/org/apache/lucene/sandbox/queries/FuzzyLikeThisQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/sandbox/src/java/org/apache/lucene/sandbox/queries/FuzzyLikeThisQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/sandbox/src/java/org/apache/lucene/sandbox/queries/FuzzyLikeThisQuery.java Sun Mar 16 19:39:10 2014
@@ -60,7 +60,7 @@ public class FuzzyLikeThisQuery extends 
     // provided to TermQuery, so that the general idea is agnostic to any scoring system...
     static TFIDFSimilarity sim=new DefaultSimilarity();
     Query rewrittenQuery=null;
-    ArrayList<FieldVals> fieldVals=new ArrayList<FieldVals>();
+    ArrayList<FieldVals> fieldVals=new ArrayList<>();
     Analyzer analyzer;
     
     ScoreTermQueue q;
@@ -201,7 +201,7 @@ public class FuzzyLikeThisQuery extends 
       CharTermAttribute termAtt = ts.addAttribute(CharTermAttribute.class);
 
       int corpusNumDocs = reader.numDocs();
-      HashSet<String> processedTerms = new HashSet<String>();
+      HashSet<String> processedTerms = new HashSet<>();
       ts.reset();
       while (ts.incrementToken()) {
         String term = termAtt.toString();
@@ -277,7 +277,7 @@ public class FuzzyLikeThisQuery extends 
         //create BooleanQueries to hold the variants for each token/field pair and ensure it
         // has no coord factor
         //Step 1: sort the termqueries by term/field
-        HashMap<Term,ArrayList<ScoreTerm>> variantQueries=new HashMap<Term,ArrayList<ScoreTerm>>();
+        HashMap<Term,ArrayList<ScoreTerm>> variantQueries=new HashMap<>();
         int size = q.size();
         for(int i = 0; i < size; i++)
         {
@@ -285,7 +285,7 @@ public class FuzzyLikeThisQuery extends 
           ArrayList<ScoreTerm> l= variantQueries.get(st.fuzziedSourceTerm);
           if(l==null)
           {
-              l=new ArrayList<ScoreTerm>();
+              l=new ArrayList<>();
               variantQueries.put(st.fuzziedSourceTerm,l);
           }
           l.add(st);

Modified: lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/DuplicateFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/DuplicateFilterTest.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/DuplicateFilterTest.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/DuplicateFilterTest.java Sun Mar 16 19:39:10 2014
@@ -83,7 +83,7 @@ public class DuplicateFilterTest extends
 
   public void testDefaultFilter() throws Throwable {
     DuplicateFilter df = new DuplicateFilter(KEY_FIELD);
-    HashSet<String> results = new HashSet<String>();
+    HashSet<String> results = new HashSet<>();
     ScoreDoc[] hits = searcher.search(tq, df, 1000).scoreDocs;
 
     for (ScoreDoc hit : hits) {
@@ -95,7 +95,7 @@ public class DuplicateFilterTest extends
   }
 
   public void testNoFilter() throws Throwable {
-    HashSet<String> results = new HashSet<String>();
+    HashSet<String> results = new HashSet<>();
     ScoreDoc[] hits = searcher.search(tq, null, 1000).scoreDocs;
     assertTrue("Default searching should have found some matches", hits.length > 0);
     boolean dupsFound = false;
@@ -113,7 +113,7 @@ public class DuplicateFilterTest extends
   public void testFastFilter() throws Throwable {
     DuplicateFilter df = new DuplicateFilter(KEY_FIELD);
     df.setProcessingMode(DuplicateFilter.ProcessingMode.PM_FAST_INVALIDATION);
-    HashSet<String> results = new HashSet<String>();
+    HashSet<String> results = new HashSet<>();
     ScoreDoc[] hits = searcher.search(tq, df, 1000).scoreDocs;
     assertTrue("Filtered searching should have found some matches", hits.length > 0);
 

Modified: lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/FuzzyLikeThisQueryTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/FuzzyLikeThisQueryTest.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/FuzzyLikeThisQueryTest.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/FuzzyLikeThisQueryTest.java Sun Mar 16 19:39:10 2014
@@ -81,7 +81,7 @@ public class FuzzyLikeThisQueryTest exte
     FuzzyLikeThisQuery flt = new FuzzyLikeThisQuery(10, analyzer);
     flt.addTerms("smith", "name", 0.3f, 1);
     Query q = flt.rewrite(searcher.getIndexReader());
-    HashSet<Term> queryTerms = new HashSet<Term>();
+    HashSet<Term> queryTerms = new HashSet<>();
     q.extractTerms(queryTerms);
     assertTrue("Should have variant smythe", queryTerms.contains(new Term("name", "smythe")));
     assertTrue("Should have variant smith", queryTerms.contains(new Term("name", "smith")));
@@ -98,7 +98,7 @@ public class FuzzyLikeThisQueryTest exte
     FuzzyLikeThisQuery flt = new FuzzyLikeThisQuery(10, analyzer);
     flt.addTerms("jonathin smoth", "name", 0.3f, 1);
     Query q = flt.rewrite(searcher.getIndexReader());
-    HashSet<Term> queryTerms = new HashSet<Term>();
+    HashSet<Term> queryTerms = new HashSet<>();
     q.extractTerms(queryTerms);
     assertTrue("Should have variant jonathan", queryTerms.contains(new Term("name", "jonathan")));
     assertTrue("Should have variant smith", queryTerms.contains(new Term("name", "smith")));
@@ -116,7 +116,7 @@ public class FuzzyLikeThisQueryTest exte
     flt.addTerms("jonathin smoth", "this field does not exist", 0.3f, 1);
     // don't fail here just because the field doesn't exits
     Query q = flt.rewrite(searcher.getIndexReader());
-    HashSet<Term> queryTerms = new HashSet<Term>();
+    HashSet<Term> queryTerms = new HashSet<>();
     q.extractTerms(queryTerms);
     assertTrue("Should have variant jonathan", queryTerms.contains(new Term("name", "jonathan")));
     assertTrue("Should have variant smith", queryTerms.contains(new Term("name", "smith")));
@@ -133,7 +133,7 @@ public class FuzzyLikeThisQueryTest exte
     FuzzyLikeThisQuery flt = new FuzzyLikeThisQuery(10, analyzer);
     flt.addTerms("fernando smith", "name", 0.3f, 1);
     Query q = flt.rewrite(searcher.getIndexReader());
-    HashSet<Term> queryTerms = new HashSet<Term>();
+    HashSet<Term> queryTerms = new HashSet<>();
     q.extractTerms(queryTerms);
     assertTrue("Should have variant smith", queryTerms.contains(new Term("name", "smith")));
     TopDocs topDocs = searcher.search(flt, 1);

Modified: lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestRegexQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestRegexQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestRegexQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestRegexQuery.java Sun Mar 16 19:39:10 2014
@@ -73,8 +73,8 @@ public class TestRegexQuery extends Luce
   }
 
   private int  spanRegexQueryNrHits(String regex1, String regex2, int slop, boolean ordered) throws Exception {
-    SpanQuery srq1 = new SpanMultiTermQueryWrapper<RegexQuery>(new RegexQuery(newTerm(regex1)));
-    SpanQuery srq2 = new SpanMultiTermQueryWrapper<RegexQuery>(new RegexQuery(newTerm(regex2)));
+    SpanQuery srq1 = new SpanMultiTermQueryWrapper<>(new RegexQuery(newTerm(regex1)));
+    SpanQuery srq2 = new SpanMultiTermQueryWrapper<>(new RegexQuery(newTerm(regex2)));
     SpanNearQuery query = new SpanNearQuery( new SpanQuery[]{srq1, srq2}, slop, ordered);
 
     return searcher.search(query, null, 1000).totalHits;

Modified: lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestSpanRegexQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestSpanRegexQuery.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestSpanRegexQuery.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/sandbox/src/test/org/apache/lucene/sandbox/queries/regex/TestSpanRegexQuery.java Sun Mar 16 19:39:10 2014
@@ -70,7 +70,7 @@ public class TestSpanRegexQuery extends 
 
     IndexReader reader = DirectoryReader.open(directory);
     IndexSearcher searcher = newSearcher(reader);
-    SpanQuery srq = new SpanMultiTermQueryWrapper<RegexQuery>(new RegexQuery(new Term("field", "aut.*")));
+    SpanQuery srq = new SpanMultiTermQueryWrapper<>(new RegexQuery(new Term("field", "aut.*")));
     SpanFirstQuery sfq = new SpanFirstQuery(srq, 1);
     // SpanNearQuery query = new SpanNearQuery(new SpanQuery[] {srq, stq}, 6,
     // true);

Modified: lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/IndexState.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/IndexState.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/IndexState.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/IndexState.java Sun Mar 16 19:39:10 2014
@@ -139,7 +139,7 @@ public class IndexState implements Close
   public Version matchVersion = Version.LUCENE_46;
 
   /** Creates directories */
-  DirectoryFactory df = DirectoryFactory.get("FSDirectory");
+  public DirectoryFactory df = DirectoryFactory.get("FSDirectory");
 
   /** Loads all resources for analysis components */
   public final ResourceLoader resourceLoader;

Modified: lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/handlers/BuildSuggestHandler.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/handlers/BuildSuggestHandler.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/handlers/BuildSuggestHandler.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/server/src/java/org/apache/lucene/server/handlers/BuildSuggestHandler.java Sun Mar 16 19:39:10 2014
@@ -236,7 +236,7 @@ public class BuildSuggestHandler extends
                                          r.getInt("maxGraphExpansions"), true);
     } else if (impl.equals("InfixSuggester")) {
       suggester = new AnalyzingInfixSuggester(state.matchVersion,
-                                              new File(state.rootDir, "suggest." + suggestName + ".infix"),
+                                              state.df.open(new File(state.rootDir, "suggest." + suggestName + ".infix")),
                                               indexAnalyzer,
                                               queryAnalyzer,
                                               AnalyzingInfixSuggester.DEFAULT_MIN_PREFIX_CHARS) {

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/PrefixTreeStrategy.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/PrefixTreeStrategy.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/PrefixTreeStrategy.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/PrefixTreeStrategy.java Sun Mar 16 19:39:10 2014
@@ -77,7 +77,7 @@ import java.util.concurrent.ConcurrentHa
  */
 public abstract class PrefixTreeStrategy extends SpatialStrategy {
   protected final SpatialPrefixTree grid;
-  private final Map<String, PointPrefixTreeFieldCacheProvider> provider = new ConcurrentHashMap<String, PointPrefixTreeFieldCacheProvider>();
+  private final Map<String, PointPrefixTreeFieldCacheProvider> provider = new ConcurrentHashMap<>();
   protected final boolean simplifyIndexedCells;
   protected int defaultFieldValuesArrayLen = 2;
   protected double distErrPct = SpatialArgs.DEFAULT_DISTERRPCT;// [ 0 TO 0.5 ]

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/Cell.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/Cell.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/Cell.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/Cell.java Sun Mar 16 19:39:10 2014
@@ -174,7 +174,7 @@ public abstract class Cell implements Co
     }
 
     //TODO change API to return a filtering iterator
-    List<Cell> copy = new ArrayList<Cell>(cells.size());
+    List<Cell> copy = new ArrayList<>(cells.size());
     for (Cell cell : cells) {
       SpatialRelation rel = cell.getShape().relate(shapeFilter);
       if (rel == SpatialRelation.DISJOINT)

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/GeohashPrefixTree.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/GeohashPrefixTree.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/GeohashPrefixTree.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/GeohashPrefixTree.java Sun Mar 16 19:39:10 2014
@@ -111,7 +111,7 @@ public class GeohashPrefixTree extends S
     @Override
     public Collection<Cell> getSubCells() {
       String[] hashes = GeohashUtils.getSubGeohashes(getGeohash());//sorted
-      List<Cell> cells = new ArrayList<Cell>(hashes.length);
+      List<Cell> cells = new ArrayList<>(hashes.length);
       for (String hash : hashes) {
         cells.add(new GhCell(hash));
       }

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/QuadPrefixTree.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/QuadPrefixTree.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/QuadPrefixTree.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/QuadPrefixTree.java Sun Mar 16 19:39:10 2014
@@ -141,7 +141,7 @@ public class QuadPrefixTree extends Spat
 
   @Override
   public Cell getCell(Point p, int level) {
-    List<Cell> cells = new ArrayList<Cell>(1);
+    List<Cell> cells = new ArrayList<>(1);
     build(xmid, ymid, 0, cells, new StringBuilder(), ctx.makePoint(p.getX(),p.getY()), level);
     return cells.get(0);//note cells could be longer if p on edge
   }
@@ -240,7 +240,7 @@ public class QuadPrefixTree extends Spat
 
     @Override
     public Collection<Cell> getSubCells() {
-      List<Cell> cells = new ArrayList<Cell>(4);
+      List<Cell> cells = new ArrayList<>(4);
       cells.add(new QuadCell(getTokenString()+"A"));
       cells.add(new QuadCell(getTokenString()+"B"));
       cells.add(new QuadCell(getTokenString()+"C"));

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/SpatialPrefixTree.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/SpatialPrefixTree.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/SpatialPrefixTree.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/prefix/tree/SpatialPrefixTree.java Sun Mar 16 19:39:10 2014
@@ -164,7 +164,7 @@ public abstract class SpatialPrefixTree 
     if (shape instanceof Point) {
       return getCells((Point) shape, detailLevel, inclParents);
     }
-    List<Cell> cells = new ArrayList<Cell>(inclParents ? 4096 : 2048);
+    List<Cell> cells = new ArrayList<>(inclParents ? 4096 : 2048);
     recursiveGetCells(getWorldCell(), shape, detailLevel, inclParents, simplify, cells);
     return cells;
   }
@@ -226,7 +226,7 @@ public abstract class SpatialPrefixTree 
 
     String endToken = cell.getTokenString();
     assert endToken.length() == detailLevel;
-    List<Cell> cells = new ArrayList<Cell>(detailLevel);
+    List<Cell> cells = new ArrayList<>(detailLevel);
     for (int i = 1; i < detailLevel; i++) {
       cells.add(getCell(endToken.substring(0, i)));
     }
@@ -238,7 +238,7 @@ public abstract class SpatialPrefixTree 
    * Will add the trailing leaf byte for leaves. This isn't particularly efficient.
    */
   public static List<String> cellsToTokenStrings(Collection<Cell> cells) {
-    List<String> tokens = new ArrayList<String>((cells.size()));
+    List<String> tokens = new ArrayList<>((cells.size()));
     for (Cell cell : cells) {
       final String token = cell.getTokenString();
       if (cell.isLeaf()) {

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialArgsParser.java Sun Mar 16 19:39:10 2014
@@ -129,7 +129,7 @@ public class SpatialArgsParser {
   /** Parses "a=b c=d f" (whitespace separated) into name-value pairs. If there
    * is no '=' as in 'f' above then it's short for f=f. */
   protected static Map<String, String> parseMap(String body) {
-    Map<String, String> map = new HashMap<String, String>();
+    Map<String, String> map = new HashMap<>();
     StringTokenizer st = new StringTokenizer(body, " \n\t");
     while (st.hasMoreTokens()) {
       String a = st.nextToken();

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialOperation.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialOperation.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialOperation.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/query/SpatialOperation.java Sun Mar 16 19:39:10 2014
@@ -40,8 +40,8 @@ import java.util.Map;
  */
 public abstract class SpatialOperation implements Serializable {
   // Private registry
-  private static final Map<String, SpatialOperation> registry = new HashMap<String, SpatialOperation>();
-  private static final List<SpatialOperation> list = new ArrayList<SpatialOperation>();
+  private static final Map<String, SpatialOperation> registry = new HashMap<>();
+  private static final List<SpatialOperation> list = new ArrayList<>();
 
   // Geometry Operations
 

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/CachingDoubleValueSource.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/CachingDoubleValueSource.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/CachingDoubleValueSource.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/CachingDoubleValueSource.java Sun Mar 16 19:39:10 2014
@@ -38,7 +38,7 @@ public class CachingDoubleValueSource ex
   public CachingDoubleValueSource( ValueSource source )
   {
     this.source = source;
-    cache = new HashMap<Integer, Double>();
+    cache = new HashMap<>();
   }
 
   @Override

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCache.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCache.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCache.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCache.java Sun Mar 16 19:39:10 2014
@@ -44,7 +44,7 @@ public class ShapeFieldCache<T extends S
   public void add( int docid, T s ) {
     List<T> list = cache[docid];
     if( list == null ) {
-      list = cache[docid] = new ArrayList<T>(defaultLength);
+      list = cache[docid] = new ArrayList<>(defaultLength);
     }
     list.add( s );
   }

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/java/org/apache/lucene/spatial/util/ShapeFieldCacheProvider.java Sun Mar 16 19:39:10 2014
@@ -39,7 +39,7 @@ public abstract class ShapeFieldCachePro
   private Logger log = Logger.getLogger(getClass().getName());
 
   // it may be a List<T> or T
-  WeakHashMap<IndexReader, ShapeFieldCache<T>> sidx = new WeakHashMap<IndexReader, ShapeFieldCache<T>>();
+  WeakHashMap<IndexReader, ShapeFieldCache<T>> sidx = new WeakHashMap<>();
 
   protected final int defaultSize;
   protected final String shapeField;
@@ -59,7 +59,7 @@ public abstract class ShapeFieldCachePro
     long startTime = System.currentTimeMillis();
 
     log.fine("Building Cache [" + reader.maxDoc() + "]");
-    idx = new ShapeFieldCache<T>(reader.maxDoc(),defaultSize);
+    idx = new ShapeFieldCache<>(reader.maxDoc(),defaultSize);
     int count = 0;
     DocsEnum docs = null;
     Terms terms = reader.terms(shapeField);

Modified: lucene/dev/branches/lucene5376_2/lucene/spatial/src/test/org/apache/lucene/spatial/DistanceStrategyTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene5376_2/lucene/spatial/src/test/org/apache/lucene/spatial/DistanceStrategyTest.java?rev=1578144&r1=1578143&r2=1578144&view=diff
==============================================================================
--- lucene/dev/branches/lucene5376_2/lucene/spatial/src/test/org/apache/lucene/spatial/DistanceStrategyTest.java (original)
+++ lucene/dev/branches/lucene5376_2/lucene/spatial/src/test/org/apache/lucene/spatial/DistanceStrategyTest.java Sun Mar 16 19:39:10 2014
@@ -42,7 +42,7 @@ public class DistanceStrategyTest extend
 
   @ParametersFactory
   public static Iterable<Object[]> parameters() {
-    List<Object[]> ctorArgs = new ArrayList<Object[]>();
+    List<Object[]> ctorArgs = new ArrayList<>();
 
     SpatialContext ctx = SpatialContext.GEO;
     SpatialPrefixTree grid;