package com.sissi.pipeline.in.message; import com.sissi.context.JIDContext; import com.sissi.pipeline.in.ProxyProcessor; import com.sissi.protocol.Protocol; /** * 同JID不同资源间转发 * * @author kim 2014年1月12日 */ public class Message2SelfProcessor extends ProxyProcessor { /* * 不含To或To.bare与当前JID.bare相同 * * @see com.sissi.pipeline.Input#input(com.sissi.context.JIDContext, com.sissi.protocol.Protocol) */ @Override public boolean input(JIDContext context, Protocol protocol) { return !protocol.to() || context.jid().like(protocol.getTo()) ? this.writeAndReturn(context, protocol.setFrom(context.jid())) : true; } private boolean writeAndReturn(JIDContext context, Protocol protocol) { super.findOne(super.build(protocol.getTo()), true).write(protocol); return false; } }