package com.sissi.pipeline.in.iq.si; import com.sissi.context.JIDContext; import com.sissi.pipeline.Input; import com.sissi.protocol.Protocol; import com.sissi.protocol.iq.si.Si; import com.sissi.server.exchange.TracerContext; /** * SI追踪 * * @author kim 2014年5月8日 */ public class SiTraceProcessor implements Input { private final TracerContext tracerContext; public SiTraceProcessor(TracerContext tracerContext) { super(); this.tracerContext = tracerContext; } @Override public boolean input(JIDContext context, Protocol protocol) { Si si = protocol.cast(Si.class); return si.file() ? this.trace(context, si) : true; } private boolean trace(JIDContext context, Si si) { return this.tracerContext.trace(si); } }