Skip to content

Commit

Permalink
Adding some colors to shell messages
Browse files Browse the repository at this point in the history
  • Loading branch information
gastaldi committed Oct 16, 2013
1 parent ab0f1c1 commit f608430
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 5 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,14 @@ public CommandResult execute(CommandInvocation commandInvocation) throws IOExcep
failure = (result instanceof Failed);
if (result != null && result.getMessage() != null)
{
console.out().println(result.getMessage());
if (failure)
{
ShellMessages.error(console.err(), result.getMessage());
}
else
{
ShellMessages.success(console.out(), result.getMessage());
}
}
ShellContext context = interaction.getContext();
Object selection = context.getSelection();
Expand Down Expand Up @@ -302,7 +309,7 @@ public CommandResult execute(CommandInvocation commandInvocation) throws IOExcep
// Display the error messages
for (String error : errors)
{
console.err().println("**ERROR**: " + error);
ShellMessages.error(console.err(), error);
}
}
return failure ? CommandResult.FAILURE : CommandResult.SUCCESS;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
/*
* Copyright 2012 Red Hat, Inc. and/or its affiliates.
*
* Licensed under the Eclipse Public License version 1.0, available at
* http://www.eclipse.org/legal/epl-v10.html
*/

package org.jboss.forge.addon.shell;

import org.jboss.aesh.console.reader.AeshPrintStream;
import org.jboss.aesh.terminal.CharacterType;
import org.jboss.aesh.terminal.Color;
import org.jboss.aesh.terminal.TerminalString;

/**
* Used to generate properly formatted status messages.
*
* @author <a href="mailto:lincolnbaxter@gmail.com">Lincoln Baxter, III</a>
*
*/
public abstract class ShellMessages
{
public static void success(final AeshPrintStream writer, final String message)
{
writer.print(new TerminalString("***SUCCESS*** ", Color.DEFAULT_BG, Color.GREEN_TEXT, CharacterType.PLAIN));
writer.println(message);
}

public static void error(final AeshPrintStream writer, final String message)
{
writer.print(new TerminalString("***ERROR*** ", Color.DEFAULT_BG, Color.RED_TEXT, CharacterType.PLAIN));
writer.println(message);
}

public static void info(final AeshPrintStream writer, final String message)
{
writer.print(new TerminalString("***INFO*** ", Color.DEFAULT_BG, Color.BLUE_TEXT, CharacterType.PLAIN));
writer.println(message);
}

public static void warn(final AeshPrintStream writer, final String message)
{
writer.print(new TerminalString("***WARNING*** ", Color.DEFAULT_BG, Color.YELLOW_TEXT, CharacterType.PLAIN));
writer.println(message);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
import org.jboss.forge.addon.ui.input.UIInputMany;
import org.jboss.forge.addon.ui.metadata.UICommandMetadata;
import org.jboss.forge.addon.ui.metadata.WithAttributes;
import org.jboss.forge.addon.ui.output.UIOutput;
import org.jboss.forge.addon.ui.result.Result;
import org.jboss.forge.addon.ui.result.Results;
import org.jboss.forge.addon.ui.util.Metadata;
Expand Down Expand Up @@ -75,7 +76,10 @@ public Result execute(ShellContext context) throws Exception
}
else
{
result = Results.success(listMany(newResource.listResources(), context));
Shell provider = context.getProvider();
UIOutput output = provider.getOutput();
output.out().println(listMany(newResource.listResources(), context));
result = Results.success();
}
return result;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@
package org.jboss.forge.addon.shell.commands;

import org.jboss.forge.addon.resource.FileResource;
import org.jboss.forge.addon.shell.Shell;
import org.jboss.forge.addon.shell.ui.AbstractShellCommand;
import org.jboss.forge.addon.shell.ui.ShellContext;
import org.jboss.forge.addon.ui.context.UIBuilder;
import org.jboss.forge.addon.ui.context.UIContext;
import org.jboss.forge.addon.ui.metadata.UICommandMetadata;
import org.jboss.forge.addon.ui.output.UIOutput;
import org.jboss.forge.addon.ui.result.Result;
import org.jboss.forge.addon.ui.result.Results;
import org.jboss.forge.addon.ui.util.Metadata;
Expand Down Expand Up @@ -40,8 +42,11 @@ public UICommandMetadata getMetadata(UIContext context)
@Override
public Result execute(ShellContext shellContext) throws Exception
{
FileResource<?> currentResource = shellContext.getProvider().getCurrentResource();
return Results.success(currentResource.getFullyQualifiedName());
Shell provider = shellContext.getProvider();
UIOutput output = provider.getOutput();
FileResource<?> currentResource = provider.getCurrentResource();
output.out().println(currentResource.getFullyQualifiedName());
return Results.success();
}

}

0 comments on commit f608430

Please sign in to comment.