/******************************************************************************* * Copyright (c) quickfixengine.org All rights reserved. * * This file is part of the QuickFIX FIX Engine * * This file may be distributed under the terms of the quickfixengine.org * license as defined by quickfixengine.org and appearing in the file * LICENSE included in the packaging of this file. * * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING * THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A * PARTICULAR PURPOSE. * * See http://www.quickfixengine.org/LICENSE for licensing information. * * Contact ask@quickfixengine.org if any conditions of this licensing * are not clear to you. ******************************************************************************/ package quickfix; import java.io.UnsupportedEncodingException; import org.quickfixj.QFJException; /** * BytesField enables better handling of binary data. With BytesFields binary data can * be directly put into FIX messages without casting them into Strings. */ public class BytesField extends Field<byte[]> { public BytesField(int field) { super(field, new byte[0]); } public BytesField(int field, byte[] data) { super(field, data); } public void setValue(byte[] data) { setObject(data); } public byte[] getValue() { return getObject(); } @Override protected String objectAsString() { try { return new String(getObject(), "UTF8"); } catch (UnsupportedEncodingException e) { throw new QFJException(e); } } }