Jogar a saida de uma classe para Outra [RESOLVIDO]

Pessoal, dei uma pesquisada aki, mas nao consegui achar, eh o seguinte:

Estou desenvolvendo um projeto onde ha um processo servidor e um cliente, que eh um terminal em modo texto. Bom, atualmente o processo servidor, executa impressoes na tela onde ele esta sendo executado. Pois bem, eu gostaria que ao inves de imprimir esses dados na tela, ele fosse armazendando numa variavel (nao sei que tipo usar) e qndo algem logasse pelo terminal, ele imprimiria lah e limparia a var lah no servidor.

Eu estou usando RMI, no servidor, todas as mensagens sao printadas pela funcao abaixo:

	private void printNo(Integer level, String msg) {
		String saida = "";
		for (int i = 0; i &lt level - 1; i++) {
			saida += "|     ";
		}
		if (level != 0) {
			saida += "+----";
		}
		if (saida.equals("")) {
			saida += "+";
		}
		saida += " " + msg;
		System.out.println(saida);
	}

Isso produz uma saida mais ou menos assim:

+ INICIANDO O SERVIDOR
+---- Conectando ao Banco de Dados
+---- Instanciando Objetos
|     +---- UsuarioManager
|     +---- BairroManager
+---- Publicando recursos no RMI
|     +---- UsuarioManager
|     +---- BairroManager
+ SERVIDOR EM EXECUÇÃO

Pode notar que lah na minha funcao tem um System.out.println(…), por isso esta saindo no terminal do servidor, eu gostaria que fosse armazenado em um tipo especial (eu tentei OutputStream e também PrintStream) mas nao soube como usar.

Se eu tiver como armazena-las, jogar para o terminal remoto eh simples para mim.

agradeço a ajuda de todos

[]s

prq vc nao armazena numa StringBuilder?

Se eu for armazendar numa Stringbuilder eu vou ter que controlar os retornos de linha, queria algo mais automatizado…

Cara, faz esse método retornar uma String (a que você imprime na tela) e aí o método que chamava esse printNo vai adicionando ao StringBuilder… Não tem que controlar nada… já guarda formatado… Agora, se por algum motivo você precisa das String separadamente, guarda num ArrayList…

Falou,

Armando