public DiscoWorker(final ReadableByteChannel readChannel, final WritableByteChannel writeChannel) {
this.discoIOChannel = new DiscoIOChannel(readChannel, writeChannel, new DiscoWorkerDecoder().setListener(this));
this.map = null;
this.reduce = null;
this.workerAnnounceEncoder = new WorkerAnnounceEncoder();
this.requestTaskEncoder = new RequestTaskEncoder();
this.outputEncoder = new OutputEncoder();
this.doneEncoder = new DoneEncoder();
this.errorEncoder = new ErrorEncoder();
this.fatalEncoder = new FatalEncoder();