/**********************************************************************
*
* Copyright (c) by Olaf Willuhn
* All rights reserved
*
**********************************************************************/
package de.willuhn.jameica.hbci.messaging;
import de.willuhn.jameica.hbci.HBCIProperties;
import de.willuhn.jameica.messaging.Message;
import de.willuhn.jameica.messaging.MessageConsumer;
import de.willuhn.jameica.messaging.QueryMessage;
/**
* Message-Consumer, der zu einer BLZ/BIC den Namen der Bank liefern kann.
*/
public class QueryBanknameMessageConsumer implements MessageConsumer
{
/**
* @see de.willuhn.jameica.messaging.MessageConsumer#autoRegister()
*/
public boolean autoRegister()
{
// bewusst false, weil wir uns manuell auf eine konkret benannte Queue abonnieren.
return false;
}
/**
* @see de.willuhn.jameica.messaging.MessageConsumer#getExpectedMessageTypes()
*/
public Class[] getExpectedMessageTypes()
{
return new Class[]{QueryMessage.class};
}
/**
* @see de.willuhn.jameica.messaging.MessageConsumer#handleMessage(de.willuhn.jameica.messaging.Message)
*/
public void handleMessage(Message message) throws Exception
{
if (message == null || !(message instanceof QueryMessage))
return;
QueryMessage qm = (QueryMessage) message;
Object data = qm.getData();
String bank = data != null ? data.toString() : null;
qm.setData(HBCIProperties.getNameForBank(bank));
}
}