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/09/13 00:41:21 UTC

[50/50] [abbrv] incubator-beam git commit: Closes #943

Closes #943


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

Branch: refs/heads/gearpump-runner
Commit: ed7c4aaf96f766c8d82d3422a02a9c95446e7fb8
Parents: bf0a2ed 59ae94c
Author: Dan Halperin <dh...@google.com>
Authored: Mon Sep 12 17:40:15 2016 -0700
Committer: Dan Halperin <dh...@google.com>
Committed: Mon Sep 12 17:40:15 2016 -0700

----------------------------------------------------------------------
 .travis.yml                                     |    2 +-
 examples/java/pom.xml                           |  142 +-
 .../beam/examples/DebuggingWordCount.java       |   30 +-
 .../apache/beam/examples/MinimalWordCount.java  |    9 +-
 .../apache/beam/examples/WindowedWordCount.java |   44 +-
 .../org/apache/beam/examples/WordCount.java     |   57 +-
 .../common/ExampleBigQueryTableOptions.java     |    6 +-
 .../beam/examples/common/ExampleOptions.java    |   48 +-
 ...xamplePubsubTopicAndSubscriptionOptions.java |    2 +-
 .../common/ExamplePubsubTopicOptions.java       |    2 +-
 .../beam/examples/common/ExampleUtils.java      |   93 +-
 .../examples/common/PubsubFileInjector.java     |   16 +-
 .../beam/examples/complete/AutoComplete.java    |   76 +-
 .../org/apache/beam/examples/complete/README.md |    4 +-
 .../examples/complete/StreamingWordExtract.java |   20 +-
 .../apache/beam/examples/complete/TfIdf.java    |   42 +-
 .../examples/complete/TopWikipediaSessions.java |   26 +-
 .../examples/complete/TrafficMaxLaneFlow.java   |   29 +-
 .../beam/examples/complete/TrafficRoutes.java   |   39 +-
 .../examples/cookbook/BigQueryTornadoes.java    |   30 +-
 .../cookbook/CombinePerKeyExamples.java         |   30 +-
 .../examples/cookbook/DatastoreWordCount.java   |   69 +-
 .../beam/examples/cookbook/DeDupExample.java    |   20 +-
 .../beam/examples/cookbook/FilterExamples.java  |   35 +-
 .../beam/examples/cookbook/JoinExamples.java    |   21 +-
 .../examples/cookbook/MaxPerKeyExamples.java    |   31 +-
 .../beam/examples/cookbook/TriggerExample.java  |   35 +-
 .../beam/examples/DebuggingWordCountTest.java   |    6 +-
 .../org/apache/beam/examples/WordCountIT.java   |  131 +-
 .../org/apache/beam/examples/WordCountTest.java |    6 +-
 .../examples/complete/AutoCompleteTest.java     |   12 +-
 .../beam/examples/complete/TfIdfTest.java       |    6 +-
 .../complete/TopWikipediaSessionsTest.java      |    7 +-
 .../examples/cookbook/BigQueryTornadoesIT.java  |    1 -
 .../cookbook/BigQueryTornadoesTest.java         |    7 +-
 .../cookbook/CombinePerKeyExamplesTest.java     |    7 +-
 .../examples/cookbook/DeDupExampleTest.java     |    6 +-
 .../examples/cookbook/FilterExamplesTest.java   |    9 +-
 .../examples/cookbook/JoinExamplesTest.java     |    9 +-
 .../cookbook/MaxPerKeyExamplesTest.java         |    9 +-
 .../examples/cookbook/TriggerExampleTest.java   |   17 +-
 examples/java8/pom.xml                          |   46 +-
 .../beam/examples/MinimalWordCountJava8.java    |    5 +-
 .../beam/examples/complete/game/GameStats.java  |    8 +-
 .../examples/complete/game/HourlyTeamScore.java |   10 +-
 .../examples/complete/game/LeaderBoard.java     |  121 +-
 .../beam/examples/complete/game/UserScore.java  |   10 +-
 .../complete/game/injector/Injector.java        |    8 +-
 .../complete/game/injector/InjectorUtils.java   |    1 -
 .../injector/RetryHttpInitializerWrapper.java   |    1 -
 .../complete/game/utils/WriteToBigQuery.java    |   18 +-
 .../game/utils/WriteWindowedToBigQuery.java     |    6 +-
 .../examples/MinimalWordCountJava8Test.java     |   23 +-
 .../examples/complete/game/GameStatsTest.java   |    8 +-
 .../complete/game/HourlyTeamScoreTest.java      |    8 +-
 .../examples/complete/game/LeaderBoardTest.java |  362 +++++
 .../examples/complete/game/UserScoreTest.java   |    8 +-
 pom.xml                                         |   12 +-
 .../apache/beam/runners/core/AssignWindows.java |   46 +
 .../beam/runners/core/AssignWindowsDoFn.java    |   79 +
 .../beam/runners/core/BatchTimerInternals.java  |  140 ++
 .../apache/beam/runners/core/DoFnRunner.java    |   65 +
 .../beam/runners/core/DoFnRunnerBase.java       |  559 +++++++
 .../apache/beam/runners/core/DoFnRunners.java   |  148 ++
 .../runners/core/ElementByteSizeObservable.java |   44 +
 .../core/GroupAlsoByWindowViaWindowSetDoFn.java |    5 +-
 .../runners/core/GroupAlsoByWindowsDoFn.java    |   66 +
 .../GroupAlsoByWindowsViaOutputBufferDoFn.java  |  100 ++
 .../core/GroupByKeyViaGroupByKeyOnly.java       |  271 ++++
 .../core/LateDataDroppingDoFnRunner.java        |  151 ++
 .../apache/beam/runners/core/NonEmptyPanes.java |  151 ++
 .../beam/runners/core/PaneInfoTracker.java      |  158 ++
 .../beam/runners/core/PeekingReiterator.java    |  100 ++
 .../core/PushbackSideInputDoFnRunner.java       |  116 ++
 .../org/apache/beam/runners/core/ReduceFn.java  |  130 ++
 .../runners/core/ReduceFnContextFactory.java    |  499 ++++++
 .../beam/runners/core/ReduceFnRunner.java       |  993 ++++++++++++
 .../beam/runners/core/SideInputHandler.java     |  243 +++
 .../beam/runners/core/SimpleDoFnRunner.java     |   58 +
 .../beam/runners/core/SystemReduceFn.java       |  139 ++
 .../apache/beam/runners/core/TriggerRunner.java |  247 +++
 .../core/UnboundedReadFromBoundedSource.java    |   43 +-
 .../apache/beam/runners/core/WatermarkHold.java |  539 +++++++
 .../org/apache/beam/sdk/util/AssignWindows.java |   46 -
 .../apache/beam/sdk/util/AssignWindowsDoFn.java |   80 -
 .../beam/sdk/util/BatchTimerInternals.java      |  141 --
 .../org/apache/beam/sdk/util/DoFnRunner.java    |   63 -
 .../apache/beam/sdk/util/DoFnRunnerBase.java    |  551 -------
 .../org/apache/beam/sdk/util/DoFnRunners.java   |  222 ---
 .../beam/sdk/util/GroupAlsoByWindowsDoFn.java   |   63 -
 .../GroupAlsoByWindowsViaOutputBufferDoFn.java  |  100 --
 .../sdk/util/GroupByKeyViaGroupByKeyOnly.java   |  269 ----
 .../sdk/util/LateDataDroppingDoFnRunner.java    |  147 --
 .../org/apache/beam/sdk/util/NonEmptyPanes.java |  150 --
 .../apache/beam/sdk/util/PaneInfoTracker.java   |  158 --
 .../sdk/util/PushbackSideInputDoFnRunner.java   |  115 --
 .../java/org/apache/beam/sdk/util/ReduceFn.java |  130 --
 .../beam/sdk/util/ReduceFnContextFactory.java   |  497 ------
 .../apache/beam/sdk/util/ReduceFnRunner.java    |  988 ------------
 .../apache/beam/sdk/util/SimpleDoFnRunner.java  |   55 -
 .../apache/beam/sdk/util/SystemReduceFn.java    |  139 --
 .../org/apache/beam/sdk/util/TriggerRunner.java |  245 ---
 .../org/apache/beam/sdk/util/WatermarkHold.java |  540 -------
 .../util/common/ElementByteSizeObservable.java  |   42 -
 .../beam/sdk/util/common/PeekingReiterator.java |   99 --
 .../beam/sdk/util/common/package-info.java      |   20 -
 .../org/apache/beam/sdk/util/package-info.java  |   20 -
 .../runners/core/BatchTimerInternalsTest.java   |  118 ++
 .../core/GroupAlsoByWindowsProperties.java      |  660 ++++++++
 ...oupAlsoByWindowsViaOutputBufferDoFnTest.java |  110 ++
 .../core/LateDataDroppingDoFnRunnerTest.java    |  117 ++
 .../core/PushbackSideInputDoFnRunnerTest.java   |  235 +++
 .../beam/runners/core/ReduceFnRunnerTest.java   | 1446 +++++++++++++++++
 .../beam/runners/core/ReduceFnTester.java       |  796 ++++++++++
 .../beam/runners/core/SideInputHandlerTest.java |  220 +++
 .../beam/runners/core/SimpleDoFnRunnerTest.java |   88 ++
 .../UnboundedReadFromBoundedSourceTest.java     |   27 +-
 .../beam/sdk/util/BatchTimerInternalsTest.java  |  118 --
 .../sdk/util/GroupAlsoByWindowsProperties.java  |  661 --------
 ...oupAlsoByWindowsViaOutputBufferDoFnTest.java |  110 --
 .../util/LateDataDroppingDoFnRunnerTest.java    |  117 --
 .../util/PushbackSideInputDoFnRunnerTest.java   |  234 ---
 .../beam/sdk/util/ReduceFnRunnerTest.java       | 1447 ------------------
 .../apache/beam/sdk/util/ReduceFnTester.java    |  789 ----------
 .../beam/sdk/util/SimpleDoFnRunnerTest.java     |   86 --
 runners/direct-java/pom.xml                     |    6 +
 .../runners/direct/AggregatorContainer.java     |    8 +-
 .../direct/BoundedReadEvaluatorFactory.java     |   18 +-
 .../beam/runners/direct/CloningThreadLocal.java |   43 -
 .../beam/runners/direct/CommittedResult.java    |    9 +-
 .../direct/ConsumerTrackingPipelineVisitor.java |   13 +-
 .../beam/runners/direct/DirectOptions.java      |   45 +-
 .../beam/runners/direct/DirectRegistrar.java    |    5 +-
 .../beam/runners/direct/DirectRunner.java       |   68 +-
 .../runners/direct/DirectTimerInternals.java    |    4 +-
 .../runners/direct/DoFnLifecycleManager.java    |  103 ++
 ...ecycleManagerRemovingTransformEvaluator.java |   78 +
 .../runners/direct/DoFnLifecycleManagers.java   |   45 +
 .../beam/runners/direct/EvaluationContext.java  |   36 +-
 .../direct/ExecutorServiceParallelExecutor.java |   45 +-
 .../FixedThreadPoolExecutorServiceFactory.java  |   45 -
 .../runners/direct/FlattenEvaluatorFactory.java |    3 +
 .../GroupAlsoByWindowEvaluatorFactory.java      |   20 +-
 .../direct/GroupByKeyOnlyEvaluatorFactory.java  |   21 +-
 .../ImmutabilityCheckingBundleFactory.java      |   10 +-
 .../direct/ImmutabilityEnforcementFactory.java  |    5 +-
 .../direct/ImmutableListBundleFactory.java      |    6 +-
 .../direct/KeyedPValueTrackingVisitor.java      |    5 +-
 .../beam/runners/direct/KeyedResourcePool.java  |   47 +
 .../runners/direct/LockedKeyedResourcePool.java |   95 ++
 .../beam/runners/direct/NanosOffsetClock.java   |   16 +-
 .../beam/runners/direct/ParDoEvaluator.java     |   22 +-
 .../direct/ParDoMultiEvaluatorFactory.java      |   64 +-
 .../direct/ParDoSingleEvaluatorFactory.java     |   53 +-
 .../beam/runners/direct/PipelineExecutor.java   |    3 +-
 .../beam/runners/direct/SideInputContainer.java |   19 +-
 .../apache/beam/runners/direct/StepAndKey.java  |    4 +-
 .../runners/direct/StepTransformResult.java     |   16 +-
 .../direct/TestStreamEvaluatorFactory.java      |  218 +++
 ...readLocalInvalidatingTransformEvaluator.java |   63 -
 .../direct/TransformEvaluatorFactory.java       |   14 +-
 .../direct/TransformEvaluatorRegistry.java      |   60 +-
 .../beam/runners/direct/TransformExecutor.java  |    8 +-
 .../direct/TransformExecutorServices.java       |    1 -
 .../beam/runners/direct/TransformResult.java    |    7 +-
 .../direct/UnboundedReadDeduplicator.java       |   11 +-
 .../direct/UnboundedReadEvaluatorFactory.java   |   19 +-
 .../direct/UncommittedBundleOutputManager.java  |    5 +-
 .../runners/direct/ViewEvaluatorFactory.java    |    8 +-
 .../direct/WatermarkCallbackExecutor.java       |   11 +-
 .../beam/runners/direct/WatermarkManager.java   |   43 +-
 .../runners/direct/WindowEvaluatorFactory.java  |   13 +-
 .../direct/WriteWithShardingFactory.java        |   13 +-
 .../runners/direct/AggregatorContainerTest.java |    9 +-
 .../direct/BoundedReadEvaluatorFactoryTest.java |   13 +-
 .../runners/direct/CloningThreadLocalTest.java  |   92 --
 .../runners/direct/CommittedResultTest.java     |   13 +-
 .../ConsumerTrackingPipelineVisitorTest.java    |    6 +-
 .../runners/direct/DirectRegistrarTest.java     |    9 +-
 .../beam/runners/direct/DirectRunnerTest.java   |   16 +-
 .../direct/DirectTimerInternalsTest.java        |    1 -
 ...leManagerRemovingTransformEvaluatorTest.java |  142 ++
 .../direct/DoFnLifecycleManagerTest.java        |  169 ++
 .../direct/DoFnLifecycleManagersTest.java       |  139 ++
 .../EncodabilityEnforcementFactoryTest.java     |   10 +-
 .../runners/direct/EvaluationContextTest.java   |   18 +-
 .../direct/FlattenEvaluatorFactoryTest.java     |    1 -
 .../direct/ForwardingPTransformTest.java        |    1 -
 .../direct/GroupByKeyEvaluatorFactoryTest.java  |    8 +-
 .../GroupByKeyOnlyEvaluatorFactoryTest.java     |    8 +-
 .../ImmutabilityCheckingBundleFactoryTest.java  |    1 -
 .../ImmutabilityEnforcementFactoryTest.java     |    6 +-
 .../direct/ImmutableListBundleFactoryTest.java  |   11 +-
 .../direct/KeyedPValueTrackingVisitorTest.java  |    9 +-
 .../direct/LockedKeyedResourcePoolTest.java     |  163 ++
 .../beam/runners/direct/ParDoEvaluatorTest.java |   14 +-
 .../direct/ParDoMultiEvaluatorFactoryTest.java  |    2 +-
 .../direct/ParDoSingleEvaluatorFactoryTest.java |    2 +-
 .../runners/direct/SideInputContainerTest.java  |   17 +-
 .../runners/direct/StepTransformResultTest.java |    1 -
 .../beam/runners/direct/StructuralKeyTest.java  |    1 -
 .../direct/TestStreamEvaluatorFactoryTest.java  |  206 +++
 ...LocalInvalidatingTransformEvaluatorTest.java |  135 --
 .../direct/TransformExecutorServicesTest.java   |    4 +-
 .../runners/direct/TransformExecutorTest.java   |   23 +-
 .../direct/UnboundedReadDeduplicatorTest.java   |   23 +-
 .../UnboundedReadEvaluatorFactoryTest.java      |   26 +-
 .../direct/ViewEvaluatorFactoryTest.java        |    4 +-
 .../direct/WatermarkCallbackExecutorTest.java   |    8 +-
 .../runners/direct/WatermarkManagerTest.java    |   21 +-
 .../direct/WindowEvaluatorFactoryTest.java      |   14 +-
 .../direct/WriteWithShardingFactoryTest.java    |   30 +-
 runners/flink/README.md                         |   17 +
 runners/flink/examples/pom.xml                  |    2 -
 .../beam/runners/flink/examples/TFIDF.java      |   20 +-
 .../beam/runners/flink/examples/WordCount.java  |   10 +-
 .../runners/flink/examples/package-info.java    |   22 +
 .../flink/examples/streaming/AutoComplete.java  |   11 +-
 .../flink/examples/streaming/JoinExamples.java  |    4 +-
 .../examples/streaming/KafkaIOExamples.java     |   46 +-
 .../KafkaWindowedWordCountExample.java          |   31 +-
 .../examples/streaming/WindowedWordCount.java   |   23 +-
 .../flink/examples/streaming/package-info.java  |   22 +
 runners/flink/runner/pom.xml                    |   13 +-
 .../flink/DefaultParallelismFactory.java        |    1 -
 .../FlinkPipelineExecutionEnvironment.java      |   21 +-
 .../runners/flink/FlinkPipelineOptions.java     |   65 +-
 .../apache/beam/runners/flink/FlinkRunner.java  |  475 +++++-
 .../runners/flink/FlinkRunnerRegistrar.java     |   11 +-
 .../beam/runners/flink/FlinkRunnerResult.java   |   27 +-
 .../beam/runners/flink/TestFlinkRunner.java     |   33 +-
 .../apache/beam/runners/flink/package-info.java |   22 +
 .../FlinkBatchPipelineTranslator.java           |   16 +-
 .../FlinkBatchTransformTranslators.java         |   19 +-
 .../FlinkBatchTranslationContext.java           |   16 +-
 .../translation/FlinkPipelineTranslator.java    |    2 +-
 .../FlinkStreamingPipelineTranslator.java       |   60 +-
 .../FlinkStreamingTransformTranslators.java     |  972 +++++++++---
 .../FlinkStreamingTranslationContext.java       |    6 +-
 .../flink/translation/TranslationMode.java      |    8 +-
 .../functions/FlinkAssignContext.java           |    6 +-
 .../functions/FlinkAssignWindows.java           |    4 +-
 .../functions/FlinkDoFnFunction.java            |   20 +-
 .../FlinkMergingNonShuffleReduceFunction.java   |   17 +-
 .../FlinkMergingPartialReduceFunction.java      |   17 +-
 .../functions/FlinkMergingReduceFunction.java   |   21 +-
 .../functions/FlinkMultiOutputDoFnFunction.java |   42 +-
 .../FlinkMultiOutputProcessContext.java         |    6 +-
 .../FlinkMultiOutputPruningFunction.java        |    1 -
 .../functions/FlinkNoElementAssignContext.java  |    1 -
 .../functions/FlinkPartialReduceFunction.java   |   17 +-
 .../functions/FlinkProcessContext.java          |   15 +-
 .../functions/FlinkReduceFunction.java          |   21 +-
 .../functions/SideInputInitializer.java         |   10 +-
 .../translation/functions/package-info.java     |   22 +
 .../runners/flink/translation/package-info.java |   22 +
 .../translation/types/CoderTypeInformation.java |    5 +-
 .../translation/types/CoderTypeSerializer.java  |   10 +-
 .../types/EncodedValueComparator.java           |    6 +-
 .../types/EncodedValueSerializer.java           |  164 +-
 .../types/EncodedValueTypeInformation.java      |    4 -
 .../flink/translation/types/FlinkCoder.java     |   11 +-
 .../flink/translation/types/KvKeySelector.java  |    1 -
 .../flink/translation/types/package-info.java   |   22 +
 .../utils/SerializedPipelineOptions.java        |    6 +-
 .../flink/translation/utils/package-info.java   |   22 +
 .../wrappers/DataInputViewWrapper.java          |    3 +-
 .../wrappers/DataOutputViewWrapper.java         |    5 +-
 .../SerializableFnAggregatorWrapper.java        |    9 +-
 .../translation/wrappers/SourceInputFormat.java |    6 +-
 .../translation/wrappers/SourceInputSplit.java  |    1 -
 .../translation/wrappers/package-info.java      |   22 +
 .../wrappers/streaming/DoFnOperator.java        |  509 ++++++
 .../streaming/FlinkAbstractParDoWrapper.java    |  280 ----
 .../FlinkGroupAlsoByWindowWrapper.java          |  642 --------
 .../streaming/FlinkGroupByKeyWrapper.java       |   73 -
 .../streaming/FlinkParDoBoundMultiWrapper.java  |   79 -
 .../streaming/FlinkParDoBoundWrapper.java       |  104 --
 .../wrappers/streaming/FlinkStateInternals.java | 1035 +++++++++++++
 .../streaming/SingletonKeyedWorkItem.java       |   58 +
 .../streaming/SingletonKeyedWorkItemCoder.java  |  130 ++
 .../wrappers/streaming/WindowDoFnOperator.java  |  341 +++++
 .../wrappers/streaming/WorkItemKeySelector.java |   56 +
 .../streaming/io/BoundedSourceWrapper.java      |  216 +++
 .../io/FlinkStreamingCreateFunction.java        |   56 -
 .../streaming/io/UnboundedFlinkSink.java        |   27 +-
 .../streaming/io/UnboundedFlinkSource.java      |   36 +-
 .../streaming/io/UnboundedSocketSource.java     |   63 +-
 .../streaming/io/UnboundedSourceWrapper.java    |   15 +-
 .../wrappers/streaming/io/package-info.java     |   22 +
 .../wrappers/streaming/package-info.java        |   22 +
 .../state/AbstractFlinkTimerInternals.java      |  127 --
 .../streaming/state/FlinkStateInternals.java    |  733 ---------
 .../streaming/state/StateCheckpointReader.java  |   93 --
 .../streaming/state/StateCheckpointUtils.java   |  155 --
 .../streaming/state/StateCheckpointWriter.java  |  131 --
 .../wrappers/streaming/state/StateType.java     |   73 -
 .../flink/EncodedValueComparatorTest.java       |    1 -
 .../runners/flink/FlinkRunnerRegistrarTest.java |    1 -
 .../beam/runners/flink/PipelineOptionsTest.java |  106 +-
 .../beam/runners/flink/ReadSourceITCase.java    |    9 +-
 .../flink/ReadSourceStreamingITCase.java        |    4 +-
 .../beam/runners/flink/WriteSinkITCase.java     |   16 +-
 .../apache/beam/runners/flink/package-info.java |   22 +
 .../flink/streaming/DoFnOperatorTest.java       |  325 ++++
 .../streaming/FlinkStateInternalsTest.java      |  390 +++++
 .../flink/streaming/GroupAlsoByWindowTest.java  |  523 -------
 .../flink/streaming/GroupByNullKeyTest.java     |   17 +-
 .../flink/streaming/StateSerializationTest.java |  338 ----
 .../flink/streaming/TestCountingSource.java     |   12 +-
 .../streaming/TopWikipediaSessionsITCase.java   |   13 +-
 .../streaming/UnboundedSourceWrapperTest.java   |   43 +-
 .../runners/flink/streaming/package-info.java   |   22 +
 runners/gearpump/pom.xml                        |    7 +-
 .../gearpump/GearpumpPipelineOptions.java       |    8 +-
 .../gearpump/GearpumpPipelineResult.java        |    4 +-
 .../gearpump/GearpumpPipelineRunner.java        |   28 +-
 .../GearpumpPipelineRunnerRegistrar.java        |    9 +-
 .../gearpump/GearpumpPipelineTranslator.java    |    7 +-
 .../gearpump/examples/StreamingWordCount.java   |   15 +-
 .../gearpump/examples/UnboundedTextSource.java  |   15 +-
 .../translators/GroupByKeyTranslator.java       |   14 +-
 .../translators/ParDoBoundMultiTranslator.java  |   16 +-
 .../translators/TransformTranslator.java        |    3 +-
 .../translators/TranslationContext.java         |    6 +-
 .../translators/functions/DoFnFunction.java     |   14 +-
 .../translators/io/BoundedSourceWrapper.java    |    4 +-
 .../gearpump/translators/io/GearpumpSource.java |   12 +-
 .../translators/io/UnboundedSourceWrapper.java  |    4 +-
 .../gearpump/translators/io/ValuesSource.java   |   12 +-
 .../translators/utils/GearpumpDoFnRunner.java   |   28 +-
 .../translators/utils/NoOpSideInputReader.java  |    8 +-
 .../translators/utils/NoOpStepContext.java      |    6 +-
 runners/google-cloud-dataflow-java/pom.xml      |    8 +-
 .../dataflow/BlockingDataflowRunner.java        |    7 +-
 .../runners/dataflow/DataflowJobException.java  |    1 -
 .../runners/dataflow/DataflowPipelineJob.java   |  112 +-
 .../dataflow/DataflowPipelineRegistrar.java     |    5 +-
 .../dataflow/DataflowPipelineTranslator.java    |   59 +-
 .../beam/runners/dataflow/DataflowRunner.java   |  192 +--
 .../runners/dataflow/DataflowRunnerHooks.java   |    3 +-
 .../dataflow/internal/CustomSources.java        |   18 +-
 .../internal/DataflowAggregatorTransforms.java  |   10 +-
 .../internal/DataflowMetricUpdateExtractor.java |   10 +-
 .../DataflowUnboundedReadFromBoundedSource.java |   43 +-
 .../runners/dataflow/internal/IsmFormat.java    |   35 +-
 .../dataflow/internal/ReadTranslator.java       |    8 +-
 .../dataflow/options/CloudDebuggerOptions.java  |    6 +-
 .../options/DataflowPipelineDebugOptions.java   |   11 +-
 .../options/DataflowPipelineOptions.java        |   53 +-
 .../DataflowPipelineWorkerPoolOptions.java      |   19 +-
 .../options/DataflowProfilingOptions.java       |    3 +-
 .../options/DataflowWorkerLoggingOptions.java   |    8 +-
 .../dataflow/testing/TestDataflowRunner.java    |   27 +-
 .../dataflow/util/DataflowTransport.java        |    6 +-
 .../beam/runners/dataflow/util/DoFnInfo.java    |   10 +-
 .../beam/runners/dataflow/util/GcsStager.java   |    6 +-
 .../runners/dataflow/util/MonitoringUtil.java   |   14 +-
 .../beam/runners/dataflow/util/PackageUtil.java |   47 +-
 .../runners/dataflow/util/RandomAccessData.java |   16 +-
 .../beam/runners/dataflow/util/Stager.java      |    1 -
 .../beam/runners/dataflow/util/TimeUtil.java    |    8 +-
 .../dataflow/BlockingDataflowRunnerTest.java    |    1 -
 .../dataflow/DataflowPipelineJobTest.java       |   65 +-
 .../dataflow/DataflowPipelineRegistrarTest.java |    9 +-
 .../DataflowPipelineTranslatorTest.java         |   38 +-
 .../runners/dataflow/DataflowRunnerTest.java    |  113 +-
 .../dataflow/RecordingPipelineVisitor.java      |    5 +-
 .../DataflowPipelineDebugOptionsTest.java       |    1 -
 .../options/DataflowPipelineOptionsTest.java    |   43 +-
 .../options/DataflowProfilingOptionsTest.java   |    4 +-
 .../DataflowWorkerLoggingOptionsTest.java       |    8 +-
 .../testing/TestDataflowRunnerTest.java         |   35 +-
 .../transforms/DataflowGroupByKeyTest.java      |    6 +-
 .../dataflow/transforms/DataflowViewTest.java   |    1 -
 .../dataflow/util/MonitoringUtilTest.java       |   17 +-
 .../runners/dataflow/util/PackageUtilTest.java  |   41 +-
 .../dataflow/util/RandomAccessDataTest.java     |   13 +-
 .../runners/dataflow/util/TimeUtilTest.java     |    1 -
 runners/spark/pom.xml                           |   12 +-
 .../runners/spark/SparkPipelineOptions.java     |   20 +-
 .../apache/beam/runners/spark/SparkRunner.java  |   21 +-
 .../runners/spark/SparkRunnerRegistrar.java     |    5 +-
 .../beam/runners/spark/TestSparkRunner.java     |    2 +-
 .../spark/aggregators/NamedAggregators.java     |   48 +-
 .../aggregators/metrics/AggregatorMetric.java   |   44 +
 .../metrics/AggregatorMetricSource.java         |   49 +
 .../metrics/WithNamedAggregatorsSupport.java    |  169 ++
 .../spark/aggregators/metrics/package-info.java |   22 +
 .../spark/aggregators/metrics/sink/CsvSink.java |   39 +
 .../aggregators/metrics/sink/GraphiteSink.java  |   39 +
 .../aggregators/metrics/sink/package-info.java  |   23 +
 .../beam/runners/spark/coders/CoderHelpers.java |   12 +-
 .../runners/spark/coders/NullWritableCoder.java |    6 +-
 .../runners/spark/coders/WritableCoder.java     |   14 +-
 .../beam/runners/spark/examples/WordCount.java  |    2 +-
 .../apache/beam/runners/spark/io/ConsoleIO.java |    2 +-
 .../beam/runners/spark/io/CreateStream.java     |    7 +-
 .../apache/beam/runners/spark/io/KafkaIO.java   |   14 +-
 .../beam/runners/spark/io/hadoop/HadoopIO.java  |   16 +-
 .../spark/io/hadoop/ShardNameBuilder.java       |    3 +-
 .../io/hadoop/ShardNameTemplateHelper.java      |    9 +-
 .../io/hadoop/TemplatedAvroKeyOutputFormat.java |    5 +-
 .../TemplatedSequenceFileOutputFormat.java      |    3 +-
 .../io/hadoop/TemplatedTextOutputFormat.java    |    3 +-
 .../runners/spark/translation/DoFnFunction.java |   35 +-
 .../spark/translation/EvaluationContext.java    |   19 +-
 .../spark/translation/MultiDoFnFunction.java    |   17 +-
 .../translation/SparkPipelineTranslator.java    |    2 +-
 .../spark/translation/SparkProcessContext.java  |   32 +-
 .../spark/translation/SparkRuntimeContext.java  |   50 +-
 .../spark/translation/TransformEvaluator.java   |    3 +-
 .../spark/translation/TransformTranslator.java  |   44 +-
 .../streaming/StreamingEvaluationContext.java   |   14 +-
 .../streaming/StreamingTransformTranslator.java |   36 +-
 .../runners/spark/util/BroadcastHelper.java     |   16 +-
 .../beam/runners/spark/util/ByteArray.java      |    1 -
 .../apache/beam/runners/spark/DeDupTest.java    |   11 +-
 .../beam/runners/spark/EmptyInputTest.java      |    9 +-
 .../runners/spark/InMemoryMetricsSinkRule.java  |   32 +
 .../runners/spark/ProvidedSparkContextTest.java |  138 ++
 .../beam/runners/spark/SimpleWordCountTest.java |   27 +-
 .../runners/spark/SparkRunnerRegistrarTest.java |    9 +-
 .../apache/beam/runners/spark/TfIdfTest.java    |    6 +-
 .../metrics/sink/InMemoryMetrics.java           |   79 +
 .../runners/spark/coders/WritableCoderTest.java |    1 -
 .../beam/runners/spark/io/AvroPipelineTest.java |   25 +-
 .../beam/runners/spark/io/NumShardsTest.java    |   21 +-
 .../io/hadoop/HadoopFileFormatPipelineTest.java |    6 +-
 .../spark/io/hadoop/ShardNameBuilderTest.java   |    1 -
 .../spark/translation/CombineGloballyTest.java  |    9 +-
 .../spark/translation/CombinePerKeyTest.java    |   11 +-
 .../spark/translation/DoFnOutputTest.java       |    4 +-
 .../translation/MultiOutputWordCountTest.java   |   11 +-
 .../spark/translation/SerializationTest.java    |   27 +-
 .../spark/translation/SideEffectsTest.java      |    6 +-
 .../translation/SparkPipelineOptionsTest.java   |    1 -
 .../translation/TransformTranslatorTest.java    |   23 +-
 .../translation/WindowedWordCountTest.java      |    9 +-
 .../streaming/FlattenStreamingTest.java         |    8 +-
 .../streaming/KafkaStreamingTest.java           |   18 +-
 .../streaming/SimpleStreamingWordCountTest.java |   10 +-
 .../streaming/utils/EmbeddedKafkaCluster.java   |   12 +-
 .../streaming/utils/PAssertStreaming.java       |    4 +-
 .../spark/src/test/resources/metrics.properties |   29 +
 .../src/main/resources/beam/checkstyle.xml      |   13 +-
 .../src/main/resources/beam/findbugs-filter.xml |   14 +-
 sdks/java/core/pom.xml                          |    6 +
 .../beam/sdk/AggregatorPipelineExtractor.java   |   12 +-
 .../org/apache/beam/sdk/AggregatorValues.java   |    9 +-
 .../main/java/org/apache/beam/sdk/Pipeline.java |   23 +-
 .../org/apache/beam/sdk/PipelineResult.java     |    4 +-
 .../org/apache/beam/sdk/coders/AvroCoder.java   |   35 +-
 .../apache/beam/sdk/coders/BigDecimalCoder.java |    1 -
 .../beam/sdk/coders/BigEndianIntegerCoder.java  |    1 -
 .../beam/sdk/coders/BigEndianLongCoder.java     |    1 -
 .../apache/beam/sdk/coders/BigIntegerCoder.java |    1 -
 .../apache/beam/sdk/coders/ByteArrayCoder.java  |   11 +-
 .../org/apache/beam/sdk/coders/ByteCoder.java   |    1 -
 .../apache/beam/sdk/coders/ByteStringCoder.java |    7 +-
 .../java/org/apache/beam/sdk/coders/Coder.java  |   11 +-
 .../apache/beam/sdk/coders/CoderFactories.java  |    3 +-
 .../apache/beam/sdk/coders/CoderProviders.java  |    6 +-
 .../apache/beam/sdk/coders/CoderRegistry.java   |   24 +-
 .../apache/beam/sdk/coders/CollectionCoder.java |    4 +-
 .../org/apache/beam/sdk/coders/CustomCoder.java |   16 +-
 .../apache/beam/sdk/coders/DefaultCoder.java    |    3 +-
 .../apache/beam/sdk/coders/DelegateCoder.java   |    1 -
 .../org/apache/beam/sdk/coders/DoubleCoder.java |    1 -
 .../apache/beam/sdk/coders/DurationCoder.java   |    8 +-
 .../apache/beam/sdk/coders/InstantCoder.java    |   12 +-
 .../apache/beam/sdk/coders/IterableCoder.java   |    9 +-
 .../beam/sdk/coders/IterableLikeCoder.java      |    9 +-
 .../org/apache/beam/sdk/coders/JAXBCoder.java   |   14 +-
 .../org/apache/beam/sdk/coders/KvCoder.java     |   13 +-
 .../org/apache/beam/sdk/coders/ListCoder.java   |    4 +-
 .../org/apache/beam/sdk/coders/MapCoder.java    |    9 +-
 .../apache/beam/sdk/coders/NullableCoder.java   |   19 +-
 .../beam/sdk/coders/SerializableCoder.java      |    6 +-
 .../org/apache/beam/sdk/coders/SetCoder.java    |    4 +-
 .../apache/beam/sdk/coders/StandardCoder.java   |   11 +-
 .../beam/sdk/coders/StringDelegateCoder.java    |    5 +-
 .../apache/beam/sdk/coders/StringUtf8Coder.java |   11 +-
 .../beam/sdk/coders/TableRowJsonCoder.java      |    4 +-
 .../beam/sdk/coders/TextualIntegerCoder.java    |    1 -
 .../org/apache/beam/sdk/coders/VarIntCoder.java |    4 +-
 .../apache/beam/sdk/coders/VarLongCoder.java    |    4 +-
 .../org/apache/beam/sdk/coders/VoidCoder.java   |    1 -
 .../beam/sdk/coders/protobuf/ProtoCoder.java    |   28 +-
 .../beam/sdk/coders/protobuf/ProtobufUtil.java  |    4 +-
 .../java/org/apache/beam/sdk/io/AvroIO.java     |   30 +-
 .../java/org/apache/beam/sdk/io/AvroSource.java |   45 +-
 .../apache/beam/sdk/io/BlockBasedSource.java    |    6 +-
 .../sdk/io/BoundedReadFromUnboundedSource.java  |   31 +-
 .../org/apache/beam/sdk/io/BoundedSource.java   |   11 +-
 .../apache/beam/sdk/io/CompressedSource.java    |   96 +-
 .../org/apache/beam/sdk/io/CountingInput.java   |    4 +-
 .../org/apache/beam/sdk/io/CountingSource.java  |   11 +-
 .../org/apache/beam/sdk/io/FileBasedSink.java   |   29 +-
 .../org/apache/beam/sdk/io/FileBasedSource.java |   17 +-
 .../apache/beam/sdk/io/OffsetBasedSource.java   |   10 +-
 .../java/org/apache/beam/sdk/io/PubsubIO.java   |   26 +-
 .../apache/beam/sdk/io/PubsubUnboundedSink.java |   23 +-
 .../beam/sdk/io/PubsubUnboundedSource.java      |   47 +-
 .../main/java/org/apache/beam/sdk/io/Read.java  |   14 +-
 .../main/java/org/apache/beam/sdk/io/Sink.java  |    3 +-
 .../java/org/apache/beam/sdk/io/Source.java     |    8 +-
 .../java/org/apache/beam/sdk/io/TextIO.java     |  183 ++-
 .../org/apache/beam/sdk/io/UnboundedSource.java |   11 +-
 .../main/java/org/apache/beam/sdk/io/Write.java |   16 +-
 .../java/org/apache/beam/sdk/io/XmlSink.java    |   14 +-
 .../java/org/apache/beam/sdk/io/XmlSource.java  |   15 +-
 .../org/apache/beam/sdk/io/range/ByteKey.java   |    1 -
 .../apache/beam/sdk/io/range/ByteKeyRange.java  |    6 +-
 .../beam/sdk/io/range/ByteKeyRangeTracker.java  |    6 +-
 .../beam/sdk/io/range/OffsetRangeTracker.java   |    4 +-
 .../org/apache/beam/sdk/options/GcpOptions.java |   18 +-
 .../org/apache/beam/sdk/options/GcsOptions.java |   15 +-
 .../beam/sdk/options/GoogleApiDebugOptions.java |    1 -
 .../beam/sdk/options/PipelineOptionSpec.java    |    4 +-
 .../beam/sdk/options/PipelineOptions.java       |   61 +-
 .../sdk/options/PipelineOptionsFactory.java     |   26 +-
 .../sdk/options/PipelineOptionsReflector.java   |    4 +-
 .../sdk/options/PipelineOptionsRegistrar.java   |    1 -
 .../sdk/options/PipelineOptionsValidator.java   |    6 +-
 .../sdk/options/ProxyInvocationHandler.java     |   38 +-
 .../apache/beam/sdk/runners/PipelineRunner.java |    1 +
 .../sdk/runners/PipelineRunnerRegistrar.java    |    1 -
 .../beam/sdk/runners/TransformHierarchy.java    |    9 +-
 .../beam/sdk/runners/TransformTreeNode.java     |   14 +-
 .../beam/sdk/testing/CoderProperties.java       |   23 +-
 .../beam/sdk/testing/FileChecksumMatcher.java   |  133 ++
 .../beam/sdk/testing/MatcherDeserializer.java   |    7 +-
 .../beam/sdk/testing/MatcherSerializer.java     |    7 +-
 .../org/apache/beam/sdk/testing/PAssert.java    |   64 +-
 .../apache/beam/sdk/testing/PaneExtractors.java |   23 +-
 .../beam/sdk/testing/SerializableMatcher.java   |    3 +-
 .../beam/sdk/testing/SerializableMatchers.java  |   18 +-
 .../beam/sdk/testing/SourceTestUtils.java       |  147 +-
 .../apache/beam/sdk/testing/StaticWindows.java  |   10 +-
 .../apache/beam/sdk/testing/TestPipeline.java   |   32 +-
 .../beam/sdk/testing/TestPipelineOptions.java   |    1 -
 .../org/apache/beam/sdk/testing/TestStream.java |  368 +++++
 .../beam/sdk/testing/WindowFnTestUtils.java     |   19 +-
 .../apache/beam/sdk/testing/WindowSupplier.java |   10 +-
 .../apache/beam/sdk/transforms/Aggregator.java  |   20 +-
 .../beam/sdk/transforms/AppliedPTransform.java  |    5 +-
 .../sdk/transforms/ApproximateQuantiles.java    |   29 +-
 .../beam/sdk/transforms/ApproximateUnique.java  |   23 +-
 .../org/apache/beam/sdk/transforms/Combine.java |  108 +-
 .../beam/sdk/transforms/CombineFnBase.java      |   10 +-
 .../apache/beam/sdk/transforms/CombineFns.java  |   57 +-
 .../org/apache/beam/sdk/transforms/Count.java   |   21 +-
 .../org/apache/beam/sdk/transforms/Create.java  |   44 +-
 .../org/apache/beam/sdk/transforms/DoFn.java    |   89 +-
 .../beam/sdk/transforms/DoFnAdapters.java       |  284 ++++
 .../beam/sdk/transforms/DoFnReflector.java      | 1102 -------------
 .../apache/beam/sdk/transforms/DoFnTester.java  |  121 +-
 .../beam/sdk/transforms/FlatMapElements.java    |    7 +-
 .../org/apache/beam/sdk/transforms/Flatten.java |   12 +-
 .../apache/beam/sdk/transforms/GroupByKey.java  |    7 +-
 .../transforms/IntraBundleParallelization.java  |   11 +-
 .../org/apache/beam/sdk/transforms/Keys.java    |    8 +-
 .../org/apache/beam/sdk/transforms/KvSwap.java  |    9 +-
 .../org/apache/beam/sdk/transforms/Latest.java  |  203 +++
 .../apache/beam/sdk/transforms/MapElements.java |   16 +-
 .../org/apache/beam/sdk/transforms/Max.java     |   32 +-
 .../org/apache/beam/sdk/transforms/Mean.java    |   12 +-
 .../org/apache/beam/sdk/transforms/Min.java     |   33 +-
 .../org/apache/beam/sdk/transforms/OldDoFn.java |   44 +-
 .../apache/beam/sdk/transforms/PTransform.java  |    9 +-
 .../org/apache/beam/sdk/transforms/ParDo.java   |  321 ++--
 .../apache/beam/sdk/transforms/Partition.java   |    3 +-
 .../beam/sdk/transforms/RemoveDuplicates.java   |    8 +-
 .../org/apache/beam/sdk/transforms/Sample.java  |    7 +-
 .../beam/sdk/transforms/SimpleFunction.java     |    6 +-
 .../org/apache/beam/sdk/transforms/Sum.java     |   27 +-
 .../org/apache/beam/sdk/transforms/Top.java     |   20 +-
 .../org/apache/beam/sdk/transforms/Values.java  |    8 +-
 .../org/apache/beam/sdk/transforms/View.java    |    5 +-
 .../org/apache/beam/sdk/transforms/ViewFn.java  |    3 +-
 .../apache/beam/sdk/transforms/WithKeys.java    |    9 +-
 .../beam/sdk/transforms/WithTimestamps.java     |    1 -
 .../sdk/transforms/display/DisplayData.java     |   21 +-
 .../beam/sdk/transforms/join/CoGbkResult.java   |   30 +-
 .../sdk/transforms/join/CoGbkResultSchema.java  |   10 +-
 .../beam/sdk/transforms/join/CoGroupByKey.java  |    5 +-
 .../transforms/join/KeyedPCollectionTuple.java  |    7 +-
 .../beam/sdk/transforms/join/RawUnionValue.java |   25 +
 .../beam/sdk/transforms/join/UnionCoder.java    |   14 +-
 .../sdk/transforms/reflect/DoFnInvoker.java     |   61 +
 .../sdk/transforms/reflect/DoFnInvokers.java    |  503 ++++++
 .../sdk/transforms/reflect/DoFnSignature.java   |  110 ++
 .../sdk/transforms/reflect/DoFnSignatures.java  |  319 ++++
 .../sdk/transforms/reflect/package-info.java    |   23 +
 .../beam/sdk/transforms/windowing/AfterAll.java |    9 +-
 .../windowing/AfterDelayFromFirstElement.java   |   16 +-
 .../sdk/transforms/windowing/AfterEach.java     |    9 +-
 .../sdk/transforms/windowing/AfterFirst.java    |    9 +-
 .../sdk/transforms/windowing/AfterPane.java     |    9 +-
 .../windowing/AfterProcessingTime.java          |    9 +-
 .../AfterSynchronizedProcessingTime.java        |   10 +-
 .../transforms/windowing/AfterWatermark.java    |   12 +-
 .../sdk/transforms/windowing/BoundedWindow.java |    3 +-
 .../transforms/windowing/CalendarWindows.java   |    1 -
 .../transforms/windowing/DefaultTrigger.java    |    4 +-
 .../sdk/transforms/windowing/FixedWindows.java  |    4 +-
 .../sdk/transforms/windowing/GlobalWindow.java  |    6 +-
 .../sdk/transforms/windowing/GlobalWindows.java |    6 +-
 .../transforms/windowing/IntervalWindow.java    |   10 +-
 .../transforms/windowing/InvalidWindows.java    |    4 +-
 .../beam/sdk/transforms/windowing/Never.java    |    4 +-
 .../transforms/windowing/OrFinallyTrigger.java  |    7 +-
 .../sdk/transforms/windowing/OutputTimeFn.java  |    7 +-
 .../sdk/transforms/windowing/OutputTimeFns.java |    7 +-
 .../beam/sdk/transforms/windowing/PaneInfo.java |   22 +-
 .../windowing/PartitioningWindowFn.java         |    3 +-
 .../sdk/transforms/windowing/Repeatedly.java    |    6 +-
 .../beam/sdk/transforms/windowing/Sessions.java |    8 +-
 .../transforms/windowing/SlidingWindows.java    |   10 +-
 .../beam/sdk/transforms/windowing/Trigger.java  |   16 +-
 .../beam/sdk/transforms/windowing/Window.java   |   15 +-
 .../beam/sdk/transforms/windowing/WindowFn.java |    6 +-
 .../apache/beam/sdk/util/ActiveWindowSet.java   |    6 +-
 .../org/apache/beam/sdk/util/ApiSurface.java    |    6 +-
 .../apache/beam/sdk/util/AppliedCombineFn.java  |    6 +-
 ...AttemptAndTimeBoundedExponentialBackOff.java |  174 ---
 .../util/AttemptBoundedExponentialBackOff.java  |   85 -
 .../org/apache/beam/sdk/util/AvroUtils.java     |    7 +-
 .../beam/sdk/util/BaseExecutionContext.java     |   13 +-
 .../org/apache/beam/sdk/util/BitSetCoder.java   |   11 +-
 .../apache/beam/sdk/util/BucketingFunction.java |    3 +-
 .../BufferedElementCountingOutputStream.java    |    4 +-
 .../apache/beam/sdk/util/CloudKnownType.java    |    1 -
 .../org/apache/beam/sdk/util/CloudObject.java   |    2 -
 .../org/apache/beam/sdk/util/CoderUtils.java    |   17 +-
 .../org/apache/beam/sdk/util/CombineFnUtil.java |    7 +-
 .../apache/beam/sdk/util/CounterAggregator.java |  128 --
 .../apache/beam/sdk/util/CredentialFactory.java |    1 -
 .../org/apache/beam/sdk/util/Credentials.java   |    9 +-
 .../beam/sdk/util/DirectSideInputReader.java    |    5 +-
 .../apache/beam/sdk/util/ExecutableTrigger.java |    7 +-
 .../apache/beam/sdk/util/ExecutionContext.java  |    5 +-
 .../sdk/util/ExposedByteArrayInputStream.java   |    3 +-
 .../sdk/util/ExposedByteArrayOutputStream.java  |    3 +-
 .../beam/sdk/util/FileIOChannelFactory.java     |    6 +-
 .../beam/sdk/util/FinishedTriggersSet.java      |    1 -
 .../org/apache/beam/sdk/util/FluentBackoff.java |  229 +++
 .../beam/sdk/util/GcpCredentialFactory.java     |    6 +-
 .../beam/sdk/util/GcsIOChannelFactory.java      |    5 +-
 .../apache/beam/sdk/util/GcsPathValidator.java  |    3 +-
 .../java/org/apache/beam/sdk/util/GcsUtil.java  |  275 ++--
 .../apache/beam/sdk/util/IOChannelUtils.java    |    5 +-
 .../apache/beam/sdk/util/IdentityWindowFn.java  |    6 +-
 .../apache/beam/sdk/util/InstanceBuilder.java   |    5 +-
 .../util/IntervalBoundedExponentialBackOff.java |    1 +
 .../beam/sdk/util/KeyedWorkItemCoder.java       |   17 +-
 .../apache/beam/sdk/util/KeyedWorkItems.java    |    4 +-
 .../beam/sdk/util/MergingActiveWindowSet.java   |   21 +-
 .../apache/beam/sdk/util/MovingFunction.java    |    3 +-
 .../apache/beam/sdk/util/MutationDetectors.java |    5 +-
 .../sdk/util/NonMergingActiveWindowSet.java     |    6 +-
 .../beam/sdk/util/NoopCredentialFactory.java    |    4 +-
 .../beam/sdk/util/NullSideInputReader.java      |    6 +-
 .../beam/sdk/util/PCollectionViewWindow.java    |    3 +-
 .../apache/beam/sdk/util/PCollectionViews.java  |   25 +-
 .../java/org/apache/beam/sdk/util/PTuple.java   |    3 +-
 .../beam/sdk/util/PerKeyCombineFnRunner.java    |    5 +-
 .../beam/sdk/util/PerKeyCombineFnRunners.java   |    6 +-
 .../org/apache/beam/sdk/util/PubsubClient.java  |    5 +-
 .../apache/beam/sdk/util/PubsubGrpcClient.java  |    8 +-
 .../apache/beam/sdk/util/PubsubJsonClient.java  |    5 +-
 .../apache/beam/sdk/util/PubsubTestClient.java  |    5 +-
 .../sdk/util/ReifyTimestampAndWindowsDoFn.java  |    4 +-
 .../org/apache/beam/sdk/util/ReleaseInfo.java   |    6 +-
 .../org/apache/beam/sdk/util/Reshuffle.java     |    1 -
 .../apache/beam/sdk/util/ReshuffleTrigger.java  |    4 +-
 .../sdk/util/RetryHttpRequestInitializer.java   |    7 +-
 .../apache/beam/sdk/util/SerializableUtils.java |   15 +-
 .../org/apache/beam/sdk/util/Serializer.java    |    2 -
 .../apache/beam/sdk/util/SideInputReader.java   |    3 +-
 .../org/apache/beam/sdk/util/StringUtils.java   |    4 +-
 .../java/org/apache/beam/sdk/util/Structs.java  |    2 -
 .../beam/sdk/util/SystemDoFnInternal.java       |    8 +-
 .../apache/beam/sdk/util/TestCredential.java    |    1 -
 .../apache/beam/sdk/util/TimerInternals.java    |   26 +-
 .../java/org/apache/beam/sdk/util/Timers.java   |    4 +-
 .../org/apache/beam/sdk/util/Transport.java     |    8 +-
 .../beam/sdk/util/TriggerContextFactory.java    |   18 +-
 .../beam/sdk/util/UnownedInputStream.java       |    1 -
 .../beam/sdk/util/UnownedOutputStream.java      |    1 -
 .../sdk/util/UploadIdResponseInterceptor.java   |    4 +-
 .../apache/beam/sdk/util/ValueWithRecordId.java |   13 +-
 .../java/org/apache/beam/sdk/util/Values.java   |    1 -
 .../org/apache/beam/sdk/util/WindowedValue.java |   32 +-
 .../beam/sdk/util/WindowingInternals.java       |    9 +-
 .../apache/beam/sdk/util/WindowingStrategy.java |   11 +-
 .../java/org/apache/beam/sdk/util/ZipFiles.java |    4 +-
 .../apache/beam/sdk/util/common/Counter.java    | 1287 ----------------
 .../beam/sdk/util/common/CounterName.java       |  153 --
 .../beam/sdk/util/common/CounterProvider.java   |   27 -
 .../apache/beam/sdk/util/common/CounterSet.java |  179 ---
 .../util/common/ElementByteSizeObserver.java    |   24 +-
 .../beam/sdk/util/common/ReflectHelpers.java    |    3 -
 .../org/apache/beam/sdk/util/gcsfs/GcsPath.java |    2 -
 .../CopyOnAccessInMemoryStateInternals.java     |   16 +-
 .../sdk/util/state/InMemoryStateInternals.java  |   13 +-
 .../sdk/util/state/MergingStateAccessor.java    |    3 +-
 .../beam/sdk/util/state/StateContexts.java      |    3 +-
 .../sdk/util/state/StateInternalsFactory.java   |    3 +-
 .../beam/sdk/util/state/StateMerging.java       |    9 +-
 .../beam/sdk/util/state/StateNamespaces.java    |   10 +-
 .../apache/beam/sdk/util/state/StateTable.java  |    4 +-
 .../apache/beam/sdk/util/state/StateTag.java    |    5 +-
 .../apache/beam/sdk/util/state/StateTags.java   |   10 +-
 .../beam/sdk/util/state/WatermarkHoldState.java |    1 -
 .../java/org/apache/beam/sdk/values/KV.java     |   10 +-
 .../java/org/apache/beam/sdk/values/PBegin.java |    5 +-
 .../apache/beam/sdk/values/PCollectionList.java |   12 +-
 .../beam/sdk/values/PCollectionTuple.java       |   12 +-
 .../apache/beam/sdk/values/PCollectionView.java |    3 +-
 .../java/org/apache/beam/sdk/values/PDone.java  |    5 +-
 .../java/org/apache/beam/sdk/values/PInput.java |    3 +-
 .../org/apache/beam/sdk/values/POutput.java     |    3 +-
 .../org/apache/beam/sdk/values/PValueBase.java  |    5 +-
 .../beam/sdk/values/TimestampedValue.java       |   26 +-
 .../org/apache/beam/sdk/values/TupleTag.java    |   13 +-
 .../apache/beam/sdk/values/TupleTagList.java    |    4 +-
 .../apache/beam/sdk/values/TypeDescriptor.java  |    2 -
 .../apache/beam/sdk/values/TypeDescriptors.java |    1 -
 .../dataflow/util/GcsPathValidatorTest.java     |    1 -
 .../sdk/AggregatorPipelineExtractorTest.java    |   15 +-
 .../org/apache/beam/sdk/DataflowMatchers.java   |    4 +-
 .../java/org/apache/beam/sdk/PipelineTest.java  |   16 +-
 .../java/org/apache/beam/sdk/TestUtils.java     |   10 +-
 .../org/apache/beam/sdk/WindowMatchers.java     |    9 +-
 .../org/apache/beam/sdk/WindowMatchersTest.java |    4 +-
 .../apache/beam/sdk/coders/AvroCoderTest.java   |   60 +-
 .../beam/sdk/coders/BigDecimalCoderTest.java    |    6 +-
 .../sdk/coders/BigEndianIntegerCoderTest.java   |    6 +-
 .../beam/sdk/coders/BigEndianLongCoderTest.java |    6 +-
 .../beam/sdk/coders/BigIntegerCoderTest.java    |    6 +-
 .../beam/sdk/coders/ByteArrayCoderTest.java     |   10 +-
 .../apache/beam/sdk/coders/ByteCoderTest.java   |    6 +-
 .../beam/sdk/coders/ByteStringCoderTest.java    |   11 +-
 .../beam/sdk/coders/CoderFactoriesTest.java     |    5 +-
 .../beam/sdk/coders/CoderProvidersTest.java     |    4 +-
 .../beam/sdk/coders/CoderRegistryTest.java      |   31 +-
 .../org/apache/beam/sdk/coders/CoderTest.java   |    4 +-
 .../beam/sdk/coders/CollectionCoderTest.java    |   14 +-
 .../apache/beam/sdk/coders/CustomCoderTest.java |   12 +-
 .../beam/sdk/coders/DefaultCoderTest.java       |    7 +-
 .../beam/sdk/coders/DelegateCoderTest.java      |   11 +-
 .../apache/beam/sdk/coders/DoubleCoderTest.java |    6 +-
 .../beam/sdk/coders/DurationCoderTest.java      |    9 +-
 .../beam/sdk/coders/InstantCoderTest.java       |   15 +-
 .../beam/sdk/coders/IterableCoderTest.java      |   10 +-
 .../apache/beam/sdk/coders/JAXBCoderTest.java   |   29 +-
 .../org/apache/beam/sdk/coders/KvCoderTest.java |   13 +-
 .../apache/beam/sdk/coders/ListCoderTest.java   |   10 +-
 .../apache/beam/sdk/coders/MapCoderTest.java    |   17 +-
 .../beam/sdk/coders/NullableCoderTest.java      |   13 +-
 .../beam/sdk/coders/PrintBase64Encodings.java   |    4 +-
 .../beam/sdk/coders/SerializableCoderTest.java  |   14 +-
 .../apache/beam/sdk/coders/SetCoderTest.java    |   12 +-
 .../beam/sdk/coders/StandardCoderTest.java      |   16 +-
 .../sdk/coders/StringDelegateCoderTest.java     |    8 +-
 .../beam/sdk/coders/StringUtf8CoderTest.java    |    6 +-
 .../beam/sdk/coders/TableRowJsonCoderTest.java  |    9 +-
 .../sdk/coders/TextualIntegerCoderTest.java     |    6 +-
 .../apache/beam/sdk/coders/VarIntCoderTest.java |    6 +-
 .../beam/sdk/coders/VarLongCoderTest.java       |    6 +-
 .../sdk/coders/protobuf/ProtoCoderTest.java     |   14 +-
 .../sdk/coders/protobuf/ProtobufUtilTest.java   |   10 +-
 .../beam/sdk/io/AvroIOGeneratedClassTest.java   |   26 +-
 .../java/org/apache/beam/sdk/io/AvroIOTest.java |   32 +-
 .../org/apache/beam/sdk/io/AvroSourceTest.java  |   46 +-
 .../io/BoundedReadFromUnboundedSourceTest.java  |   11 +-
 .../beam/sdk/io/CompressedSourceTest.java       |   43 +-
 .../apache/beam/sdk/io/CountingInputTest.java   |    2 -
 .../apache/beam/sdk/io/CountingSourceTest.java  |    6 +-
 .../apache/beam/sdk/io/FileBasedSinkTest.java   |   22 +-
 .../apache/beam/sdk/io/FileBasedSourceTest.java |   32 +-
 .../beam/sdk/io/OffsetBasedSourceTest.java      |   11 +-
 .../org/apache/beam/sdk/io/PubsubIOTest.java    |    7 +-
 .../beam/sdk/io/PubsubUnboundedSinkTest.java    |   13 +-
 .../beam/sdk/io/PubsubUnboundedSourceTest.java  |   19 +-
 .../java/org/apache/beam/sdk/io/ReadTest.java   |   12 +-
 .../java/org/apache/beam/sdk/io/TextIOTest.java |  403 ++++-
 .../java/org/apache/beam/sdk/io/WriteTest.java  |   68 +-
 .../org/apache/beam/sdk/io/XmlSinkTest.java     |   27 +-
 .../org/apache/beam/sdk/io/XmlSourceTest.java   |   29 +-
 .../range/ByteKeyRangeEstimateFractionTest.java |    1 -
 .../range/ByteKeyRangeInterpolateKeyTest.java   |    1 -
 .../beam/sdk/io/range/ByteKeyRangeTest.java     |    6 +-
 .../apache/beam/sdk/io/range/ByteKeyTest.java   |    3 +-
 .../apache/beam/sdk/options/GcpOptionsTest.java |   16 +-
 .../sdk/options/GoogleApiDebugOptionsTest.java  |    8 +-
 .../sdk/options/PipelineOptionsFactoryTest.java |   27 +-
 .../options/PipelineOptionsReflectorTest.java   |    6 +-
 .../beam/sdk/options/PipelineOptionsTest.java   |   12 +-
 .../options/PipelineOptionsValidatorTest.java   |    1 -
 .../sdk/options/ProxyInvocationHandlerTest.java |   28 +-
 .../beam/sdk/runners/PipelineRunnerTest.java    |    1 -
 .../beam/sdk/runners/TransformTreeTest.java     |    8 +-
 .../runners/dataflow/TestCountingSource.java    |   13 +-
 .../dataflow/TestCountingSourceTest.java        |    4 +-
 .../beam/sdk/testing/CoderPropertiesTest.java   |   11 +-
 .../beam/sdk/testing/CrashingRunnerTest.java    |    1 -
 .../apache/beam/sdk/testing/ExpectedLogs.java   |   12 +-
 .../beam/sdk/testing/ExpectedLogsTest.java      |   13 +-
 .../sdk/testing/FastNanoClockAndSleeper.java    |    1 -
 .../testing/FastNanoClockAndSleeperTest.java    |    3 +-
 .../sdk/testing/FileChecksumMatcherTest.java    |  104 ++
 .../apache/beam/sdk/testing/PAssertTest.java    |   17 +-
 .../sdk/testing/PCollectionViewTesting.java     |   15 +-
 .../beam/sdk/testing/PaneExtractorsTest.java    |    4 +-
 .../sdk/testing/RestoreSystemProperties.java    |    5 +-
 .../sdk/testing/SerializableMatchersTest.java   |   12 +-
 .../beam/sdk/testing/SourceTestUtilsTest.java   |   63 +
 .../beam/sdk/testing/StaticWindowsTest.java     |    4 +-
 .../beam/sdk/testing/SystemNanoTimeSleeper.java |    1 -
 .../sdk/testing/SystemNanoTimeSleeperTest.java  |    1 -
 .../beam/sdk/testing/TestPipelineTest.java      |   12 +-
 .../apache/beam/sdk/testing/TestStreamTest.java |  355 +++++
 .../beam/sdk/testing/WindowSupplierTest.java    |   16 +-
 .../transforms/ApproximateQuantilesTest.java    |   13 +-
 .../sdk/transforms/ApproximateUniqueTest.java   |   18 +-
 .../beam/sdk/transforms/CombineFnsTest.java     |   18 +-
 .../apache/beam/sdk/transforms/CombineTest.java |   68 +-
 .../apache/beam/sdk/transforms/CountTest.java   |    7 +-
 .../apache/beam/sdk/transforms/CreateTest.java  |   26 +-
 .../DoFnDelegatingAggregatorTest.java           |    3 +-
 .../beam/sdk/transforms/DoFnReflectorTest.java  |  757 ---------
 .../apache/beam/sdk/transforms/DoFnTest.java    |    4 +-
 .../beam/sdk/transforms/DoFnTesterTest.java     |   41 +-
 .../apache/beam/sdk/transforms/FilterTest.java  |    5 +-
 .../sdk/transforms/FlatMapElementsTest.java     |   16 +-
 .../apache/beam/sdk/transforms/FlattenTest.java |   21 +-
 .../beam/sdk/transforms/GroupByKeyTest.java     |   30 +-
 .../IntraBundleParallelizationTest.java         |    7 +-
 .../apache/beam/sdk/transforms/KeysTest.java    |    4 +-
 .../apache/beam/sdk/transforms/KvSwapTest.java  |    4 +-
 .../beam/sdk/transforms/LatestFnTests.java      |  233 +++
 .../apache/beam/sdk/transforms/LatestTest.java  |  146 ++
 .../beam/sdk/transforms/MapElementsTest.java    |   15 +-
 .../org/apache/beam/sdk/transforms/MaxTest.java |    5 +-
 .../apache/beam/sdk/transforms/MeanTest.java    |   10 +-
 .../org/apache/beam/sdk/transforms/MinTest.java |    5 +-
 .../apache/beam/sdk/transforms/NoOpOldDoFn.java |    3 +-
 .../apache/beam/sdk/transforms/OldDoFnTest.java |    9 +-
 .../beam/sdk/transforms/PTransformTest.java     |    1 -
 .../beam/sdk/transforms/ParDoLifecycleTest.java |  447 ++++++
 .../apache/beam/sdk/transforms/ParDoTest.java   |   40 +-
 .../beam/sdk/transforms/PartitionTest.java      |    9 +-
 .../sdk/transforms/RemoveDuplicatesTest.java    |   10 +-
 .../apache/beam/sdk/transforms/SampleTest.java  |   21 +-
 .../beam/sdk/transforms/SimpleStatsFnsTest.java |    7 +-
 .../org/apache/beam/sdk/transforms/SumTest.java |    5 +-
 .../org/apache/beam/sdk/transforms/TopTest.java |   13 +-
 .../apache/beam/sdk/transforms/ValuesTest.java  |    4 +-
 .../apache/beam/sdk/transforms/ViewTest.java    |   31 +-
 .../beam/sdk/transforms/WithKeysTest.java       |    6 +-
 .../beam/sdk/transforms/WithTimestampsTest.java |    4 +-
 .../display/DisplayDataEvaluator.java           |    8 +-
 .../display/DisplayDataEvaluatorTest.java       |    7 +-
 .../transforms/display/DisplayDataMatchers.java |    7 +-
 .../display/DisplayDataMatchersTest.java        |    2 -
 .../sdk/transforms/display/DisplayDataTest.java |   26 +-
 .../dofnreflector/DoFnReflectorTestHelper.java  |  116 --
 .../transforms/join/CoGbkResultCoderTest.java   |    4 +-
 .../sdk/transforms/join/CoGbkResultTest.java    |    6 +-
 .../sdk/transforms/join/CoGroupByKeyTest.java   |   15 +-
 .../sdk/transforms/join/UnionCoderTest.java     |    4 +-
 .../transforms/reflect/DoFnInvokersTest.java    |  500 ++++++
 .../reflect/DoFnInvokersTestHelper.java         |  116 ++
 .../transforms/reflect/DoFnSignaturesTest.java  |  368 +++++
 .../sdk/transforms/windowing/AfterAllTest.java  |    1 -
 .../sdk/transforms/windowing/AfterEachTest.java |    1 -
 .../transforms/windowing/AfterFirstTest.java    |    1 -
 .../sdk/transforms/windowing/AfterPaneTest.java |    1 -
 .../windowing/AfterProcessingTimeTest.java      |    1 -
 .../AfterSynchronizedProcessingTimeTest.java    |    1 -
 .../windowing/AfterWatermarkTest.java           |    1 -
 .../windowing/CalendarWindowsTest.java          |   13 +-
 .../windowing/DefaultTriggerTest.java           |    1 -
 .../transforms/windowing/FixedWindowsTest.java  |   11 +-
 .../windowing/IntervalWindowTest.java           |    7 +-
 .../sdk/transforms/windowing/NeverTest.java     |    1 -
 .../windowing/OrFinallyTriggerTest.java         |    1 -
 .../sdk/transforms/windowing/PaneInfoTest.java  |    1 -
 .../transforms/windowing/RepeatedlyTest.java    |    1 -
 .../sdk/transforms/windowing/SessionsTest.java  |   16 +-
 .../windowing/SlidingWindowsTest.java           |   11 +-
 .../sdk/transforms/windowing/StubTrigger.java   |    4 +-
 .../sdk/transforms/windowing/TriggerTest.java   |    5 +-
 .../sdk/transforms/windowing/WindowTest.java    |    5 +-
 .../sdk/transforms/windowing/WindowingTest.java |   10 +-
 .../apache/beam/sdk/util/ApiSurfaceTest.java    |   10 +-
 ...mptAndTimeBoundedExponentialBackOffTest.java |  214 ---
 .../AttemptBoundedExponentialBackOffTest.java   |   85 -
 .../org/apache/beam/sdk/util/AvroUtilsTest.java |   20 +-
 .../beam/sdk/util/BucketingFunctionTest.java    |    1 -
 ...BufferedElementCountingOutputStreamTest.java |   19 +-
 .../apache/beam/sdk/util/CoderUtilsTest.java    |    7 +-
 .../apache/beam/sdk/util/CombineFnUtilTest.java |   13 +-
 .../beam/sdk/util/CounterAggregatorTest.java    |  256 ----
 .../beam/sdk/util/ExecutableTriggerTest.java    |    6 +-
 .../util/ExposedByteArrayInputStreamTest.java   |    5 +-
 .../util/ExposedByteArrayOutputStreamTest.java  |    5 +-
 .../beam/sdk/util/FileIOChannelFactoryTest.java |   16 +-
 .../beam/sdk/util/FinishedTriggersSetTest.java  |    3 +-
 .../apache/beam/sdk/util/FluentBackoffTest.java |  226 +++
 .../beam/sdk/util/GatherAllPanesTest.java       |    7 +-
 .../beam/sdk/util/GcsIOChannelFactoryTest.java  |    1 -
 .../org/apache/beam/sdk/util/GcsUtilTest.java   |  102 +-
 .../beam/sdk/util/IOChannelUtilsTest.java       |    6 +-
 .../sdk/util/IdentitySideInputWindowFn.java     |    5 +-
 .../beam/sdk/util/InstanceBuilderTest.java      |    1 -
 .../beam/sdk/util/KeyedWorkItemCoderTest.java   |    4 +-
 .../sdk/util/MergingActiveWindowSetTest.java    |   13 +-
 .../beam/sdk/util/MovingFunctionTest.java       |    1 -
 .../beam/sdk/util/MutationDetectorsTest.java    |   17 +-
 .../org/apache/beam/sdk/util/PTupleTest.java    |    1 -
 .../apache/beam/sdk/util/PubsubClientTest.java  |   10 +-
 .../beam/sdk/util/PubsubGrpcClientTest.java     |   18 +-
 .../beam/sdk/util/PubsubJsonClientTest.java     |   18 +-
 .../beam/sdk/util/PubsubTestClientTest.java     |   18 +-
 .../org/apache/beam/sdk/util/ReshuffleTest.java |    7 +-
 .../beam/sdk/util/ReshuffleTriggerTest.java     |    1 -
 .../util/RetryHttpRequestInitializerTest.java   |   12 +-
 .../beam/sdk/util/SerializableUtilsTest.java    |   19 +-
 .../apache/beam/sdk/util/StreamUtilsTest.java   |    9 +-
 .../apache/beam/sdk/util/StringUtilsTest.java   |    1 -
 .../org/apache/beam/sdk/util/StructsTest.java   |   11 +-
 .../beam/sdk/util/TimerInternalsTest.java       |    1 -
 .../org/apache/beam/sdk/util/TriggerTester.java |   31 +-
 .../beam/sdk/util/UnownedInputStreamTest.java   |    3 +-
 .../beam/sdk/util/UnownedOutputStreamTest.java  |    3 +-
 .../util/UploadIdResponseInterceptorTest.java   |    7 +-
 .../beam/sdk/util/UserCodeExceptionTest.java    |    3 +-
 .../org/apache/beam/sdk/util/VarIntTest.java    |    9 +-
 .../apache/beam/sdk/util/WindowedValueTest.java |    9 +-
 .../org/apache/beam/sdk/util/ZipFilesTest.java  |   14 +-
 .../beam/sdk/util/common/CounterSetTest.java    |  227 ---
 .../beam/sdk/util/common/CounterTest.java       |  736 ---------
 .../sdk/util/common/ReflectHelpersTest.java     |    6 +-
 .../apache/beam/sdk/util/gcsfs/GcsPathTest.java |   11 +-
 .../CopyOnAccessInMemoryStateInternalsTest.java |    1 -
 .../util/state/InMemoryStateInternalsTest.java  |    4 +-
 .../sdk/util/state/StateNamespacesTest.java     |    1 -
 .../beam/sdk/util/state/StateTagTest.java       |    1 -
 .../java/org/apache/beam/sdk/values/KVTest.java |    4 +-
 .../beam/sdk/values/PCollectionListTest.java    |    3 +-
 .../beam/sdk/values/PCollectionTupleTest.java   |    8 +-
 .../org/apache/beam/sdk/values/PDoneTest.java   |    4 +-
 .../beam/sdk/values/TimestampedValueTest.java   |   83 +
 .../beam/sdk/values/TypeDescriptorTest.java     |   10 +-
 .../beam/sdk/values/TypeDescriptorsTest.java    |    6 +-
 .../apache/beam/sdk/values/TypedPValueTest.java |    1 -
 .../extensions/joinlibrary/InnerJoinTest.java   |    6 +-
 .../joinlibrary/OuterLeftJoinTest.java          |    6 +-
 .../joinlibrary/OuterRightJoinTest.java         |    6 +-
 sdks/java/io/google-cloud-platform/pom.xml      |    4 +-
 .../sdk/io/gcp/bigquery/BigQueryAvroUtils.java  |    7 +-
 .../beam/sdk/io/gcp/bigquery/BigQueryIO.java    |  188 ++-
 .../sdk/io/gcp/bigquery/BigQueryServices.java   |    5 +-
 .../io/gcp/bigquery/BigQueryServicesImpl.java   |  173 ++-
 .../io/gcp/bigquery/BigQueryTableInserter.java  |   14 +-
 .../gcp/bigquery/BigQueryTableRowIterator.java  |   15 +-
 .../beam/sdk/io/gcp/bigtable/BigtableIO.java    |   60 +-
 .../sdk/io/gcp/bigtable/BigtableService.java    |   15 +-
 .../io/gcp/bigtable/BigtableServiceImpl.java    |   20 +-
 .../beam/sdk/io/gcp/datastore/DatastoreIO.java  |   12 +-
 .../beam/sdk/io/gcp/datastore/DatastoreV1.java  | 1059 +++++++++++++
 .../beam/sdk/io/gcp/datastore/V1Beta3.java      |  969 ------------
 .../beam/sdk/io/gcp/datastore/package-info.java |    2 +-
 .../io/gcp/bigquery/BigQueryAvroUtilsTest.java  |   11 +-
 .../sdk/io/gcp/bigquery/BigQueryIOTest.java     |  301 ++--
 .../gcp/bigquery/BigQueryServicesImplTest.java  |   44 +-
 .../gcp/bigquery/BigQueryTableInserterTest.java |   20 +-
 .../bigquery/BigQueryTableRowIteratorTest.java  |   10 +-
 .../sdk/io/gcp/bigquery/BigQueryUtilTest.java   |   19 +-
 .../sdk/io/gcp/bigtable/BigtableIOTest.java     |   56 +-
 .../sdk/io/gcp/bigtable/BigtableReadIT.java     |    6 +-
 .../sdk/io/gcp/bigtable/BigtableWriteIT.java    |   29 +-
 .../sdk/io/gcp/datastore/DatastoreV1Test.java   |  837 ++++++++++
 .../sdk/io/gcp/datastore/SplitQueryFnIT.java    |   97 ++
 .../sdk/io/gcp/datastore/V1Beta3ReadIT.java     |  114 --
 .../beam/sdk/io/gcp/datastore/V1Beta3Test.java  |  587 -------
 .../io/gcp/datastore/V1Beta3TestOptions.java    |   44 -
 .../sdk/io/gcp/datastore/V1Beta3TestUtil.java   |  382 -----
 .../sdk/io/gcp/datastore/V1Beta3WriteIT.java    |   85 -
 .../beam/sdk/io/gcp/datastore/V1ReadIT.java     |  111 ++
 .../sdk/io/gcp/datastore/V1TestOptions.java     |   43 +
 .../beam/sdk/io/gcp/datastore/V1TestUtil.java   |  382 +++++
 .../beam/sdk/io/gcp/datastore/V1WriteIT.java    |   83 +
 sdks/java/io/hdfs/pom.xml                       |    5 -
 .../beam/sdk/io/hdfs/AvroHDFSFileSource.java    |   23 +-
 .../beam/sdk/io/hdfs/AvroWrapperCoder.java      |   16 +-
 .../apache/beam/sdk/io/hdfs/HDFSFileSink.java   |   17 +-
 .../apache/beam/sdk/io/hdfs/HDFSFileSource.java |   30 +-
 .../apache/beam/sdk/io/hdfs/WritableCoder.java  |   12 +-
 .../SimpleAuthAvroHDFSFileSource.java           |   12 +-
 .../hdfs/simpleauth/SimpleAuthHDFSFileSink.java |    3 +-
 .../simpleauth/SimpleAuthHDFSFileSource.java    |   12 +-
 .../beam/sdk/io/hdfs/AvroWrapperCoderTest.java  |    5 +-
 .../beam/sdk/io/hdfs/HDFSFileSourceTest.java    |   12 +-
 .../beam/sdk/io/hdfs/WritableCoderTest.java     |    1 -
 .../beam/sdk/io/jms/JmsCheckpointMark.java      |    9 +-
 .../java/org/apache/beam/sdk/io/jms/JmsIO.java  |   47 +-
 .../org/apache/beam/sdk/io/jms/JmsRecord.java   |    1 -
 .../org/apache/beam/sdk/io/jms/JmsIOTest.java   |   25 +-
 .../beam/sdk/io/kafka/KafkaCheckpointMark.java  |    8 +-
 .../org/apache/beam/sdk/io/kafka/KafkaIO.java   |   99 +-
 .../apache/beam/sdk/io/kafka/KafkaRecord.java   |    3 +-
 .../beam/sdk/io/kafka/KafkaRecordCoder.java     |   14 +-
 .../apache/beam/sdk/io/kafka/KafkaIOTest.java   |   33 +-
 sdks/java/io/kinesis/pom.xml                    |  179 +++
 .../sdk/io/kinesis/CheckpointGenerator.java     |   30 +
 .../beam/sdk/io/kinesis/CustomOptional.java     |   85 +
 .../io/kinesis/DynamicCheckpointGenerator.java  |   56 +
 .../sdk/io/kinesis/GetKinesisRecordsResult.java |   54 +
 .../sdk/io/kinesis/KinesisClientProvider.java   |   31 +
 .../apache/beam/sdk/io/kinesis/KinesisIO.java   |  190 +++
 .../beam/sdk/io/kinesis/KinesisReader.java      |  145 ++
 .../sdk/io/kinesis/KinesisReaderCheckpoint.java |   96 ++
 .../beam/sdk/io/kinesis/KinesisRecord.java      |  121 ++
 .../beam/sdk/io/kinesis/KinesisRecordCoder.java |   74 +
 .../beam/sdk/io/kinesis/KinesisSource.java      |  112 ++
 .../beam/sdk/io/kinesis/RecordFilter.java       |   41 +
 .../apache/beam/sdk/io/kinesis/RoundRobin.java  |   53 +
 .../beam/sdk/io/kinesis/ShardCheckpoint.java    |  175 +++
 .../sdk/io/kinesis/ShardRecordsIterator.java    |   98 ++
 .../sdk/io/kinesis/SimplifiedKinesisClient.java |  157 ++
 .../beam/sdk/io/kinesis/StartingPoint.java      |   85 +
 .../io/kinesis/StaticCheckpointGenerator.java   |   42 +
 .../io/kinesis/TransientKinesisException.java   |   29 +
 .../beam/sdk/io/kinesis/package-info.java       |   22 +
 .../beam/sdk/io/kinesis/AmazonKinesisMock.java  |  375 +++++
 .../beam/sdk/io/kinesis/CustomOptionalTest.java |   31 +
 .../kinesis/DynamicCheckpointGeneratorTest.java |   57 +
 .../sdk/io/kinesis/KinesisMockReadTest.java     |   91 ++
 .../io/kinesis/KinesisReaderCheckpointTest.java |   67 +
 .../beam/sdk/io/kinesis/KinesisReaderIT.java    |  119 ++
 .../beam/sdk/io/kinesis/KinesisReaderTest.java  |  120 ++
 .../sdk/io/kinesis/KinesisRecordCoderTest.java  |   45 +
 .../beam/sdk/io/kinesis/KinesisTestOptions.java |   47 +
 .../beam/sdk/io/kinesis/KinesisUploader.java    |   84 +
 .../beam/sdk/io/kinesis/RecordFilterTest.java   |   66 +
 .../beam/sdk/io/kinesis/RoundRobinTest.java     |   57 +
 .../sdk/io/kinesis/ShardCheckpointTest.java     |  149 ++
 .../io/kinesis/ShardRecordsIteratorTest.java    |  151 ++
 .../io/kinesis/SimplifiedKinesisClientTest.java |  224 +++
 .../beam/sdk/io/kinesis/package-info.java       |   22 +
 sdks/java/io/mongodb/pom.xml                    |  129 ++
 .../apache/beam/sdk/io/mongodb/MongoDbIO.java   |  553 +++++++
 .../beam/sdk/io/mongodb/package-info.java       |   22 +
 .../beam/sdk/io/mongodb/MongoDbIOTest.java      |  209 +++
 .../beam/sdk/io/mongodb/package-info.java       |   22 +
 sdks/java/io/pom.xml                            |    2 +
 .../beam/sdk/transforms/CombineJava8Test.java   |    7 +-
 .../beam/sdk/transforms/FilterJava8Test.java    |    4 +-
 .../transforms/FlatMapElementsJava8Test.java    |    9 +-
 .../sdk/transforms/MapElementsJava8Test.java    |    4 +-
 .../beam/sdk/transforms/PartitionJava8Test.java |    4 +-
 .../transforms/RemoveDuplicatesJava8Test.java   |   11 +-
 .../beam/sdk/transforms/WithKeysJava8Test.java  |    1 -
 .../sdk/transforms/WithTimestampsJava8Test.java |    4 +-
 .../src/main/java/DebuggingWordCount.java       |    9 +-
 .../src/main/java/WindowedWordCount.java        |   19 +-
 .../main/java/common/DataflowExampleUtils.java  |   25 +-
 .../common/ExampleBigQueryTableOptions.java     |    3 +-
 .../main/java/common/PubsubFileInjector.java    |   14 +-
 .../src/test/java/DebuggingWordCountTest.java   |    6 +-
 .../src/test/java/WordCountTest.java            |    5 +-
 .../src/main/java/StarterPipeline.java          |    1 -
 .../src/main/java/it/pkg/StarterPipeline.java   |    1 -
 .../coders/AvroCoderBenchmark.java              |    6 +-
 .../coders/ByteArrayCoderBenchmark.java         |    6 +-
 .../coders/CoderBenchmarking.java               |    3 +-
 .../coders/StringUtf8CoderBenchmark.java        |    6 +-
 .../transforms/DoFnInvokersBenchmark.java       |  224 +++
 .../transforms/DoFnReflectorBenchmark.java      |  232 ---
 1084 files changed, 34837 insertions(+), 27954 deletions(-)
----------------------------------------------------------------------