public void testConsume_EncryptedPassword() throws Exception {
    if (areTestsEnabled()) {
      MockMessageListener listener = new MockMessageListener();
      RelaxedFtpConsumer ftpConsumer = new RelaxedFtpConsumer();
      ConfiguredConsumeDestination ccd = new ConfiguredConsumeDestination(getDestinationString());
      ccd.setConfiguredThreadName("testBasicConsumeWithEncryptedPassword");
      ftpConsumer.setDestination(ccd);
      ftpConsumer.setOlderThan(DEFAULT_QUIET_PERIOD);
      ftpConsumer.registerAdaptrisMessageListener(listener);
      ftpConsumer.setPoller(new QuartzCronPoller("*/1 * * * * ?"));
      StandaloneConsumer sc = new StandaloneConsumer(createConnection(), ftpConsumer);
      start(sc);
      int count = 1;
      try {
        FileTransferConnectionUsingPassword conn = createConnection();
        String pw = conn.getDefaultPassword();
        String decodedPw = Password.decode(pw);
        if (pw.equals(decodedPw)) {
          // The password was never encrypted!
          conn.setDefaultPassword(
              Password.encode(conn.getDefaultPassword(), Password.PORTABLE_PASSWORD));
        }
        produce(new StandaloneProducer(conn, createFtpProducer()), count);
        waitForMessages(listener, count);

        assertMessages(listener.getMessages(), count);
      } finally {
        stop(sc);
      }
    }
  }
  public void testConsume_OverrideUrl() throws Exception {
    if (areTestsEnabled()) {

      MockMessageListener listener = new MockMessageListener();
      RelaxedFtpConsumer ftpConsumer = new RelaxedFtpConsumer();
      ConfiguredConsumeDestination ccd =
          new ConfiguredConsumeDestination(getDestinationStringWithOverride());
      ccd.setConfiguredThreadName("testBasicConsumeWithOverride");
      ftpConsumer.setDestination(ccd);
      ftpConsumer.setOlderThan(DEFAULT_QUIET_PERIOD);
      ftpConsumer.registerAdaptrisMessageListener(listener);
      // Pass in a QuartzId so we don't print out the uname+password.
      ftpConsumer.setPoller(new QuartzCronPoller("*/1 * * * * ?", "testBasicConsumeWithOverride"));
      FileTransferConnectionUsingPassword con = createConnection();
      con.setDefaultPassword(null);
      con.setDefaultUserName(null);
      StandaloneConsumer sc = new StandaloneConsumer(con, ftpConsumer);
      start(sc);

      int count = 1;
      try {
        produce(new StandaloneProducer(createConnection(), createFtpProducer()), count);
        waitForMessages(listener, count);

        assertMessages(listener.getMessages(), count);
      } finally {
        stop(sc);
      }
    }
  }
 public void testConsume_CachedConnection() throws Exception {
   if (areTestsEnabled()) {
     MockMessageListener listener = new MockMessageListener();
     RelaxedFtpConsumer ftpConsumer = new RelaxedFtpConsumer();
     ConfiguredConsumeDestination ccd = new ConfiguredConsumeDestination(getDestinationString());
     ccd.setConfiguredThreadName("testConsume_CachedConnection");
     ftpConsumer.setDestination(ccd);
     ftpConsumer.registerAdaptrisMessageListener(listener);
     ftpConsumer.setOlderThan(DEFAULT_QUIET_PERIOD);
     ftpConsumer.setPoller(new QuartzCronPoller("*/1 * * * * ?"));
     FileTransferConnectionUsingPassword consumeConnection = createConnection();
     consumeConnection.setCacheConnection(true);
     StandaloneConsumer sc = new StandaloneConsumer(consumeConnection, ftpConsumer);
     start(sc);
     int count = 1;
     try {
       FileTransferConnectionUsingPassword produceConnection = createConnection();
       produceConnection.setCacheConnection(true);
       produce(new StandaloneProducer(produceConnection, createFtpProducer()), count);
       waitForMessages(listener, count);
       assertMessages(listener.getMessages(), count);
     } catch (Exception e) {
       log.error(e.getMessage(), e);
       throw e;
     } finally {
       stop(sc);
     }
   }
 }
 public void testConnect_OverrideUserOnly() throws Exception {
   if (areTestsEnabled()) {
     FileTransferConnectionUsingPassword connection =
         (FileTransferConnectionUsingPassword) createConnection();
     connection.setDefaultUserName(null);
     try {
       start(connection);
       FileTransferClient client = connection.connect(getDestinationStringWithOverrideUserOnly());
     } finally {
       stop(connection);
     }
   }
 }
 public void testConnect_PasswordOverride() throws Exception {
   if (areTestsEnabled()) {
     FileTransferConnectionUsingPassword connection =
         (FileTransferConnectionUsingPassword) createConnection();
     connection.setDefaultPassword(null);
     try {
       start(connection);
       log.trace("testConnection_PasswordOverride = " + getDestinationStringWithOverride());
       FileTransferClient client = connection.connect(getDestinationStringWithOverride());
     } finally {
       stop(connection);
     }
   }
 }
  public void testConnect_NoPassword() throws Exception {
    if (areTestsEnabled()) {
      FileTransferConnectionUsingPassword connection =
          (FileTransferConnectionUsingPassword) createConnection();
      connection.setDefaultPassword(null);
      try {
        start(connection);
        FileTransferClient client = connection.connect(getDestinationString());
        fail();
      } catch (Exception expected) {

      } finally {
        stop(connection);
      }
    }
  }
 public void testConnect_EncodedPassword() throws Exception {
   if (areTestsEnabled()) {
     FileTransferConnectionUsingPassword connection =
         (FileTransferConnectionUsingPassword) createConnection();
     String ensureEncodedPassword =
         Password.encode(
             Password.decode(connection.getDefaultPassword()), Password.PORTABLE_PASSWORD);
     connection.setDefaultPassword(ensureEncodedPassword);
     try {
       start(connection);
       FileTransferClient client = connection.connect(getDestinationString());
     } finally {
       stop(connection);
     }
   }
 }