You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by el...@apache.org on 2015/12/31 02:19:52 UTC

[4/5] incubator-slider git commit: SLIDER-1041 Fix consistency for exports, enumerate all exports on HTML index.

SLIDER-1041 Fix consistency for exports, enumerate all exports on HTML index.


Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/d5b3669b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/d5b3669b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/d5b3669b

Branch: refs/heads/develop
Commit: d5b3669b6e36c7bc02a1045133310bc5ffb0c0ea
Parents: 9248431
Author: Josh Elser <el...@apache.org>
Authored: Tue Dec 29 22:18:15 2015 -0500
Committer: Josh Elser <el...@apache.org>
Committed: Wed Dec 30 16:20:59 2015 -0500

----------------------------------------------------------------------
 .../web/rest/publisher/PublisherResource.java   |  3 +--
 .../server/appmaster/web/view/IndexBlock.java   | 28 +++++++++++++++++++-
 2 files changed, 28 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d5b3669b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/rest/publisher/PublisherResource.java
----------------------------------------------------------------------
diff --git a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/rest/publisher/PublisherResource.java b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/rest/publisher/PublisherResource.java
index 58d6a8e..c727581 100644
--- a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/rest/publisher/PublisherResource.java
+++ b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/rest/publisher/PublisherResource.java
@@ -132,8 +132,7 @@ public class PublisherResource extends AbstractSliderResource {
   @Produces({MediaType.APPLICATION_JSON})
   public PublishedExportsSet gePublishedExports() {
 
-    PublishedExportsSet set = appState.getPublishedExportsSet();
-    return set.shallowCopy();
+    return appState.getPublishedExportsSet();
   }
 
   @GET

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/d5b3669b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/view/IndexBlock.java
----------------------------------------------------------------------
diff --git a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/view/IndexBlock.java b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/view/IndexBlock.java
index e118896..c3b9b6f 100644
--- a/slider-core/src/main/java/org/apache/slider/server/appmaster/web/view/IndexBlock.java
+++ b/slider-core/src/main/java/org/apache/slider/server/appmaster/web/view/IndexBlock.java
@@ -27,6 +27,9 @@ import org.apache.slider.api.StatusKeys;
 import org.apache.slider.api.types.ApplicationLivenessInformation;
 import org.apache.slider.api.types.RoleStatistics;
 import org.apache.slider.common.tools.SliderUtils;
+import org.apache.slider.core.registry.docstore.ExportEntry;
+import org.apache.slider.core.registry.docstore.PublishedExports;
+import org.apache.slider.core.registry.docstore.PublishedExportsSet;
 import org.apache.slider.providers.MonitorDetail;
 import org.apache.slider.providers.ProviderService;
 import org.apache.slider.server.appmaster.state.RoleStatus;
@@ -218,6 +221,13 @@ public class IndexBlock extends SliderHamletBlock {
     addProviderServiceOptions(providerService, ul, clusterStatus);
     ul._();
     provider_info._();
+
+    DIV<Hamlet> exports = html.div("exports");
+    exports.h3("Exports");
+    ul = html.ul();
+    enumeratePublishedExports(appState.getPublishedExportsSet(), ul);
+    ul._();
+    exports._();
   }
 
   @VisibleForTesting
@@ -275,5 +285,21 @@ public class IndexBlock extends SliderHamletBlock {
     }
   }
 
-
+  protected void enumeratePublishedExports(PublishedExportsSet exports, UL<Hamlet> ul) {
+    for(String key : exports.keys()) {
+      PublishedExports export = exports.get(key);
+      LI<UL<Hamlet>> item = ul.li();
+      item.span().$class("bold")._(export.description)._();
+      UL sublist = item.ul();
+      for (Entry<String, List<ExportEntry>> entry : export.entries.entrySet()) {
+        LI sublistItem = sublist.li()._(entry.getKey());
+        for (ExportEntry exportEntry : entry.getValue()) {
+          sublistItem._(exportEntry.getValue());
+        }
+        sublistItem._();
+      }
+      sublist._();
+      item._();
+    }
+  }
 }