/* * ShellInput.java * * Copyright (C) 2009-12 by RStudio, Inc. * * Unless you have received this program directly from RStudio pursuant * to the terms of a commercial license agreement with RStudio, then * this program is licensed to you under the terms of version 3 of the * GNU Affero General Public License. This program is distributed WITHOUT * ANY EXPRESS OR IMPLIED WARRANTY, INCLUDING THOSE OF NON-INFRINGEMENT, * MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Please refer to the * AGPL (http://www.gnu.org/licenses/agpl-3.0.txt) for more details. * */ package org.rstudio.studio.client.common.shell; import com.google.gwt.core.client.JavaScriptObject; public class ShellInput extends JavaScriptObject { // This tells server to flush any queued input, ignoring sequence. Used // in the unlikely situation we need to wrap an int. public static final int FLUSH_SEQUENCE = -2; // Tells server to ignore sequences and use the input as it arrives. public static final int IGNORE_SEQUENCE = -1; protected ShellInput() { } public native static ShellInput create(int sequence, String text, boolean echoInput) /*-{ return { sequence: sequence, interrupt: false, text: text, echo_input: echoInput }; }-*/; public native static ShellInput create(String text, boolean echoInput) /*-{ return { sequence: -1, interrupt: false, text: text, echo_input: echoInput }; }-*/; public native static ShellInput createInterrupt() /*-{ return { sequence: -1, interrupt: true, text: "", echo_input: true }; }-*/; public native final boolean getSequence() /*-{ return this.sequence; }-*/; public native final boolean getInterrupt() /*-{ return this.interrupt; }-*/; public native final String getText() /*-{ return this.text; }-*/; public native final boolean getEchoInput() /*-{ return this.echo_input; }-*/; }