You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@beam.apache.org by dh...@apache.org on 2016/10/21 00:13:27 UTC

[2/3] incubator-beam git commit: Add checkstyle RedundantModifier check and fix offending classes

Add checkstyle RedundantModifier check and fix offending classes

Add METHOD_DEF to checkstyle RedundantModifier validation

Add INTERFACE_DEF to checkstyle RedundantModifier validation

Add doc comment for new checkstyle RedundantModifier check


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

Branch: refs/heads/master
Commit: c4cfb210d29ecc5965440591b77d894e9a06bc67
Parents: 2efc278
Author: Scott Wegner <sw...@google.com>
Authored: Thu Oct 20 13:57:18 2016 -0700
Committer: Dan Halperin <dh...@google.com>
Committed: Thu Oct 20 17:13:16 2016 -0700

----------------------------------------------------------------------
 .../org/apache/beam/examples/WordCount.java     |  2 +-
 .../common/ExampleBigQueryTableOptions.java     |  2 +-
 ...xamplePubsubTopicAndSubscriptionOptions.java |  2 +-
 .../common/ExamplePubsubTopicOptions.java       |  2 +-
 .../beam/examples/cookbook/DeDupExample.java    |  2 +-
 .../apache/beam/runners/core/DoFnRunner.java    |  6 ++---
 .../apache/beam/runners/core/DoFnRunners.java   |  2 +-
 .../runners/core/ElementByteSizeObservable.java |  5 ++--
 .../runners/core/ReduceFnContextFactory.java    |  2 +-
 .../runners/core/triggers/FinishedTriggers.java |  8 +++---
 .../core/triggers/TriggerStateMachine.java      |  4 +--
 .../beam/runners/direct/WatermarkManager.java   |  2 +-
 .../runners/direct/WatermarkManagerTest.java    |  2 +-
 .../dataflow/DataflowPipelineTranslator.java    | 28 ++++++++++----------
 .../options/DataflowPipelineDebugOptions.java   |  4 +--
 .../options/DataflowPipelineOptions.java        |  2 +-
 .../DataflowPipelineWorkerPoolOptions.java      |  8 +++---
 .../options/DataflowProfilingOptions.java       |  2 +-
 .../options/DataflowWorkerLoggingOptions.java   |  4 +--
 .../beam/runners/dataflow/util/Stager.java      |  2 +-
 .../runners/spark/SparkPipelineOptions.java     |  4 +--
 .../src/main/resources/beam/checkstyle.xml      |  7 +++++
 .../main/java/org/apache/beam/sdk/Pipeline.java | 12 ++++-----
 .../org/apache/beam/sdk/PipelineResult.java     |  4 +--
 .../beam/sdk/annotations/Experimental.java      |  4 +--
 .../sdk/coders/CannotProvideCoderException.java |  2 +-
 .../java/org/apache/beam/sdk/coders/Coder.java  | 26 +++++++++---------
 .../apache/beam/sdk/coders/CoderFactory.java    |  4 +--
 .../apache/beam/sdk/coders/CoderProvider.java   |  2 +-
 .../apache/beam/sdk/coders/DelegateCoder.java   |  2 +-
 .../apache/beam/sdk/io/CompressedSource.java    |  2 +-
 .../org/apache/beam/sdk/io/FileBasedSink.java   | 12 ++++-----
 .../java/org/apache/beam/sdk/io/TextIO.java     |  4 +--
 .../org/apache/beam/sdk/options/GcpOptions.java |  8 +++---
 .../org/apache/beam/sdk/options/GcsOptions.java |  4 +--
 .../beam/sdk/options/GoogleApiDebugOptions.java |  2 +-
 .../beam/sdk/options/PipelineOptions.java       |  4 +--
 .../apache/beam/sdk/options/ValueProvider.java  |  8 +++---
 .../sdk/runners/PipelineRunnerRegistrar.java    |  2 +-
 .../org/apache/beam/sdk/testing/PAssert.java    |  2 +-
 .../org/apache/beam/sdk/transforms/Combine.java |  8 +++---
 .../beam/sdk/transforms/CombineFnBase.java      | 17 ++++++------
 .../org/apache/beam/sdk/transforms/OldDoFn.java |  2 +-
 .../apache/beam/sdk/transforms/Partition.java   |  2 +-
 .../sdk/transforms/SerializableFunction.java    |  2 +-
 .../sdk/transforms/reflect/DoFnSignature.java   |  2 +-
 .../sdk/transforms/reflect/DoFnSignatures.java  |  2 +-
 .../beam/sdk/transforms/windowing/PaneInfo.java |  2 +-
 .../beam/sdk/transforms/windowing/Trigger.java  |  4 +--
 .../beam/sdk/transforms/windowing/WindowFn.java |  2 +-
 ...AttemptAndTimeBoundedExponentialBackOff.java |  2 +-
 .../apache/beam/sdk/util/CredentialFactory.java |  2 +-
 .../apache/beam/sdk/util/FinishedTriggers.java  |  8 +++---
 .../apache/beam/sdk/util/IOChannelFactory.java  |  2 +-
 .../org/apache/beam/sdk/util/PathValidator.java |  6 ++---
 .../beam/sdk/util/PerKeyCombineFnRunner.java    | 26 +++++++++---------
 .../apache/beam/sdk/util/TimerInternals.java    |  4 +--
 .../java/org/apache/beam/sdk/util/Timers.java   | 10 +++----
 .../apache/beam/sdk/util/common/Reiterable.java |  2 +-
 .../apache/beam/sdk/util/common/Reiterator.java |  2 +-
 .../beam/sdk/util/state/StateContext.java       |  6 ++---
 .../apache/beam/sdk/values/PCollectionView.java |  8 +++---
 .../java/org/apache/beam/sdk/values/PInput.java |  6 ++---
 .../org/apache/beam/sdk/values/POutput.java     |  8 +++---
 .../java/org/apache/beam/sdk/values/PValue.java |  4 +--
 .../apache/beam/sdk/coders/AvroCoderTest.java   |  4 +--
 .../sdk/options/PipelineOptionsFactoryTest.java |  2 +-
 .../apache/beam/sdk/util/ApiSurfaceTest.java    |  2 +-
 68 files changed, 179 insertions(+), 174 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/examples/java/src/main/java/org/apache/beam/examples/WordCount.java
----------------------------------------------------------------------
diff --git a/examples/java/src/main/java/org/apache/beam/examples/WordCount.java b/examples/java/src/main/java/org/apache/beam/examples/WordCount.java
index 9187418..1e03b34 100644
--- a/examples/java/src/main/java/org/apache/beam/examples/WordCount.java
+++ b/examples/java/src/main/java/org/apache/beam/examples/WordCount.java
@@ -166,7 +166,7 @@ public class WordCount {
     /**
      * Returns "gs://${YOUR_TEMP_DIRECTORY}/counts.txt" as the default destination.
      */
-    public static class OutputFactory implements DefaultValueFactory<String> {
+    class OutputFactory implements DefaultValueFactory<String> {
       @Override
       public String create(PipelineOptions options) {
         String tempLocation = options.getTempLocation();

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/examples/java/src/main/java/org/apache/beam/examples/common/ExampleBigQueryTableOptions.java
----------------------------------------------------------------------
diff --git a/examples/java/src/main/java/org/apache/beam/examples/common/ExampleBigQueryTableOptions.java b/examples/java/src/main/java/org/apache/beam/examples/common/ExampleBigQueryTableOptions.java
index 5d815c7..54502cb 100644
--- a/examples/java/src/main/java/org/apache/beam/examples/common/ExampleBigQueryTableOptions.java
+++ b/examples/java/src/main/java/org/apache/beam/examples/common/ExampleBigQueryTableOptions.java
@@ -46,7 +46,7 @@ public interface ExampleBigQueryTableOptions extends GcpOptions {
   /**
    * Returns the job name as the default BigQuery table name.
    */
-  static class BigQueryTableFactory implements DefaultValueFactory<String> {
+  class BigQueryTableFactory implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
       return options.getJobName().replace('-', '_');

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicAndSubscriptionOptions.java
----------------------------------------------------------------------
diff --git a/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicAndSubscriptionOptions.java b/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicAndSubscriptionOptions.java
index 7f954a1..c64681c 100644
--- a/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicAndSubscriptionOptions.java
+++ b/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicAndSubscriptionOptions.java
@@ -35,7 +35,7 @@ public interface ExamplePubsubTopicAndSubscriptionOptions extends ExamplePubsubT
   /**
    * Returns a default Pub/Sub subscription based on the project and the job names.
    */
-  static class PubsubSubscriptionFactory implements DefaultValueFactory<String> {
+  class PubsubSubscriptionFactory implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
       return "projects/" + options.as(GcpOptions.class).getProject()

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicOptions.java
----------------------------------------------------------------------
diff --git a/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicOptions.java b/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicOptions.java
index 71879b7..65594d7 100644
--- a/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicOptions.java
+++ b/examples/java/src/main/java/org/apache/beam/examples/common/ExamplePubsubTopicOptions.java
@@ -35,7 +35,7 @@ public interface ExamplePubsubTopicOptions extends GcpOptions {
   /**
    * Returns a default Pub/Sub topic based on the project and the job names.
    */
-  static class PubsubTopicFactory implements DefaultValueFactory<String> {
+  class PubsubTopicFactory implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
       return "projects/" + options.as(GcpOptions.class).getProject()

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/examples/java/src/main/java/org/apache/beam/examples/cookbook/DeDupExample.java
----------------------------------------------------------------------
diff --git a/examples/java/src/main/java/org/apache/beam/examples/cookbook/DeDupExample.java b/examples/java/src/main/java/org/apache/beam/examples/cookbook/DeDupExample.java
index 8e7476b..92f5b93 100644
--- a/examples/java/src/main/java/org/apache/beam/examples/cookbook/DeDupExample.java
+++ b/examples/java/src/main/java/org/apache/beam/examples/cookbook/DeDupExample.java
@@ -67,7 +67,7 @@ public class DeDupExample {
     void setOutput(String value);
 
     /** Returns gs://${TEMP_LOCATION}/"deduped.txt". */
-    public static class OutputFactory implements DefaultValueFactory<String> {
+    class OutputFactory implements DefaultValueFactory<String> {
       @Override
       public String create(PipelineOptions options) {
         if (options.getTempLocation() != null) {

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunner.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunner.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunner.java
index ac64969..c84122b 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunner.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunner.java
@@ -31,19 +31,19 @@ public interface DoFnRunner<InputT, OutputT> {
   /**
    * Prepares and calls {@link OldDoFn#startBundle}.
    */
-  public void startBundle();
+  void startBundle();
 
   /**
    * Calls {@link OldDoFn#processElement} with a {@link ProcessContext} containing the current
    * element.
    */
-  public void processElement(WindowedValue<InputT> elem);
+  void processElement(WindowedValue<InputT> elem);
 
   /**
    * Calls {@link OldDoFn#finishBundle} and performs additional tasks, such as
    * flushing in-memory states.
    */
-  public void finishBundle();
+  void finishBundle();
 
   /**
    * An internal interface for signaling that a {@link OldDoFn} requires late data dropping.

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunners.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunners.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunners.java
index 7726374..2e911a5 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunners.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/DoFnRunners.java
@@ -43,7 +43,7 @@ public class DoFnRunners {
     /**
      * Outputs a single element to the receiver indicated by the given {@link TupleTag}.
      */
-    public <T> void output(TupleTag<T> tag, WindowedValue<T> output);
+    <T> void output(TupleTag<T> tag, WindowedValue<T> output);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/ElementByteSizeObservable.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/ElementByteSizeObservable.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/ElementByteSizeObservable.java
index 2380ba9..63b9f25 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/ElementByteSizeObservable.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/ElementByteSizeObservable.java
@@ -32,13 +32,12 @@ public interface ElementByteSizeObservable<T> {
    * {@code ElementByteSizeObservable} can calculate the byte size of
    * the element to be coded in roughly constant time (or lazily).
    */
-  public boolean isRegisterByteSizeObserverCheap(T value);
+  boolean isRegisterByteSizeObserverCheap(T value);
 
   /**
    * Notifies the {@code ElementByteSizeObserver} about the byte size
    * of the encoded value using this {@code ElementByteSizeObservable}.
    */
-  public void registerByteSizeObserver(T value,
-                                       ElementByteSizeObserver observer)
+  void registerByteSizeObserver(T value, ElementByteSizeObserver observer)
       throws Exception;
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/ReduceFnContextFactory.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/ReduceFnContextFactory.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/ReduceFnContextFactory.java
index 2043f14..500c6e7 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/ReduceFnContextFactory.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/ReduceFnContextFactory.java
@@ -80,7 +80,7 @@ class ReduceFnContextFactory<K, InputT, OutputT, W extends BoundedWindow> {
   }
 
   /** Where should we look for state associated with a given window? */
-  public static enum StateStyle {
+  public enum StateStyle {
     /** All state is associated with the window itself. */
     DIRECT,
     /** State is associated with the 'state address' windows tracked by the active window set. */

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/FinishedTriggers.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/FinishedTriggers.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/FinishedTriggers.java
index 1098716..95367c1 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/FinishedTriggers.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/FinishedTriggers.java
@@ -25,20 +25,20 @@ public interface FinishedTriggers {
   /**
    * Returns {@code true} if the trigger is finished.
    */
-  public boolean isFinished(ExecutableTriggerStateMachine trigger);
+  boolean isFinished(ExecutableTriggerStateMachine trigger);
 
   /**
    * Sets the fact that the trigger is finished.
    */
-  public void setFinished(ExecutableTriggerStateMachine trigger, boolean value);
+  void setFinished(ExecutableTriggerStateMachine trigger, boolean value);
 
   /**
    * Sets the trigger and all of its subtriggers to unfinished.
    */
-  public void clearRecursively(ExecutableTriggerStateMachine trigger);
+  void clearRecursively(ExecutableTriggerStateMachine trigger);
 
   /**
    * Create an independent copy of this mutable {@link FinishedTriggers}.
    */
-  public FinishedTriggers copy();
+  FinishedTriggers copy();
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/TriggerStateMachine.java
----------------------------------------------------------------------
diff --git a/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/TriggerStateMachine.java b/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/TriggerStateMachine.java
index f8def20..63ccd37 100644
--- a/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/TriggerStateMachine.java
+++ b/runners/core-java/src/main/java/org/apache/beam/runners/core/triggers/TriggerStateMachine.java
@@ -168,10 +168,10 @@ public abstract class TriggerStateMachine implements Serializable {
   public interface MergingTriggerInfo extends TriggerInfo {
 
     /** Return true if the trigger is finished in any window being merged. */
-    public abstract boolean finishedInAnyMergingWindow();
+    boolean finishedInAnyMergingWindow();
 
     /** Return true if the trigger is finished in all windows being merged. */
-    public abstract boolean finishedInAllMergingWindows();
+    boolean finishedInAllMergingWindows();
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/direct-java/src/main/java/org/apache/beam/runners/direct/WatermarkManager.java
----------------------------------------------------------------------
diff --git a/runners/direct-java/src/main/java/org/apache/beam/runners/direct/WatermarkManager.java b/runners/direct-java/src/main/java/org/apache/beam/runners/direct/WatermarkManager.java
index 1dfbf19..f8cbc51 100644
--- a/runners/direct-java/src/main/java/org/apache/beam/runners/direct/WatermarkManager.java
+++ b/runners/direct-java/src/main/java/org/apache/beam/runners/direct/WatermarkManager.java
@@ -149,7 +149,7 @@ public class WatermarkManager {
   /**
    * The result of computing a {@link Watermark}.
    */
-  private static enum WatermarkUpdate {
+  private enum WatermarkUpdate {
     /** The watermark is later than the value at the previous time it was computed. */
     ADVANCED(true),
     /** The watermark is equal to the value at the previous time it was computed. */

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/direct-java/src/test/java/org/apache/beam/runners/direct/WatermarkManagerTest.java
----------------------------------------------------------------------
diff --git a/runners/direct-java/src/test/java/org/apache/beam/runners/direct/WatermarkManagerTest.java b/runners/direct-java/src/test/java/org/apache/beam/runners/direct/WatermarkManagerTest.java
index 8a27243..042abab 100644
--- a/runners/direct-java/src/test/java/org/apache/beam/runners/direct/WatermarkManagerTest.java
+++ b/runners/direct-java/src/test/java/org/apache/beam/runners/direct/WatermarkManagerTest.java
@@ -1452,7 +1452,7 @@ public class WatermarkManagerTest implements Serializable {
     return bundle.commit(BoundedWindow.TIMESTAMP_MAX_VALUE);
   }
 
-  private final CommittedResult result(
+  private CommittedResult result(
       AppliedPTransform<?, ?, ?> transform,
       @Nullable CommittedBundle<?> unprocessedBundle,
       Iterable<? extends CommittedBundle<?>> bundles) {

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
index c0366fc..ad49af7 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/DataflowPipelineTranslator.java
@@ -218,7 +218,7 @@ public class DataflowPipelineTranslator {
    * mutating the {@link TranslationContext}.
    */
   public interface TransformTranslator<TransformT extends PTransform> {
-    public void translate(TransformT transform,
+    void translate(TransformT transform,
                           TranslationContext context);
   }
 
@@ -254,7 +254,7 @@ public class DataflowPipelineTranslator {
      * This step becomes "current" for the purpose of {@link #addInput} and
      * {@link #addOutput}.
      */
-    public void addStep(PTransform<?, ?> transform, String type);
+    void addStep(PTransform<?, ?> transform, String type);
 
     /**
      * Adds a pre-defined step to the Dataflow workflow. The given PTransform should be
@@ -263,46 +263,46 @@ public class DataflowPipelineTranslator {
      * <p>This is a low-level operation, when using this method it is up to
      * the caller to ensure that names do not collide.
      */
-    public void addStep(PTransform<?, ? extends PValue> transform, Step step);
+    void addStep(PTransform<?, ? extends PValue> transform, Step step);
 
     /**
      * Sets the encoding for the current Dataflow step.
      */
-    public void addEncodingInput(Coder<?> value);
+    void addEncodingInput(Coder<?> value);
 
     /**
      * Adds an input with the given name and value to the current
      * Dataflow step.
      */
-    public void addInput(String name, Boolean value);
+    void addInput(String name, Boolean value);
 
     /**
      * Adds an input with the given name and value to the current
      * Dataflow step.
      */
-    public void addInput(String name, String value);
+    void addInput(String name, String value);
 
     /**
      * Adds an input with the given name and value to the current
      * Dataflow step.
      */
-    public void addInput(String name, Long value);
+    void addInput(String name, Long value);
 
     /**
      * Adds an input with the given name to the previously added Dataflow
      * step, coming from the specified input PValue.
      */
-    public void addInput(String name, PInput value);
+    void addInput(String name, PInput value);
 
     /**
      * Adds an input that is a dictionary of strings to objects.
      */
-    public void addInput(String name, Map<String, Object> elements);
+    void addInput(String name, Map<String, Object> elements);
 
     /**
      * Adds an input that is a list of objects.
      */
-    public void addInput(String name, List<? extends Map<String, Object>> elements);
+    void addInput(String name, List<? extends Map<String, Object>> elements);
 
     /**
      * Adds an output to the previously added Dataflow step,
@@ -311,7 +311,7 @@ public class DataflowPipelineTranslator {
      * {@code PValue} is a {@code PCollection}, wraps its coder inside
      * a {@code WindowedValueCoder}.  Returns a pipeline level unique id.
      */
-    public long addOutput(PValue value);
+    long addOutput(PValue value);
 
     /**
      * Adds an output to the previously added Dataflow step,
@@ -320,7 +320,7 @@ public class DataflowPipelineTranslator {
      * {@code PValue} is a {@code PCollection}, wraps its coder inside
      * a {@code ValueOnlyCoder}.  Returns a pipeline level unique id.
      */
-    public long addValueOnlyOutput(PValue value);
+    long addValueOnlyOutput(PValue value);
 
     /**
      * Adds an output to the previously added CollectionToSingleton Dataflow step,
@@ -328,13 +328,13 @@ public class DataflowPipelineTranslator {
      * {@code PValue}.  This step requires special treatment for its
      * output encoding.  Returns a pipeline level unique id.
      */
-    public long addCollectionToSingletonOutput(PValue inputValue,
+    long addCollectionToSingletonOutput(PValue inputValue,
                                                PValue outputValue);
 
     /**
      * Encode a PValue reference as an output reference.
      */
-    public OutputReference asOutputReference(PValue value);
+    OutputReference asOutputReference(PValue value);
   }
 
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineDebugOptions.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineDebugOptions.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineDebugOptions.java
index 8501f9f..cdfa3f5 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineDebugOptions.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineDebugOptions.java
@@ -132,7 +132,7 @@ public interface DataflowPipelineDebugOptions extends PipelineOptions {
   void setDataflowClient(Dataflow value);
 
   /** Returns the default Dataflow client built from the passed in PipelineOptions. */
-  public static class DataflowClientFactory implements DefaultValueFactory<Dataflow> {
+  class DataflowClientFactory implements DefaultValueFactory<Dataflow> {
     @Override
     public Dataflow create(PipelineOptions options) {
         return DataflowTransport.newDataflowClient(
@@ -198,7 +198,7 @@ public interface DataflowPipelineDebugOptions extends PipelineOptions {
    * Creates a {@link Stager} object using the class specified in
    * {@link #getStagerClass()}.
    */
-  public static class StagerFactory implements DefaultValueFactory<Stager> {
+  class StagerFactory implements DefaultValueFactory<Stager> {
       @Override
       public Stager create(PipelineOptions options) {
       DataflowPipelineDebugOptions debugOptions = options.as(DataflowPipelineDebugOptions.class);

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.java
index 9f58f93..ec4fec6 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineOptions.java
@@ -82,7 +82,7 @@ public interface DataflowPipelineOptions
   /**
    * Returns a default staging location under {@link GcpOptions#getGcpTempLocation}.
    */
-  public static class StagingLocationFactory implements DefaultValueFactory<String> {
+  class StagingLocationFactory implements DefaultValueFactory<String> {
 
     @Override
     public String create(PipelineOptions options) {

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineWorkerPoolOptions.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineWorkerPoolOptions.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineWorkerPoolOptions.java
index 7d043c3..b6ec9c3 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineWorkerPoolOptions.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowPipelineWorkerPoolOptions.java
@@ -49,7 +49,7 @@ public interface DataflowPipelineWorkerPoolOptions extends PipelineOptions {
    * Type of autoscaling algorithm to use.
    */
   @Experimental(Experimental.Kind.AUTOSCALING)
-  public enum AutoscalingAlgorithmType {
+  enum AutoscalingAlgorithmType {
     /** Use numWorkers machines. Do not autoscale the worker pool. */
     NONE("AUTOSCALING_ALGORITHM_NONE"),
 
@@ -124,7 +124,7 @@ public interface DataflowPipelineWorkerPoolOptions extends PipelineOptions {
    * Returns the default Docker container image that executes Dataflow worker harness, residing in
    * Google Container Registry.
    */
-  public static class WorkerHarnessContainerImageFactory
+  class WorkerHarnessContainerImageFactory
       implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
@@ -196,7 +196,7 @@ public interface DataflowPipelineWorkerPoolOptions extends PipelineOptions {
    * @deprecated Dataflow Service will only support TEARDOWN_ALWAYS policy in the future.
    */
   @Deprecated
-  public enum TeardownPolicy {
+  enum TeardownPolicy {
     /**
      * All VMs created for a Dataflow job are deleted when the job finishes, regardless of whether
      * it fails or succeeds.
@@ -216,7 +216,7 @@ public interface DataflowPipelineWorkerPoolOptions extends PipelineOptions {
 
     private final String teardownPolicy;
 
-    private TeardownPolicy(String teardownPolicy) {
+    TeardownPolicy(String teardownPolicy) {
       this.teardownPolicy = teardownPolicy;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowProfilingOptions.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowProfilingOptions.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowProfilingOptions.java
index ae8801b..092c17a 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowProfilingOptions.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowProfilingOptions.java
@@ -44,6 +44,6 @@ public interface DataflowProfilingOptions {
   /**
    * Configuration the for profiling agent.
    */
-  public static class DataflowProfilingAgentConfiguration extends HashMap<String, Object> {
+  class DataflowProfilingAgentConfiguration extends HashMap<String, Object> {
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowWorkerLoggingOptions.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowWorkerLoggingOptions.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowWorkerLoggingOptions.java
index 38c139c..fae851c 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowWorkerLoggingOptions.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/options/DataflowWorkerLoggingOptions.java
@@ -35,7 +35,7 @@ public interface DataflowWorkerLoggingOptions extends PipelineOptions {
   /**
    * The set of log levels that can be used on the Dataflow worker.
    */
-  public enum Level {
+  enum Level {
     /** Special level used to turn off logging. */
     OFF,
 
@@ -133,7 +133,7 @@ public interface DataflowWorkerLoggingOptions extends PipelineOptions {
    * corresponding name. Note that by specifying multiple overrides, the exact name followed by the
    * closest parent takes precedence.
    */
-  public static class WorkerLogLevelOverrides extends HashMap<String, Level> {
+  class WorkerLogLevelOverrides extends HashMap<String, Level> {
     /**
      * Overrides the default log level for the passed in class.
      *

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/Stager.java
----------------------------------------------------------------------
diff --git a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/Stager.java b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/Stager.java
index 232e032..3e3c17f 100644
--- a/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/Stager.java
+++ b/runners/google-cloud-dataflow-java/src/main/java/org/apache/beam/runners/dataflow/util/Stager.java
@@ -25,5 +25,5 @@ import java.util.List;
  */
 public interface Stager {
   /* Stage files and return a list of packages. */
-  public List<DataflowPackage> stageFiles();
+  List<DataflowPackage> stageFiles();
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/runners/spark/src/main/java/org/apache/beam/runners/spark/SparkPipelineOptions.java
----------------------------------------------------------------------
diff --git a/runners/spark/src/main/java/org/apache/beam/runners/spark/SparkPipelineOptions.java b/runners/spark/src/main/java/org/apache/beam/runners/spark/SparkPipelineOptions.java
index 92d2a7f..4d9d51f 100644
--- a/runners/spark/src/main/java/org/apache/beam/runners/spark/SparkPipelineOptions.java
+++ b/runners/spark/src/main/java/org/apache/beam/runners/spark/SparkPipelineOptions.java
@@ -63,7 +63,7 @@ public interface SparkPipelineOptions extends PipelineOptions, StreamingOptions,
    * For testing purposes only. Production applications should use a reliable
    * filesystem such as HDFS/S3/GS.
    */
-  static class TmpCheckpointDirFactory implements DefaultValueFactory<String> {
+  class TmpCheckpointDirFactory implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
       SparkPipelineOptions sparkPipelineOptions = options.as(SparkPipelineOptions.class);
@@ -100,7 +100,7 @@ public interface SparkPipelineOptions extends PipelineOptions, StreamingOptions,
   void setListeners(List<JavaStreamingListener> listeners);
 
   /** Returns an empty list, top avoid handling null. */
-  static class EmptyListenersList implements DefaultValueFactory<List<JavaStreamingListener>> {
+  class EmptyListenersList implements DefaultValueFactory<List<JavaStreamingListener>> {
     @Override
     public List<JavaStreamingListener> create(PipelineOptions options) {
       return new ArrayList<>();

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/build-tools/src/main/resources/beam/checkstyle.xml
----------------------------------------------------------------------
diff --git a/sdks/java/build-tools/src/main/resources/beam/checkstyle.xml b/sdks/java/build-tools/src/main/resources/beam/checkstyle.xml
index 759876b..eb414bf 100644
--- a/sdks/java/build-tools/src/main/resources/beam/checkstyle.xml
+++ b/sdks/java/build-tools/src/main/resources/beam/checkstyle.xml
@@ -111,6 +111,13 @@ page at http://checkstyle.sourceforge.net/config.html -->
       <property name="illegalPkgs" value="autovalue.shaded, avro.shaded, com.google.api.client.repackaged, com.google.appengine.repackaged, io.netty.util.internal"/>
     </module>
 
+    <module name="RedundantModifier">
+      <!-- Checks for redundant modifiers on various symbol definitions.
+        See: http://checkstyle.sourceforge.net/config_modifier.html#RedundantModifier
+      -->
+      <property name="tokens" value="METHOD_DEF, VARIABLE_DEF, ANNOTATION_FIELD_DEF, INTERFACE_DEF, CLASS_DEF, ENUM_DEF"/>
+    </module>
+
     <!--
         IllegalImport cannot blacklist classes, and c.g.api.client.util is used for some shaded
         code and some useful code. So we need to fall back to Regexp.

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/Pipeline.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/Pipeline.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/Pipeline.java
index 53f46f6..2286832 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/Pipeline.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/Pipeline.java
@@ -223,31 +223,31 @@ public class Pipeline {
      *
      * <p>The return value controls whether or not child transforms are visited.
      */
-    public CompositeBehavior enterCompositeTransform(TransformTreeNode node);
+    CompositeBehavior enterCompositeTransform(TransformTreeNode node);
 
     /**
      * Called for each composite transform after all of its component transforms and their outputs
      * have been visited.
      */
-    public void leaveCompositeTransform(TransformTreeNode node);
+    void leaveCompositeTransform(TransformTreeNode node);
 
     /**
      * Called for each primitive transform after all of its topological predecessors
      * and inputs have been visited.
      */
-    public void visitPrimitiveTransform(TransformTreeNode node);
+    void visitPrimitiveTransform(TransformTreeNode node);
 
     /**
      * Called for each value after the transform that produced the value has been
      * visited.
      */
-    public void visitValue(PValue value, TransformTreeNode producer);
+    void visitValue(PValue value, TransformTreeNode producer);
 
     /**
      * Control enum for indicating whether or not a traversal should process the contents of
      * a composite transform or not.
      */
-    public enum CompositeBehavior {
+    enum CompositeBehavior {
       ENTER_TRANSFORM,
       DO_NOT_ENTER_TRANSFORM
     }
@@ -256,7 +256,7 @@ public class Pipeline {
      * Default no-op {@link PipelineVisitor} that enters all composite transforms.
      * User implementations can override just those methods they are interested in.
      */
-    public class Defaults implements PipelineVisitor {
+    class Defaults implements PipelineVisitor {
       @Override
       public CompositeBehavior enterCompositeTransform(TransformTreeNode node) {
         return CompositeBehavior.ENTER_TRANSFORM;

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/PipelineResult.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/PipelineResult.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/PipelineResult.java
index d7774bb..cd09c4d 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/PipelineResult.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/PipelineResult.java
@@ -84,7 +84,7 @@ public interface PipelineResult {
   // TODO: method to retrieve error messages.
 
   /** Named constants for common values for the job state. */
-  public enum State {
+  enum State {
 
     /** The job state could not be obtained or was not specified. */
     UNKNOWN(false, false),
@@ -111,7 +111,7 @@ public interface PipelineResult {
 
     private final boolean hasReplacement;
 
-    private State(boolean terminal, boolean hasReplacement) {
+    State(boolean terminal, boolean hasReplacement) {
       this.terminal = terminal;
       this.hasReplacement = hasReplacement;
     }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/annotations/Experimental.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/annotations/Experimental.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/annotations/Experimental.java
index 14d2358..c55cd5e 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/annotations/Experimental.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/annotations/Experimental.java
@@ -45,12 +45,12 @@ import java.lang.annotation.Target;
     ElementType.TYPE})
 @Documented
 public @interface Experimental {
-  public Kind value() default Kind.UNSPECIFIED;
+  Kind value() default Kind.UNSPECIFIED;
 
   /**
    * An enumeration of various kinds of experimental APIs.
    */
-  public enum Kind {
+  enum Kind {
     /** Generic group of experimental APIs. This is the default value. */
     UNSPECIFIED,
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CannotProvideCoderException.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CannotProvideCoderException.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CannotProvideCoderException.java
index b490fda..c37ec00 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CannotProvideCoderException.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CannotProvideCoderException.java
@@ -80,7 +80,7 @@ public class CannotProvideCoderException extends Exception {
   /**
    * Indicates the reason that {@link Coder} inference failed.
    */
-  public static enum ReasonCode {
+  public enum ReasonCode {
     /**
      * The reason a coder could not be provided is unknown or does have an established
      * {@link ReasonCode}.

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/Coder.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/Coder.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/Coder.java
index f1e3fe7..93e65d3 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/Coder.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/Coder.java
@@ -63,7 +63,7 @@ import org.apache.beam.sdk.util.common.ElementByteSizeObserver;
  */
 public interface Coder<T> extends Serializable {
   /** The context in which encoding or decoding is being done. */
-  public static class Context {
+  class Context {
     /**
      * The outer context: the value being encoded or decoded takes
      * up the remainder of the record/stream contents.
@@ -122,7 +122,7 @@ public interface Coder<T> extends Serializable {
    * for some reason
    * @throws CoderException if the value could not be encoded for some reason
    */
-  public void encode(T value, OutputStream outStream, Context context)
+  void encode(T value, OutputStream outStream, Context context)
       throws CoderException, IOException;
 
   /**
@@ -133,7 +133,7 @@ public interface Coder<T> extends Serializable {
    * for some reason
    * @throws CoderException if the value could not be decoded for some reason
    */
-  public T decode(InputStream inStream, Context context)
+  T decode(InputStream inStream, Context context)
       throws CoderException, IOException;
 
   /**
@@ -142,12 +142,12 @@ public interface Coder<T> extends Serializable {
    * returns {@code null} if this cannot be done or this is not a
    * parameterized type.
    */
-  public List<? extends Coder<?>> getCoderArguments();
+  List<? extends Coder<?>> getCoderArguments();
 
   /**
    * Returns the {@link CloudObject} that represents this {@code Coder}.
    */
-  public CloudObject asCloudObject();
+  CloudObject asCloudObject();
 
   /**
    * Throw {@link NonDeterministicException} if the coding is not deterministic.
@@ -165,7 +165,7 @@ public interface Coder<T> extends Serializable {
    *
    * @throws Coder.NonDeterministicException if this coder is not deterministic.
    */
-  public void verifyDeterministic() throws Coder.NonDeterministicException;
+  void verifyDeterministic() throws Coder.NonDeterministicException;
 
   /**
    * Returns {@code true} if this {@link Coder} is injective with respect to {@link Objects#equals}.
@@ -177,7 +177,7 @@ public interface Coder<T> extends Serializable {
    * whenever {@code equals()} compares object identity, rather than performing a
    * semantic/structural comparison.
    */
-  public boolean consistentWithEquals();
+  boolean consistentWithEquals();
 
   /**
    * Returns an object with an {@code Object.equals()} method that represents structural equality
@@ -197,7 +197,7 @@ public interface Coder<T> extends Serializable {
    *
    * <p>See also {@link #consistentWithEquals()}.
    */
-  public Object structuralValue(T value) throws Exception;
+  Object structuralValue(T value) throws Exception;
 
   /**
    * Returns whether {@link #registerByteSizeObserver} cheap enough to
@@ -209,7 +209,7 @@ public interface Coder<T> extends Serializable {
    * {@link org.apache.beam.sdk.runners.PipelineRunner}
    * implementations.
    */
-  public boolean isRegisterByteSizeObserverCheap(T value, Context context);
+  boolean isRegisterByteSizeObserverCheap(T value, Context context);
 
   /**
    * Notifies the {@code ElementByteSizeObserver} about the byte size
@@ -219,7 +219,7 @@ public interface Coder<T> extends Serializable {
    * {@link org.apache.beam.sdk.runners.PipelineRunner}
    * implementations.
    */
-  public void registerByteSizeObserver(
+  void registerByteSizeObserver(
       T value, ElementByteSizeObserver observer, Context context)
       throws Exception;
 
@@ -239,7 +239,7 @@ public interface Coder<T> extends Serializable {
    * read data from the prior format.
    */
   @Experimental(Kind.CODER_ENCODING_ID)
-  public String getEncodingId();
+  String getEncodingId();
 
   /**
    * A collection of encodings supported by {@link #decode} in addition to the encoding
@@ -251,13 +251,13 @@ public interface Coder<T> extends Serializable {
    * @see #getEncodingId()
    */
   @Experimental(Kind.CODER_ENCODING_ID)
-  public Collection<String> getAllowedEncodings();
+  Collection<String> getAllowedEncodings();
 
   /**
    * Exception thrown by {@link Coder#verifyDeterministic()} if the encoding is
    * not deterministic, including details of why the encoding is not deterministic.
    */
-  public static class NonDeterministicException extends Exception {
+  class NonDeterministicException extends Exception {
     private Coder<?> coder;
     private List<String> reasons;
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderFactory.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderFactory.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderFactory.java
index b49cdbd..22d03fa 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderFactory.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderFactory.java
@@ -32,7 +32,7 @@ public interface CoderFactory {
    * values of a particular type, given the Coders for each of
    * the type's generic parameter types.
    */
-  public Coder<?> create(List<? extends Coder<?>> componentCoders);
+  Coder<?> create(List<? extends Coder<?>> componentCoders);
 
   /**
    * Returns a list of objects contained in {@code value}, one per
@@ -40,5 +40,5 @@ public interface CoderFactory {
    * The list of returned objects should be the same size as the
    * list of coders required by {@link #create}.
    */
-  public List<Object> getInstanceComponents(Object value);
+  List<Object> getInstanceComponents(Object value);
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderProvider.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderProvider.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderProvider.java
index 0289447..0db73eb 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderProvider.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/CoderProvider.java
@@ -30,5 +30,5 @@ public interface CoderProvider {
    *
    * @throws CannotProvideCoderException if no coder can be provided
    */
-  public <T> Coder<T> getCoder(TypeDescriptor<T> type) throws CannotProvideCoderException;
+  <T> Coder<T> getCoder(TypeDescriptor<T> type) throws CannotProvideCoderException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/DelegateCoder.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/DelegateCoder.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/DelegateCoder.java
index c71d761..a5bdedf 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/DelegateCoder.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/coders/DelegateCoder.java
@@ -49,7 +49,7 @@ public final class DelegateCoder<T, IntermediateT> extends CustomCoder<T> {
    * function from {@code InputT} to {@code OutputT} that may throw any {@link Exception}.
    */
   public interface CodingFunction<InputT, OutputT> extends Serializable {
-     public abstract OutputT apply(InputT input) throws Exception;
+     OutputT apply(InputT input) throws Exception;
   }
 
   public static <T, IntermediateT> DelegateCoder<T, IntermediateT> of(Coder<IntermediateT> coder,

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/io/CompressedSource.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/CompressedSource.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/CompressedSource.java
index bf871b7..e0f1b59 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/CompressedSource.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/CompressedSource.java
@@ -76,7 +76,7 @@ public class CompressedSource<T> extends FileBasedSource<T> {
      * Given a channel, create a channel that decompresses the content read from the channel.
      * @throws IOException
      */
-    public ReadableByteChannel createDecompressingChannel(ReadableByteChannel channel)
+    ReadableByteChannel createDecompressingChannel(ReadableByteChannel channel)
         throws IOException;
   }
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/io/FileBasedSink.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/FileBasedSink.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/FileBasedSink.java
index a045d8a..4355962 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/FileBasedSink.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/FileBasedSink.java
@@ -79,7 +79,7 @@ public abstract class FileBasedSink<T> extends Sink<T> {
   /**
    * Directly supported file output compression types.
    */
-  public static enum CompressionType implements WritableByteChannelFactory {
+  public enum CompressionType implements WritableByteChannelFactory {
     /**
      * No compression, or any other transformation, will be used.
      */
@@ -689,12 +689,12 @@ public abstract class FileBasedSink<T> extends Sink<T> {
      * @param srcFilenames the source filenames.
      * @param destFilenames the destination filenames.
      */
-    public void copy(List<String> srcFilenames, List<String> destFilenames) throws IOException;
+     void copy(List<String> srcFilenames, List<String> destFilenames) throws IOException;
 
     /**
      * Remove a collection of files.
      */
-    public void remove(Collection<String> filenames) throws IOException;
+    void remove(Collection<String> filenames) throws IOException;
   }
 
   /**
@@ -786,7 +786,7 @@ public abstract class FileBasedSink<T> extends Sink<T> {
      * @return the {@link WritableByteChannel} to be used during output
      * @throws IOException
      */
-    public WritableByteChannel create(WritableByteChannel channel) throws IOException;
+    WritableByteChannel create(WritableByteChannel channel) throws IOException;
 
     /**
      * @return the MIME type that should be used for the files that will hold the output data
@@ -794,12 +794,12 @@ public abstract class FileBasedSink<T> extends Sink<T> {
      * @see <a href=
      *      'http://www.iana.org/assignments/media-types/media-types.xhtml'>http://www.iana.org/assignments/media-types/media-types.xhtml</a>
      */
-    public String getMimeType();
+    String getMimeType();
 
     /**
      * @return an optional filename suffix, eg, ".gz" is returned by {@link CompressionType#GZIP}
      */
     @Nullable
-    public String getFilenameSuffix();
+    String getFilenameSuffix();
   }
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/io/TextIO.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/TextIO.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/TextIO.java
index fbff3ba..2dbcda7 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/io/TextIO.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/io/TextIO.java
@@ -794,7 +794,7 @@ public class TextIO {
   /**
    * Possible text file compression types.
    */
-  public static enum CompressionType {
+  public enum CompressionType {
     /**
      * Automatically determine the compression type based on filename extension.
      */
@@ -818,7 +818,7 @@ public class TextIO {
 
     private String filenameSuffix;
 
-    private CompressionType(String suffix) {
+    CompressionType(String suffix) {
       this.filenameSuffix = suffix;
     }
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcpOptions.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcpOptions.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcpOptions.java
index b4ae314..0ea6faf 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcpOptions.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcpOptions.java
@@ -140,7 +140,7 @@ public interface GcpOptions extends GoogleApiDebugOptions, PipelineOptions {
   /**
    * Returns the default credential directory of ${user.home}/.store/data-flow.
    */
-  public static class CredentialDirFactory implements DefaultValueFactory<String> {
+  class CredentialDirFactory implements DefaultValueFactory<String> {
     @Override
     public String create(PipelineOptions options) {
       File home = new File(System.getProperty("user.home"));
@@ -181,7 +181,7 @@ public interface GcpOptions extends GoogleApiDebugOptions, PipelineOptions {
    * Attempts to infer the default project based upon the environment this application
    * is executing within. Currently this only supports getting the default project from gcloud.
    */
-  public static class DefaultProjectFactory implements DefaultValueFactory<String> {
+  class DefaultProjectFactory implements DefaultValueFactory<String> {
     private static final Logger LOG = LoggerFactory.getLogger(DefaultProjectFactory.class);
 
     @Override
@@ -251,7 +251,7 @@ public interface GcpOptions extends GoogleApiDebugOptions, PipelineOptions {
    * Attempts to load the GCP credentials. See
    * {@link CredentialFactory#getCredential()} for more details.
    */
-  public static class GcpUserCredentialsFactory implements DefaultValueFactory<Credential> {
+  class GcpUserCredentialsFactory implements DefaultValueFactory<Credential> {
     @Override
     public Credential create(PipelineOptions options) {
       GcpOptions gcpOptions = options.as(GcpOptions.class);
@@ -303,7 +303,7 @@ public interface GcpOptions extends GoogleApiDebugOptions, PipelineOptions {
   /**
    * Returns {@link PipelineOptions#getTempLocation} as the default GCP temp location.
    */
-  public static class GcpTempLocationFactory implements DefaultValueFactory<String> {
+  class GcpTempLocationFactory implements DefaultValueFactory<String> {
 
     @Override
     @Nullable

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcsOptions.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcsOptions.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcsOptions.java
index 29a29d9..0553efc 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcsOptions.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GcsOptions.java
@@ -113,7 +113,7 @@ public interface GcsOptions extends
    * Returns the default {@link ExecutorService} to use within the Dataflow SDK. The
    * {@link ExecutorService} is compatible with AppEngine.
    */
-  public static class ExecutorServiceFactory implements DefaultValueFactory<ExecutorService> {
+  class ExecutorServiceFactory implements DefaultValueFactory<ExecutorService> {
     @SuppressWarnings("deprecation")  // IS_APP_ENGINE is deprecated for internal use only.
     @Override
     public ExecutorService create(PipelineOptions options) {
@@ -142,7 +142,7 @@ public interface GcsOptions extends
    * Creates a {@link PathValidator} object using the class specified in
    * {@link #getPathValidatorClass()}.
    */
-  public static class PathValidatorFactory implements DefaultValueFactory<PathValidator> {
+  class PathValidatorFactory implements DefaultValueFactory<PathValidator> {
     @Override
     public PathValidator create(PipelineOptions options) {
       GcsOptions gcsOptions = options.as(GcsOptions.class);

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GoogleApiDebugOptions.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GoogleApiDebugOptions.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GoogleApiDebugOptions.java
index 4932b16..09ab0f5 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GoogleApiDebugOptions.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/GoogleApiDebugOptions.java
@@ -54,7 +54,7 @@ public interface GoogleApiDebugOptions extends PipelineOptions {
   /**
    * A {@link GoogleClientRequestInitializer} that adds the trace destination to Google API calls.
    */
-  public static class GoogleApiTracer extends HashMap<String, String>
+  class GoogleApiTracer extends HashMap<String, String>
       implements GoogleClientRequestInitializer {
     /**
      * Creates a {@link GoogleApiTracer} that sets the trace destination on all

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PipelineOptions.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PipelineOptions.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PipelineOptions.java
index 5588543..2139ed9 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PipelineOptions.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/PipelineOptions.java
@@ -226,7 +226,7 @@ public interface PipelineOptions extends HasDisplayData {
   /**
    * Enumeration of the possible states for a given check.
    */
-  public static enum CheckEnabled {
+  enum CheckEnabled {
     OFF,
     WARNING,
     ERROR
@@ -299,7 +299,7 @@ public interface PipelineOptions extends HasDisplayData {
    * <p>The normalization makes sure that the name matches the pattern of
    * [a-z]([-a-z0-9]*[a-z0-9])?.
    */
-  static class JobNameFactory implements DefaultValueFactory<String> {
+  class JobNameFactory implements DefaultValueFactory<String> {
     private static final DateTimeFormatter FORMATTER =
         DateTimeFormat.forPattern("MMddHHmmss").withZone(DateTimeZone.UTC);
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/options/ValueProvider.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/ValueProvider.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/ValueProvider.java
index e4502fc..04b6926 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/options/ValueProvider.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/options/ValueProvider.java
@@ -66,7 +66,7 @@ public interface ValueProvider<T> {
    * {@link StaticValueProvider} is an implementation of {@link ValueProvider} that
    * allows for a static value to be provided.
    */
-  public static class StaticValueProvider<T> implements ValueProvider<T>, Serializable {
+  class StaticValueProvider<T> implements ValueProvider<T>, Serializable {
     @Nullable
     private final T value;
 
@@ -102,7 +102,7 @@ public interface ValueProvider<T> {
    * {@link #get()} at execution time (after a call to {@link Pipeline#run}),
    * which will provide the value of {@code optionsMap}.
    */
-  public static class RuntimeValueProvider<T> implements ValueProvider<T>, Serializable {
+  class RuntimeValueProvider<T> implements ValueProvider<T>, Serializable {
     private static ConcurrentHashMap<Long, PipelineOptions> optionsMap =
       new ConcurrentHashMap<>();
 
@@ -172,7 +172,7 @@ public interface ValueProvider<T> {
   /**
    * Serializer for {@link ValueProvider}.
    */
-  static class Serializer extends JsonSerializer<ValueProvider<?>> {
+  class Serializer extends JsonSerializer<ValueProvider<?>> {
     @Override
     public void serialize(ValueProvider<?> value, JsonGenerator jgen,
                           SerializerProvider provider) throws IOException {
@@ -187,7 +187,7 @@ public interface ValueProvider<T> {
   /**
    * Deserializer for {@link ValueProvider}, which handles type marshalling.
    */
-  static class Deserializer extends JsonDeserializer<ValueProvider<?>>
+  class Deserializer extends JsonDeserializer<ValueProvider<?>>
     implements ContextualDeserializer {
 
     private final JavaType innerType;

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/runners/PipelineRunnerRegistrar.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/runners/PipelineRunnerRegistrar.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/runners/PipelineRunnerRegistrar.java
index d72c44f..be95044 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/runners/PipelineRunnerRegistrar.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/runners/PipelineRunnerRegistrar.java
@@ -37,5 +37,5 @@ public interface PipelineRunnerRegistrar {
   /**
    * Get the set of {@link PipelineRunner PipelineRunners} to register.
    */
-  public Iterable<Class<? extends PipelineRunner<?>>> getPipelineRunners();
+  Iterable<Class<? extends PipelineRunner<?>>> getPipelineRunners();
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/PAssert.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/PAssert.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/PAssert.java
index ce614fb..609dcfaf 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/PAssert.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/testing/PAssert.java
@@ -1182,7 +1182,7 @@ public class PAssert {
    * should verify the assertion..
    */
   private interface AssertRelation<ActualT, ExpectedT> extends Serializable {
-    public SerializableFunction<ActualT, Void> assertFor(ExpectedT input);
+    SerializableFunction<ActualT, Void> assertFor(ExpectedT input);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Combine.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Combine.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Combine.java
index 7719c73..ac8acfc 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Combine.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Combine.java
@@ -1026,24 +1026,24 @@ public class Combine {
      * The type of mutable accumulator values used by this
      * {@code AccumulatingCombineFn}.
      */
-    public abstract interface Accumulator<InputT, AccumT, OutputT> {
+    public interface Accumulator<InputT, AccumT, OutputT> {
       /**
        * Adds the given input value to this accumulator, modifying
        * this accumulator.
        */
-      public abstract void addInput(InputT input);
+      void addInput(InputT input);
 
       /**
        * Adds the input values represented by the given accumulator
        * into this accumulator.
        */
-      public abstract void mergeAccumulator(AccumT other);
+      void mergeAccumulator(AccumT other);
 
       /**
        * Returns the output value that is the result of combining all
        * the input values represented by this accumulator.
        */
-      public abstract OutputT extractOutput();
+      OutputT extractOutput();
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/CombineFnBase.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/CombineFnBase.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/CombineFnBase.java
index f98ec96..770a390 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/CombineFnBase.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/CombineFnBase.java
@@ -67,7 +67,7 @@ public class CombineFnBase {
      * shuffle step, so a compact and efficient representation may have
      * significant performance benefits.
      */
-    public Coder<AccumT> getAccumulatorCoder(CoderRegistry registry, Coder<InputT> inputCoder)
+    Coder<AccumT> getAccumulatorCoder(CoderRegistry registry, Coder<InputT> inputCoder)
         throws CannotProvideCoderException;
 
     /**
@@ -79,18 +79,18 @@ public class CombineFnBase {
      * {@code Pipeline}'s {@code CoderRegistry} to try to infer the
      * Coder for {@code OutputT} values.
      */
-    public Coder<OutputT> getDefaultOutputCoder(CoderRegistry registry, Coder<InputT> inputCoder)
+    Coder<OutputT> getDefaultOutputCoder(CoderRegistry registry, Coder<InputT> inputCoder)
         throws CannotProvideCoderException;
 
     /**
      * Returns the error message for not supported default values in Combine.globally().
      */
-    public String getIncompatibleGlobalWindowErrorMessage();
+    String getIncompatibleGlobalWindowErrorMessage();
 
     /**
      * Returns the default value when there are no values added to the accumulator.
      */
-    public OutputT defaultValue();
+    OutputT defaultValue();
 
     /**
      * Converts this {@code GloballyCombineFn} into an equivalent
@@ -99,7 +99,7 @@ public class CombineFnBase {
      *
      * @param <K> the type of the (ignored) keys
      */
-    public <K> PerKeyCombineFn<K, InputT, AccumT, OutputT> asKeyedFn();
+    <K> PerKeyCombineFn<K, InputT, AccumT, OutputT> asKeyedFn();
   }
 
   /**
@@ -132,7 +132,7 @@ public class CombineFnBase {
      * shuffle step, so a compact and efficient representation may have
      * significant performance benefits.
      */
-    public Coder<AccumT> getAccumulatorCoder(CoderRegistry registry, Coder<K> keyCoder,
+    Coder<AccumT> getAccumulatorCoder(CoderRegistry registry, Coder<K> keyCoder,
         Coder<InputT> inputCoder) throws CannotProvideCoderException;
 
     /**
@@ -144,14 +144,13 @@ public class CombineFnBase {
      * enclosing {@code Pipeline}'s {@code CoderRegistry} to try to
      * infer the Coder for {@code OutputT} values.
      */
-    public Coder<OutputT> getDefaultOutputCoder(CoderRegistry registry, Coder<K> keyCoder,
+    Coder<OutputT> getDefaultOutputCoder(CoderRegistry registry, Coder<K> keyCoder,
         Coder<InputT> inputCoder) throws CannotProvideCoderException;
 
     /**
      * Returns the a regular {@link GlobalCombineFn} that operates on a specific key.
      */
-    public abstract GlobalCombineFn<InputT, AccumT, OutputT> forKey(
-        final K key, final Coder<K> keyCoder);
+    GlobalCombineFn<InputT, AccumT, OutputT> forKey(K key, Coder<K> keyCoder);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/OldDoFn.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/OldDoFn.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/OldDoFn.java
index a445c7d..2e3323c 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/OldDoFn.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/OldDoFn.java
@@ -216,7 +216,7 @@ public abstract class OldDoFn<InputT, OutputT> implements Serializable, HasDispl
       aggregatorsAreFinal = true;
     }
 
-    private final <AggInputT, AggOutputT> void setupDelegateAggregator(
+    private <AggInputT, AggOutputT> void setupDelegateAggregator(
         DelegatingAggregator<AggInputT, AggOutputT> aggregator) {
 
       Aggregator<AggInputT, AggOutputT> delegate = createAggregatorInternal(

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Partition.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Partition.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Partition.java
index 5b4eead..b525872 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Partition.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/Partition.java
@@ -78,7 +78,7 @@ public class Partition<T> extends PTransform<PCollection<T>, PCollectionList<T>>
      * @return index of the selected partition (in the range
      * {@code [0..numPartitions-1]})
      */
-    public int partitionFor(T elem, int numPartitions);
+    int partitionFor(T elem, int numPartitions);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SerializableFunction.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SerializableFunction.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SerializableFunction.java
index eb15630..b2ac9ed 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SerializableFunction.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/SerializableFunction.java
@@ -28,5 +28,5 @@ import java.io.Serializable;
  */
 public interface SerializableFunction<InputT, OutputT> extends Serializable {
   /** Returns the result of invoking this function on the given input. */
-  public OutputT apply(InputT input);
+  OutputT apply(InputT input);
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignature.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignature.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignature.java
index 6b9e566..71f7e53 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignature.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignature.java
@@ -179,7 +179,7 @@ public abstract class DoFnSignature {
       /**
        * A base class for a visitor with a default method for cases it is not interested in.
        */
-      public abstract static class WithDefault<ResultT> implements Cases<ResultT> {
+      abstract class WithDefault<ResultT> implements Cases<ResultT> {
 
         protected abstract ResultT dispatchDefault(Parameter p);
 

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java
index ea1203a..5814c0e 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/reflect/DoFnSignatures.java
@@ -835,7 +835,7 @@ public class DoFnSignatures {
   }
 
   private interface MemberGetter<MemberT> {
-    public MemberT[] getMembers(Class<?> clazz);
+    MemberT[] getMembers(Class<?> clazz);
   }
 
   // Class::getDeclaredMethods for Java 7

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/PaneInfo.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/PaneInfo.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/PaneInfo.java
index 7e712b2..c9d178a 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/PaneInfo.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/PaneInfo.java
@@ -309,7 +309,7 @@ public final class PaneInfo {
    * A Coder for encoding PaneInfo instances.
    */
   public static class PaneInfoCoder extends AtomicCoder<PaneInfo> {
-    private static enum Encoding {
+    private enum Encoding {
       FIRST,
       ONE_INDEX,
       TWO_INDICES;

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/Trigger.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/Trigger.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/Trigger.java
index 90e9386..18b7a62 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/Trigger.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/Trigger.java
@@ -165,10 +165,10 @@ public abstract class Trigger implements Serializable {
   public interface MergingTriggerInfo extends TriggerInfo {
 
     /** Return true if the trigger is finished in any window being merged. */
-    public abstract boolean finishedInAnyMergingWindow();
+    boolean finishedInAnyMergingWindow();
 
     /** Return true if the trigger is finished in all windows being merged. */
-    public abstract boolean finishedInAllMergingWindows();
+    boolean finishedInAllMergingWindows();
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/WindowFn.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/WindowFn.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/WindowFn.java
index abb4ee0..127fb4f 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/WindowFn.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/transforms/windowing/WindowFn.java
@@ -128,7 +128,7 @@ public abstract class WindowFn<T, W extends BoundedWindow>
    *
    * <p>Authors of custom {@code WindowFn}s should override this.
    */
-  public abstract W getSideInputWindow(final BoundedWindow window);
+  public abstract W getSideInputWindow(BoundedWindow window);
 
   /**
    * Returns the output timestamp to use for data depending on the given

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/util/AttemptAndTimeBoundedExponentialBackOff.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/AttemptAndTimeBoundedExponentialBackOff.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/AttemptAndTimeBoundedExponentialBackOff.java
index 3fe2918..ff9b10d 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/AttemptAndTimeBoundedExponentialBackOff.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/AttemptAndTimeBoundedExponentialBackOff.java
@@ -49,7 +49,7 @@ public class AttemptAndTimeBoundedExponentialBackOff extends AttemptBoundedExpon
    * the number of attempts and the time bound for the BackOff are reset, but an alternative
    * ResetPolicy may be set to only reset one of these two.
    */
-  public static enum ResetPolicy {
+  public enum ResetPolicy {
     ALL,
     ATTEMPTS,
     TIMER

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/util/CredentialFactory.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/CredentialFactory.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/CredentialFactory.java
index ce29d91..884a77a 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/CredentialFactory.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/CredentialFactory.java
@@ -25,5 +25,5 @@ import java.security.GeneralSecurityException;
  * Construct an oauth credential to be used by the SDK and the SDK workers.
  */
 public interface CredentialFactory {
-  public Credential getCredential() throws IOException, GeneralSecurityException;
+  Credential getCredential() throws IOException, GeneralSecurityException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/util/FinishedTriggers.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/FinishedTriggers.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/FinishedTriggers.java
index 6666ab9..ea14c40 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/FinishedTriggers.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/FinishedTriggers.java
@@ -25,20 +25,20 @@ public interface FinishedTriggers {
   /**
    * Returns {@code true} if the trigger is finished.
    */
-  public boolean isFinished(ExecutableTrigger trigger);
+  boolean isFinished(ExecutableTrigger trigger);
 
   /**
    * Sets the fact that the trigger is finished.
    */
-  public void setFinished(ExecutableTrigger trigger, boolean value);
+  void setFinished(ExecutableTrigger trigger, boolean value);
 
   /**
    * Sets the trigger and all of its subtriggers to unfinished.
    */
-  public void clearRecursively(ExecutableTrigger trigger);
+  void clearRecursively(ExecutableTrigger trigger);
 
   /**
    * Create an independent copy of this mutable {@link FinishedTriggers}.
    */
-  public FinishedTriggers copy();
+  FinishedTriggers copy();
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/util/IOChannelFactory.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/IOChannelFactory.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/IOChannelFactory.java
index c89c7ad..ae6c507 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/IOChannelFactory.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/IOChannelFactory.java
@@ -98,5 +98,5 @@ public interface IOChannelFactory {
    * Where the {@code other} path has a root component then resolution is highly implementation
    * dependent and therefore unspecified.
    */
-  public String resolve(String path, String other) throws IOException;
+  String resolve(String path, String other) throws IOException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-beam/blob/c4cfb210/sdks/java/core/src/main/java/org/apache/beam/sdk/util/PathValidator.java
----------------------------------------------------------------------
diff --git a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/PathValidator.java b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/PathValidator.java
index a525e94..a7ee16e 100644
--- a/sdks/java/core/src/main/java/org/apache/beam/sdk/util/PathValidator.java
+++ b/sdks/java/core/src/main/java/org/apache/beam/sdk/util/PathValidator.java
@@ -27,7 +27,7 @@ public interface PathValidator {
    * @param filepattern The file pattern to verify.
    * @return The post-validation filepattern.
    */
-  public String validateInputFilePatternSupported(String filepattern);
+  String validateInputFilePatternSupported(String filepattern);
 
   /**
    * Validate that an output file prefix is conforming.
@@ -35,7 +35,7 @@ public interface PathValidator {
    * @param filePrefix the file prefix to verify.
    * @return The post-validation filePrefix.
    */
-  public String validateOutputFilePrefixSupported(String filePrefix);
+  String validateOutputFilePrefixSupported(String filePrefix);
 
   /**
    * Validate that a path is a valid path and that the path
@@ -44,5 +44,5 @@ public interface PathValidator {
    * @param path The path to verify.
    * @return The post-validation path.
    */
-  public String verifyPath(String path);
+  String verifyPath(String path);
 }