This is an automated email from the ASF dual-hosted git repository.

gnodet pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/karaf.git


The following commit(s) were added to refs/heads/master by this push:
     new 0ebb389  [KARAF-5690] Add module read from java.xml to java.logging
0ebb389 is described below

commit 0ebb38932180570968f7ee6d2a6502b4192d8118
Author: Guillaume Nodet <gno...@gmail.com>
AuthorDate: Fri May 18 07:28:38 2018 +0200

    [KARAF-5690] Add module read from java.xml to java.logging
---
 .../main/filtered-resources/resources/bin/karaf    |  1 +
 .../filtered-resources/resources/bin/karaf.bat     |  1 +
 create-tracker.script                              | 45 ++++++++++++++++++++++
 pom.xml                                            |  6 +--
 .../karaf/shell/impl/console/JLineTerminal.java    |  5 +++
 5 files changed, 55 insertions(+), 3 deletions(-)

diff --git 
a/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf 
b/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf
index 36c0ca6..2ee57d9 100644
--- a/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf
+++ b/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf
@@ -273,6 +273,7 @@ run() {
         if [ "${ROOT_INSTANCE_RUNNING}" = "false" ] || [ 
"${CHECK_ROOT_INSTANCE_RUNNING}" = "false" ] ; then
             if [ "${VERSION}" -gt "8" ]; then
                 ${KARAF_EXEC} "${JAVA}" ${JAVA_OPTS} \
+                    --add-reads=java.xml=java.logging \
                     
--add-exports=java.base/org.apache.karaf.specs.locator=java.xml,java.xml.ws,ALL-UNNAMED
 \
                     --patch-module 
java.base=lib/endorsed/org.apache.karaf.specs.locator-@@project.version@@.jar \
                     --patch-module 
java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-@@project.version@@.jar \
diff --git 
a/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf.bat 
b/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf.bat
index d87b929..f62f21f 100644
--- 
a/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf.bat
+++ 
b/assemblies/features/base/src/main/filtered-resources/resources/bin/karaf.bat
@@ -404,6 +404,7 @@ if "%KARAF_PROFILER%" == "" goto :RUN
         rem If major version is 1 (meaning Java 1.6, 1.7, 1.8), we use 
endorsed lib
         if %JAVA_VERSION% GTR 8 (
             "%JAVA%" %JAVA_OPTS% %OPTS% ^
+                --add-reads=java.xml=java.logging ^
                 
--add-exports=java.base/org.apache.karaf.specs.locator=java.xml,java.xml.ws,ALL-UNNAMED
 ^
                 --patch-module 
java.base=lib/endorsed/org.apache.karaf.specs.locator-@@project.version@@.jar ^
                 --patch-module 
java.xml=lib/endorsed/org.apache.karaf.specs.java.xml-@@project.version@@.jar ^
diff --git a/create-tracker.script b/create-tracker.script
new file mode 100644
index 0000000..8c04fff
--- /dev/null
+++ b/create-tracker.script
@@ -0,0 +1,45 @@
+create-tracker = {
+       trackingContext = $1
+       trackedClass = $2
+       serviceAdded = $3
+       serviceRemoved = $4
+       shellClassLoader = (($.session class) getClassLoader)
+       arrayClass = ($shellClassLoader loadClass java.lang.reflect.Array)
+       handler = {
+               proxy = $1
+               method = $2
+               arguments = $3
+               name = ($method name)
+               # echo "Invoking $name"
+               if { $name equals "addingService" } \
+               then {
+                       ref = ($arrayClass get $arguments 0)
+                       svc = ($.context getService $ref)
+                       $serviceAdded execute $.commandSession [ $svc ]
+                       $svc
+               } elif { $name equals "removedService" } \
+               then {
+                       ref = ($arrayClass get $arguments 0)
+                       svc = ($arrayClass get $arguments 1)
+                       $serviceRemoved execute $.commandSession [ $svc ]
+                       $.context ungetService $ref
+               }
+       }
+       # create handler
+       customizerClass = ($shellClassLoader loadClass 
org.osgi.util.tracker.ServiceTrackerCustomizer)
+       array = ([ $customizerClass ] toArray ($arrayClass newInstance 
"java.lang.Class" 1))
+       proxyClass = ($shellClassLoader loadClass java.lang.reflect.Proxy)
+       customizer = ($proxyClass newProxyInstance $shellClassLoader $array 
$handler)
+       # create tracker
+       trackerClass = ($shellClassLoader loadClass 
org.osgi.util.tracker.ServiceTracker)
+       constructor = ($trackerClass constructor 
org.osgi.framework.BundleContext java.lang.String 
org.osgi.util.tracker.ServiceTrackerCustomizer)
+       if { "java.lang.Class" equals ($trackedClass class) } \
+       then {
+               trackedClass = ($trackedClass name)
+       }
+       tracker = ($constructor newInstance $trackingContext $trackedClass 
$customizer)
+       $tracker
+}
+
+tracker = (create-tracker $.context "org.osgi.service.cm.ManagedService" { s = 
(($1 class) toString); echo "service-added $s" } { s = (($1 class) toString); 
echo "service-removed $s" })
+$tracker open true
diff --git a/pom.xml b/pom.xml
index 88684c4..0043a6c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -194,8 +194,8 @@
         <felix.fileinstall.version>3.6.4</felix.fileinstall.version>
         <felix.framework.version>5.6.10</felix.framework.version>
         
<felix.framework.security.version>2.6.0</felix.framework.security.version>
-        <felix.gogo.runtime.version>1.0.12</felix.gogo.runtime.version>
-        <felix.gogo.jline.version>1.0.12</felix.gogo.jline.version>
+        <felix.gogo.runtime.version>1.1.0-SNAPSHOT</felix.gogo.runtime.version>
+        <felix.gogo.jline.version>1.1.0-SNAPSHOT</felix.gogo.jline.version>
         <felix.httplite.version>0.1.6</felix.httplite.version>
         <felix.inventory.version>1.0.4</felix.inventory.version>
         <felix.plugin.version>3.5.0</felix.plugin.version>
@@ -261,7 +261,7 @@
         <jansi.version>1.17.1</jansi.version>
         <javassist.version>3.9.0.GA</javassist.version>
         <jetty.version>9.4.6.v20170531</jetty.version>
-        <jline.version>3.6.2</jline.version>
+        <jline.version>3.7.0</jline.version>
         <junit.version>4.12</junit.version>
         <jsw.version>3.2.3</jsw.version>
         <log4j.version>1.2.17</log4j.version>
diff --git 
a/shell/core/src/main/java/org/apache/karaf/shell/impl/console/JLineTerminal.java
 
b/shell/core/src/main/java/org/apache/karaf/shell/impl/console/JLineTerminal.java
index c38e835..df21c62 100644
--- 
a/shell/core/src/main/java/org/apache/karaf/shell/impl/console/JLineTerminal.java
+++ 
b/shell/core/src/main/java/org/apache/karaf/shell/impl/console/JLineTerminal.java
@@ -315,6 +315,11 @@ public class JLineTerminal implements Terminal, 
org.jline.terminal.Terminal {
     }
 
     @Override
+    public void pause(boolean wait) throws InterruptedException {
+        terminal.pause(wait);
+    }
+
+    @Override
     public void resume() {
         terminal.resume();
     }

-- 
To stop receiving notification emails like this one, please contact
gno...@apache.org.

Reply via email to