use of org.opennms.features.vaadin.surveillanceviews.ui.dashboard.SurveillanceViewGraphComponent in project opennms by OpenNMS.
the class SurveillanceView method setView.
/**
* Set the view to be displayed by this component.
*
* @param view the view to be displayed
*/
public void setView(View view) {
/**
* set the field
*/
m_view = view;
/**
* check whether refreshing is enabled
*/
m_refreshEnabled = (m_view.getRefreshSeconds() > 0);
m_countdown = m_view.getRefreshSeconds();
/**
* alter the table header
*/
m_surveillanceViewTableHeader.setCaptionText("Surveillance view: " + m_view.getName());
m_surveillanceViewTableHeader.select(m_view.getName());
m_surveillanceViewTableHeader.getNativeSelect().setEnabled(m_enabled);
/**
* remove old components
*/
removeAllComponents();
/**
* create the layout
*/
upperLayout = new VerticalLayout();
upperLayout.setId("surveillance-window");
upperLayout.setSpacing(false);
/**
* create surveillance view table...
*/
m_surveillanceViewTable = new SurveillanceViewTable(m_view, m_surveillanceViewService, m_dashboard, m_enabled);
/**
* ...and add the header and the table itself
*/
upperLayout.addComponent(new Label("<div id=\"surveillanceview\"/>", ContentMode.HTML));
upperLayout.addComponent(m_surveillanceViewTableHeader);
upperLayout.addComponent(m_surveillanceViewTable);
if (!m_dashboard) {
addComponent(upperLayout);
} else {
/**
* if dashboard should be displayed add the detail tables and components
*/
CssLayout leftCssLayout = new CssLayout() {
@Override
protected String getCss(Component c) {
return "padding-bottom: 6px;";
}
};
leftCssLayout.setPrimaryStyleName("col-md-11");
leftCssLayout.setId("dashboard-content");
CssLayout rightCssLayout = new CssLayout();
rightCssLayout.setPrimaryStyleName("col-md-1");
lowerLayout = new VerticalLayout();
lowerLayout.setSpacing(true);
/**
* create the tables and components
*/
SurveillanceViewAlarmTable surveillanceViewAlarmTable = new SurveillanceViewAlarmTable(m_surveillanceViewService, m_enabled);
SurveillanceViewNotificationTable surveillanceViewNotificationTable = new SurveillanceViewNotificationTable(m_surveillanceViewService, m_enabled);
SurveillanceViewNodeRtcTable surveillanceViewNodeRtcTable = new SurveillanceViewNodeRtcTable(m_surveillanceViewService, m_enabled);
SurveillanceViewGraphComponent surveillanceViewGraphComponent = new SurveillanceViewGraphComponent(m_surveillanceViewService, m_enabled);
/**
* add them to the layout
*/
surveillanceViewAlarmTable.setId("alarms");
lowerLayout.addComponent(surveillanceViewAlarmTable);
surveillanceViewNotificationTable.setId("notifications");
lowerLayout.addComponent(surveillanceViewNotificationTable);
surveillanceViewNodeRtcTable.setId("outages");
lowerLayout.addComponent(surveillanceViewNodeRtcTable);
surveillanceViewGraphComponent.setId("resourcegraphs");
lowerLayout.addComponent(surveillanceViewGraphComponent);
/**
* associate the detail tables and components with the surveillance view table
*/
m_surveillanceViewTable.addDetailsTable(surveillanceViewAlarmTable);
m_surveillanceViewTable.addDetailsTable(surveillanceViewNotificationTable);
m_surveillanceViewTable.addDetailsTable(surveillanceViewNodeRtcTable);
m_surveillanceViewTable.addDetailsTable(surveillanceViewGraphComponent);
/**
* add the layout to this component
*/
addComponent(lowerLayout);
leftCssLayout.addComponent(upperLayout);
leftCssLayout.addComponent(lowerLayout);
CssLayout resultsSidebar = new CssLayout();
resultsSidebar.setPrimaryStyleName("resource-graphs-sidebar hidden-print hidden-xs hidden-sm sidebar-fixed");
resultsSidebar.setId("results-sidebar");
resultsSidebar.addComponent(new Label("<ul class=\"nav nav-stacked\">\n" + " <li>\n" + " <a href=\"#surveillanceview\" data-target=\"#surveillanceview\">Surveillance View</a>\n" + " </li>\n" + " <li>\n" + " <a href=\"#alarms\" data-target=\"#alarms\">Alarms</a>\n" + " </li>\n" + " <li>\n" + " <a href=\"#notifications\" data-target=\"#notifications\">Notifications</a>\n" + " </li>\n" + " <li>\n" + " <a href=\"#outages\" data-target=\"#outages\">Outages</a>\n" + " </li>\n" + " <li>\n" + " <a href=\"#resourcegraphs\" data-target=\"#resourcegraphs\">Resource Graphs</a>\n" + " </li>\n" + " </ul>" + "<script type=\"text/javascript\">\n" + " $('body').scrollspy({ target: '#results-sidebar' });\n" + "</script>\n", ContentMode.HTML));
rightCssLayout.addComponent(resultsSidebar);
addComponent(leftCssLayout);
addComponent(rightCssLayout);
}
}
Aggregations