package com.sissi.pipeline.in.iq.block; import com.sissi.context.JID; import com.sissi.context.JIDContext; import com.sissi.pipeline.in.ProxyProcessor; import com.sissi.protocol.Protocol; import com.sissi.protocol.ProtocolType; import com.sissi.protocol.iq.block.BlockList; import com.sissi.protocol.iq.block.BlockListItem; import com.sissi.ucenter.block.BlockContext; /** * 黑名单列表 * * @author kim 2013年12月6日 */ public class BlockedListProcessor extends ProxyProcessor { private final BlockContext blockContext; public BlockedListProcessor(BlockContext blockContext) { super(); this.blockContext = blockContext; } @Override public boolean input(JIDContext context, Protocol protocol) { BlockList list = protocol.cast(BlockList.class).clear(); for (JID each : this.blockContext.iBlockWho(context.jid())) { // Same domain list.add(new BlockListItem(each.domain(context.domain()))); } context.write(list.parent().reply().setType(ProtocolType.RESULT)); return true; } }