MessageEncoder.java 803 Bytes
package com.bsth.socket.codec;

import com.bsth.util.AppProperties;
import org.apache.mina.core.buffer.IoBuffer;
import org.apache.mina.core.session.IoSession;
import org.apache.mina.filter.codec.ProtocolEncoderAdapter;
import org.apache.mina.filter.codec.ProtocolEncoderOutput;

import com.bsth.service.DownProtocolDataService;

/**
 * @author Hill
 */
public class MessageEncoder extends ProtocolEncoderAdapter {

	@Override
	public void encode(IoSession session, Object message,
			ProtocolEncoderOutput out) throws Exception {
		// TODO Auto-generated method stub
		IoBuffer buf = IoBuffer.allocate(1024).setAutoExpand(true);
		buf.put((byte[])message);
		buf.flip();
		out.write(buf);
		if (AppProperties.isDownrecord()) {
			DownProtocolDataService.getInstance().write((byte[])message);
		}
	}

}