You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@felix.apache.org by gn...@apache.org on 2017/03/22 19:54:38 UTC
svn commit: r1788155 - in /felix/trunk/gogo/jline: pom.xml
src/main/java/org/apache/felix/gogo/jline/Posix.java
Author: gnodet
Date: Wed Mar 22 19:54:38 2017
New Revision: 1788155
URL: http://svn.apache.org/viewvc?rev=1788155&view=rev
Log:
[FELIX-5598][gogo][jline] Support the JLine ttop function if available
Modified:
felix/trunk/gogo/jline/pom.xml
felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Posix.java
Modified: felix/trunk/gogo/jline/pom.xml
URL: http://svn.apache.org/viewvc/felix/trunk/gogo/jline/pom.xml?rev=1788155&r1=1788154&r2=1788155&view=diff
==============================================================================
--- felix/trunk/gogo/jline/pom.xml (original)
+++ felix/trunk/gogo/jline/pom.xml Wed Mar 22 19:54:38 2017
@@ -54,7 +54,7 @@
<dependency>
<groupId>org.jline</groupId>
<artifactId>jline</artifactId>
- <version>3.0.0</version>
+ <version>3.2.0</version>
</dependency>
<dependency>
<groupId>org.apache.sshd</groupId>
@@ -78,6 +78,7 @@
<Import-Package>
!org.apache.felix.gogo.runtime.threadio,
org.apache.felix.service.*;version="[1.0,2.0)",
+ org.jline*;version="[3.0,4)",
*
</Import-Package>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
Modified: felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Posix.java
URL: http://svn.apache.org/viewvc/felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Posix.java?rev=1788155&r1=1788154&r2=1788155&view=diff
==============================================================================
--- felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Posix.java (original)
+++ felix/trunk/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Posix.java Wed Mar 22 19:54:38 2017
@@ -82,6 +82,7 @@ import org.jline.builtins.Options;
import org.jline.builtins.Source;
import org.jline.builtins.Source.PathSource;
import org.jline.builtins.Source.StdInSource;
+import org.jline.builtins.TTop;
import org.jline.terminal.Attributes;
import org.jline.terminal.Terminal;
import org.jline.utils.AttributedString;
@@ -98,12 +99,29 @@ import org.jline.utils.OSUtils;
*/
public class Posix {
- static final String[] functions = {
- "cat", "echo", "grep", "sort", "sleep", "cd", "pwd", "ls",
- "less", "watch", "nano", "tmux",
- "head", "tail", "clear", "wc",
- "date"
- };
+ static final String[] functions;
+
+ static {
+ // TTop function is new in JLine 3.2
+ String[] func;
+ try {
+ Class cl = TTop.class;
+ func = new String[] {
+ "cat", "echo", "grep", "sort", "sleep", "cd", "pwd", "ls",
+ "less", "watch", "nano", "tmux",
+ "head", "tail", "clear", "wc",
+ "date", "ttop",
+ };
+ } catch (Throwable t) {
+ func = new String[] {
+ "cat", "echo", "grep", "sort", "sleep", "cd", "pwd", "ls",
+ "less", "watch", "nano", "tmux",
+ "head", "tail", "clear", "wc",
+ "date"
+ };
+ }
+ functions = func;
+ }
public static final String DEFAULT_LS_COLORS = "dr=1;91:ex=1;92:sl=1;96:ot=34;43";
public static final String DEFAULT_GREP_COLORS = "mt=1;31:fn=35:ln=32:se=36";
@@ -196,6 +214,9 @@ public class Posix {
case "tmux":
tmux(session, process, argv);
break;
+ case "ttop":
+ ttop(session, process, argv);
+ break;
case "clear":
clear(session, process, argv);
break;
@@ -797,6 +818,10 @@ public class Posix {
}
}
+ protected void ttop(final CommandSession session, Process process, String[] argv) throws Exception {
+ TTop.ttop(Shell.getTerminal(session), process.out(), process.err(), argv);
+ }
+
protected void nano(final CommandSession session, Process process, String[] argv) throws Exception {
final String[] usage = {
"nano - edit files",