001package org.kuali.common.util.stream;
002
003import org.codehaus.plexus.util.cli.StreamConsumer;
004
005import com.google.common.base.Optional;
006
007public class StringStreamConsumer implements StreamConsumer {
008
009        private final StringBuilder builder = new StringBuilder();
010
011        private static final String LS = System.getProperty("line.separator");
012
013        @Override
014        public void consumeLine(String line) {
015                builder.append(line).append(LS);
016        }
017
018        public Optional<String> getOutput() {
019                if (builder.length() == 0) {
020                        return Optional.<String> absent();
021                } else {
022                        return Optional.of(builder.toString());
023                }
024        }
025
026}