package org.jpos.jposext.isomsgaction.service.support; import java.util.Map; import org.jpos.iso.ISOComponent; import org.jpos.iso.ISOException; import org.jpos.iso.ISOMsg; import org.jpos.jposext.isomsgaction.helper.ISOMsgHelper; import org.jpos.jposext.isomsgaction.service.IISOMsgAction; /** * * Raw binary value copy action from a source field in a source message to a dest field * in a dest message<BR/> * * @author dgrandemange * */ public class ISOMsgActionBinaryCopy extends ISOMsgAbstractAction implements IISOMsgAction { public ISOMsgActionBinaryCopy() { super(); } /* (non-Javadoc) * @see org.jpos.jposext.isomsgaction.service.IISOMsgAction#process(org.jpos.iso.ISOMsg[], java.util.Map) */ public void process(ISOMsg[] msg, Map<String, Object> ctx) throws ISOException { // Get binary value from source field ISOComponent cmp = ISOMsgHelper.getComponent(msg[getSrcMsgIndex()], getSrcIdPath()); byte[] bytes = cmp.getBytes(); // ... set dest field value ISOMsgHelper.setValue(msg[getMsgIndex()], getIdPath(), (bytes == null ? new byte[] {} : bytes)); } }