/* * Licensed Materials - Property of Perforce Software, Inc. * © Copyright Perforce Software, Inc. 2014, 2021 * © Copyright IBM Corp. 2009, 2014 * © Copyright ILOG 1996, 2009 * All Rights Reserved. * * Note to U.S. Government Users Restricted Rights: * The Software and Documentation were developed at private expense and * are "Commercial Items" as that term is defined at 48 CFR 2.101, * consisting of "Commercial Computer Software" and * "Commercial Computer Software Documentation", as such terms are * used in 48 CFR 12.212 or 48 CFR 227.7202-1 through 227.7202-4, * as applicable. */ package monitoring.web; import java.util.List; import monitoring.web.action.TableActionProvider; import monitoring.web.action.TreeActionProvider; import monitoring.web.model.integration.IntegratedTableDataModelProviderImpl; import monitoring.web.model.integration.IntegratedTreeDataModelProviderImpl; import monitoring.web.model.integration.beans.TGOObject; import org.apache.myfaces.trinidad.model.TreeModel; /** * Abstraction that holds references to all data models providers and consequently * all data models used by the sample. */ public class SampleDataModels { /** * Provider of Table Data Model that is used to populate the Network Module's Managed * Objects table view. */ private IntegratedTableDataModelProviderImpl networkObjectsTableModelProvider; /** * Provider of Tree Data Model that is used to populate the Network Module's Network * tree view. */ private IntegratedTreeDataModelProviderImpl networkTreeModelProvider; /** * Provider of Table Data Model that is used to populate the Inventory Module's * table view. */ private IntegratedTableDataModelProviderImpl inventoryObjectsTableModelProvider; /** * Provider of Tree Data Model that is used to populate the Inventory Module's Inventory * tree view. */ private IntegratedTreeDataModelProviderImpl inventoryTreeModelProvider; /** * Provider of Table Data Model that is used to populate the Service Module's Service * Objects table view. */ private IntegratedTableDataModelProviderImpl serviceObjectsTableModelProvider; /** * Provider of Tree Data Model that is used to populate the Service Module's Service * tree view. */ private IntegratedTreeDataModelProviderImpl serviceTreeModelProvider; /** * Provider of Table Data Model that is used to populate the shared Alarms table view. */ private IntegratedTableDataModelProviderImpl alarmsTableModelProvider; /** * Creates all model providers. */ public SampleDataModels() { networkObjectsTableModelProvider = new IntegratedTableDataModelProviderImpl(); networkTreeModelProvider = new IntegratedTreeDataModelProviderImpl(); inventoryObjectsTableModelProvider = new IntegratedTableDataModelProviderImpl(); inventoryTreeModelProvider = new IntegratedTreeDataModelProviderImpl(); serviceObjectsTableModelProvider = new IntegratedTableDataModelProviderImpl(); serviceTreeModelProvider = new IntegratedTreeDataModelProviderImpl(); alarmsTableModelProvider = new IntegratedTableDataModelProviderImpl(); } ////////////////////////////////////////////////////////////////////////////// //Initialization ////////////////////////////////////////////////////////////////////////////// /** * Initializes all data model providers. */ public void initialize(AbstractSampleContext sampleContext) { //Table Models TableActionProvider tableActions = sampleContext.getActionProviders().getTableActions(); tableActions.initializeAlarmsTable(); tableActions.initializeNetworkObjectsTable(); tableActions.initializeInventoryObjectsTable(); tableActions.initializeServiceObjectsTable(); //Tree Models TreeActionProvider treeActions = sampleContext.getActionProviders().getTreeActions(); treeActions.initializeNetworkObjectsTree(); treeActions.initializeInventoryObjectsTree(); treeActions.initializeServiceObjectsTree(); } ////////////////////////////////////////////////////////////////////////////// //Accessors ////////////////////////////////////////////////////////////////////////////// //Models public List<TGOObject> getNetworkObjectsTableModel() { return networkObjectsTableModelProvider.getTableDataModel(); } public List<TGOObject> getServiceObjectsTableModel() { return serviceObjectsTableModelProvider.getTableDataModel(); } public List<TGOObject> getInventoryObjectsTableModel() { return inventoryObjectsTableModelProvider.getTableDataModel(); } public List<TGOObject> getAlarmsTableModel() { return alarmsTableModelProvider.getTableDataModel(); } public TreeModel getInventoryTreeModel() { return inventoryTreeModelProvider.getTreeDataModel(); } public TreeModel getNetworkTreeModel() { return networkTreeModelProvider.getTreeDataModel(); } public TreeModel getServiceTreeModel() { return serviceTreeModelProvider.getTreeDataModel(); } //Model Providers public IntegratedTableDataModelProviderImpl getAlarmsTableModelProvider() { return alarmsTableModelProvider; } public IntegratedTableDataModelProviderImpl getInventoryObjectsTableModelProvider() { return inventoryObjectsTableModelProvider; } public IntegratedTreeDataModelProviderImpl getInventoryTreeModelProvider() { return inventoryTreeModelProvider; } public IntegratedTableDataModelProviderImpl getNetworkObjectsTableModelProvider() { return networkObjectsTableModelProvider; } public IntegratedTreeDataModelProviderImpl getNetworkTreeModelProvider() { return networkTreeModelProvider; } public IntegratedTableDataModelProviderImpl getServiceObjectsTableModelProvider() { return serviceObjectsTableModelProvider; } public IntegratedTreeDataModelProviderImpl getServiceTreeModelProvider() { return serviceTreeModelProvider; } }