public byte[] format(final Sse.Event event) throws Exception { // comment? data = event.comment() .map(comment -> ByteSource.concat(COMMENT, bytes(comment), NL)) .orElse(ByteSource.empty()); // id? data = event.id() .map(id -> ByteSource.concat(data, ID, bytes(id.toString()), NL)) .orElse(data); // event? data = event.name() .map(name -> ByteSource.concat(data, EVENT, bytes(name), NL)) .orElse(data); // retry? data = event.retry() .map(retry -> ByteSource.concat(data, RETRY, bytes(Long.toString(retry)), NL)) .orElse(data); Optional<Object> value = event.data(); if (value.isPresent()) { render(value.get()); } data = ByteSource.concat(data, NL); byte[] bytes = data.read(); data = null; return bytes; }
public byte[] format(final Sse.Event event) throws Exception { // comment? data = event.comment() .map(comment -> ByteSource.concat(COMMENT, bytes(comment), NL)) .orElse(ByteSource.empty()); // id? data = event.id() .map(id -> ByteSource.concat(data, ID, bytes(id.toString()), NL)) .orElse(data); // event? data = event.name() .map(name -> ByteSource.concat(data, EVENT, bytes(name), NL)) .orElse(data); // retry? data = event.retry() .map(retry -> ByteSource.concat(data, RETRY, bytes(Long.toString(retry)), NL)) .orElse(data); Optional<Object> value = event.data(); if (value.isPresent()) { render(value.get()); } data = ByteSource.concat(data, NL); byte[] bytes = data.read(); data = null; return bytes; }