docs: public Waiter<DescribeTrainingJobRequest> trainingJobCompletedOrStopped() {
  
          return new WaiterBuilder<DescribeTrainingJobRequest, DescribeTrainingJobResult>()
                  .withSdkFunction(new DescribeTrainingJobFunction(client))
                  .withAcceptors(new TrainingJobCompletedOrStopped.IsCompletedMatcher(), new TrainingJobCompletedOrStopped.IsStoppedMatcher(),
                          new TrainingJobCompletedOrStopped.IsFailedMatcher(), new TrainingJobCompletedOrStopped.IsValidationExceptionMatcher())
                  .withDefaultPollingStrategy(new PollingStrategy(new MaxAttemptsRetryStrategy(180), new FixedDelayStrategy(120)))
                  .withExecutorService(executorService).build();
      }