List of usage examples for io.vertx.core.eventbus MessageCodec MessageCodec
MessageCodec
From source file:eu.rethink.mn.pipeline.PipeRegistry.java
License:Apache License
public PipeRegistry(Vertx vertx, ClusterManager mgr, String domain) { this.domain = domain; this.mgr = mgr; this.eb = vertx.eventBus(); this.eb.registerDefaultCodec(PipeContext.class, new MessageCodec<PipeContext, PipeContext>() { @Override//from w w w . j a va 2 s . co m public byte systemCodecID() { return -1; } @Override public String name() { return PipeContext.class.getName(); } @Override public PipeContext transform(PipeContext ctx) { return ctx; } @Override public void encodeToWire(Buffer buffer, PipeContext ctx) { final String msg = ctx.getMessage().toString(); logger.info("encodeToWire: " + msg); buffer.appendString(msg); } @Override public PipeContext decodeFromWire(int pos, Buffer buffer) { final String msg = buffer.getString(0, buffer.length() - 1); logger.info("decodeFromWire: " + msg); return null; //not needed in this architecture } }); this.components = new HashMap<String, IComponent>(); this.sessions = new HashMap<String, PipeSession>(); this.urlSpace = mgr.getSyncMap("urlSpace"); }