[MSHARED-562] added support for bright colors

git-svn-id: https://svn.apache.org/repos/asf/maven/shared/trunk@1752080 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/main/java/org/apache/maven/shared/utils/logging/Style.java b/src/main/java/org/apache/maven/shared/utils/logging/Style.java
index 46e0df4..81b4d64 100644
--- a/src/main/java/org/apache/maven/shared/utils/logging/Style.java
+++ b/src/main/java/org/apache/maven/shared/utils/logging/Style.java
@@ -42,14 +42,20 @@
 
     private final boolean bold;
 
+    private final boolean bright;
+
     private final Color color;
 
+    private final boolean bgBright;
+
     private final Color bgColor;
 
     Style( String defaultValue )
     {
         boolean currentBold = false;
+        boolean currentBright = false;
         Color currentColor = null;
+        boolean currentBgBright = false;
         Color currentBgColor = null;
 
         String value = System.getProperty( "style." + name().toLowerCase( Locale.ENGLISH ),
@@ -63,16 +69,29 @@
             }
             else if ( token.startsWith( "bg" ) )
             {
-                currentBgColor = toColor( token.substring( 2 ) );
+                token = token.substring( 2 );
+                if ( token.startsWith( "bright" ) )
+                {
+                    currentBgBright = true;
+                    token = token.substring( 6 );
+                }
+                currentBgColor = toColor( token );
             }
             else
             {
+                if ( token.startsWith( "bright" ) )
+                {
+                    currentBright = true;
+                    token = token.substring( 6 );
+                }
                 currentColor = toColor( token );
             }
         }
 
         this.bold = currentBold;
+        this.bright = currentBright;
         this.color = currentColor;
+        this.bgBright = currentBgBright;
         this.bgColor = currentBgColor;
     }
 
@@ -96,11 +115,25 @@
         }
         if ( color != null )
         {
-            ansi.fg( color );
+            if ( bright )
+            {
+                ansi.fgBright( color );
+            }
+            else
+            {
+                ansi.fg( color );
+            }
         }
         if ( bgColor != null )
         {
-            ansi.bg( bgColor );
+            if ( bgBright )
+            {
+                ansi.bgBright( bgColor );
+            }
+            else
+            {
+                ansi.bg( bgColor );
+            }
         }
     }
 
@@ -122,6 +155,10 @@
             {
                 sb.append(  ',' );
             }
+            if ( bright )
+            {
+                sb.append( "bright" );
+            }
             sb.append( color.name() );
         }
         if ( bgColor != null )
@@ -131,6 +168,10 @@
                 sb.append(  ',' );
             }
             sb.append( "bg" );
+            if ( bgBright )
+            {
+                sb.append( "bright" );
+            }
             sb.append( bgColor.name() );
         }
         return name() + '=' + sb;