@Override
    public void process(Exchange e) throws Exception {

        String body = e.getIn().getBody(String.class);
        body = body.replaceAll("\\[", "");
        body = body.replaceAll("\\]", "");
        StringTokenizer tok = new StringTokenizer(body, ",");
        Date date=null;
        String account=null;
        String money=null;
        while (tok.hasMoreTokens()) {
            String token = tok.nextToken();
            token = token.trim();
            if (token.contains("key:")) {
                String sub =token.substring(token.indexOf(":")+1);
                date = new Date(Long.parseLong(sub.trim()));
            } else if (token.contains("value:")) {
                account =token.substring(token.indexOf(":")+1);
            } else if (token.contains("id:")) {
            } else {
                if (token.length()>0 ) {
                    try {
                        Double.parseDouble(token);
                        money = token;
                    } catch (NumberFormatException nfe) {
                    }
                }
            }

        }
        e.getIn().setHeader("Account", account);
        if (date==null)return;
        String dateString = dateFormatter.format(date);
        String newline = dateString + "," + account + "," + money;
        e.getIn().setBody(newline);
        e.getIn().setHeader("Account", account);
    }