You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by ff...@apache.org on 2012/12/11 02:13:16 UTC
svn commit: r1419963 -
/karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java
Author: ffang
Date: Tue Dec 11 01:13:15 2012
New Revision: 1419963
URL: http://svn.apache.org/viewvc?rev=1419963&view=rev
Log:
[KARAF-2052] Progress bar doesn't display properly on 80 char consoles
Modified:
karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java
Modified: karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java
URL: http://svn.apache.org/viewvc/karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java?rev=1419963&r1=1419962&r2=1419963&view=diff
==============================================================================
--- karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java (original)
+++ karaf/trunk/main/src/main/java/org/apache/karaf/main/StartupListener.java Tue Dec 11 01:13:15 2012
@@ -87,15 +87,17 @@ class StartupListener implements Framewo
public void showProgressBar(int done, int total) {
int percent = (done * 100) / total;
+ // progress bar can only have 73 characters so that 80 char wide terminal will display properly
+ int scaledPercent = (int) (73.0 * (percent / 100.0));
// Make sure we do not go backwards with percentage
if (percent > currentPercentage) {
currentPercentage = percent;
StringBuilder sb = new StringBuilder();
sb.append(String.format("\r%3d%% [", percent));
- for (int i = 0; i < 100; i++) {
- if (i < percent) {
+ for (int i = 0; i < 73; i++) {
+ if (i < scaledPercent) {
sb.append('=');
- } else if (i == percent) {
+ } else if (i == scaledPercent) {
sb.append('>');
} else {
sb.append(' ');
@@ -114,4 +116,4 @@ class StartupListener implements Framewo
int numActive;
int numTotal;
}
-}
\ No newline at end of file
+}