*
* @see com.sissi.pipeline.Input#input(com.sissi.context.JIDContext, com.sissi.protocol.Protocol)
*/
public boolean input(JIDContext context, Protocol protocol) {
String host = protocol.cast(Si.class).setId(protocol.parent().getId()).host(super.build(protocol.parent().getTo()).asString(this.resource), context.jid().asString(this.resource));
context.write(new IQ().add(new Bytestreams().setSid(this.persistent.peek(MongoUtils.asMap(BasicDBObjectBuilder.start(Dictionary.FIELD_SID, protocol.parent().getId()).get()), MongoUtils.asMap(BasicDBObjectBuilder.start("$addToSet", BasicDBObjectBuilder.start(Dictionary.FIELD_HOST, host).get()).get())).get(Dictionary.FIELD_SID).toString()).add(this.streamhost, true)).setFrom(this.delegation).setId(host).setType(ProtocolType.SET));
return true;
}