Fixing the YANG GUI a bit.
Change-Id: Ie0d5a92f7b149bd6a55b09e85a11e72f7ee356dc
diff --git a/apps/yang-gui/src/main/java/org/onosproject/yang/gui/YangModelMessageHandler.java b/apps/yang-gui/src/main/java/org/onosproject/yang/gui/YangModelMessageHandler.java
index d6bd67e..31ff7b0 100644
--- a/apps/yang-gui/src/main/java/org/onosproject/yang/gui/YangModelMessageHandler.java
+++ b/apps/yang-gui/src/main/java/org/onosproject/yang/gui/YangModelMessageHandler.java
@@ -53,15 +53,14 @@
// Table Column IDs
private static final String ID = "id";
- private static final String MODEL_ID = "modelId";
- private static final String MODULE = "module";
private static final String REVISION = "revision";
+ private static final String MODEL_ID = "modelId";
// TODO: fill out table columns as needed
private static final String SOURCE = "source";
private static final String[] COL_IDS = {
- ID, MODULE, REVISION, MODEL_ID
+ ID, REVISION, MODEL_ID
};
private static final String UTF8 = "UTF-8";
@@ -115,16 +114,15 @@
protected void populateTable(TableModel tm, ObjectNode payload) {
for (YangModel model : modelRegistry.getModels()) {
for (YangModuleId id : model.getYangModulesId()) {
- populateRow(tm.addRow(), model.hashCode(), id);
+ populateRow(tm.addRow(), modelId(model), id);
}
}
}
- private void populateRow(TableModel.Row row, int modelId, YangModuleId moduleId) {
- row.cell(ID, "EM" + moduleId.hashCode())
- .cell(MODULE, moduleId.moduleName())
+ private void populateRow(TableModel.Row row, String modelId, YangModuleId moduleId) {
+ row.cell(ID, moduleId.moduleName())
.cell(REVISION, moduleId.revision())
- .cell(MODEL_ID, "YM" + modelId);
+ .cell(MODEL_ID, modelId);
}
}
@@ -137,15 +135,15 @@
@Override
public void process(ObjectNode payload) {
- String id = string(payload, MODEL_ID);
- String name = string(payload, MODULE);
- YangModule module = getModule(id, name);
+ String name = string(payload, ID);
+ String modelId = string(payload, MODEL_ID);
+ YangModule module = getModule(modelId, name);
ObjectNode data = objectNode();
- data.put(ID, id);
+ data.put(ID, name);
if (module != null) {
- data.put(MODULE, module.getYangModuleId().moduleName());
data.put(REVISION, module.getYangModuleId().revision());
+ data.put(MODEL_ID, modelId);
ArrayNode source = arrayNode();
data.set(SOURCE, source);
@@ -174,11 +172,11 @@
}
- private YangModule getModule(String id, String name) {
- int nid = Integer.parseInt(id.substring(2));
- log.info("Got {}; {}", id, nid);
+ private YangModule getModule(String modelId, String name) {
+ int nid = Integer.parseInt(modelId.substring(2));
+ log.info("Got {}; {}", modelId, nid);
YangModel model = modelRegistry.getModels().stream()
- .filter(m -> m.hashCode() == nid)
+ .filter(m -> modelId(m).equals(modelId))
.findFirst().orElse(null);
if (model != null) {
log.info("Got model");
@@ -188,4 +186,8 @@
}
return null;
}
+
+ private String modelId(YangModel m) {
+ return "YM" + Math.abs(m.hashCode());
+ }
}
diff --git a/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.html b/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.html
index 12b267c..2088b66 100644
--- a/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.html
+++ b/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.html
@@ -15,8 +15,7 @@
<div class="table-header" onos-sortable-header>
<table>
<tr>
- <td colId="id" col-width="130px" sortable>ID</td>
- <td colId="module" sortable>Module</td>
+ <td colId="id" sortable>Module</td>
<td colId="revision" sortable>Revision</td>
<td colId="modelId" col-width="130px" sortable>Model ID</td>
<!-- TODO: More columns to be added -->
@@ -38,7 +37,6 @@
ng-class="{selected: ymodel.id === selId}"
ng-repeat-complete row-id="{{ymodel.id}}">
<td>{{ymodel.id}}</td>
- <td>{{ymodel.module}}</td>
<td>{{ymodel.revision}}</td>
<td>{{ymodel.modelId}}</td>
<!-- TODO: add more columns here -->
diff --git a/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.js b/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.js
index a106138..26e2828 100644
--- a/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.js
+++ b/apps/yang-gui/src/main/resources/app/view/yangModel/yangModel.js
@@ -110,14 +110,6 @@
});
}
- function addModuleRow(tbody, module) {
- var tr = tbody.append('tr');
- moduleCols.forEach(function (col) {
- tr.append('td').attr('width', 160)
- .html('<a href="/v1/yang/modules/' + module.name + '" target="_model">' + module[col] + "</a>");
- });
- }
-
function populateBottom(source) {
var src = bottom.select('pre');
src.html(source.join('\n'));
@@ -179,7 +171,7 @@
// row selection callback
function selCb($event, row) {
if ($scope.selId) {
- wss.sendEvent(detailsReq, { modelId: row.modelId, module: row.module });
+ wss.sendEvent(detailsReq, { modelId: row.modelId, id: row.id });
} else {
$scope.hidePanel();
}