Repository: incubator-rya
Updated Branches:
  refs/heads/master 29a8e6b75 -> 853e0eea7


RYA-358 Added checkstyle policy to build and fixed problems. Closes
#244.

- Disabled snapshot repos since there are no snapshot dependencies.


Project: http://git-wip-us.apache.org/repos/asf/incubator-rya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-rya/commit/853e0eea
Tree: http://git-wip-us.apache.org/repos/asf/incubator-rya/tree/853e0eea
Diff: http://git-wip-us.apache.org/repos/asf/incubator-rya/diff/853e0eea

Branch: refs/heads/master
Commit: 853e0eea7b75e51e762ae92b5e995370ee617753
Parents: 29a8e6b
Author: jdasch <hcs...@gmail.com>
Authored: Thu Oct 12 22:28:28 2017 -0400
Committer: jdasch <hcs...@gmail.com>
Committed: Fri Oct 13 07:40:59 2017 -0400

----------------------------------------------------------------------
 .../TupleExecutionPlanGenerator.java            |  60 +++++-----
 .../IndexPlanValidator/TupleReArranger.java     |   2 +-
 .../accumulo/entity/EntityTupleSet.java         |   2 +-
 .../rya/indexing/accumulo/entity/StarQuery.java |   2 +-
 .../accumulo/freetext/FreeTextTupleSet.java     |   1 +
 .../indexing/entity/query/EntityQueryNode.java  |   7 +-
 .../external/tupleSet/ExternalTupleSet.java     |   2 +-
 .../MetadataNodeToSegmentConverter.java         |  13 +--
 .../accumulo/AccumuloListInstancesIT.java       |  15 ++-
 .../ThreshholdPlanSelectorTest.java             |   2 +-
 .../TupleExecutionPlanGeneratorTest.java        |   4 +-
 .../temporal/AccumuloTemporalIndexerTest.java   |   2 +-
 .../rya/indexing/external/AccumuloPcjIT.java    |   2 +-
 .../indexing/external/PCJOptionalTestIT.java    |   2 +-
 .../external/PrecompJoinOptimizerTest.java      |   2 +-
 .../rya/indexing/mongo/MongoDbSmartUriIT.java   |   2 +-
 .../src/main/java/ProspectorExample.java        |   2 +-
 .../src/main/java/RyaClientExample.java         |  26 ++---
 .../GeoTemporalMongoDBStorageStrategy.java      |   8 +-
 .../accumulo/ShiftVarOrderFactoryTest.java      |   2 +-
 .../indexing/pcj/fluo/api/ListQueryIdsIT.java   |   2 +-
 .../pcj/fluo/visibility/PcjVisibilityIT.java    |   2 +-
 .../shell/util/InstanceNamesFormatterTest.java  |   2 +-
 pom.xml                                         | 110 ++++++++++++++++++-
 .../inference/OneOfVisitorTest.java             |   2 +-
 25 files changed, 190 insertions(+), 86 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGenerator.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGenerator.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGenerator.java
index 1b66b9b..a76e30d 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGenerator.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGenerator.java
@@ -8,9 +8,9 @@ package org.apache.rya.indexing.IndexPlanValidator;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -27,7 +27,6 @@ import java.util.NoSuchElementException;
 import java.util.Set;
 
 import org.apache.rya.indexing.external.tupleSet.ExternalTupleSet;
-
 import org.openrdf.query.algebra.BindingSetAssignment;
 import org.openrdf.query.algebra.Filter;
 import org.openrdf.query.algebra.Join;
@@ -37,19 +36,19 @@ import org.openrdf.query.algebra.StatementPattern;
 import org.openrdf.query.algebra.TupleExpr;
 import org.openrdf.query.algebra.helpers.QueryModelVisitorBase;
 
-import com.beust.jcommander.internal.Lists;
 import com.google.common.collect.Collections2;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 
 public class TupleExecutionPlanGenerator implements IndexTupleGenerator {
 
-    
-    
+
+
     @Override
-    public Iterator<TupleExpr> getPlans(Iterator<TupleExpr> indexPlans) {
+    public Iterator<TupleExpr> getPlans(final Iterator<TupleExpr> indexPlans) {
 
         final Iterator<TupleExpr> iter = indexPlans;
-        
+
         return new Iterator<TupleExpr>() {
 
             private TupleExpr next = null;
@@ -104,31 +103,31 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
                 }
 
             }
-            
+
             @Override
             public void remove() {
                 throw new UnsupportedOperationException("Cannot delete from 
iterator!");
             }
 
         };
-              
+
     }
 
-    private List<TupleExpr> getPlans(TupleExpr te) {
+    private List<TupleExpr> getPlans(final TupleExpr te) {
 
-        
-        NodeCollector nc = new NodeCollector();
+
+        final NodeCollector nc = new NodeCollector();
         te.visit(nc);
 
-        Set<QueryModelNode> nodeSet = nc.getNodeSet();
-        List<Filter> filterList = nc.getFilterSet();
-        Projection projection = nc.getProjection().clone();
-  
-        List<TupleExpr> queryPlans = Lists.newArrayList();
+        final Set<QueryModelNode> nodeSet = nc.getNodeSet();
+        final List<Filter> filterList = nc.getFilterSet();
+        final Projection projection = nc.getProjection().clone();
+
+        final List<TupleExpr> queryPlans = Lists.newArrayList();
 
-        Collection<List<QueryModelNode>> plans = 
Collections2.permutations(nodeSet);
+        final Collection<List<QueryModelNode>> plans = 
Collections2.permutations(nodeSet);
 
-        for (List<QueryModelNode> p : plans) {
+        for (final List<QueryModelNode> p : plans) {
             if (p.size() == 0) {
                 throw new IllegalArgumentException("Tuple must contain at 
least one node!");
             } else if (p.size() == 1) {
@@ -141,9 +140,9 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
         return queryPlans;
     }
 
-    private TupleExpr buildTuple(List<QueryModelNode> nodes, List<Filter> 
filters, Projection projection) {
+    private TupleExpr buildTuple(final List<QueryModelNode> nodes, final 
List<Filter> filters, final Projection projection) {
 
-        Projection proj = (Projection)projection.clone();
+        final Projection proj = projection.clone();
         Join join = null;
 
         join = new Join((TupleExpr) nodes.get(0).clone(), (TupleExpr) 
nodes.get(1).clone());
@@ -157,8 +156,8 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
             return proj;
         } else {
             TupleExpr queryPlan = join;
-            for (Filter f : filters) {
-                Filter filt = (Filter) f.clone();
+            for (final Filter f : filters) {
+                final Filter filt = f.clone();
                 filt.setArg(queryPlan);
                 queryPlan = filt;
             }
@@ -170,8 +169,8 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
 
     public static class NodeCollector extends 
QueryModelVisitorBase<RuntimeException> {
 
-        private Set<QueryModelNode> nodeSet = Sets.newHashSet();
-        private List<Filter> filterSet = Lists.newArrayList();
+        private final Set<QueryModelNode> nodeSet = Sets.newHashSet();
+        private final List<Filter> filterSet = Lists.newArrayList();
         private Projection projection;
 
         public Projection getProjection() {
@@ -187,13 +186,13 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
         }
 
         @Override
-        public void meet(Projection node) {
+        public void meet(final Projection node) {
             projection = node;
             node.getArg().visit(this);
         }
 
         @Override
-        public void meetNode(QueryModelNode node) throws RuntimeException {
+        public void meetNode(final QueryModelNode node) throws 
RuntimeException {
             if (node instanceof ExternalTupleSet || node instanceof 
BindingSetAssignment
                     || node instanceof StatementPattern) {
                 nodeSet.add(node);
@@ -202,14 +201,11 @@ public class TupleExecutionPlanGenerator implements 
IndexTupleGenerator {
         }
 
         @Override
-        public void meet(Filter node) {
+        public void meet(final Filter node) {
             filterSet.add(node);
             node.getArg().visit(this);
         }
 
     }
-    
-    
-    
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleReArranger.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleReArranger.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleReArranger.java
index 0fad98f..773481a 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleReArranger.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/IndexPlanValidator/TupleReArranger.java
@@ -35,8 +35,8 @@ import org.openrdf.query.algebra.StatementPattern;
 import org.openrdf.query.algebra.TupleExpr;
 import org.openrdf.query.algebra.helpers.QueryModelVisitorBase;
 
-import com.beust.jcommander.internal.Lists;
 import com.google.common.collect.Collections2;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
 
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/EntityTupleSet.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/EntityTupleSet.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/EntityTupleSet.java
index 42b7bb0..c8675cd 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/EntityTupleSet.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/EntityTupleSet.java
@@ -47,7 +47,7 @@ import org.openrdf.sail.SailException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.beust.jcommander.internal.Sets;
+import com.google.common.collect.Sets;
 import com.google.common.base.Joiner;
 
 import info.aduna.iteration.CloseableIteration;

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/StarQuery.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/StarQuery.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/StarQuery.java
index dedf85d..709392e 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/StarQuery.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/entity/StarQuery.java
@@ -41,8 +41,8 @@ import org.openrdf.query.BindingSet;
 import org.openrdf.query.algebra.StatementPattern;
 import org.openrdf.query.algebra.Var;
 
-import com.beust.jcommander.internal.Maps;
 import com.google.common.collect.Lists;
+import com.google.common.collect.Maps;
 import com.google.common.collect.Sets;
 import com.google.common.primitives.Bytes;
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/freetext/FreeTextTupleSet.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/freetext/FreeTextTupleSet.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/freetext/FreeTextTupleSet.java
index 383b969..0e74f5e 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/freetext/FreeTextTupleSet.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/accumulo/freetext/FreeTextTupleSet.java
@@ -72,6 +72,7 @@ public class FreeTextTupleSet extends ExternalTupleSet {
      * Note that we need a deep copy for everything that (during optimizations)
      * can be altered via {@link #visitChildren(QueryModelVisitor)}
      */
+    @Override
     public FreeTextTupleSet clone() {
         return new FreeTextTupleSet(filterInfo, freeTextIndexer);
     }

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/entity/query/EntityQueryNode.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/entity/query/EntityQueryNode.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/entity/query/EntityQueryNode.java
index 1174b21..793252e 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/entity/query/EntityQueryNode.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/entity/query/EntityQueryNode.java
@@ -52,6 +52,8 @@ import org.openrdf.query.algebra.Var;
 import org.openrdf.query.algebra.evaluation.impl.ExternalSet;
 import org.openrdf.query.algebra.evaluation.iterator.CollectionIteration;
 import org.openrdf.query.impl.MapBindingSet;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.collect.ImmutableCollection;
 import com.google.common.collect.ImmutableMap;
@@ -60,7 +62,6 @@ import com.google.common.collect.ImmutableMap.Builder;
 import edu.umd.cs.findbugs.annotations.DefaultAnnotation;
 import edu.umd.cs.findbugs.annotations.NonNull;
 import info.aduna.iteration.CloseableIteration;
-import jline.internal.Log;
 
 /**
  * Indexing Node for {@link Entity} expressions to be inserted into execution 
plan
@@ -69,6 +70,8 @@ import jline.internal.Log;
 @DefaultAnnotation(NonNull.class)
 public class EntityQueryNode extends ExternalSet implements 
ExternalBatchingIterator {
 
+    private static final Logger LOG = 
LoggerFactory.getLogger(EntityQueryNode.class);
+
     /**
      * The RyaURI that when used as the Predicate of a Statement Pattern 
indicates the Type of the Entities.
      */
@@ -258,7 +261,7 @@ public class EntityQueryNode extends ExternalSet implements 
ExternalBatchingIter
             try {
                 list.addAll(findBindings(bindingSet));
             } catch (final Exception e) {
-                Log.error("Unable to evaluate bindingset.", e);
+                LOG.error("Unable to evaluate bindingset.", e);
             }
         });
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/external/tupleSet/ExternalTupleSet.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/external/tupleSet/ExternalTupleSet.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/external/tupleSet/ExternalTupleSet.java
index 1a6c701..48dc17e 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/external/tupleSet/ExternalTupleSet.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/external/tupleSet/ExternalTupleSet.java
@@ -37,13 +37,13 @@ import org.openrdf.query.algebra.Var;
 import org.openrdf.query.algebra.evaluation.impl.ExternalSet;
 import org.openrdf.query.algebra.helpers.QueryModelVisitorBase;
 
-import com.beust.jcommander.internal.Sets;
 import com.google.common.base.Joiner;
 import com.google.common.base.Preconditions;
 import com.google.common.collect.BiMap;
 import com.google.common.collect.HashBiMap;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Maps;
+import com.google.common.collect.Sets;
 
 /**
  * This is an abstract class of delegating the evaluation of part

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/main/java/org/apache/rya/indexing/statement/metadata/matching/MetadataNodeToSegmentConverter.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/main/java/org/apache/rya/indexing/statement/metadata/matching/MetadataNodeToSegmentConverter.java
 
b/extras/indexing/src/main/java/org/apache/rya/indexing/statement/metadata/matching/MetadataNodeToSegmentConverter.java
index 82d45c9..9ee21d0 100644
--- 
a/extras/indexing/src/main/java/org/apache/rya/indexing/statement/metadata/matching/MetadataNodeToSegmentConverter.java
+++ 
b/extras/indexing/src/main/java/org/apache/rya/indexing/statement/metadata/matching/MetadataNodeToSegmentConverter.java
@@ -7,9 +7,9 @@ package org.apache.rya.indexing.statement.metadata.matching;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -28,17 +28,16 @@ import org.openrdf.query.algebra.Filter;
 import org.openrdf.query.algebra.QueryModelNode;
 import org.openrdf.query.algebra.ValueExpr;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 
 public class MetadataNodeToSegmentConverter implements 
ExternalSetConverter<StatementMetadataNode<?>> {
 
     @Override
-    public QuerySegment<StatementMetadataNode<?>> 
setToSegment(StatementMetadataNode<?> set) {
-        Set<QueryModelNode> patterns = 
Sets.newHashSet(set.getReifiedStatementPatterns());
-        List<QueryModelNode> patternList = Lists.newArrayList(patterns);
+    public QuerySegment<StatementMetadataNode<?>> setToSegment(final 
StatementMetadataNode<?> set) {
+        final Set<QueryModelNode> patterns = 
Sets.newHashSet(set.getReifiedStatementPatterns());
+        final List<QueryModelNode> patternList = Lists.newArrayList(patterns);
         return new JoinSegment<StatementMetadataNode<?>>(patterns, 
patternList, new HashMap<ValueExpr, Filter>());
-        
     }
 
 }

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/api/client/accumulo/AccumuloListInstancesIT.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/api/client/accumulo/AccumuloListInstancesIT.java
 
b/extras/indexing/src/test/java/org/apache/rya/api/client/accumulo/AccumuloListInstancesIT.java
index f8aadb8..b153a8c 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/api/client/accumulo/AccumuloListInstancesIT.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/api/client/accumulo/AccumuloListInstancesIT.java
@@ -28,16 +28,15 @@ import 
org.apache.accumulo.core.client.AccumuloSecurityException;
 import org.apache.accumulo.core.client.admin.SecurityOperations;
 import org.apache.accumulo.core.client.admin.TableOperations;
 import org.apache.accumulo.core.security.SystemPermission;
-import org.junit.Before;
-import org.junit.Test;
-
-import com.beust.jcommander.internal.Lists;
-
 import org.apache.rya.accumulo.AccumuloITBase;
 import org.apache.rya.api.client.Install;
 import org.apache.rya.api.client.Install.InstallConfiguration;
 import org.apache.rya.api.client.ListInstances;
 import org.apache.rya.api.client.RyaClientException;
+import org.junit.Before;
+import org.junit.Test;
+
+import com.google.common.collect.Lists;
 
 /**
  * Integration tests the methods of {@link AccumuloListInstances}.
@@ -48,11 +47,11 @@ public class AccumuloListInstancesIT extends AccumuloITBase 
{
     public void setup() throws Exception {
         // this is a bit of a hack to clear any existing instances before
         // adding the instances we want to exist for testing the list command
-        TableOperations tableOps = getConnector().tableOperations();
-        SecurityOperations secOps = getConnector().securityOperations();
+        final TableOperations tableOps = getConnector().tableOperations();
+        final SecurityOperations secOps = getConnector().securityOperations();
         secOps.grantSystemPermission("root", SystemPermission.DROP_TABLE);
 
-        for (String tableName : getConnector().tableOperations().list()) {
+        for (final String tableName : getConnector().tableOperations().list()) 
{
             if (!tableName.startsWith("accumulo.")) {
                 tableOps.delete(tableName);
             }

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/ThreshholdPlanSelectorTest.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/ThreshholdPlanSelectorTest.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/ThreshholdPlanSelectorTest.java
index 27fbe2e..b244a60 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/ThreshholdPlanSelectorTest.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/ThreshholdPlanSelectorTest.java
@@ -38,7 +38,7 @@ import 
org.openrdf.query.algebra.helpers.StatementPatternCollector;
 import org.openrdf.query.parser.ParsedQuery;
 import org.openrdf.query.parser.sparql.SPARQLParser;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 
 public class ThreshholdPlanSelectorTest {
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGeneratorTest.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGeneratorTest.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGeneratorTest.java
index 2a909f9..3c11531 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGeneratorTest.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/IndexPlanValidator/TupleExecutionPlanGeneratorTest.java
@@ -32,8 +32,8 @@ import org.openrdf.query.algebra.TupleExpr;
 import org.openrdf.query.parser.ParsedQuery;
 import org.openrdf.query.parser.sparql.SPARQLParser;
 
-import com.beust.jcommander.internal.Lists;
-import com.beust.jcommander.internal.Sets;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
 
 public class TupleExecutionPlanGeneratorTest {
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/accumulo/temporal/AccumuloTemporalIndexerTest.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/accumulo/temporal/AccumuloTemporalIndexerTest.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/accumulo/temporal/AccumuloTemporalIndexerTest.java
index 839ef6a..bba1b0d 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/accumulo/temporal/AccumuloTemporalIndexerTest.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/accumulo/temporal/AccumuloTemporalIndexerTest.java
@@ -76,7 +76,7 @@ import org.openrdf.model.impl.ValueFactoryImpl;
 import org.openrdf.model.vocabulary.RDFS;
 import org.openrdf.query.QueryEvaluationException;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 
 import info.aduna.iteration.CloseableIteration;
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/external/AccumuloPcjIT.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/AccumuloPcjIT.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/AccumuloPcjIT.java
index 53a11ed..76560f8 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/AccumuloPcjIT.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/AccumuloPcjIT.java
@@ -60,9 +60,9 @@ import org.openrdf.repository.sail.SailRepository;
 import org.openrdf.repository.sail.SailRepositoryConnection;
 import org.openrdf.sail.SailException;
 
-import com.beust.jcommander.internal.Sets;
 import com.google.common.base.Optional;
 import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
 
 import org.apache.rya.accumulo.AccumuloRdfConfiguration;
 import org.apache.rya.api.RdfCloudTripleStoreConfiguration;

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/external/PCJOptionalTestIT.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PCJOptionalTestIT.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PCJOptionalTestIT.java
index af30db3..732bc12 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PCJOptionalTestIT.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PCJOptionalTestIT.java
@@ -55,8 +55,8 @@ import org.openrdf.repository.sail.SailRepository;
 import org.openrdf.repository.sail.SailRepositoryConnection;
 import org.openrdf.sail.SailException;
 
-import com.beust.jcommander.internal.Lists;
 import com.google.common.base.Optional;
+import com.google.common.collect.Lists;
 
 import org.apache.rya.api.persist.RyaDAOException;
 import 
org.apache.rya.indexing.external.PrecompJoinOptimizerIT.CountingResultHandler;

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java
index e9ef3a2..7c806f9 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/external/PrecompJoinOptimizerTest.java
@@ -35,7 +35,7 @@ import 
org.openrdf.query.algebra.helpers.StatementPatternCollector;
 import org.openrdf.query.parser.ParsedQuery;
 import org.openrdf.query.parser.sparql.SPARQLParser;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 
 import org.apache.rya.indexing.external.tupleSet.ExternalTupleSet;

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java
----------------------------------------------------------------------
diff --git 
a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java
 
b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java
index 4dc0e8e..d5fe97c 100644
--- 
a/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java
+++ 
b/extras/indexing/src/test/java/org/apache/rya/indexing/mongo/MongoDbSmartUriIT.java
@@ -69,8 +69,8 @@ import org.openrdf.query.algebra.evaluation.QueryBindingSet;
 import org.openrdf.query.algebra.helpers.StatementPatternCollector;
 import org.openrdf.query.parser.sparql.SPARQLParser;
 
-import com.beust.jcommander.internal.Lists;
 import com.google.common.collect.ImmutableSet;
+import com.google.common.collect.Lists;
 
 import info.aduna.iteration.CloseableIteration;
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexingExample/src/main/java/ProspectorExample.java
----------------------------------------------------------------------
diff --git a/extras/indexingExample/src/main/java/ProspectorExample.java 
b/extras/indexingExample/src/main/java/ProspectorExample.java
index fd0e4f8..383d982 100644
--- a/extras/indexingExample/src/main/java/ProspectorExample.java
+++ b/extras/indexingExample/src/main/java/ProspectorExample.java
@@ -38,7 +38,7 @@ import org.openrdf.model.impl.ValueFactoryImpl;
 import org.openrdf.sail.Sail;
 import org.openrdf.sail.SailConnection;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 
 /**
  * Demonstrates how you can use the {@link Prospector} to count values that 
appear within an instance of Rya and

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/indexingExample/src/main/java/RyaClientExample.java
----------------------------------------------------------------------
diff --git a/extras/indexingExample/src/main/java/RyaClientExample.java 
b/extras/indexingExample/src/main/java/RyaClientExample.java
index b0afd5a..3f42f1d 100644
--- a/extras/indexingExample/src/main/java/RyaClientExample.java
+++ b/extras/indexingExample/src/main/java/RyaClientExample.java
@@ -62,12 +62,12 @@ import org.openrdf.queryrender.sparql.SPARQLQueryRenderer;
 import org.openrdf.sail.Sail;
 import org.openrdf.sail.SailConnection;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 import com.google.common.io.Files;
 
 import info.aduna.iteration.CloseableIteration;
 
-/**  
+/**
  * Demonstrates how a {@link RyaClient} may be used to interact with an 
instance
  * of Accumulo to install and manage a Rya instance.
  */
@@ -130,17 +130,17 @@ public class RyaClientExample {
                      "}";
 
             // Load some statements into the Rya instance.
-            
-            AccumuloIndexingConfiguration conf = 
AccumuloIndexingConfiguration.builder()
-                               .setAuths("U")
-                               .setAccumuloUser(accumuloUsername)
-                               .setAccumuloPassword(accumuloPassword)
-                               .setAccumuloInstance(cluster.getInstanceName())
-                               .setAccumuloZooKeepers(cluster.getZooKeepers())
-                               .setRyaPrefix(ryaInstanceName)
-                               .setPcjUpdaterFluoAppName(fluoAppName)
-                               .build();
-            
+
+            final AccumuloIndexingConfiguration conf = 
AccumuloIndexingConfiguration.builder()
+                    .setAuths("U")
+                    .setAccumuloUser(accumuloUsername)
+                    .setAccumuloPassword(accumuloPassword)
+                    .setAccumuloInstance(cluster.getInstanceName())
+                    .setAccumuloZooKeepers(cluster.getZooKeepers())
+                    .setRyaPrefix(ryaInstanceName)
+                    .setPcjUpdaterFluoAppName(fluoAppName)
+                    .build();
+
             ryaSail = RyaSailFactory.getInstance(conf);
 
             final ValueFactory vf = ryaSail.getValueFactory();

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/rya.geoindexing/geo.mongo/src/main/java/org/apache/rya/indexing/geotemporal/mongo/GeoTemporalMongoDBStorageStrategy.java
----------------------------------------------------------------------
diff --git 
a/extras/rya.geoindexing/geo.mongo/src/main/java/org/apache/rya/indexing/geotemporal/mongo/GeoTemporalMongoDBStorageStrategy.java
 
b/extras/rya.geoindexing/geo.mongo/src/main/java/org/apache/rya/indexing/geotemporal/mongo/GeoTemporalMongoDBStorageStrategy.java
index 7bb1c1f..5db432b 100644
--- 
a/extras/rya.geoindexing/geo.mongo/src/main/java/org/apache/rya/indexing/geotemporal/mongo/GeoTemporalMongoDBStorageStrategy.java
+++ 
b/extras/rya.geoindexing/geo.mongo/src/main/java/org/apache/rya/indexing/geotemporal/mongo/GeoTemporalMongoDBStorageStrategy.java
@@ -62,8 +62,6 @@ import com.vividsolutions.jts.geom.Geometry;
 import com.vividsolutions.jts.io.ParseException;
 import com.vividsolutions.jts.io.WKTReader;
 
-import jline.internal.Log;
-
 /**
  * Storage adapter for serializing Geo Temporal statements into mongo objects.
  * This includes adapting the {@link IndexingExpr}s for the GeoTemporal 
indexer.
@@ -152,7 +150,7 @@ public class GeoTemporalMongoDBStorageStrategy extends 
IndexingMongoDBStorageStr
                 final Geometry geo = reader.read(geoStr);
                 objs.add(getGeoObject(geo, policy));
             } catch (final GeoTemporalIndexException | 
UnsupportedOperationException | ParseException e) {
-                Log.error("Unable to parse '" + geoStr + "'.", e);
+                LOG.error("Unable to parse '" + geoStr + "'.", e);
             }
         });
         return objs.toArray(new DBObject[]{});
@@ -170,7 +168,7 @@ public class GeoTemporalMongoDBStorageStrategy extends 
IndexingMongoDBStorageStr
                    policy == TemporalPolicy.INSTANT_BEFORE_INSTANT ||
                    policy == TemporalPolicy.INSTANT_EQUALS_INSTANT) {
                      if(interval == null) {
-                         Log.error("Cannot perform temporal interval based 
queries on an instant.");
+                         LOG.error("Cannot perform temporal interval based 
queries on an instant.");
                      }
                  }
                 objs.add(getTemporalObject(interval, policy));
@@ -179,7 +177,7 @@ public class GeoTemporalMongoDBStorageStrategy extends 
IndexingMongoDBStorageStr
                 if(policy != TemporalPolicy.INSTANT_AFTER_INSTANT  &&
                    policy != TemporalPolicy.INSTANT_BEFORE_INSTANT &&
                    policy != TemporalPolicy.INSTANT_EQUALS_INSTANT) {
-                    Log.error("Cannot perform temporal instant based queries 
on an interval.");
+                    LOG.error("Cannot perform temporal instant based queries 
on an interval.");
                 }
                 objs.add(getTemporalObject(instant, policy));
             }

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/rya.indexing.pcj/src/test/java/org/apache/rya/indexing/pcj/storage/accumulo/ShiftVarOrderFactoryTest.java
----------------------------------------------------------------------
diff --git 
a/extras/rya.indexing.pcj/src/test/java/org/apache/rya/indexing/pcj/storage/accumulo/ShiftVarOrderFactoryTest.java
 
b/extras/rya.indexing.pcj/src/test/java/org/apache/rya/indexing/pcj/storage/accumulo/ShiftVarOrderFactoryTest.java
index f82b735..68515f6 100644
--- 
a/extras/rya.indexing.pcj/src/test/java/org/apache/rya/indexing/pcj/storage/accumulo/ShiftVarOrderFactoryTest.java
+++ 
b/extras/rya.indexing.pcj/src/test/java/org/apache/rya/indexing/pcj/storage/accumulo/ShiftVarOrderFactoryTest.java
@@ -25,7 +25,7 @@ import java.util.Set;
 import org.junit.Test;
 import org.openrdf.query.MalformedQueryException;
 
-import com.beust.jcommander.internal.Sets;
+import com.google.common.collect.Sets;
 
 /**
  * Tests the methods of {@link ShiftVarOrderFactory}.

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/api/ListQueryIdsIT.java
----------------------------------------------------------------------
diff --git 
a/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/api/ListQueryIdsIT.java
 
b/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/api/ListQueryIdsIT.java
index 3310690..b04553e 100644
--- 
a/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/api/ListQueryIdsIT.java
+++ 
b/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/api/ListQueryIdsIT.java
@@ -32,7 +32,7 @@ import org.apache.fluo.api.client.Transaction;
 import org.apache.rya.pcj.fluo.test.base.RyaExportITBase;
 import org.junit.Test;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 
 /**
  * Integration tests the methods of {@link ListQueryIds}.

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/visibility/PcjVisibilityIT.java
----------------------------------------------------------------------
diff --git 
a/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/visibility/PcjVisibilityIT.java
 
b/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/visibility/PcjVisibilityIT.java
index 2497793..27900d4 100644
--- 
a/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/visibility/PcjVisibilityIT.java
+++ 
b/extras/rya.pcj.fluo/pcj.fluo.integration/src/test/java/org/apache/rya/indexing/pcj/fluo/visibility/PcjVisibilityIT.java
@@ -67,8 +67,8 @@ import org.openrdf.query.impl.MapBindingSet;
 import org.openrdf.repository.RepositoryConnection;
 import org.openrdf.sail.Sail;
 
-import com.beust.jcommander.internal.Sets;
 import com.google.common.base.Optional;
+import com.google.common.collect.Sets;
 
 /**
  * Integration tests that ensure the Fluo Application properly exports PCJ

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/extras/shell/src/test/java/org/apache/rya/shell/util/InstanceNamesFormatterTest.java
----------------------------------------------------------------------
diff --git 
a/extras/shell/src/test/java/org/apache/rya/shell/util/InstanceNamesFormatterTest.java
 
b/extras/shell/src/test/java/org/apache/rya/shell/util/InstanceNamesFormatterTest.java
index d6e23df..0e881a6 100644
--- 
a/extras/shell/src/test/java/org/apache/rya/shell/util/InstanceNamesFormatterTest.java
+++ 
b/extras/shell/src/test/java/org/apache/rya/shell/util/InstanceNamesFormatterTest.java
@@ -24,7 +24,7 @@ import java.util.List;
 
 import org.junit.Test;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 
 /**
  * Tests an instance of {@link InstanceNamesFormatter}.

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index e5c5f5e..0b64157 100644
--- a/pom.xml
+++ b/pom.xml
@@ -893,6 +893,14 @@ under the License.
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
                     <artifactId>maven-checkstyle-plugin</artifactId>
+                    <version>2.17</version>
+                    <dependencies>
+                        <dependency>
+                            <groupId>com.puppycrawl.tools</groupId>
+                            <artifactId>checkstyle</artifactId>
+                            <version>8.3</version>
+                        </dependency>
+                    </dependencies>
                 </plugin>
                 <plugin>
                     <groupId>org.apache.maven.plugins</groupId>
@@ -1101,6 +1109,76 @@ under the License.
                     </execution>
                 </executions>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+                <configuration>
+                    <checkstyleRules>
+                        <module name="Checker">
+                            <property name="charset" value="UTF-8" />
+                            <property name="severity" value="warning" />
+                            <!--
+                            <module name="FileTabCharacter">
+                                <property name="eachLine" value="true" />
+                            </module>
+                            -->
+                            
+                            <module name="TreeWalker">
+                                <module name="OneTopLevelClass" />
+                                <!--
+                                <module name="RegexpSinglelineJava">
+                                    <property name="format" value="\s+$" />
+                                    <property name="message"
+                                        value="Line has trailing whitespace." 
/>
+                                </module>
+                                -->
+                                <!-- 
+                                <module name="RegexpSinglelineJava">
+                                    <property name="format"
+                                        value="[@]see\s+[{][@]link" />
+                                    <property name="message"
+                                        value="Javadoc @see does not need 
@link: pick one or the other." />
+                                </module>
+                                -->
+                                <module name="RegexpSinglelineJava">
+                                    <property name="format"
+                                        value="jline[.]internal[.]" />
+                                    <property name="message"
+                                        value="Please use Guava imports 
instead of jline.internal.*" />
+                                </module>
+                                <module name="RegexpSinglelineJava">
+                                    <property name="format"
+                                        
value="com[.]beust[.]jcommander[.]internal[.]" />
+                                    <property name="message"
+                                        value="Please use Guava imports 
instead of com.beust.jcommander.internal.*" />
+                                </module>
+                                <!-- 
+                                <module name="RegexpSinglelineJava">
+                                    <property name="format"
+                                        value="junit[.]framework[.]" />
+                                    <property name="message"
+                                        value="Please use JUnit 4 APIs instead 
of Junit 3" />
+                                </module>
+                                -->
+                                <!-- <module name="SingleLineJavadoc" /> -->
+                                <module name="MissingOverrideCheck" />
+                                <module name="AnnotationLocation" />
+                            </module>
+                        </module>
+                    </checkstyleRules>
+                    <violationSeverity>warning</violationSeverity>
+                    
<includeTestSourceDirectory>true</includeTestSourceDirectory>
+                    <!-- 
<excludes>**/thrift/*.java,**/proto/*.java,**/HelpMojo.java</excludes> -->
+                </configuration>
+                <executions>
+                    <execution>
+                        <id>check-style</id>
+                        <goals>
+                            <goal>check</goal>
+                        </goals>
+                    </execution>
+                </executions>
+            </plugin>
         </plugins>
     </build>
 
@@ -1117,14 +1195,32 @@ under the License.
         <repository>
             <id>LocationTech - SNAPSHOT</id>
             
<url>https://repo.locationtech.org/content/repositories/snapshots/</url>
+            <releases>
+                <enabled>false</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>  <!--  disable snapshot repositories 
while there are no snapshot dependencies -->
+            </snapshots>
         </repository>
         <repository>
             <id>LocationTech - RELEASE</id>
             
<url>https://repo.locationtech.org/content/repositories/releases/</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
         </repository>
         <repository>
             <id>LocationTech - Third Party</id>
             
<url>https://repo.locationtech.org/content/repositories/thirdparty/</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
         </repository>
         <repository>
             <id>geowave-maven-releases</id>
@@ -1145,18 +1241,30 @@ under the License.
                 <enabled>false</enabled>
             </releases>
             <snapshots>
-                <enabled>true</enabled>
+                <enabled>false</enabled>  <!--  disable snapshot repositories 
while there are no snapshot dependencies -->
             </snapshots>
         </repository>
         <repository>
             <id>osgeo</id>
             <name>Open Source Geospatial Foundation Repository</name>
             <url>http://download.osgeo.org/webdav/geotools/</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
         </repository>
         <repository>
             <id>boundlessgeo</id>
             <name>Boundless Geospatial Software and Open Source GIS‎ 
Repository</name>
             <url>https://repo.boundlessgeo.com/main/</url>
+            <releases>
+                <enabled>true</enabled>
+            </releases>
+            <snapshots>
+                <enabled>false</enabled>
+            </snapshots>
         </repository>
     </repositories>
 

http://git-wip-us.apache.org/repos/asf/incubator-rya/blob/853e0eea/sail/src/test/java/org/apache/rya/rdftriplestore/inference/OneOfVisitorTest.java
----------------------------------------------------------------------
diff --git 
a/sail/src/test/java/org/apache/rya/rdftriplestore/inference/OneOfVisitorTest.java
 
b/sail/src/test/java/org/apache/rya/rdftriplestore/inference/OneOfVisitorTest.java
index 484c8bc..9c6cc86 100644
--- 
a/sail/src/test/java/org/apache/rya/rdftriplestore/inference/OneOfVisitorTest.java
+++ 
b/sail/src/test/java/org/apache/rya/rdftriplestore/inference/OneOfVisitorTest.java
@@ -45,7 +45,7 @@ import org.openrdf.query.algebra.StatementPattern;
 import org.openrdf.query.algebra.Var;
 import org.openrdf.query.algebra.evaluation.QueryBindingSet;
 
-import com.beust.jcommander.internal.Lists;
+import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
 
 /**


Reply via email to