package org.signalml.app.worker.monitor.messages; import java.io.BufferedReader; import java.util.StringTokenizer; public class Netstring { private int length; private String data; private boolean correct; public Netstring() { } public Netstring(Message message) { this.data = message.toString(); this.length = data.length(); this.correct = true; } public void parseNetstring(String netstring) { StringTokenizer tokenizer = new StringTokenizer(netstring, ":"); String lengthToken = tokenizer.nextToken(); try { length = Integer.parseInt(lengthToken); data = netstring.substring(lengthToken.length() + 1, lengthToken.length() + 1 + length); String lastCharacter = netstring.substring(netstring.length() - 1, netstring.length()); if (lastCharacter.equals(",")) correct = true; } catch (Exception e) { correct = false; } } public String getData() { return data; } public boolean isCorrect() { return correct; } @Override public String toString() { return length + ":" + data + ","; } }