001package org.crsh.shell.impl.command; 002 003import org.crsh.shell.ShellProcessContext; 004import org.crsh.shell.ShellResponse; 005import org.crsh.text.Text; 006 007import java.io.IOException; 008 009/** 010* @author Julien Viet 011*/ 012class CRaSHResponseProcess extends CRaSHProcess { 013 014 /** . */ 015 private final StringBuilder msg; 016 017 /** . */ 018 private final ShellResponse response; 019 020 public CRaSHResponseProcess(CRaSHSession session, String request, StringBuilder msg, ShellResponse response) { 021 super(session, request); 022 023 // 024 this.msg = msg; 025 this.response = response; 026 } 027 028 @Override 029 ShellResponse doInvoke(ShellProcessContext context) throws InterruptedException { 030 if (msg.length() > 0) { 031 try { 032 context.write(Text.create(msg)); 033 } 034 catch (IOException ignore) { 035 } 036 } 037 return response; 038 } 039}