/* * 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.controls; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import javax.faces.model.SelectItem; import org.apache.myfaces.trinidad.component.UIXSwitcher; import org.apache.myfaces.trinidad.component.core.CorePoll; import shared.ResourceUtils; /** * Contains all the controls that are shared in the sample. */ public class SharedControls { //Shared controls private static List<String> MAIN_VIEW_SWITCHER_FACET_NAMES; private static String MAIN_VIEW_SWITCHER_DEFAULT_FACET; private static String FIVE_SECONDS_RATE_ID = "5"; private static String TEN_SECONDS_RATE_ID = "10"; private static String THIRTY_SECONDS_RATE_ID = "30"; private static String SIXTY_SECONDS_RATE_ID = "60"; //In Milliseconds private static int DEFAULT_ALARM_GENERATION_RATE = 10 * 1000; private static int DEFAULT_MAX_NUMBER_OF_ALARMS = 20; //In Milliseconds private static int DEFAULT_AUTO_REFRESH_RATE = 10 * 1000; private static int DEFAULT_MAIN_VIEW_WIDTH = 600; private static int DEFAULT_MAIN_VIEW_HEIGHT = 375; private static int DEFAULT_VIEW_TILE_SIZE = 150; private static int DEFAULT_OVERVIEW_WIDTH = 100; private static int DEFAULT_OVERVIEW_HEIGHT = 50; private static boolean DEFAULT_OVERVIEW_AUTO_REFRESH = true; private UIXSwitcher mainViewSwitcher; private List<SelectItem> autoRefreshAvailableRates; private List<SelectItem> alarmGenerationAvailableRates; private int autoRefreshRate; private int alarmGenerationRate; private int maxNumberOfAlarms; private CorePoll autoRefreshRatePoll; static { //////////////////////////////////////////////////////////////////////////// //This needs to be in synch with the JSP page: /main-area/index.jsp //////////////////////////////////////////////////////////////////////////// String[] facetNames = new String[]{"networkNetworkViewFacet", "inventoryEquipmentViewFacet", "serviceNetworkViewFacet"}; //Save it MAIN_VIEW_SWITCHER_FACET_NAMES = Arrays.asList(facetNames); //Define the default facet name MAIN_VIEW_SWITCHER_DEFAULT_FACET = MAIN_VIEW_SWITCHER_FACET_NAMES.get(0); } ////////////////////////////////////////////////////////////////////////////// //Initialization ////////////////////////////////////////////////////////////////////////////// /** * Initializes the shared controls. */ public void initialize() { //////////////////////////////////// //Initialize auto refresh rates autoRefreshAvailableRates = new ArrayList<SelectItem>(4); autoRefreshAvailableRates.add(new SelectItem( TEN_SECONDS_RATE_ID, ResourceUtils.getString("labelTenSeconds"))); autoRefreshAvailableRates.add(new SelectItem( THIRTY_SECONDS_RATE_ID, ResourceUtils.getString("labelThirtySeconds"))); autoRefreshAvailableRates.add(new SelectItem( SIXTY_SECONDS_RATE_ID, ResourceUtils.getString("labelSixtySeconds"))); //////////////////////////////////// //Initialize alarm generation rates alarmGenerationAvailableRates = new ArrayList<SelectItem>(4); alarmGenerationAvailableRates.add(new SelectItem( FIVE_SECONDS_RATE_ID, ResourceUtils.getString("labelFiveSeconds"))); alarmGenerationAvailableRates.add(new SelectItem( TEN_SECONDS_RATE_ID, ResourceUtils.getString("labelTenSeconds"))); alarmGenerationAvailableRates.add(new SelectItem( THIRTY_SECONDS_RATE_ID, ResourceUtils.getString("labelThirtySeconds"))); alarmGenerationAvailableRates.add(new SelectItem( SIXTY_SECONDS_RATE_ID, ResourceUtils.getString("labelSixtySeconds"))); //////////////////////////////////// //Initialize auto refresh rate setAutoRefreshRate(DEFAULT_AUTO_REFRESH_RATE); //////////////////////////////////// //Initialize alarm generation rate setAlarmGenerationRate(DEFAULT_ALARM_GENERATION_RATE); //////////////////////////////////// //Initialize max number of alarms setMaxNumberOfAlarms(DEFAULT_MAX_NUMBER_OF_ALARMS); } ////////////////////////////////////////////////////////////////////////////// //Accessors and Modifiers ////////////////////////////////////////////////////////////////////////////// public UIXSwitcher getMainViewSwitcher() { return mainViewSwitcher; } public void setMainViewSwitcher(UIXSwitcher mainViewSwitcher) { this.mainViewSwitcher = mainViewSwitcher; } public String getMainViewSwitcherDefaultFacet() { return MAIN_VIEW_SWITCHER_DEFAULT_FACET; } public List<String> getMainViewSwitcherFacetNames() { return MAIN_VIEW_SWITCHER_FACET_NAMES; } public String getMainViewSwitcherFacetName(int index) { return MAIN_VIEW_SWITCHER_FACET_NAMES.get(index); } public List<SelectItem> getAutoRefreshAvailableRates() { return autoRefreshAvailableRates; } public void setAutoRefreshRates(List<SelectItem> autoRefreshRates) { this.autoRefreshAvailableRates = autoRefreshRates; } public List<SelectItem> getAlarmGenerationAvailableRates() { return alarmGenerationAvailableRates; } public void setAlarmGenerationRates(List<SelectItem> alarmGenerationRates) { this.alarmGenerationAvailableRates = alarmGenerationRates; } /** * Returns the refresh rate in milliseconds. */ public int getAutoRefreshRate() { return autoRefreshRate; } public void setAutoRefreshRate(int autoRefreshRate) { this.autoRefreshRate = autoRefreshRate; } public int getAlarmGenerationRate() { return alarmGenerationRate; } public void setAlarmGenerationRate(int alarmGenerationRate) { this.alarmGenerationRate = alarmGenerationRate; } public int getMaxNumberOfAlarms() { return maxNumberOfAlarms; } public void setMaxNumberOfAlarms(int maxNumberOfAlarms) { this.maxNumberOfAlarms = maxNumberOfAlarms; } public String getCurrentAlarmGenerationRate() { return getAlarmGenerationRate() + ""; } public CorePoll getAutoRefreshRatePoll() { return autoRefreshRatePoll; } public void setAutoRefreshRatePoll(CorePoll autoRefreshRatePoll) { this.autoRefreshRatePoll = autoRefreshRatePoll; } public int getMainViewHeight() { return DEFAULT_MAIN_VIEW_HEIGHT; } public int getMainViewWidth() { return DEFAULT_MAIN_VIEW_WIDTH; } public int getViewTileSize() { return DEFAULT_VIEW_TILE_SIZE; } public int getOverviewHeight() { return DEFAULT_OVERVIEW_HEIGHT; } public int getOverviewWidth() { return DEFAULT_OVERVIEW_WIDTH; } public boolean isOverviewAutoRefresh() { return DEFAULT_OVERVIEW_AUTO_REFRESH; } }