@Override
  public void check( List<CheckResultInterface> remarks, TransMeta transMeta,
                     StepMeta stepMeta, RowMetaInterface prev, String[] input, String[] output,
                     RowMetaInterface info, VariableSpace space, Repository repository,
                     IMetaStore metaStore ) {
    super.check( remarks, transMeta, stepMeta, prev, input, output, info, space, repository, metaStore );

    StepOption.checkBoolean( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.DISABLE_MESSAGE_ID" ),
      disableMessageId );
    StepOption.checkBoolean( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.DISABLE_MESSAGE_TIMESTAMP" ),
      disableMessageTimestamp );
    StepOption.checkInteger( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.DELIVERY_MODE" ),
      deliveryMode );
    StepOption.checkInteger( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.PRIORITY" ),
      prio );
    StepOption.checkLong( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.TIME_TO_LIVE" ),
      timeToLive );
    StepOption.checkLong( remarks, stepMeta, space, getString( PKG, "JmsDialog.Options.DELIVERY_DELAY" ),
      deliveryDelay );
  }
@Test
  public void testCheck() {
    List<CheckResultInterface> remarks = new ArrayList<>();
    JmsProducerMeta jmsProducerMeta = new JmsProducerMeta();
    jmsProducerMeta.setDisableMessageId( "asdf" );
    jmsProducerMeta.setDisableMessageTimestamp( "asdf" );
    jmsProducerMeta.setDeliveryMode( "asdf" );
    jmsProducerMeta.setPriority( "asdf" );
    jmsProducerMeta.setTimeToLive( "asdf" );
    jmsProducerMeta.setDeliveryDelay( "asdf" );
    jmsProducerMeta.check( remarks, null, null, null, null, null, null, new Variables(), null, null );

    assertEquals( 6, remarks.size() );
    assertTrue( remarks.get( 0 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.DISABLE_MESSAGE_ID" ) ) );
    assertTrue( remarks.get( 1 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.DISABLE_MESSAGE_TIMESTAMP" ) ) );
    assertTrue( remarks.get( 2 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.DELIVERY_MODE" ) ) );
    assertTrue( remarks.get( 3 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.PRIORITY" ) ) );
    assertTrue( remarks.get( 4 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.TIME_TO_LIVE" ) ) );
    assertTrue( remarks.get( 5 ).getText()
      .contains( BaseMessages.getString( JmsProducerMeta.class, "JmsDialog.Options.DELIVERY_DELAY" ) ) );

    remarks = new ArrayList<>();
    jmsProducerMeta.setDisableMessageId( "true" );
    jmsProducerMeta.setDisableMessageTimestamp( "false" );
    jmsProducerMeta.setDeliveryMode( "1" );
    jmsProducerMeta.setPriority( "2" );
    jmsProducerMeta.setTimeToLive( "3" );
    jmsProducerMeta.setDeliveryDelay( "4" );
    jmsProducerMeta.check( remarks, null, null, null, null, null, null, new Variables(), null, null );

    assertEquals( 0, remarks.size() );
  }