Пример #1
0
  /**
   * Constructor.
   *
   * @param translations Translation service.
   * @param processControl Console process control.
   * @param sampleModel Console sample model.
   * @param logger Logger.
   */
  public TextUI(
      final Translations translations,
      final ProcessControl processControl,
      final SampleModel sampleModel,
      final Logger logger) {

    m_logger = logger;
    m_logger.info(GrinderBuild.getName());

    m_shutdownHook = new Thread(new ShutdownHook(translations));
    Runtime.getRuntime().addShutdownHook(m_shutdownHook);

    m_errorHandler = new ErrorHandlerImplementation();

    processControl.addProcessStatusListener(new ProcessListener(translations));

    m_sampleModel = sampleModel;
    m_sampleModel.addModelListener(
        new SampleModel.AbstractListener() {
          @Override
          public void stateChanged() {
            m_logger.info(m_sampleModel.getState().getDescription());
          }
        });
  }