use of org.jboss.hal.core.modelbrowser.ModelBrowserPath in project console by hal.
the class HeaderView method updateBreadcrumb.
@Override
public void updateBreadcrumb(ModelBrowserPath path) {
clearBreadcrumb();
if (path == null || path.isEmpty()) {
// deselection
breadcrumb.insertBefore(li().textContent(resources.constants().nothingSelected()).element(), breadcrumbToolsItem);
} else {
ModelBrowser modelBrowser = path.getModelBrowser();
for (Iterator<Segment[]> iterator = path.iterator(); iterator.hasNext(); ) {
Segment[] segments = iterator.next();
Segment key = segments[0];
Segment value = segments[1];
boolean link = value != ModelBrowserPath.WILDCARD && iterator.hasNext();
HTMLElement valueContainer;
HTMLElement li = li().add(span().css(CSS.key).add(a().css(clickable).on(click, event -> modelBrowser.select(key.id, true)).textContent(key.text))).add(span().css(arrow).innerHtml(SafeHtmlUtils.fromSafeConstant("⇒"))).add(valueContainer = span().css(CSS.value).element()).element();
if (link) {
valueContainer.appendChild(valueContainer = a().css(clickable).on(click, event -> modelBrowser.select(value.id, true)).element());
}
valueContainer.textContent = value.text;
breadcrumb.insertBefore(li, breadcrumbToolsItem);
}
}
}
use of org.jboss.hal.core.modelbrowser.ModelBrowserPath in project console by hal.
the class Tracker method onModelBrowserAddress.
@Override
public void onModelBrowserAddress(ModelBrowserPathEvent event) {
ModelBrowserPath path = event.getPath();
StringBuilder page = new StringBuilder();
page.append("/" + NameTokens.MODEL_BROWSER);
for (ModelBrowserPath.Segment[] segments : path) {
append(page, segments[0].text, segments[1] != null ? segments[1].text : null);
}
logger.debug("Track model browser selection {}", page);
ga.trackPageView(page.toString());
}
Aggregations