From 103f7df2976cfcdd522daf76b9b4f88483fce366 Mon Sep 17 00:00:00 2001 From: DmitriyMX Date: Sun, 18 Dec 2016 14:03:36 +0300 Subject: [PATCH] =?UTF-8?q?WebInterface:=20=D0=B2=20=D1=81=D0=BF=D0=B8?= =?UTF-8?q?=D1=81=D0=BA=D0=B5=20=D0=B1=D0=B0=D0=BD=D0=B4=D0=BB=D0=BE=D0=B2?= =?UTF-8?q?=20=D0=B1=D0=BE=D0=BB=D1=8C=D1=88=D0=B5=20=D0=BD=D0=B5=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BE=D0=B1=D1=80=D0=B0=D0=B6=D0=B0=D0=B5=D1=82=D1=81?= =?UTF-8?q?=D1=8F=20=D1=81=D0=B8=D1=81=D1=82=D0=B5=D0=BC=D0=BD=D1=8B=D0=B9?= =?UTF-8?q?=20=D0=B1=D0=B0=D0=BD=D0=B4=D0=BB=20=D0=B8=20=D0=B1=D0=B0=D0=BD?= =?UTF-8?q?=D0=B4=D0=BB=20=D0=B2=D0=B5=D0=B1=20=D0=B8=D0=BD=D1=82=D0=B5?= =?UTF-8?q?=D1=80=D1=84=D0=B5=D0=B9=D1=81=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Это связано с тем, что действия с системным бандлом вообще могут "грохнуть" весь АСис, а бандл веб интерфейса не может сам с собой что-либо делать. --- webinterface/pom.xml | 2 +- .../src/main/java/asys/webinterface/AjaxHandler.java | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/webinterface/pom.xml b/webinterface/pom.xml index 9de00c6..56d89f7 100644 --- a/webinterface/pom.xml +++ b/webinterface/pom.xml @@ -19,7 +19,7 @@ asys webinterface - 0.7-SNAPSHOT + 0.8-SNAPSHOT bundle diff --git a/webinterface/src/main/java/asys/webinterface/AjaxHandler.java b/webinterface/src/main/java/asys/webinterface/AjaxHandler.java index f81033b..f9b0a65 100644 --- a/webinterface/src/main/java/asys/webinterface/AjaxHandler.java +++ b/webinterface/src/main/java/asys/webinterface/AjaxHandler.java @@ -21,9 +21,11 @@ import java.util.Map; public class AjaxHandler implements HttpHandler { private static final Charset defaultCharset = Charset.forName("UTF-8"); private BundleContext context; + private int selfId; public AjaxHandler(BundleContext context) { this.context = context; + selfId = (int) context.getBundle().getBundleId(); } @Override @@ -72,6 +74,9 @@ public class AjaxHandler implements HttpHandler { JsonArray jsonArray = new JsonArray(); for (Bundle bundle : context.getBundle(0).getBundleContext().getBundles()) { + if (bundle.getBundleId() == 0 || bundle.getBundleId() == selfId) { + continue; + } JsonObject jsonObject = new JsonObject(); jsonObject.addProperty("id", bundle.getBundleId()); jsonObject.addProperty("state", bundle.getState()); @@ -88,7 +93,7 @@ public class AjaxHandler implements HttpHandler { private JsonObject bundleInfo(Bundle bundle) { JsonObject jsonObject = new JsonObject(); - if (bundle != null) { + if (bundle != null && bundle.getBundleId() != 0 && bundle.getBundleId() != selfId) { jsonObject.addProperty("id", bundle.getBundleId()); jsonObject.addProperty("state", bundle.getState()); jsonObject.addProperty("name", bundle.getHeaders().get("Bundle-Name"));