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 2013/08/21 04:15:23 UTC
svn commit: r1516060 -
/karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java
Author: ffang
Date: Wed Aug 21 02:15:23 2013
New Revision: 1516060
URL: http://svn.apache.org/r1516060
Log:
[KARAF-2452]The --force option is not honored when designate bundle as a system bundle
Modified:
karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java
Modified: karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java
URL: http://svn.apache.org/viewvc/karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java?rev=1516060&r1=1516059&r2=1516060&view=diff
==============================================================================
--- karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java (original)
+++ karaf/branches/karaf-2.3.x/shell/osgi/src/main/java/org/apache/karaf/shell/osgi/BundleLevel.java Wed Aug 21 02:15:23 2013
@@ -44,21 +44,37 @@ public class BundleLevel extends BundleC
if (level == null) {
System.out.println("Level " + sl.getBundleStartLevel(bundle));
}
- else if ((level < 50) && sl.getBundleStartLevel(bundle) > 50){
+ else if ((level < 50) && (sl.getBundleStartLevel(bundle) > 50) && !force){
for (;;) {
StringBuffer sb = new StringBuffer();
System.err.println("You are about to designate bundle as a system bundle. Do you wish to continue (yes/no): ");
System.err.flush();
for (;;) {
- int c = System.in.read();
+ int c = session.getKeyboard().read();
if (c < 0) {
- return;
+ break;
}
- System.err.println((char) c);
if (c == '\r' || c == '\n') {
+ System.err.println();
+ System.err.flush();
break;
}
- sb.append((char) c);
+ if (c == 127 || c == 'b') {
+ System.err.print((char)'\b');
+ System.err.print((char)' ');
+ System.err.print((char)'\b');
+ } else {
+ System.err.print((char)c);
+ }
+
+ System.err.flush();
+ if (c == 127 || c == 'b') {
+ if (sb.length() > 0) {
+ sb.deleteCharAt(sb.length() - 1);
+ }
+ } else {
+ sb.append((char)c);
+ }
}
String str = sb.toString();
if ("yes".equals(str)) {