[rhq] modules/enterprise
by Heiko W. Rupp
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/CoreGUI.gwt.xml | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
New commits:
commit 60a3f91f702ac214f02b4458da0c7ff9b2b643bc
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Fri Nov 19 18:31:11 2010 +0100
Enable German messages.
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/CoreGUI.gwt.xml b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/CoreGUI.gwt.xml
index edc98de..09763bd 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/CoreGUI.gwt.xml
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/CoreGUI.gwt.xml
@@ -5,7 +5,7 @@
<inherits name='com.google.gwt.user.User'/>
<inherits name='com.google.gwt.i18n.I18N'/>
- <inherits name='org.rhq.core.RHQDomain'/>
+ <inherits name='org.rhq.core.RHQDomain'/>
<inherits name='com.smartgwt.SmartGwt' />
<inherits name="com.smartgwt.tools.SmartGwtTools"/>
@@ -39,8 +39,8 @@
2. In hosted mode, the windows are not automatically closed,
although you can easily close them manually in the usual way
-->
- <!-- When enabled FireFox is hard to use due to excessive popup window generation
-
+ <!-- When enabled FireFox is hard to use due to excessive popup window generation
+
<set-property name="log_WindowLogger" value="ENABLED" />
-->
@@ -86,12 +86,14 @@
-->
<set-property name="user.agent" value="${gwt.userAgent}"/>
- <!-- Support for locales ('en' need not be specified as long as @DefaultLocale annotates
+ <!-- Support for locales ('en' need not be specified as long as @DefaultLocale annotates
the Constants, ConstantsWithLookup, and Messages class). Note, these other locales
must have a file suffixed with _<locale>.properties in the same package/directory as
the corresponding GWT i18n interface class resides.-->
<!--<extend-property name="locale" values="de,fr"/>-->
+ <extend-property name="locale" values="de"/>
+
<entry-point class='org.rhq.enterprise.gui.coregui.client.CoreGUI'/>
<entry-point class='org.rhq.enterprise.gui.coregui.client.SearchGUI'/>
13 years, 7 months
[rhq] 2 commits - modules/enterprise
by Heiko W. Rupp
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties | 1473 ++++++++++
1 file changed, 1473 insertions(+)
New commits:
commit 9a1c5e416f17d4184e1e1788cf0ceac0b7ae49b8
Merge: 72561e6... bcfc55f...
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Fri Nov 19 18:14:35 2010 +0100
Merge branch 'master' of ssh://git.fedorahosted.org/git/rhq/rhq
commit 72561e6343a02a57de2251a9ca7ab737853577db
Author: Heiko W. Rupp <hwr(a)redhat.com>
Date: Fri Nov 19 18:14:04 2010 +0100
Add a file for German translations with some keys already translated.
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
new file mode 100644
index 0000000..06f0b88
--- /dev/null
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
@@ -0,0 +1,1473 @@
+#
+# RHQ GUI i18n Messages - English
+###################################
+
+#************************************** SHARED ****************************************
+
+#=================== Common =====================
+
+#
+# Build Info
+#
+common_buildInfo_gwtVersion = ${gwt.version}~
+
+# Button Labels
+#--------------
+common_button_ack = Ack~
+common_button_ack_all = Ack All~
+common_button_add = Hinzufügen
+common_button_advanced = Advanced...~
+common_button_apply = Anwenden
+common_button_cancel = Cancel~
+common_button_close = Schließen
+common_button_compare = Vergleichen
+common_button_create_child = Create Child~
+common_button_delete = Löschen
+common_button_delete_all = Alle Löschen
+common_button_disable = Disable~
+common_button_edit = Bearbeiten
+common_button_enable = Enable~
+common_button_finish = Beenden
+common_button_import = Import~
+common_button_new = Neu
+common_button_next = Weiter
+common_button_ok = OK~
+common_button_previous = Zurück
+common_button_purgeAll=Purge All~
+common_button_refresh = "Neu laden"
+common_button_reset = Reset~
+common_button_save = Speichern
+common_button_search = Suchen
+common_button_showDetails = Details anzeigen...
+common_button_uninventory = Uninventory~
+
+# Common Labels
+#------------------------
+common_label_all = ALL~
+common_label_all_resources = all resources~
+common_label_day=
+common_label_days=Tage
+common_label_hour=Stunde
+common_label_hours=Stunden
+common_label_item=item~
+common_label_items=items~
+common_label_milliseconds=Millisekunden
+common_label_minutes=Minuten
+common_label_month=Monat
+common_label_none = none~
+common_label_role = role~
+common_label_roles = roles~
+common_label_scheduled_operations=scheduled operations~
+common_label_seconds=Sekunden
+common_label_selected_resources = selected resources~
+common_label_unlimited = unbeschränkt
+common_label_user = Benutzer
+common_label_users = Benutzer
+common_label_week=Woche
+common_label_weeks=Wochen
+
+# Common Titles
+#--------------
+common_title_add_column=Spalte hinzufügen
+common_title_add_portlet=Portlet hinzufügen
+common_title_alert_range=Alert Range~
+common_title_availability = Verfügbar
+common_title_average_metrics=Average Metrics per Minute~
+common_title_available_resources=Verfügbare Ressourcen
+common_title_background=Hintergrund
+common_title_category = Kategorie
+common_title_columns=Spalten
+common_title_configuration = Configuration~
+common_title_compatibleGroups = Compatible Groups~
+common_title_compatibleGroups_total=Compatible Group Total~
+common_title_custom=Custom~
+common_title_dashboard_name=Dashboard Name~
+common_title_dateCreated=Date Created~
+common_title_default=Default~
+common_title_description=Beschreibung
+common_title_details=Details
+common_title_display=Display~
+common_title_display_name=Display Name~
+common_title_duration=Dauer
+common_title_edit_mode=Edit Mode~
+common_title_enabled=Enabled?~
+common_title_end = Ende
+common_title_favorites=Favorites~
+common_title_generalProp = General Properties~
+common_title_group_def_total=Group Definition Total~
+common_title_icon = icon~
+common_title_id = ID~
+common_title_id_parent = Parent ID~
+common_title_info = Info~
+common_title_host = Host~
+common_title_inventory = Inventory~
+common_title_inventorySummary = Inventory Summary~
+common_title_lastUpdated=Zuletzt aktualisiert
+common_title_lastUpdatedBy=Zuletzt aktualisiert durch
+common_title_mashup=Mashup~
+common_title_message=Nachricht
+common_title_metric = Metrik
+common_title_mixedGroups = Gemischte Gruppen
+common_title_mixedGroups_total=Mixed Group Total~
+common_title_name = Name
+common_title_new_dashboard=New Dashboard~
+common_title_numeric_type=Numeric Type~
+common_title_operations=Operations~
+common_title_operations_range=Operation Range~
+common_title_over=Over~
+common_title_password = Passwort
+common_title_path = Pfad
+common_title_platform=Platform~
+common_title_platform_total=Platform Total~
+common_title_plugin = Plugin~
+common_title_port = Port
+common_title_providers=Providers~
+common_title_recently_added = Kürzlich hinzugefügte Ressourcen
+common_title_recent_alerts = Recent Alerts~
+common_title_recent_operations=Recent Operations~
+common_title_remove_column=Spalte löschen
+common_title_repositories=Repositories~
+common_title_resource = Ressource
+common_title_resource_group = Resource Group~
+common_title_resource_inventory=Resource Inventory~
+common_title_resource_id=Resource ID~
+common_title_resource_name=Resource Name~
+common_title_search = Suche
+common_title_scheduled_operations=Scheduled Operations~
+common_title_selected_resources=Ausgewählte Ressourcen
+common_title_server_total=Server Total~
+common_title_service_total=Service Total~
+common_title_settings=Settings~
+common_title_show=Show~
+common_title_start = Start~
+common_title_status=Status~
+common_title_summary=Zusammenfassung
+common_title_tag_cloud=Tag Cloud~
+common_title_the=The
+common_title_summary_counts=Summary Counts~
+common_title_timestamp =Date/Time~
+common_title_total=Total~
+common_title_type = Typ
+common_title_units = Einheiten
+common_title_user=Benutzer
+common_title_value = Wert
+common_title_version = Version
+common_title_view_mode=View Mode~
+common_title_web_address=Web Address~
+common_title_welcome=Wilkommen
+
+# Common Messages
+#--------------
+common_msg_areYouSure = Sind Sie sicher?
+common_msg_deleteConfirm = Are you sure you want to delete the # selected {0}?~
+common_msg_emphasizedNotePrefix = NOTE:~
+common_msg_loading = Laden...
+common_msg_noItemsToShow=No items to show~
+
+# Common Values
+#--------------
+common_val_for=for~
+common_val_no = Nein
+common_val_no_lower = nein
+common_val_yes = Ja
+common_val_yes_lower = ja
+common_val_never = Nie
+common_val_na = N/A~
+common_val_none = Kein(e)
+
+# Common Calendar
+#--------------
+common_calendar_january_short= Jan
+common_calendar_february_short=Feb
+common_calendar_march_short=Mar
+common_calendar_april_short=Apr
+common_calendar_may_short=May
+common_calendar_june_short=Jun
+common_calendar_july_short=Jul
+common_calendar_august_short=Aug
+common_calendar_september_short=Sept
+common_calendar_october_short=Oct
+common_calendar_november_short=Nov
+common_calendar_december_short=Dec
+
+
+#=================== Widgets =====================
+
+# Record Editor
+#--------------
+widget_recordEditor_title_view = View {0} [{1}]~
+widget_recordEditor_title_edit = Edit {0} [{1}]~
+widget_recordEditor_title_new = Create New {0}~
+# // dup in common
+widget_recordEditor_label_loading = Loading...~
+widget_recordEditor_error_invalidViewPath = Invalid view path: [{0}]~
+widget_recordEditor_error_noRecords = No records were returned - expected exactly one.~
+widget_recordEditor_error_multipleRecords = Multiple records were returned - expected exactly one.~
+widget_recordEditor_info_recordCreatedConcise = {0} created.~
+widget_recordEditor_info_recordCreatedDetailed = {0} [{1}] created.~
+widget_recordEditor_info_recordUpdatedConcise = {0} updated.~
+widget_recordEditor_info_recordUpdatedDetailed = {0} [{1}] updated.~
+widget_recordEditor_info_recordsDeletedConcise = {0} {1} deleted.~
+widget_recordEditor_info_recordsDeletedDetailed = {0} {1} deleted: {2}.~
+widget_recordEditor_error_unsupportedOperationType = Unsupported operation type: [{0}]~
+
+# Resource Selector/Picker
+#--------------------------------
+widget_resourceSelector_selectResource=Wählen Sie eine Ressource aus
+widget_resourceSelector_pleaseSelectResource=Please select a resource~
+widget_resourceSelector_selectMultipleResources=Select Resources~
+widget_resourceSelector_pleaseSelectMultipleResource=Please select one or more resources~
+widget_resourceSelector_groupCategory=Group Category~
+
+# Resource Factory Wizard
+#--------------------------------
+widget_resourceFactoryWizard_uploadInProgress=The upload is in progress... This can take several minutes to complete for large distribution files.~
+widget_resourceFactoryWizard_uploadFileStepName=Upload Resource Content File~
+widget_resourceFactoryWizard_uploadFailure=Failed to upload file~
+widget_resourceFactoryWizard_editConfigStepName=Edit Configuration~
+widget_resourceFactoryWizard_infoStepName=Resource Information~
+widget_resourceFactoryWizard_namePrompt=New Resource Name~
+widget_resourceFactoryWizard_templatePrompt=Connection Settings Template~
+widget_resourceFactoryWizard_contentTemplatePrompt=Deployment Time Configuration Templates~
+widget_resourceFactoryWizard_configTemplatePrompt=Resource Configuration Templates~
+widget_resourceFactoryWizard_archPrompt=Package Architecture~
+widget_resourceFactoryWizard_versionPrompt=Package Version~
+widget_resourceFactoryWizard_importWizardWindowTitle=Resource Import Wizard~
+widget_resourceFactoryWizard_importWizardTitle=Import Resource of Type [{0}]~
+widget_resourceFactoryWizard_importFailure=Failed to manually import resource~
+widget_resourceFactoryWizard_importSubmitted=A request to import a new resource of type [{0}] has been submitted~
+widget_resourceFactoryWizard_createWizardWindowTitle=Resource Create Wizard~
+widget_resourceFactoryWizard_createWizardTitle=Create New Resource of Type [{0}]~
+widget_resourceFactoryWizard_execute1=Failed to create a new resource - there is no package version~
+widget_resourceFactoryWizard_execute2=Failed to create a new resource~
+widget_resourceFactoryWizard_createSubmitType=A request to create a resource of type [{0}] has been submitted successfully.~
+widget_resourceFactoryWizard_createSubmit=A request to create a resource with the name of [{0}] has been submitted successfully.~
+widget_resourceFactoryWizard_failedToGetType=Failed to get backing package type for new resource~
+widget_resourceFactoryWizard_failedToDeleteVersion=Failed to delete package version while canceling a resource create~
+
+#===================== Utils ======================
+
+# Disambiguation Report Decorator
+#-------------------------------------------------
+util_disambiguationReportDecorator_pluginSuffix = ({0} plugin)~
+
+# Monitoring Request Callback
+#------------------------------------------
+util_monitoringRequestCallback_error_checkServerStatusFailure = Unable to determine login status - check Server status.~
+
+# RPC Manager
+#----------------------
+util_rpcManager_activeRequests = {0} Aktive Anfragen
+
+# User Permissions Manager
+#--------------------------
+util_userPerm_loadFailGlobal = Failed to load your global permissions - none granted.~
+util_userPerm_loadFailGroup = Failed to load your permissions for Resource Group with id [{0}] - none granted.~
+util_userPerm_loadFailResource = Failed to load your permissions for Resource with id [{0}] - none granted.~
+
+# User Session Manager
+#--------------------------
+util_userSession_loadFailSubject = UserSessionManager: Failed to load user Subject~
+util_userSession_logoutFail = Failed to logout.~
+
+# Error Handler
+#--------------------
+util_errorHandler_nullException = exception was null~
+
+# Widgets Field
+#---------------------
+util_widgetsField_unlimited = Unbeschränkt
+
+
+#================== DataSources ====================
+
+# RPC (abstract)
+#-----------------------
+dataSource_rpc_error_transformRequestFailure = Failure in datasource while processing {0} request.~
+dataSource_rpc_error_unsupportedArrayFilterType = No support for passing array filters of type {0}.~
+dataSource_rpc_error_unsupportedEnumType = Please add an appropriate code block for enum {0} to RPCDataSource.getEnumArray(Class)~
+dataSource_rpc_yes = yes~
+dataSource_rpc_no = no~
+
+# ContentRepositoryTree
+#------
+dataSource_ContentRepoTree_error_load = Error loading repositories~
+dataSource_ContentRepoTree_field_parentId = Parent ID~
+
+
+# Users
+#------
+###### dup in common
+dataSource_users_field_id = ID~
+dataSource_users_field_name = Benutzername
+dataSource_users_field_ldap = LDAP Login?~
+dataSource_users_field_password = Passwort`
+dataSource_users_field_passwordVerify = Verify Password~
+dataSource_users_field_firstName = Vorname~
+dataSource_users_field_lastName = Nachname~
+dataSource_users_field_emailAddress = E-Mail-Addresse
+dataSource_users_field_phoneNumber = Telefonnummer
+dataSource_users_field_department = Abteilung
+dataSource_users_field_factive = Darf sich einloggen?~
+
+# Platforms
+#------
+dataSource_platforms_field_cpu=CPU~
+dataSource_platforms_field_memory=Memory~
+dataSource_platforms_field_swap=Swap~
+
+# Traits
+#------
+dataSource_traits_field_primaryKey=Primärschlüssel
+dataSource_traits_field_definitionID=Definition ID~
+dataSource_traits_field_lastChanged=Last Changed~
+dataSource_traits_field_trait=Trait~
+dataSource_traits_group_field_groupId=Group ID~
+dataSource_traits_group_field_memberResource=Member Resource~
+
+# Measurement OOBs
+#---------------------------------
+dataSource_measurementOob_field_scheduleName = Metrik
+dataSource_measurementOob_field_resourceName = Ressource
+dataSource_measurementOob_field_parentName = Parent~
+dataSource_measurementOob_field_formattedBaseband = Band~
+dataSource_measurementOob_field_formattedOutlier = Ausreisser
+dataSource_measurementOob_field_factor = Out of Range Factor (%)~
+dataSource_measurementOob_error_fetchFailure = Failed to load measurement OOB information~
+
+# Measurements
+#----------------------
+dataSource_definitions_loadFailed = Failed to load metric definitions~
+dataSource_schedules_loadFailed = Failed to load metric schedules~
+dataSource_schedules_field_resourceGroupId = Group ID~
+
+dataSource_schedules_enableFailure_resource=Failed to enable the collection of [{0}] metrics for resource with ID [{1}]. The metrics were: [{2}]~
+dataSource_schedules_enableFailure_group=Failed to enable the collection of [{0}] metrics for group with ID [{1}]. The metrics were: [{2}]~
+
+dataSource_schedules_enableSuccessful_concise=You have enabled the collection of [{0}] measurements~
+dataSource_schedules_enableSuccessful_full_resource=You have enabled the collection of [{0}] measurements for the resource with ID [{1}]. The enabled measurements are: [{2}]~
+dataSource_schedules_enableSuccessful_full_group=You have enabled the collection of [{0}] measurements for the resource group with ID [{1}]. The enabled measurements are: [{2}]~
+
+dataSource_schedules_disableFailure_resource=Failed to disable the collection of [{0}] metrics for resource with ID [{1}]. The metrics were: [{2}]~
+dataSource_schedules_disableFailure_group=Failed to disable the collection of [{0}] metrics for resource group with ID [{1}]. The metrics were: [{2}]~
+
+dataSource_schedules_disableSuccessful_concise=You have disabled the collection of [{0}] measurements~
+dataSource_schedules_disableSuccessful_full_resource=You have disabled the collection of [{0}] measurements for the resource with ID [{1}]. The disabled measurements are: [{2}]~
+dataSource_schedules_disableSuccessful_full_group=You have disabled the collection of [{0}] measurements for the resource group with ID [{1}]. The disabled measurements are: [{2}]~
+
+dataSource_schedules_updateFailure_resource=Failed to set the collection interval of [{0}] metrics for resource with ID [{1}]. The metrics were: [{2}]. The collection interval was to be [{3}] seconds.~
+dataSource_schedules_updateFailure_group=Failed to set the collection interval of [{0}] metrics for resource group with ID [{1}]. The metrics were: [{2}]. The collection interval was to be [{3}] seconds.~
+
+dataSource_schedules_updateSuccessful_concise=A new collection interval of [{0}] seconds has been set on [{1}] measurements~
+dataSource_schedules_updateSuccessful_full_resource=A new collection interval of [{0}] seconds has been set on [{1}] measurements for resource with ID [{2}]. The updated measurements are: [{3}]~
+dataSource_schedules_updateSuccessful_full_group=A new collection interval of [{0}] seconds has been set on [{1}] measurements for resource group with ID [{2}]. The updated measurements are: [{3}]~
+
+
+# Problem Resources
+#------------------------------
+dataSource_problemResources_field_resource = Ressource
+dataSource_problemResources_field_location = Ort
+dataSource_problemResources_field_alerts = Alerts~
+dataSource_problemResources_field_available = Aktuelle Verfügbarkeit
+dataSource_problemResources_error_fetchFailure = Failed to load Resources with alerts/unavailability.~
+
+# Recent Operations
+#----------------------------
+dataSource_recentOperations_field_resource = Ressource
+dataSource_recentOperations_field_location = ort
+dataSource_recentOperations_field_operation = Operation~
+dataSource_recentOperations_field_time = Date/Time~
+dataSource_recentOperations_field_status = Status
+dataSource_recentOperations_error_fetchFailure = Failed to load recently completed operations.
+
+# Scheduled Operations
+#---------------------------------
+dataSource_scheduledOperations_field_resource = Ressource
+dataSource_scheduledOperations_field_location = Ort
+dataSource_scheduledOperations_field_operation = Operation~
+dataSource_scheduledOperations_field_time = Date/Time~
+dataSource_scheduledOperations_error_fetchFailure = Failed to load scheduled operations.
+
+# Operation History
+#---------------------------
+dataSource_operationHistory_error_fetchFailure = Failure loading operation histories.~
+
+# Configuration History
+#-------------------------------
+dataSource_configurationHistory_field_id = ID~
+dataSource_configurationHistory_field_resource = Ressource
+dataSource_configurationHistory_field_createdTime = Angelegt
+dataSource_configurationHistory_field_status = Status
+dataSource_configurationHistory_field_subject = Subject~
+dataSource_configurationHistory_error_fetchFailure = Unable to load configuration history.~
+
+# Resource Errors
+#-------------------------
+dataSource_resourceErrors_field_summary = Summary~
+dataSource_resourceErrors_field_detail = Detailed Message~
+dataSource_resourceErrors_field_errorType = Error Type~
+dataSource_resourceErrors_field_timeOccured = Time~
+dataSource_resourceErrors_error_fetchFailure = Failed to find Resource errors for Resource with id [{0}].~
+
+
+#********************************** VIEW-SPECIFIC *************************************
+
+#================= Administration ==================
+
+view_admin_administration = Verwaltung
+view_admin_landing = From this section, the RHQ global settings can be administered. This includes configuring Security, setting up Plugins, and managing RHQ servers and agents.~
+view_admin_configuration = Configuration~
+view_admin_security = Sicherheit
+view_admin_topology = Topology~
+
+view_adminSecurity_users = Benutzer
+view_adminSecurity_roles = Rollen
+
+view_adminTopology_affinityGroups = Affinity Groups~
+view_adminTopology_agents = Agenten
+view_adminTopology_partitionEvents = Partition Events~
+view_adminTopology_remoteAgentInstall = Remote Agent Install~
+view_adminTopology_servers = Servers~
+
+view_adminConfig_downloads = Downloads~
+view_adminConfig_license = License~
+view_adminConfig_plugins = Plugins~
+view_adminConfig_systemSettings = Systemeinstellungen
+view_adminConfig_templates = Templates~
+
+# Administration/Security/Users
+#--------------------------------
+view_adminUsersList_dataTypeName = Benutzer
+view_adminUsersList_dataTypeNamePlural = Benutzer
+
+# Administration/Security/Users/#
+#--------------------------------
+view_adminUsersDetails_dataTypeName = Benutzer
+
+# Administration/Security/Roles/#
+#--------------------------------
+view_adminRoles_assignedGroups = Assigned Resource Groups~
+view_adminRoles_assignedSubjects = Assigned Subjects~
+view_adminRoles_failLdap = Failed to determine if LDAP configured - assuming no LDAP.~
+view_adminRoles_failLdapGroups = Failed to retrieve available LDAP groups - assuming no LDAP groups.~
+view_adminRoles_failLdapGroupsRole = Failed to load LDAP groups available for role.~
+view_adminRoles_failRoles = Failed to fetch roles.~
+view_adminRoles_globalPerms = Global Permissions~
+view_adminRoles_ldapGroups = LDAP Groups~
+view_adminRoles_ldapGroupsReadOnly = LDAP group data is read only~
+view_adminRoles_noItems = No items to show~
+view_adminRoles_noLdap = The LDAP security integration is not configured. To configure LDAP go to <a {0}>{1}</a>.~
+view_adminRoles_perms = Permissions~
+view_adminRoles_resourcePerms = Resource Permissions~
+view_adminRoles_roleAdded = Rolle [{0}] hinzugefügt
+view_adminRoles_roleExists = A role named [{0}] already exists.~
+view_adminRoles_roleDeleteFailed = Failed to delete role [{0}].~
+view_adminRoles_roleDeleted = Role [{0}] deleted.~
+view_adminRoles_roleUpdateFailed = Failed to update role [{0}].~
+view_adminRoles_roleUpdated = Role [{0}] updated.~
+
+# Administration/Topology/RemoteAgentInstall/#
+#--------------------------------
+view_remoteAgentInstall_agentStatus = Agent Status~
+view_remoteAgentInstall_agentStatusDefault = -Click Update Status Button-~
+view_remoteAgentInstall_connInfo = Connection Information~
+view_remoteAgentInstall_buttonFindAgent = Find Agent~
+view_remoteAgentInstall_error_1 = Error occurred while trying to find agent install path~
+view_remoteAgentInstall_error_2 = Could not find an agent installed when looking in common locations
+view_remoteAgentInstall_error_3 = Could not find an agent installed at or under [{0}]
+view_remoteAgentInstall_error_4 = Failed to install agent~
+view_remoteAgentInstall_error_5 = Failed to start agent~
+view_remoteAgentInstall_error_6 = Failed to stop agent~
+
+view_remoteAgentInstall_installAgent = Install Agent~
+view_remoteAgentInstall_installInfo = Agent Installation Information~
+view_remoteAgentInstall_installPath = Agent Install Path~
+view_remoteAgentInstall_owner = Owner~
+view_remoteAgentInstall_promptInstallPath = Where the agent is or will be installed. If you aren''t sure where an agent is installed, enter a parent directory and click the ''Find Agent'' button to scan that directory and below. If you enter an empty path, common locations are searched on the host for an agent install.~
+view_remoteAgentInstall_promptHost = The host where the agent is or will be installed~
+view_remoteAgentInstall_promptPassword =The credentials that are used to authenticate the user on the host via SSH~
+view_remoteAgentInstall_promptPort = The port the SSH server is listening to. If not specified, the default is 22~
+view_remoteAgentInstall_promptUser = The name of the user whose credentials are passed to the host via SSH~
+view_remoteAgentInstall_result = Result~
+view_remoteAgentInstall_resultCode = ResultCode~
+view_remoteAgentInstall_startAgent = Start Agent~
+view_remoteAgentInstall_startAgentResults = Agent start results: [{0}]~
+view_remoteAgentInstall_step = Step~
+view_remoteAgentInstall_stopAgent = Stop Agent~
+view_remoteAgentInstall_stopAgentResults = Agent stop results: [{0}]~
+view_remoteAgentInstall_success = Agent installation complete~
+view_remoteAgentInstall_updateStatus = Update Status~
+
+#==================== Alerts ======================
+view_alerts_table_title_group=Group Alert History~
+view_alerts_table_title_resource=Resource Alert History~
+view_alerts_table_filter_priority=Priority Filter~
+view_alerts_field_created_time=Creation Time~
+view_alerts_field_modified_time=Modified Time~
+view_alerts_field_enabled=Enabled~
+view_alerts_field_ack_time=Ack Time~
+view_alerts_field_ack_subject=Ack Subject~
+view_alerts_field_ack_status=Status~
+view_alerts_field_ack_status_empty=Not Yet Acknowledged~
+view_alerts_field_ack_status_filled={0} acknowledged on {1}~
+view_alerts_field_name=Name~
+view_alerts_field_condition_text=Condition Text~
+view_alerts_field_condition_text_none=No Conditions~
+view_alerts_field_condition_text_many=Multiple Conditions~
+view_alerts_field_condition_value=Condition Value~
+view_alerts_field_resource=Resource~
+view_alerts_field_priority=Priority~
+view_alerts_field_parent=Parent~
+view_alerts_field_protected=Protected~
+view_alerts_field_protected_tooltip=If true, this definition is protected from being changed by the parent definition. In other words, the parent definition settings will not override this definition.~
+view_alerts_loadFailed=Failed to fetch alerts data~
+view_alerts_delete_confirm=Delete the selected alert(s)?~
+view_alerts_delete_confirm_all=Delete all alerts from this source?~
+view_alerts_delete_success=Successfully deleted {0} alerts~
+view_alerts_delete_failure=Failed to delete alerts with id''s: {0}~
+view_alerts_delete_failure_all=Failed to delete all alerts from this source~
+view_alerts_ack_confirm=Ack the selected alert(s)?~
+view_alerts_ack_confirm_all=Ack all alerts from this source?~
+view_alerts_ack_success=Successfully acknowledged {0} alerts~
+view_alerts_ack_failure=Failed to acknowledge alerts with id''s: {0}~
+view_alerts_ack_failure_all=Failed to acknowledge all alerts from this source~
+view_alert_details_loadFailed=Failed to fetch alert details~
+view_alert_details_breadcrumb=Details~
+view_alert_details_field_ack_by=Acknowledged by~
+view_alert_details_field_ack_at=Acknowledged at~
+view_alert_details_field_recovery_info=Recovery Info~
+view_alert_definition_for_type=View Template~
+view_alert_definition_for_group=View Group Definition~
+view_alert_definitions_table_title_group=Group Alert Definitions~
+view_alert_definitions_table_title_resource=Resource Alert Definitions~
+view_alert_definitions_loadFailed=Failed to fetch alert definition data~
+view_alert_definitions_loadFailed_single=Failed to fetch data for alert definition with id {0}~
+view_alert_definitions_enable_confirm=Enable the selected alert definition(s)?~
+view_alert_definitions_enable_success=Successfully enabled {0} alert definitions~
+view_alert_definitions_enable_failure=Failed to enable the selected alert definitions~
+view_alert_definitions_disable_confirm=Disable the selected alert definition(s)?~
+view_alert_definitions_disable_success=Successfully disabled {0} alert definitions~
+view_alert_definitions_disable_failure=Failed to disable the selected alert definitions~
+view_alert_definitions_delete_confirm=Delete the selected alert definition(s)?~
+view_alert_definitions_delete_success=Successfully deleted {0} alert definitions~
+view_alert_definitions_delete_failure=Failed to deleted the selected alert definitions~
+view_alert_definitions_create_success=Alert definition successfully created~
+view_alert_definitions_create_failure=Alert definition creation failed~
+view_alert_definitions_update_success=Alert definition successfully updated~
+view_alert_definitions_update_failure=Alert definition update failed~
+view_alert_definition_condition_editor_option_label=Condition Type~
+view_alert_definition_condition_editor_option_availability=Availability Change~
+view_alert_definition_condition_editor_option_metric_threshold=Measurement Absolute Value Threshold~
+view_alert_definition_condition_editor_option_metric_baseline=Measurement Baseline Threshold~
+view_alert_definition_condition_editor_option_metric_change=Measurement Value Change~
+view_alert_definition_condition_editor_option_metric_calltime_threshold=Call Time Value Threshold~
+view_alert_definition_condition_editor_option_metric_calltime_change=Call Time Value Change~
+view_alert_definition_condition_editor_option_metric_trait_change=Trait Value Change~
+view_alert_definition_condition_editor_option_operation=Operation Execution~
+view_alert_definition_condition_editor_option_resource_configuration=Resource Configuration Change~
+view_alert_definition_condition_editor_option_event=Event Detection~
+view_alert_definition_condition_editor_avilability_tooltip=Specify the availability state change that will trigger the condition.~
+view_alert_definition_condition_editor_avilability_value=Availability~
+view_alert_definition_condition_editor_avilability_option_up=Comes up~
+view_alert_definition_condition_editor_avilability_option_down=Goes down~
+view_alert_definition_condition_editor_metric_common_definition_not_found=Should have found metric definition - something is wrong~
+view_alert_definition_condition_editor_metric_threshold_tooltip=Specify the threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier.~
+view_alert_definition_condition_editor_metric_threshold_name=Metric~
+view_alert_definition_condition_editor_metric_threshold_value=Metric Value~
+view_alert_definition_condition_editor_metric_threshold_value_tooltip=The threshold value of the metric that will trigger the condition when compared using the selected comparator.~
+view_alert_definition_condition_editor_metric_threshold_comparator=Comparator~
+view_alert_definition_condition_editor_metric_threshold_comparator_less=Less than~
+view_alert_definition_condition_editor_metric_threshold_comparator_equal=Equal to~
+view_alert_definition_condition_editor_metric_threshold_comparator_greater=Greater Than~
+view_alert_definition_condition_editor_metric_threshold_comparator_tooltip=How a collected metric value should be compared to the given threshold value~
+view_alert_definition_condition_editor_metric_baseline_tooltip=Specify the baseline value that must be violated to trigger the condition. The value you specify is a percentage of the given baseline value.~
+view_alert_definition_condition_editor_metric_baseline_percentage=Baseline Percentage~
+view_alert_definition_condition_editor_metric_baseline_percentage_tooltip=A collected metric value will trigger this condition when compared to this percentage of the selected baseline value using the selected comparator~
+view_alert_definition_condition_editor_metric_baseline_value=Baseline~
+view_alert_definition_condition_editor_metric_change_tooltip=Specify the metric whose value must change to trigger the condition.~
+view_alert_definition_condition_editor_metric_calltime_threshold_tooltip=Specify the calltime threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier. You also must specify which calltime limit to compare the value with (minimum, maximum or average calltime value).~
+view_alert_definition_condition_editor_metric_calltime_common_name=Call Time Metric~
+view_alert_definition_condition_editor_metric_calltime_common_limit=Call Time Limit~
+view_alert_definition_condition_editor_metric_calltime_common_limit_tooltip=The calltime limit value that is to be compared with the given value~
+view_alert_definition_condition_editor_metric_calltime_common_regex=Regular Expression~
+view_alert_definition_condition_editor_metric_calltime_common_regex_tooltip=If specified, this is a regular expression that must match a call destination in order to trigger the condition.~
+view_alert_definition_condition_editor_metric_calltime_common_comparator=Comparator~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_shrinks=Shrinks~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_grows=Grows~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_changes=Changes~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_tooltip=How a collected calltime value should be compared to the given calltime limit~
+view_alert_definition_condition_editor_metric_calltime_threshold_value=Call Time Value~
+view_alert_definition_condition_editor_metric_calltime_threshold_value_tooltip=The threshold value of the metric that will trigger the condition when compared using the selected comparator.~
+view_alert_definition_condition_editor_metric_calltime_change_tooltip=Specify the calltime value that, when changed at least a specified amount, triggers the condition. You must specify which calltime limit to check (minimum, maximum or average calltime value) and the percentage of change that must occur.~
+view_alert_definition_condition_editor_metric_calltime_change_percentage=Percentage Change~
+view_alert_definition_condition_editor_metric_calltime_change_percentage_tooltip=A collected calltime value will trigger this condition when it differs by at least this percentage of the selected calltime limit value~
+view_alert_definition_condition_editor_metric_trait_change_tooltip=Specify the trait whose value must change to trigger the condition.~
+view_alert_definition_condition_editor_metric_trait_change_value=Trait~
+view_alert_definition_condition_editor_operation_tooltip=Specify the result that must occur when the selected operation is executed in order to trigger the condition.~
+view_alert_definition_condition_editor_operation_value=Operation~
+view_alert_definition_condition_editor_operation_status=Operation Status~
+view_alert_definition_condition_editor_operation_status_inprogress=In Progress~
+view_alert_definition_condition_editor_operation_status_success=Success~
+view_alert_definition_condition_editor_operation_status_failure=Failure~
+view_alert_definition_condition_editor_operation_status_canceled=Canceled~
+view_alert_definition_condition_editor_resource_configuration_tooltip=This condition is triggered when the resource configuration changes.~
+view_alert_definition_condition_editor_event_tooltip=Specify the event severity that an event message must be reported with in order to trigger this condition. If you specify an optional regular expression, the event message must also match that regular expression in order for the condition to trigger.~
+view_alert_definition_condition_editor_event_severity=Event Severity~
+view_alert_definition_condition_editor_event_severity_debug=Debug~
+view_alert_definition_condition_editor_event_severity_info=Info~
+view_alert_definition_condition_editor_event_severity_warn=Warn~
+view_alert_definition_condition_editor_event_severity_error=Error~
+view_alert_definition_condition_editor_event_severity_fatal=Fatal~
+view_alert_definition_condition_editor_event_regex=Regular Expression~
+view_alert_definition_condition_editor_event_regex_tooltip=If specified, this is a regular expression that must match a collected event message in order to trigger the condition.~
+view_alert_definition_condition_editor_common_min=Minimum
+view_alert_definition_condition_editor_common_avg=Durchschnitt
+view_alert_definition_condition_editor_common_max=Maximum
+view_alert_definition_notification_editor_title_add=Add Notification~
+view_alert_definition_notification_editor_title_edit=Edit Notification~
+view_alert_definition_notification_editor_sender=Notification Sender~
+view_alert_definition_notification_editor_none_available=No alert senders available~
+view_alert_definition_notification_editor_loadFailed=Cannot get alert senders~
+view_alert_definition_notification_editor_loadFailed_single=Cannot get alert sender configuration definition~
+view_alert_definition_notification_editor_saveFailed=Cannot save the notification configuration~
+view_alert_definition_notification_editor_field_sender=Sender~
+view_alert_definition_notification_editor_field_configuration=Configuration~
+view_alert_definition_notification_editor_field_configuration_not_loaded=Unknown~
+view_alert_definition_notification_editor_field_configuration_loadFailed=Failed to get notification configuration preview~
+view_alert_definition_notification_editor_delete_confirm=Are you sure you want to delete the selected alert notifications?~
+view_alert_definition_notification_operation_editor_mode_title=Resource Selection Mode~
+view_alert_definition_notification_operation_editor_mode_this=This Resource~
+view_alert_definition_notification_operation_editor_mode_specific=Specific Resource~
+view_alert_definition_notification_operation_editor_mode_relative=Relative Resource~
+view_alert_definition_notification_operation_editor_mode_unknown=UNKNOWN OPTION - THIS IS A BUG~
+view_alert_definition_notification_operation_editor_common_operation=Operation~
+view_alert_definition_notification_operation_editor_specific_resource=Resource~
+view_alert_definition_notification_operation_editor_specific_pick_button=Pick~
+view_alert_definition_notification_operation_editor_specific_pick_text=Pick a resource...~
+view_alert_definition_notification_operation_editor_specific_pick_error_invalid=Please pick a resource~
+view_alert_definition_notification_operation_editor_specific_pick_error_no_operation=Please pick a resource that has one or more operations~
+view_alert_definition_notification_operation_editor_relative_ancestor=Start Search From~
+view_alert_definition_notification_operation_editor_relative_ancestor_tooltip=Select the top of the type hierarchy from which to search its descedant tree for the Filter By type~
+view_alert_definition_notification_operation_editor_relative_ancestor_loadFailed=Cannot get type ancestry~
+view_alert_definition_notification_operation_editor_relative_ancestor_root=Root Ancestor Type~
+view_alert_definition_notification_operation_editor_relative_descendant=Then Filter By~
+view_alert_definition_notification_operation_editor_relative_descendant_tooltip=The resource type to search for under the root type defined in the Start Search From selection.~
+view_alert_definition_notification_operation_editor_relative_descendant_filter_tooltip=A specific name to uniquely identify a resource when more than one resource of the selected type might exist. This is optional if there will only ever be one resource of the resource type in the selected type hierarchy.~
+view_alert_definition_notification_operation_editor_relative_descendant_loadFailed=Cannot get type descendants~
+view_alert_definition_notification_operation_editor_operations_loadFailed=Failed to load the list of available operations~
+view_alert_definition_notification_operation_editor_operations_no_parameters=This operation does not take any parameters~
+view_alert_definition_notification_role_editor_loadFailed=Cannot determine current roles - starting empty~
+view_alert_definition_notification_role_editor_restoreFailed=Cannot use current roles - starting empty~
+view_alert_definition_notification_role_editor_saveFailed=Cannot save the selected roles~
+view_alert_definition_notification_user_editor_loadFailed=Cannot determine current users - starting empty~
+view_alert_definition_notification_user_editor_restoreFailed=Cannot use current users - starting empty~
+view_alert_definition_notification_user_editor_saveFailed=Cannot save the selected users~
+view_alert_definition_recovery_editor_disable_when_fired=Disable When Fired~
+view_alert_definition_recovery_editor_disable_when_fired_tooltip=Indicates if this alert will be disabled after it fires. Once disabled, the alert can be manually re-enabled or a recovery alert can be set up to automatically re-enable it. If this alert is a recovery alert itself, this setting cannot be turned on.~
+view_alert_definition_recovery_editor_recovery_alert=Recover Alert~
+view_alert_definition_recovery_editor_recovery_alert_tooltip=The target alert that will be recovered (i.e. re-enabled) after this alert triggers. Do not select an alert here if you are not defining a recovery alert.~
+view_alert_definition_recovery_editor_loadFailed=Cannot build recovery menu~
+view_alert_definition_recovery_editor_none_available=None~
+view_alert_common_tab_general=General Properties~
+view_alert_common_tab_conditions=Conditions~
+view_alert_common_tab_conditions_modal_title=Add Condition~
+view_alert_common_tab_conditions_expression=Fire alert when~
+view_alert_common_tab_conditions_expression_tooltip=Determines if ANY or ALL of the conditions must evaluate to true in order for the entire condition set to be considered true.~
+view_alert_common_tab_conditions_text=Condition~
+view_alert_common_tab_conditions_value=Value~
+view_alert_common_tab_conditions_type_availability=Availability Change~
+view_alert_common_tab_conditions_type_availability_down=Went down~
+view_alert_common_tab_conditions_type_availability_up=Came up~
+view_alert_common_tab_conditions_type_metric_threshold=Metric Value Exceeds Threshold~
+view_alert_common_tab_conditions_type_metric_calltime_threshold=Call Time Value Exceeds Threshold~
+view_alert_common_tab_conditions_type_metric_calltime_destination=with call destination matching~
+view_alert_common_tab_conditions_type_metric_calltime_change=Call Time Value Changes~
+view_alert_common_tab_conditions_type_metric_calltime_change_verb=by at least~
+view_alert_common_tab_conditions_type_metric_calltime_delta_grows=Grows~
+view_alert_common_tab_conditions_type_metric_calltime_delta_shrinks=Shrinks~
+view_alert_common_tab_conditions_type_metric_calltime_delta_other=Changes~
+view_alert_common_tab_conditions_type_metric_baseline=Metric Value Exceeds Baseline~
+view_alert_common_tab_conditions_type_metric_baseline_verb=of~
+view_alert_common_tab_conditions_type_metric_change=Metric Value Change~
+view_alert_common_tab_conditions_type_metric_trait_change=Trait Change~
+view_alert_common_tab_conditions_type_operation=Operation Execution~
+view_alert_common_tab_conditions_type_operation_status=with result status~
+view_alert_common_tab_conditions_type_resource_configuration=Resource Configuration Change~
+view_alert_common_tab_conditions_type_event=Event Detection~
+view_alert_common_tab_conditions_type_event_matching=with event source matching~
+view_alert_common_tab_conditions_recovery_enabled=Triggered ''{0}'' to be re-enabled~
+view_alert_common_tab_conditions_recovery_disabled=This alert caused its alert definition to be disabled~
+view_alert_common_tab_notifications=Notifications~
+view_alert_common_tab_notifications_sender=Sender~
+view_alert_common_tab_notifications_status=Status
+view_alert_common_tab_notifications_message=Nachricht
+view_alert_common_tab_notifications_all_emails=Alle E-Mmails
+view_alert_common_tab_notifications_bad_emails=Bad Emails~
+view_alert_common_tab_dampening=Dampening~
+view_alert_common_tab_dampening_category_none=Keine
+view_alert_common_tab_dampening_category_none_tooltip=Dampening is disabled. Every time the condition set is true, an alert will be triggered.~
+view_alert_common_tab_dampening_category_consecutive_count=Consecutive~
+view_alert_common_tab_dampening_category_consecutive_count_tooltip=An alert is triggered once every X occurrences the condition set is true consecutively.~
+view_alert_common_tab_dampening_category_partial_count=Last N Evaluations~
+view_alert_common_tab_dampening_category_partial_count_tooltip=An alert is triggered once every X occurrences the condition set is true during the last N evaluations of the condition set.~
+view_alert_common_tab_dampening_category_duration_count=Time Period~
+view_alert_common_tab_dampening_category_duration_count_tooltip=An alert is triggered once every X occurrences the condition set is true within a given time period.~
+view_alert_common_tab_dampening_consecutive_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_consecutive_occurrences_label_tooltip=The number of times the condition set must be consecutively true before the alert is triggered~
+view_alert_common_tab_dampening_partial_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_partial_occurrences_label_tooltip=The number of times the condition set must be true during the last N evaluations before the alert is triggered.~
+view_alert_common_tab_dampening_partial_evalatuions_label=Evaluations~
+view_alert_common_tab_dampening_partial_evalatuions_label_tooltip=The total number of times the condition set will be tested to see if the given number of occurrences are true.~
+view_alert_common_tab_dampening_duration_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_duration_occurrences_label_tooltip=The number of times the condition set must be true during the given time period before the alert is triggered.~
+view_alert_common_tab_dampening_duration_period_label=Time Period~
+view_alert_common_tab_dampening_duration_period_label_tooltip=The time span in which the condition set will be tested to see if the given number of occurrences are true.~
+view_alert_common_tab_recovery=Recovery~
+view_alert_common_tab_invalid_condition_category=Invalid condition category - please report this as a bug: {0}~
+view_alert_common_tab_invalid_dampening_category=Invalid dampening category - please report this as a bug: {0}~
+view_alert_common_tab_invalid_time_units=Invalid time units - please report this as a bug: {0}~
+
+# Auto Discovery Queue
+#----------------------------
+view_autoDiscoveryQ_title=Autodiscovery Queue~
+view_autoDiscoveryQ_import=Import~
+view_autoDiscoveryQ_ignore=Ignore~
+view_autoDiscoveryQ_ignored=Ignored~
+view_autoDiscoveryQ_unignore=Unignore~
+view_autoDiscoveryQ_new=Neu
+view_autoDiscoveryQ_newAndIgnored=Neu und Ignored~
+view_autoDiscoveryQ_importFailure=Failed to import resources~
+view_autoDiscoveryQ_importSuccessful=You have successfully imported the selected resources.~
+view_autoDiscoveryQ_ignoreFailure=Failed to ignore resources~
+view_autoDiscoveryQ_ignoreSuccessful=You have successfully ignored the selected resources.~
+view_autoDiscoveryQ_unignoreFailure=Failed to unignore resources~
+view_autoDiscoveryQ_unignoreSuccessful=You have successfully unignored the selected resources.~
+view_autoDiscoveryQ_noperm=(Required manage inventory permissions missing. See Administrator to change)~
+view_autoDiscoveryQ_noItems=No items to show~
+view_autoDiscoveryQ_field_parentId=Parent ID~
+view_autoDiscoveryQ_field_name=Resource Name~
+view_autoDiscoveryQ_field_key=Resource Key~
+view_autoDiscoveryQ_field_discoveryTime=Discovery Time~
+view_autoDiscoveryQ_field_inventoryStatus=Inventory Status~
+view_autoDiscoveryQ_loadFailure=Failed to load the inventory discovery queue~
+
+#==================== Bundles ======================
+
+# some common bundle terms
+view_bundle_bundle = Bundle~
+view_bundle_bundles = Bundles~
+view_bundle_bundleDestinations=Bundle Destinations~
+view_bundle_bundleDeployment=Bundle Deployment~
+view_bundle_bundleDeployments=Bundle Deployments~
+view_bundle_bundleFiles=Bundle Files~
+view_bundle_bundleType=Bundle Type~
+view_bundle_bundleVersion=Bundle Version~
+view_bundle_bundleVersions=Bundle Versions~
+view_bundle_deploy=Deploy~
+view_bundle_deployed=Deployed~
+view_bundle_deployDir=Deploy Directory~
+view_bundle_deployments=Deployments~
+view_bundle_destinations=Destinations~
+view_bundle_files=Files~
+view_bundle_latestVersion=Latest Version~
+view_bundle_recipe=Recipe~
+view_bundle_revert=Revert~
+view_bundle_versions=Versions~
+
+# individual bundle views/wizards
+view_bundle_fileListView_fileSize=Dateigröße
+view_bundle_fileListView_loadFailure=Failed to load bundle file data~
+view_bundle_version_backToBundle=Back to Bundle~
+view_bundle_version_bundleVersionTagUpdateFailure=Failed to update bundle version tags~
+view_bundle_version_bundleVersionTagUpdateSuccessful=You have successfully updated the bundle version tags~
+view_bundle_version_loadFailure=Failed to load bundle version~
+view_bundle_tree_loadFailure=Failed to load bundle data~
+view_bundle_revertWizard_title=Bundle Revert~
+view_bundle_revertWizard_windowTitle=Bundle Revert Wizard~
+view_bundle_revertWizard_getInfoStep_name=Provide Revert Information~
+view_bundle_revertWizard_getInfoStep_revertDeployName=Revert Deploy Name~
+view_bundle_revertWizard_getInfoStep_revertDeployDesc=Revert Deploy Description~
+view_bundle_revertWizard_getInfoStep_revertDeployDescFull=[REVERT From]\\n{0}\\n\\n[REVERT To]\\n{1}~
+view_bundle_revertWizard_getInfoStep_cleanDeploy=Clean Deployment? (this will delete an old, existing deploy directory prior to starting the revert deployment)~
+view_bundle_revertWizard_getInfoStep_getNameFailure=Failed to get revert deployment name~
+view_bundle_revertWizard_confirmStep_name=Revert Deployment Confirmation~
+view_bundle_revertWizard_confirmStep_noLiveDeployment=No live deployment was found for the destination [{0}]~
+view_bundle_revertWizard_confirmStep_noPriorDeployment=The live deployment [{0}] cannot be reverted because there is no prior deployment for the destination [{1}]~
+view_bundle_revertWizard_confirmStep_failedToFindLiveDeployment=Failed to find live deployment; cannot revert~
+view_bundle_revertWizard_confirmStep_liveDeployment=Live Deployment~
+view_bundle_revertWizard_confirmStep_prevDeployment=Previous Deployment~
+view_bundle_revertWizard_confirmStep_confirmation=Reverting Live Deployment to Previous Deployment. Click "Next" to continue...~
+view_bundle_revertWizard_revertStep_name=Deploy Bundle to Destination Platforms~
+view_bundle_revertWizard_revertStep_reverting=Reverting...~
+view_bundle_revertWizard_revertStep_scheduled=You have successfully scheduled the revert deployment!~
+view_bundle_revertWizard_revertStep_scheduledDetails=You have successfully scheduled to revert the bundle deployment [{0}] from resource group [{1}]~
+view_bundle_revertWizard_revertStep_scheduledFailure=Failed to schedule revert deployment!~
+view_bundle_list_loadFailure=Failed to load the bundle to be deployed [{0}]~
+view_bundle_list_singleLoadFailure=Failed to get a single bundle to be deployed [{0}]~
+view_bundle_list_versionsCount=Versions Count~
+view_bundle_list_destinationsCount=Destinations Count~
+view_bundle_list_loadWithLatestFailure=Failed to load bundle with the latest version data~
+view_bundleVersion_loadFailure=Failed to load bundle version data~
+view_bundle_list_backToAll=Back to All Bundles~
+view_bundle_list_tagUpdateFailure=Failed to update bundle tags~
+view_bundle_list_tagUpdateSuccessful=You have successfully updated the bundle tags~
+view_bundle_list_deleteConfirm=Are you sure you want to delete this bundle?~
+view_bundle_list_deleteFailure=Failed to delete the bundle [{0}]~
+view_bundle_list_deleteSuccessful=You successfully deleted the bundle named [{0}]~
+view_bundle_list_error1=Failed to load bundle to deploy [{0}]~
+view_bundle_list_error2=Failed to get a single bundle to deploy [{0}]~
+view_bundle_list_error3=Failed to load bundle~
+view_bundle_dest_group=Gruppe
+view_bundle_dest_created=Angelegt
+view_bundle_dest_deployDir=Deploy Directory~
+view_bundle_dest_lastDeployedVersion=Last Deployed Version~
+view_bundle_dest_lastDeploymentDate=Last Deployment Date~
+view_bundle_dest_lastDeploymentStatus=Last Deployment Status~
+view_bundle_dest_loadFailure=Failed to load bundle destinations~
+view_bundle_dest_loadFailureVersionInfo=Failed to load bundle destination deployed version information~
+view_bundle_dest_backToBundle=Back to Bundle~
+view_bundle_dest_tagUpdateFailure=Failed to update bundle destination tags~
+view_bundle_dest_tagUpdateSuccessful=You have successfully updated the bundle destination tags~
+view_bundle_resDeployDS_loadFailure=Failed to load bundle resource deployments~
+view_bundle_deploy_name=Deployment Name~
+view_bundle_deploy_time=Deployment Time~
+view_bundle_deploy_loadDeployFailure=Failed to load bundle deployments~
+view_bundle_deploy_action=Action~
+view_bundle_deploy_installDetails=Install Details~
+view_bundle_deploy_backButton=Back to Destination~
+view_bundle_deploy_tagUpdateFailure=Failed to update bundle deployment tags~
+view_bundle_deploy_tagUpdateSuccessful=You have successfully updated the bundle deployment tags~
+view_bundle_deploy_deploymentPlatforms=Deployment Platforms~
+view_bundle_deploy_selectARow=Select a row to show installation details~
+view_bundle_deploy_operatingSystem=Operating System~
+view_bundle_deploy_loadFailure=Failed to load bundle deployment~
+view_bundle_deploy_loadBundleFailure=Failed to find bundle~
+view_bundle_createWizard_title=Create Bundle~
+view_bundle_createWizard_windowTitle=Bundle Creation Wizard~
+view_bundle_createWizard_cancelSuccessful=Canceled the creation of bundle [{0}], version=[{1}]~
+view_bundle_createWizard_cancelFailure=Failed to fully cancel the creation of bundle [{0}], version=[{1}] - the bundle may still exist in the database~
+view_bundle_createWizard_noBundleTypesSupported=No bundle types are supported - you must deploy a valid plugin that supports bundle deployments~
+view_bundle_createWizard_noBundleTypesAvail=No bundle types are available~
+view_bundle_createWizard_loadBundleFileFailure=Cannot obtain bundle file information from server~
+view_bundle_createWizard_uploadInProgress=Upload is in progress... This can take several minutes for large files~
+view_bundle_createWizard_uploadStepName=Upload Bundle Files~
+view_bundle_createWizard_noAdditionalFilesNeeded=No additional files need to be uploaded for this bundle~
+view_bundle_createWizard_failedToUploadFile=Failed to upload bundle file~
+view_bundle_createWizard_failedToUploadDistroFile=Failed to upload bundle distribution file~
+view_bundle_createWizard_bundleDistro=Bundle Distribution~
+view_bundle_createWizard_youMustChooseOne=You must choose one option in order to create a bundle!
+view_bundle_createWizard_urlOption=URL
+view_bundle_createWizard_uploadOption=Upload~
+view_bundle_createWizard_recipeOption=Recipe~
+view_bundle_createWizard_uploadStepName=Provide a Bundle Distribution~
+view_bundle_createWizard_clickToUploadRecipe=Click to upload a recipe file~
+view_bundle_createWizard_createFailure=Failed to create the bundle~
+view_bundle_createWizard_createSuccessful=You have successfully created a bundle named [{0}] with a version of [{1}]~
+
+view_bundle_deployWizard_deploying = Deploying...~
+view_bundle_deployWizard_deployStep = Deploy Bundle to Destination Platforms~
+view_bundle_deployWizard_deploymentCreated = Created Deployment...~
+view_bundle_deployWizard_deploymentCreatedDetail = Created deployment [{0}] description [{1}]~
+view_bundle_deployWizard_destinationCreatedDetail = Created destination [{0}] description [{1}]~
+view_bundle_deployWizard_deploymentScheduled = Bundle Deployment Scheduled!~
+view_bundle_deployWizard_deploymentScheduledDetail = Scheduled bundle deployment [{0}] destination group [{1}]~
+view_bundle_deployWizard_error_1 = Failed to delete new deployment on Cancel: {0}~
+view_bundle_deployWizard_error_2 = Failed to delete new destination on Cancel: {0}~
+view_bundle_deployWizard_error_3 = Failed to Schedule Deployment!~
+view_bundle_deployWizard_error_4 = Failed to schedule deployment: {0}~
+view_bundle_deployWizard_error_5 = Failed to Create Deployment!~
+view_bundle_deployWizard_error_6 = Failed to create deployment: {0}~
+view_bundle_deployWizard_error_7 = Failed to get deployment name.~
+view_bundle_deployWizard_error_8 = You must select a valid resource group from the drop down~
+view_bundle_deployWizard_error_9 = Failed to delete new destination in nextPage: [{0}]~
+view_bundle_deployWizard_error_10 = Failed to create destination, it may already exist. (Note, for an existing destination deploy from the Destination view)~
+view_bundle_deployWizard_error_11 = Failed to find defined deployments.~
+view_bundle_deployWizard_error_12 = Failed to find defined bundles.~
+view_bundle_deployWizard_getConfigStep = Set Deployment Configuration~
+view_bundle_deployWizard_getConfigSkip = No configuration needed for this bundle version.~
+view_bundle_deployWizard_getDestStep = New Destination~
+view_bundle_deployWizard_getDest_name = Destination Name~
+view_bundle_deployWizard_getDest_desc = Destination Description~
+view_bundle_deployWizard_getDest_deployDir = Root Deployment Directory (on destination platforms)~
+view_bundle_deployWizard_getInfoStep = Provide Deployment Information~
+view_bundle_deployWizard_getInfo_clean = Clean Deployment? (wipe deploy directory on destination platform)~
+view_bundle_deployWizard_getInfo_deploymentDesc = Deployment Description~
+view_bundle_deployWizard_getInfo_deploymentName = Deployment Name~
+view_bundle_deployWizard_getOptionsStep = Deploy Options~
+view_bundle_deployWizard_getOptions_deployLater = Deploy Later~
+view_bundle_deployWizard_getOptions_deployNow = Deploy Now~
+view_bundle_deployWizard_getOptions_deployTime = Deployment Time~
+view_bundle_deployWizard_selectBundleStep = Select Deployment Bundle~
+view_bundle_deployWizard_selectBundle_single = Select only a single bundle for deployment.~
+view_bundle_deployWizard_selectVersionStep = Select Deployment Bundle Version~
+view_bundle_deployWizard_selectVersion_latest = Latest Version [{0}]~
+view_bundle_deployWizard_selectVersion_live = Live Version [{0}]~
+view_bundle_deployWizard_selectVersion_select = Select Version from List:~
+view_bundle_deployWizard_title = Bundle Deployment Wizard~
+
+
+#=================== Components =====================
+
+view_configCompare_comparingConfigs = Comparing Configurations~
+view_configCompare_configCompare = Configuration Comparison~
+
+view_configEdit_addItem = Add Item to List~
+view_configEdit_confirm_1 = Are you sure you want to delete the selected properties from the set?~
+view_configEdit_confirm_2 = Are you sure you want to delete this row?~
+view_configEdit_confirm_3 = Are you sure you want to delete the [{0}] selected [{1}]?~
+view_configEdit_editRow = Edit Configuration Row~
+view_configEdit_enterPropName = Enter the name of the property to be added.~
+view_configEdit_error_1 = Configuration is not supported by this Resource.~
+view_configEdit_error_2 = Connection settings are not supported by this Resource.~
+view_configEdit_error_3 = Cannot add property named [{0}]. The property name is already used in the set.~
+view_configEdit_files = Dateien
+view_configEdit_hideAll= Alle verbergen
+view_configEdit_jumpToSection = Jump to Section~
+view_configEdit_msg_1 = Added property [{0}] to the set.~
+view_configEdit_msg_2 = Removed properties from the set.~
+view_configEdit_msg_3 = [{0} {1}] deleted from list.~
+view_configEdit_msg_4 = Item added to list.~
+view_configEdit_properties = Eigenschaften
+view_configEdit_tooltip_1 = Delete the selected items from the list.~
+view_configEdit_tooltip_2 = Add an item to the list.~
+
+view_groupConfigEdit_member = Member~
+view_groupConfigEdit_noListProps = List properties are not currently supported for group configurations.~
+view_groupConfigEdit_tooltip_1 = Member values differ - click icon to edit them.~
+view_groupConfigEdit_setAll = Set all values to:~
+view_groupConfigEdit_unset = Unset~
+view_groupConfigEdit_valsDiff = member values differ~
+view_groupConfigEdit_valsDiffForProp = Member Values for Property [{0}]~
+
+view_leftNav_unknownPage = Unknown page name [{0}] for section [{1}] - URL is invalid.~
+
+view_measure_nan = --keine Daten verfügbar--~
+view_measureRange_day = 1 Tag
+view_measureRange_days = {0} Tage
+view_measureRange_hour = 1 Stunde
+view_measureRange_hours = {0} Stunden
+view_measureRange_last = Letzte
+view_measureRange_minutes = {0} Minuten
+view_measureRange_range = Zeitraum
+view_measureRange_simple = Einfach...
+
+view_selector_assigned = Zugewiesen {0}
+view_selector_available = Verfügbar {0}
+
+view_subTab_error_disabled = Cannot select disabled subTab [{0}].~
+
+view_table_totalRows = Total Rows: {0} Selected: {1}~
+view_tableSection_backButton = Zurück zur Liste
+view_tableSection_error_noId = Table [{0}] record is missing 'id' attribute - please report this bug.~
+view_tableSection_error_badId = Can not show detail for [{0}]. Illegal 'id': [{1}]. Please report this bug~
+
+view_tags_tags = Tags
+view_tags_error_1 = Failed to load Tags~
+view_tags_title = Tags:~
+view_tags_tooltip_1 = Click to remove this Tag~
+view_tags_tooltip_2 = Click to edit Tags~
+view_tags_tooltip_3 = Enter a Tag in the format: (namespace:)(semantic=)tagname (e.g. it:env=QA, or owner=John)
+
+# File Upload (various)
+view_upload_alreadyUploaded = File has already been uploaded~
+view_upload_bundleDistFile = Distribution File~
+view_upload_error_bundleDistFile = Error uploading Bundle Distribution File~
+view_upload_error_file = Error uploading file~
+view_upload_error_fileName = Error uploading file [{0}]~
+view_upload_error_fileName_2 = Error uploading file [{0}], check for invalid file path.~
+view_upload_error_packageVersionFile = Error uploading Package Version File~
+view_upload_error_results = Error uploading file, unexpected results: [{0}]~
+view_upload_inProgress = Can not submit, upload is currently in progress~
+view_upload_prompt_1 = [{0}] File to Upload~
+view_upload_prompt_2 = File to Upload~
+view_upload_tooltip_1 = Select a file to upload, then click Upload or Next~
+view_upload_tooltip_2 = File upload had previously failed~
+view_upload_success = File successfully uploaded~
+view_upload_upload = Upload~
+view_upload_uploadFile = UploadFile~
+
+# Group Create Wizard
+view_groupCreateWizard_membersStepName=Select Members~
+view_groupCreateWizard_createStepName=Group Settings~
+view_groupCreateWizard_createStep_recursive=Recursive~
+view_groupCreateWizard_title=Create Group~
+view_groupCreateWizard_windowTitle=Create Group~
+view_groupCreateWizard_createFailure=Failed to create the resource group~
+view_groupCreateWizard_createSuccessful_concise=You have created a new resource group. [<a href="{0}">View Group</a>]~
+view_groupCreateWizard_createSuccessful_full=You have created a new [{0}] resource group with the name [{1}] that contains [{2}] member resources~
+
+# Resource Type / Plugin View/Datasources
+view_type_resourceTypes=Resource Types~
+view_type_parentId=Parent ID~
+view_type_typeTreeLoadFailure=Failed to load resource type tree data~
+
+#=================== Dashboard =====================
+view_dashboard_favorites_error1=Failed to load favorite Resources.~
+view_dashboardManager_error=Failed to save dashboard to server~
+view_dashboardManager_saved=Saved dashboard {0} to server~
+view_dashboardManager_success=Saved dashboard~
+view_dashboardManager_deleted=Successfully deleted dashboard {0}~
+view_dashboards_title=Dashboard~
+view_dashboards_confirm1=Are you sure you want to delete~
+view_dashboardsManager_error1=Failed to add new dashboard~
+# // dup in common
+view_dashboardsManager_inventory_title=Inventory Summary~
+view_dashboardsManager_mashup_title=RHQ Neuigkeiten
+view_dashboardsManager_message_title=Wilkommen bei RHQ~
+view_dashboardsManager_message_title_details=<h1>Welcome to RHQ</h1>\n<p>The RHQ project is an abstraction and plug-in based systems management suite that provides extensible and integrated systems management for multiple products and platforms across a set of core features. The project is designed with layered modules that provide a flexible architecture for deployment. It delivers a core user interface that delivers audited and historical management across an entire enterprise. A Server/Agent architecture provides remote management and plugins implement all specific support for managed products.</p>\n <p>This default dashboard can be edited by clicking the (edit mode) button above.</p>~
+view_dashboardsManager_tagcloud_title=Tag Cloud~
+view_portlet_autodiscovery_config_platform_selection = Number of platforms to display~
+view_portlet_autodiscovery_help_msg = This portlet offers the ability to import newly discovered resources into the inventory for monitoring and management or to ignore them from further action.~
+view_portlet_autodiscovery_title = Discovery Queue~
+view_portlet_favoriteResources_msg=This portlet displays your favorite resources~
+view_portlet_favoriteResources_title=Favorite Resources~
+view_portlet_generic_help=Für dieses Portlet liegt keine Hilfe vor
+view_portlet_generic_unconfigured=No settings available for this portlet~
+view_portlet_graph_configure_resource_graph=The resource to graph~
+view_portlet_graph_configure_metricDefinition_graph=The metric definition id to graph~
+view_portlet_graph_configure_title=Graph Config~
+view_portlet_graph_configure_title_desc=Configuration of the graph portlet~
+view_portlet_graph_help_msg = This Portlet supports the graphing of a resource metric.~
+view_portlet_graph_help_title = Graph Portlet~
+view_portlet_graph_help_unconfigured=This graph is unconfigured, click the settings button to configure.~
+view_portlet_graph_title = Resource Graph~
+view_portlet_inventory_error1=Failed to retrieve inventory summary~
+view_portlet_mashup_config_title=MashupPorlet Configuration~
+view_portlet_mashup_config_title_desc=The configuration settings for the mashup portlet.~
+view_portlet_mashup_help=This portlet can include a web page via an HTTP request into an iframe on the dashboard.~
+view_portlet_mashup_unconfigured=Page address not yet configured, click the settings button to setup this portlet.~
+view_portlet_message_config_title=MessagePortlet Configuration~
+view_portlet_message_config_title_desc=The configuration settings for the message portlet.~
+view_portlet_message_help=This portlet can display an HTML message on the dashboard.~
+view_portlet_message_title=Message~
+view_portlet_message_unconfigured=Message not yet configured, click the settings button to setup this portlet.~
+view_portlet_operations_config_completed_maximum=Maximum number of Completed operations to display.~
+view_portlet_operations_config_completed_enable=Whether to enable completed operations results grouping for dashboard.~
+view_portlet_operations_config_scheduled_enable=Whether to enable scheduled operations results grouping for dashboard.~
+view_portlet_operations_config_scheduled_maximum=Maximum number of Scheduled operations to display.~
+view_portlet_operations_config_completed=completed operations~
+view_portlet_operations_config_show_last=show Last~
+view_portlet_operations_config_show_next=show Next~
+view_portlet_operations_config_title=OperationsPortlet Configuration~
+view_portlet_operations_config_title_desc=The configuration settings for the Operations portlet.~
+view_portlet_operations_disabled=(Results currently disabled. Change settings to enable results.~
+view_portlet_operations_help_msg=This portlet displays both operations that have occurred and are scheduled to occur.~
+view_portlet_platform_help_msg = This portlet displays information about platforms in inventory.~
+view_portlet_platform_platform_error_1 = Failed to load platform metrics~
+view_portlet_platform_title = Platforms Summary~
+view_portlet_platform_type_error_1 = Could not load type data~
+view_portlet_problem_resources_config_display_maximum=Maximum number of Problem resources to display.~
+view_portlet_problem_resources_config_display_range=Show problem resources going back this many hours.~
+view_portlet_problem_resources_config_display_range2 = From {0} to {1}~
+view_portlet_problem_resources_config_problem_label=problem resources on dashboard.~
+view_portlet_problem_resources_config_title=ProblemResourcesPortlet Configuration~
+view_portlet_problem_resources_config_title_desc=The configuration settings for the Problem resources portlet.~
+view_portlet_problem_resources_help=This portlet displays resources that have reported alerts or Down availability.~
+view_portlet_problem_resources_title=Has Alerts or Currently Unavailable~
+view_portlet_recentAlerts_config_members=Select Members~
+view_portlet_recentAlerts_config_priority_label = priority Alerts,~
+view_portlet_recentAlerts_config_when=within the past~
+view_portlet_recentAlerts_help_msg = Displays recent alerts fired on resources visible to the current user login.~
+# // dup in common
+view_portlet_recentAlerts_title = Recent Alerts~
+view_portlet_recentlyAdded_approved_platforms=recently approved platforms on dashboard.~
+view_portlet_recentlyAdded_error1=Failed to load recently added resources~
+view_portlet_recentlyAdded_help_msg=This portlet displays resources that have recently been imported into the inventory.~
+view_portlet_recentlyAdded_title =Recently Added Portlet~
+view_portlet_tagCloud_help=portlet displays the relative tag counts in the system visible to the current user.~
+view_portlet_tagCloud_title=TagCloud~
+
+
+#=================== Inventory =====================
+view_inventory_adq = Discovery Queue~
+view_inventory_sectionHelp = From this section, newly discovered Resources, inventoried Resources, and Groups can be viewed and managed.~
+view_inventory_cannotGetGlobalPerms = Could not determine global permissions - assuming none.~
+view_inventory_problemGroups=Problem Groups~
+view_inventory_collectionInterval=Collection Interval~
+view_inventory_mixed=gemischt
+view_inventory_downServers=Down Servers~
+view_inventory_groups = Gruppen
+view_inventory_allGroups = Alle Gruppen
+view_inventory_allResources = All Resources~
+view_inventory_platforms = Platformen
+view_inventory_servers = Server
+view_inventory_services = Dienste
+view_inventory_dynagroupDefs = Dynagroup Definitions~
+view_metric_traits=Traits~
+view_metric_viewTraitHistory=Value History for Trait [{0}]~
+view_inventory_eventHistory_groupEventHistory=Group Event History~
+view_inventory_eventHistory_resourceEventHistory=Resource Event History~
+view_inventory_eventHistory_sourceFilter=Source Filter~
+view_inventory_eventHistory_detailsFilter=Details Filter~
+view_inventory_eventHistory_severityFilter=Severity Filter~
+view_inventory_eventHistory_timestamp=Zeitunkt
+view_inventory_eventHistory_severity=Schwere
+view_inventory_eventHistory_details=Details
+view_inventory_eventHistory_sourceLocation=Source Location~
+view_inventory_eventHistory_deleteSuccessful=You have successfully deleted [{0}] events for [{1}]~
+view_inventory_eventHistory_deleteFailed=Failed to deleted selected events for [{0}]~
+view_inventory_eventHistory_purgeSuccessful=You have successfully purged [{0}] events for [{1}]~
+view_inventory_eventHistory_purgeFailed=Failed to purge events for [{0}]~
+view_inventory_eventDetails_loadFailed=An error occurred loading the event details~
+view_inventory_groups_resourceGroups=Ressource-Gruppen
+view_inventory_groups_children=Children~
+view_inventory_groups_descendants=Descendants~
+view_inventory_groups_deleteSuccessful=You have successfully deleted the selected resource groups~
+view_inventory_groups_deleteFailed=Failed to delete the selected resource groups~
+view_inventory_groups_loadFailed=Failed to load group composite data~
+view_inventory_resource_loadFailed=Resource with id [{0}] does not exist or is not accessible~
+view_inventory_resources_deleteConfirm=Are you sure you want to delete the selected resources?~
+view_inventory_resources_deleteSuccessful=You have successfully deleted the selected resources~
+view_inventory_resources_deleteFailed=Failed to delete the selected resources~
+view_inventory_resources_loadFailed=Failed to load resource composite data~
+view_inventory_resources_title=Member Resources~
+view_inventory_resources_title_children=Child Resources~
+view_inventory_resources_title_members=Member Resources~
+view_resource_monitor_availability_loadFailed=Failed to load availability history~
+view_resource_monitor_graphs_noneAvailable=No graphs available~
+view_resource_monitor_graphs_loadFailed=Failed to load graph data~
+view_resource_monitor_graphs_lookupFailed=Failed to find resource for graph~
+view_resource_monitor_graph_instructions=Point your mouse to a data point on the chart~
+view_resource_monitor_graph_live_tooltip=Click for a live graph of current values~
+view_resource_monitor_detailed_graph_label=Detailed Graph~
+view_resource_monitor_calltime_title=Call Time Data~
+view_resource_monitor_calltime_destination=Call Destination~
+view_resource_monitor_calltime_count=Anzahl
+view_resource_monitor_calltime_minimum=Minimum
+view_resource_monitor_calltime_average=Durchschnitt
+view_resource_monitor_calltime_maximum=Maximum
+view_resource_monitor_calltime_total=Gesamt
+view_resource_monitor_calltime_loadFailed=Could not load call time data~
+view_resource_monitor_calltime_lookupFailed=Could not load resource for call time~
+view_resource_monitor_calltime_editFailed=Call time data can not be edited~
+view_resource_monitor_schedules_title=Resource Metric Collection Schedules~
+view_tree_common_loadFailed_generic=Failed to load data for tree~
+view_tree_common_loadFailed_root=Failed to load root for tree~
+view_tree_common_loadFailed_descendants=Failed to load descendants for tree~
+view_tree_common_loadFailed_children=Failed to load children for node~
+view_tree_common_loadFailed_selection=Failed to select this node~
+view_tree_common_loadFailed_node=Failed to load data for this node~
+view_tree_common_loadFailed_create=Failed to create view for this node~
+view_tree_common_loadFailed_update=Failed to update view for this node~
+view_tree_common_contextMenu_type_name_label=Type: {0}
+view_tree_common_contextMenu_pluginConfiguration=Plugin Configuration~
+view_tree_common_contextMenu_resourceConfiguration=Resource Configuration~
+view_tree_common_contextMenu_editPluginConfiguration=Edit [{0}] Plugin Configuration~
+view_tree_common_contextMenu_editResourceConfiguration=Edit [{0}] Resource Configuration~
+view_tree_common_contextMenu_operations=Operations~
+view_tree_common_contextMenu_operations_loadFailed=Failure to start wizard for running operations~
+view_tree_common_contextMenu_measurements=Measurements~
+view_tree_common_contextMenu_addChartToDashboard=Add chart to dashboard [{0}]~
+view_tree_common_contextMenu_chart=Chart~
+view_tree_common_contextMenu_saveChartToDashboardSuccessful=You have saved dashboard [{0}]~
+view_tree_common_contextMenu_saveChartToDashboardFailure=Failed to save the dashboard~
+view_tree_common_contextMenu_loadFailed_dashboard=Failed to load user dashboards
+view_tree_common_contextMenu_loadFailed_manualAddChildren=Failed to load platform manual add children~
+view_tabs_common_summary=Zusammenfassung
+view_tabs_common_overview=Übersicht
+view_tabs_common_dashboard=Dashboard~
+view_tabs_common_timeline=Timeline~
+view_tabs_common_monitoring=Monitoring~
+view_tabs_common_graphs=Graphs~
+view_tabs_common_tables=Tabellen
+view_tabs_common_traits=Traits~
+view_tabs_common_availability=Verfügbarkeit
+view_tabs_common_schedules=Schedules~
+view_tabs_common_calltime=Calltime~
+view_tabs_common_inventory=Inventory~
+view_tabs_common_groups=Gruppen
+view_tabs_common_group_membership=Group Membership~
+view_tabs_common_members=Members~
+view_tabs_common_child_resources=Child Resources~
+view_tabs_common_child_history=Child History~
+view_tabs_common_connectionSettings=Connection Settings~
+view_tabs_common_connectionSettingsHistory=Connection Settings History~
+view_tabs_common_operations=Operations~
+view_tabs_common_history=History~
+view_tabs_common_scheduled=Scheduled~
+view_tabs_common_alerts=Alerts~
+view_tabs_common_definitions=Definitions~
+view_tabs_common_current=Current~
+view_tabs_common_events=Events~
+view_tabs_common_configuration=Configuration~
+view_tabs_common_content=Content~
+view_tabs_common_deployed=Deployed~
+view_tabs_common_new=Neu
+view_tabs_common_subscriptions=Subscriptions~
+view_titleBar_common_updateTagsSuccessful=The tags for [{0}] have been updated~
+view_titleBar_common_updateTagsFailure=Failed to update the tags for [{0}]~
+view_titleBar_common_loadTagsFailure=Failed to load the tags for [{0}]~
+view_titleBar_common_clickToRemoveFav=Click to remove this as a favorite~
+view_titleBar_common_clickToAddFav=Click to add this as a favorite~
+view_titleBar_common_removedFav=You have removed [{0}] as one of your favorites~
+view_titleBar_common_addedFav=You have added [{0}] as a favorite~
+view_titleBar_common_removedFavFailure=Failed to remove [{0}] as one of your favorites~
+view_titleBar_common_addedFavFailure=Failed to add [{0}] as a favorite~
+view_dynagroup_expressionSet=Expression Set~
+view_dynagroup_recalculationInterval=Recalculation Interval~
+view_dynagroup_lastCalculationTime=Last Calculation Time~
+view_dynagroup_nextCalculationTime=Next Calculation Time~
+view_dynagroup_definitionCreated=You have successfully created a group definition named [{0}]~
+view_dynagroup_definitionLoadFailure=Failed to load group definitions~
+view_dynagroup_definitionAlreadyExists=A group definition already exists with this name~
+view_dynagroup_saveSuccessful=You have successfully saved the group definition named [{0}]~
+view_dynagroup_saveFailure=Failed to save the group definition named [{0}]~
+view_dynagroup_singleSaveFailure=An error occurred - there should have been one created, but instead there were [{0}] created~
+view_dynagroup_saveAndRecalculate=Save & Recalculate~
+view_dynagroup_recalculate=Recalculate~
+view_dynagroup_recalcSuccessful=You have successfully recalculated this group definition~
+view_dynagroup_recalcFailure=Failed to recalculated this group definition~
+view_dynagroup_recalcSuccessfulSelection=You have successfully recalculated [{0}] group definitions~
+view_dynagroup_recalcFailureSelection=Failed to recalculated the selected group definitions~
+view_dynagroup_deleteSuccessfulSelection=You have successfully deleted [{0}] group definitions~
+view_dynagroup_deleteFailureSelection=Failed to delete the selected group definitions~
+view_dynagroup_children=DynaGroup Children~
+view_dynagroup_newGroupDefinition=New Group Definition~
+view_dynagroup_editing=Editing [{0}]~
+view_dynagroup_expression=Ausdruck
+view_dynagroup_recursive=Recursive~
+view_dynagroup_loadDefinitionFailure=Failed to load group definition [{0}]~
+view_dynagroup_loadDefinitionMissing=There is no group definition with the ID of [{0}]~
+view_dynagroup_permUnknown=Could not determine if you have the proper permissions - access is denied~
+view_dynagroup_permDenied=You do not have permission to view group definitions~
+view_dynagroup_definitions=DynaGroup Definitions~
+view_group_membership_saveFailure=Failed to update membership of group [{0}]~
+view_group_membership_saveSuccessful=You have updated the membership of group [{0}]~
+view_group_resConfig_edit_saveTooltip=Update the configurations of all group members~
+view_group_resConfig_edit_noperm=You do not have permission to edit this group configuration~
+view_group_resConfig_edit_saveInitiated_concise=The group configuration updates have been initiated~
+view_group_resConfig_edit_saveInitiated_full=The group configuration updates have been initiated for the [{0}] compatible group named [{1}]~
+view_group_resConfig_edit_saveFailure=Failed to initiate group configuration update for [{0}] compatible group named [{1}]~
+view_group_resConfig_edit_valid=All configuration properties have valid values, so the configuration can now be saved~
+view_group_resConfig_edit_invalid=The following configuration properties have invalid values and must be corrected before the configuration can be saved: [{0}]~
+view_group_pluginConfig_view_noperm=You do not have permissions to see the connection settings~
+view_group_pluginConfig_view_groupProperties=Group Properties~
+view_group_pluginConfig_table_title=Group Connection Settings History~
+view_group_pluginConfig_table_statusDetails=Status Details~
+view_group_pluginConfig_table_viewSettings=View Settings~
+view_group_pluginConfig_table_viewMemberHistory=View Member History~
+view_group_pluginConfig_table_deleteSuccessful=You have deleted [{0}] history items~
+view_group_pluginConfig_table_deleteFailure=Failed to delete group plugin config history~
+view_group_pluginConfig_table_msg1=View Member History for status of each individual resource~
+view_group_pluginConfig_table_statusSuccess=This group configuration update was successful~
+view_group_pluginConfig_table_statusInprogress=This group configuration update is still in progress~
+view_group_pluginConfig_table_statusNochange=No changes were made to this group configuration~
+view_group_pluginConfig_table_statusFailure=This group configuration update failed~
+view_group_pluginConfig_table_clickStatusIcon=Click the status icon for full details~
+view_group_pluginConfig_members_title=Group Connection Settings Member Histories~
+view_group_pluginConfig_members_statusDetails=Status Details~
+view_group_pluginConfig_members_statusSuccess=This configuration update was successful~
+view_group_pluginConfig_members_statusInprogress=This configuration update is still in progress~
+view_group_pluginConfig_members_statusNochange=No changes were made to this configuration~
+view_group_pluginConfig_members_statusFailure=This configuration update failed for an unknown reason~
+view_group_pluginConfig_members_fetchFailure=Failed to get plugin config update history for members of group [{0}]~
+view_group_pluginConfig_edit_currentGroupProperties=Current Group Properties~
+view_group_pluginConfig_edit_saveTooltip=Update the connection settings of all group members~
+view_group_pluginConfig_edit_noperm=You do not have permission to edit this group connection settings~
+view_group_pluginConfig_edit_saveInitiated_concise=The group connection setting updates have been initiated~
+view_group_pluginConfig_edit_saveInitiated_full=The group connection setting updates have been initiated for the [{0}] compatible group named [{1}]~
+view_group_pluginConfig_edit_saveFailure=Failed to initiate group connection setting update for [{0}] compatible group named [{1}]~
+view_group_pluginConfig_edit_valid=All connection setting properties have valid values, so the connection settings can now be saved~
+view_group_pluginConfig_edit_invalid=The following connection setting properties have invalid values and must be corrected before the connection settings can be saved: [{0}]~
+view_group_meas_schedules_title=Group Metric Collection Schedules~
+view_group_summary_nameUpdateFailure=Failed to change the name of the resource group with ID [{0}] - could not change from [{1}] to [{2}]~
+view_group_summary_nameUpdateSuccessful=You have changed the name of the resource group with ID [{0}] from [{1}] to [{2}]~
+view_group_summary_memberType=Member Type~
+view_group_summary_memberCount=Member Count~
+view_group_summary_dynamic=Dynamic~
+view_group_summary_recursive=Recursive~
+view_group_summary_groupDefinition=Group Definition~
+view_group_summary_mixed=Gemischt
+view_group_summary_descUpdateFailure=Failed to change the description of the resource group with ID [{0}]~
+view_group_summary_descUpdateSuccessful=You have changed the description of this resource group~
+view_group_summary_dynamicNote=Dynamic group names and descriptions are managed, and therefore are not editable~
+
+# Connection Settings Details
+#------------------------------------------
+view_connectionSettingsDetails_noPermission = You do not have permission to edit this Resource''s connection settings.~
+view_connectionSettingsDetails_error_updateFailure = Failed to update connection settings.~
+view_connectionSettingsDetails_messageConcise_updateSuccess = Connection settings updated.~
+view_connectionSettingsDetails_messageDetailed_updateSuccess = Connection settings updated for Resource [{0}].~
+view_connectionSettingsDetails_allPropertiesValid = All connection settings have valid values, so the settings can now be saved.~
+view_connectionSettingsDetails_somePropertiesInvalid = The following connection settings have invalid values: {0}. The values must be corrected before the settings can be saved.~
+
+# Resource Resource Groups
+#-----------------------------------------
+view_resourceResourceGroupList_error_fetchFailure = Failed to fetch Resource''s groups.~
+view_resourceResourceGroupList_error_updateFailure = Failed to update assigned Resource groups.~
+view_resourceResourceGroupList_message_updateSuccess = Group membership updated for [{0}].
+
+# Configuration Details
+#-------------------------------
+view_configurationDetails_noPermission = You do not have permission to edit this Resource''s configuration.~
+view_configurationDetails_error_updateFailure = Failed to update configuration.~
+view_configurationDetails_messageConcise = Configuration updated.~
+view_configurationDetails_messageDetailed = Configuration updated for Resource [{0}].~
+view_configurationDetails_allPropertiesValid = All configuration properties have valid values, so the configuration can now be saved.~
+view_configurationDetails_somePropertiesInvalid = The following configuration properties have invalid values: {0}. The values must be corrected before the configuration can be saved.~
+
+# Configuration History List
+view_configurationHistoryList_title = Configuration History~
+view_configurationHistoryList_itemNamePlural = configuration history items
+
+# Configuration History Details
+#------------------------------------------
+view_configurationHistoryDetails_dialogTitle = Configuration Details~
+view_configurationHistoryDetails_error_loadFailure = Unable to load configuration history.~
+
+# Operation History List
+#---------------------------------
+view_operationHistoryList_title = Operation History~
+view_operationHistoryList_button_runOperation = Run Operation~
+
+# Operation History Details
+#--------------------------------------
+view_operationHistoryDetails_error_fetchFailure = Failure loading operation history.~
+
+# Operation Create Wizard
+#-------------------------------------
+view_operationCreateWizard_title = Operation Wizard~
+view_operationCreateWizard_header = Execute {0} on {1}~
+view_operationCreateWizard_button_execute = Execute~
+view_operationCreateWizard_button_executeImmediately = Sofort ausführen
+view_operationCreateWizard_error_scheduleOperationFailure = Failed to schedule operation execution.~
+view_operationCreateWizard_message_scheduleOperationSuccess = Schedule operation [{0}] on Resource [{1}] with cron string [{2}].~
+view_operationCreateWizard_parametersStep_name = Operation Parameters~
+view_operationCreateWizard_parametersStep_noParameters = This operation does not take any parameters.~
+view_operationCreateWizard_schedulingStep_name = Schedule~
+view_operationCreateWizard_schedulingStep_label_start = Start~
+view_operationCreateWizard_schedulingStep_label_schedule = Schedule~
+view_operationCreateWizard_schedulingStep_label_recurrence = Recurrence~
+view_operationCreateWizard_schedulingStep_label_runAt = Run At~
+view_operationCreateWizard_schedulingStep_label_nMinutes = n Minuten
+view_operationCreateWizard_schedulingStep_label_hourly = Stündlich
+view_operationCreateWizard_schedulingStep_label_daily = Täglich
+view_operationCreateWizard_schedulingStep_label_weekly = Wöchtentlich
+view_operationCreateWizard_schedulingStep_label_monthly = Monatlich
+view_operationCreateWizard_schedulingStep_label_timePeriod = Time Period~
+view_operationCreateWizard_schedulingStep_label_startDate = Start Date~
+view_operationCreateWizard_schedulingStep_label_recurrenceEnd = Recurrence End~
+view_operationCreateWizard_schedulingStep_label_endDate = End Date~
+view_operationCreateWizard_schedulingStep_label_willExecuteImmediately = Will execute immediately~
+view_operationCreateWizard_schedulingStep_label_onceAt = Einmalig um
+view_operationCreateWizard_schedulingStep_label_date = Datum
+view_operationCreateWizard_schedulingStep_label_time = Zeit
+view_operationCreateWizard_schedulingStep_label_everyNMinutes = Alle n Minuten
+view_operationCreateWizard_schedulingStep_label_minuteInterval = Minute Interval~
+view_operationCreateWizard_schedulingStep_label_hourlyAt = Hourly At~
+view_operationCreateWizard_schedulingStep_label_minuteOfHour = Minute of Hour~
+view_operationCreateWizard_schedulingStep_label_dailyAt = Stündlich um
+view_operationCreateWizard_schedulingStep_label_timeOfDay = Time of Day~
+view_operationCreateWizard_schedulingStep_label_weeklyOn = Wöchentlich am
+view_operationCreateWizard_schedulingStep_label_dayOfWeek = Wochentag
+view_operationCreateWizard_schedulingStep_label_monthlyOn = Monatlich am
+view_operationCreateWizard_schedulingStep_label_dayOfMonth = Day of Month~
+
+# Summary Overview
+#-----------------------------
+view_summaryOverview_header_detectedErrors = Detected Errors~
+view_summaryOverview_tooltip_detectedErrors = Click on the rows to see the error details.~
+view_summaryOverview_title_errorDetailsWindow = Error Details~
+
+# Summary Overview Form
+#-------------------------------------
+view_summaryOverviewForm_field_type = Typ
+view_summaryOverviewForm_field_name = Name
+view_summaryOverviewForm_field_description = Beschreibung
+view_summaryOverviewForm_field_location = Ort
+view_summaryOverviewForm_field_version = Version~
+view_summaryOverviewForm_field_parent = Parent~
+view_summaryOverviewForm_error_traitsLoadFailure = Failed to load traits for {0}.~
+view_summaryOverviewForm_label_plugin = Plugin:
+view_summaryOverviewForm_label_type = Typ:
+view_summaryOverviewForm_header_summary = Zusammenfassung
+view_summaryOverviewForm_error_nameChangeFailure = Failed to change name of Resource with id {0} from [{1}] to [{2}].~
+view_summaryOverviewForm_message_nameChangeSuccess = "Name of Resource with id {0} was changed from [{1}] to [{2}].~
+view_summaryOverviewForm_error_descriptionChangeFailure = Failed to change description of Resource with id {0} from [{1}] to [{2}].~
+view_summaryOverviewForm_message_descriptionChangeSuccess = "Description of Resource with id {0} was changed from [{1}] to [{2}].~
+view_summaryOverviewForm_error_locationChangeFailure = Failed to change location of Resource with id {0} from [{1}] to [{2}].~
+view_summaryOverviewForm_message_locationChangeSuccess = "Location of Resource with id {0} was changed from [{1}] to [{2}].~
+
+
+#==================== Reports ======================
+
+view_reportsTop_title = Reports~
+view_reportsTop_description = This section provides access to global reports.~
+view_reports_platforms = Cpu- und Speicherauslastung
+view_reports_subsystems = Subsysteme
+
+view_measurementOob_title = Suspect Metrics~
+
+view_tagCloud_title = Tag Cloud~
+view_tagCloud_error_fetchFailure = Failed to load tags.~
+view_tagCloud_error_tagUsedCount = Tag used {0} times.~
+
+view_taggedResources_title = Tagged Resources~
+
+
+#===================== Test =======================
+view_testTop_title = Test
+view_testTop_description = This section contains pages for testing various GUI components.~
+
+#=================== Top Level =====================
+
+# About Box
+#----------
+view_aboutBox_allRightsReserved = All Rights Reserved.~
+view_aboutBox_buildNumber = Build-Nummer:
+view_aboutBox_failedToLoad = Kann die Produktinformation nicht laden
+view_aboutBox_homepage = Homepage~
+view_aboutBox_jbossByRedHat = JBoss by Red Hat~
+view_aboutBox_title = Über {0}
+view_aboutBox_version = Version:
+
+# CoreGUI
+#--------------
+view_core_error_1 = New Alerts lookup failed~
+view_core_loggedInAs = Eingeloggt als {0}
+view_core_loggedOut = Ausgeloggt
+view_core_recentAlerts = [{0}] recent alerts~
+view_core_uncaught = Globally uncaught exception~
+
+# Login
+#--------------
+view_login_invalidEmail = Ungültige E-Mail-Adresse
+view_login_login = Einloggen
+view_login_logout = Auslogen
+view_login_noBackend = The backend datasource is unavailable.~
+view_login_noLdap = Note: Optional retrieval of ldap details unsuccessful. Manual entry is required.~
+view_login_noUser = The username or password provided does not match our records.~
+view_login_prompt = Bitte loggen Sie sich ein
+view_login_registerLater = (Logout - Complete registration later.)~
+view_login_registerLdapSuccess = Succesfully registered the new LDAP User.~
+view_login_registerUser = Benutzer Anlegen
+view_login_welcome = Wilkommen
+view_login_welcomeMsg = Willkommen bei JBoss ON! <br/><br/> Enter/update the following fields to complete your registration process.<br/> Once you click "OK" you will be logged in.<br/><br/>~
+
+
+# Menu Bar
+#--------------
+view_menuBar_help = Hilfe
+view_menuBar_logout = Ausloggen
+
+# Search Bar, GUI
+#-----------------
+view_searchBar_resources = Ressourcen
+view_searchBar_resourceGroups = Resource Groups~
+# TODO: i18n pluralization
+view_searchBar_welcomeMessage = search for {0}s~
+view_searchBar_defaultPattern = name your pattern~
+view_searchBar_error_selectSavedSearch = ''Error selecting saved search''~
+view_searchBar_query = Query~
+
+view_searchGUI_loginStatus = Unable to determine login status, check server status~
+
+# Message Center
+#--------------------------
+view_messageCenter_button_messages = Nachrichten
+view_messageCenter_noRecentMessages = Keine aktuellen Nachrichten
+view_messageCenter_messageTitle = Nachrichtencenter
+view_messageCenter_messageSeverity = Schwere
+view_messageCenter_messageTime = Zeitpukt
+view_messageCenter_messageDetail = Detail
+
13 years, 7 months
[rhq] modules/enterprise
by Jay Shaughnessy
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java | 2 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java | 14 +++++++---
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/PackageVersionFileUploadForm.java | 2 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java | 4 +-
4 files changed, 14 insertions(+), 8 deletions(-)
New commits:
commit bcfc55f8b74f8884abcf4f3dd96b2c2dfe0ef0a7
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Fri Nov 19 11:31:41 2010 -0500
A HiddenItem FormItem now requires that its value be set via
setDefaultValue() as opposed to setValue(). With the latter signature
your getString() (for example) will now return "". This had completely
broken our file upload mechanism (bundles, etc).
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java
index 73c3e2e..4957d90 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/BundleFileUploadForm.java
@@ -48,7 +48,7 @@ public class BundleFileUploadForm extends FileUploadForm {
List<FormItem> onDrawItems = super.getOnDrawItems();
HiddenItem bundleVersionIdField = new HiddenItem("bundleVersionId");
- bundleVersionIdField.setValue(this.bundleVersion.getId());
+ bundleVersionIdField.setDefaultValue(this.bundleVersion.getId());
onDrawItems.add(bundleVersionIdField);
return onDrawItems;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java
index bf834d8..62aba36 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/FileUploadForm.java
@@ -163,15 +163,15 @@ public class FileUploadForm extends DynamicCallbackForm {
List<FormItem> onDrawItems = new ArrayList<FormItem>();
HiddenItem sessionIdField = new HiddenItem("sessionid");
- sessionIdField.setValue(UserSessionManager.getSessionSubject().getSessionId().intValue());
+ sessionIdField.setDefaultValue(UserSessionManager.getSessionSubject().getSessionId().intValue());
onDrawItems.add(sessionIdField);
HiddenItem nameField = new HiddenItem("name");
- nameField.setValue(this.name);
+ nameField.setDefaultValue(this.name);
onDrawItems.add(nameField);
HiddenItem versionField = new HiddenItem("version");
- versionField.setValue(version);
+ versionField.setDefaultValue(version);
onDrawItems.add(versionField);
fileUploadItem = new UploadItem("fileUploadItem", name);
@@ -264,7 +264,13 @@ public class FileUploadForm extends DynamicCallbackForm {
super.onDraw();
List<FormItem> onDrawItems = getOnDrawItems();
- setNumCols(onDrawItems.size());
+ int numCols = 0;
+ for (FormItem fi : onDrawItems) {
+ if (!(fi instanceof HiddenItem)) {
+ ++numCols;
+ }
+ }
+ setNumCols(numCols);
setItems(onDrawItems.toArray(new FormItem[onDrawItems.size()]));
// push the form handler so it executes first if the form creator has also added a handler
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/PackageVersionFileUploadForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/PackageVersionFileUploadForm.java
index 80019f2..bd41379 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/PackageVersionFileUploadForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/PackageVersionFileUploadForm.java
@@ -68,7 +68,7 @@ public class PackageVersionFileUploadForm extends FileUploadForm {
if (null != archId) {
HiddenItem archIdField = new HiddenItem("archId");
- archIdField.setValue(archId);
+ archIdField.setDefaultValue(archId);
onDrawItems.add(archIdField);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java
index 93282ee..e91a4a2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/upload/TextFileRetrieverForm.java
@@ -56,10 +56,10 @@ public class TextFileRetrieverForm extends DynamicCallbackForm {
// the "retrieve" indicates to FileUploadServlet to expect a single text file and return its contents
// in the response.
HiddenItem retrieveField = new HiddenItem("retrieve");
- retrieveField.setValue(true);
+ retrieveField.setDefaultValue(true);
HiddenItem sessionIdField = new HiddenItem("sessionid");
- sessionIdField.setValue(UserSessionManager.getSessionSubject().getSessionId().intValue());
+ sessionIdField.setDefaultValue(UserSessionManager.getSessionSubject().getSessionId().intValue());
setNumCols(4);
13 years, 7 months
[rhq] modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java | 19 ++++------
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 2 -
2 files changed, 10 insertions(+), 11 deletions(-)
New commits:
commit ff901b3e71021fd2dfb0021f08a825bd1c7d364a
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Nov 19 11:27:32 2010 -0500
i18n the table component
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
index 2da98c7..67e1b4b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
@@ -87,8 +87,7 @@ import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableMenu;
* @author Greg Hinkle
* @author Ian Springer
*/
-public class Table<DS extends RPCDataSource> extends LocatableHLayout
- implements RefreshableView {
+public class Table<DS extends RPCDataSource> extends LocatableHLayout implements RefreshableView {
private static final String FIELD_ID = "id";
private static final String FIELD_NAME = "name";
@@ -326,8 +325,8 @@ public class Table<DS extends RPCDataSource> extends LocatableHLayout
public void onClick(ClickEvent clickEvent) {
if (tableAction.confirmMessage != null) {
- String message = tableAction.confirmMessage.replaceAll("\\#", String
- .valueOf(listGrid.getSelection().length));
+ String message = tableAction.confirmMessage.replaceAll("\\#", String.valueOf(listGrid
+ .getSelection().length));
SC.ask(message, new BooleanCallback() {
public void execute(Boolean confirmed) {
@@ -355,15 +354,14 @@ public class Table<DS extends RPCDataSource> extends LocatableHLayout
@Override
public void onClick(MenuItemClickEvent event) {
- tableAction.getAction()
- .executeAction(listGrid.getSelection(), menuEntries.get(key));
+ tableAction.getAction().executeAction(listGrid.getSelection(), menuEntries.get(key));
}
});
menu.addItem(item);
}
- IMenuButton menuButton = new LocatableIMenuButton(tableAction.getLocatorId(), tableAction
- .getTitle(), menu);
+ IMenuButton menuButton = new LocatableIMenuButton(tableAction.getLocatorId(), tableAction.getTitle(),
+ menu);
menuButton.setDisabled(true);
// this makes it pretty tight, but maybe better than the default, which is pretty wide
menuButton.setAutoFit(true);
@@ -381,7 +379,7 @@ public class Table<DS extends RPCDataSource> extends LocatableHLayout
footer.addMember(new LayoutSpacer());
if (isShowFooterRefresh()) {
- IButton refreshButton = new LocatableIButton(extendLocatorId("Refresh"), "Refresh");
+ IButton refreshButton = new LocatableIButton(extendLocatorId("Refresh"), MSG.common_button_refresh());
refreshButton.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent clickEvent) {
listGrid.invalidateCache();
@@ -666,7 +664,8 @@ public class Table<DS extends RPCDataSource> extends LocatableHLayout
}
}
if (getTableInfo() != null) {
- getTableInfo().setContents("Total: " + listGrid.getTotalRows() + " (" + count + " selected)");
+ getTableInfo().setContents(
+ MSG.view_table_totalRows(String.valueOf(listGrid.getTotalRows()), String.valueOf(count)));
}
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index 4b8da61..a581a4e 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -956,7 +956,7 @@ view_selector_available = Available {0}~
view_subTab_error_disabled = Cannot select disabled subTab [{0}].~
-view_table_totalRows = Total Rows: {0} Selected: {1}~
+view_table_totalRows = Total Rows: {0} (selected: {1})~
view_tableSection_backButton = Back to List~
view_tableSection_error_noId = Table [{0}] record is missing 'id' attribute - please report this bug.~
view_tableSection_error_badId = Can not show detail for [{0}]. Illegal 'id': [{1}]. Please report this bug~
13 years, 7 months
[rhq] modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
New commits:
commit a4a294c5485cb675e4c2509f9f5da176e016840a
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Nov 19 11:03:07 2010 -0500
the search button now uses the specific common_button_search msg
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
index 1bbeccf..6b6c703 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/menu/SearchBarPane.java
@@ -109,7 +109,7 @@ public class SearchBarPane extends LocatableHLayout {
ComboBoxItem resourceSearch = getResourceComboBox();
ComboBoxItem groupSearch = getGroupComboBox();
- ButtonItem search = new ButtonItem("Search", MSG.common_title_search());
+ ButtonItem search = new ButtonItem("Search", MSG.common_button_search());
search.setStartRow(false);
search.setEndRow(false);
search.setShowTitle(false);
13 years, 7 months
[rhq] modules/enterprise
by mazz
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 1 +
1 file changed, 1 insertion(+)
New commits:
commit 5eb03936b555b871be983fc003eea62560000ef1
Author: John Mazzitelli <mazz(a)redhat.com>
Date: Fri Nov 19 10:56:29 2010 -0500
add common button search title
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index eca963e..4b8da61 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -37,6 +37,7 @@ common_button_purgeAll=Purge All~
common_button_refresh = "Refresh"~
common_button_reset = Reset~
common_button_save = Save~
+common_button_search = Search~
common_button_showDetails = Show Details...~
common_button_uninventory = Uninventory~
13 years, 7 months
[rhq] modules/enterprise
by Joseph Marques
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemUsersNotificationSenderForm.java | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
New commits:
commit 6278322e792ae6a1b5d79defad29398eb72f80eb
Author: Joseph Marques <joseph(a)redhat.com>
Date: Fri Nov 19 09:57:01 2010 -0500
i18n one more alerts file
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemUsersNotificationSenderForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemUsersNotificationSenderForm.java
index 5343148..894965b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemUsersNotificationSenderForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemUsersNotificationSenderForm.java
@@ -79,13 +79,14 @@ public class SystemUsersNotificationSenderForm extends AbstractNotificationSende
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot determine current users - starting empty",
- caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_user_editor_loadFailed(), caught);
createNewSelector(null);
}
});
} catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Cannot use current users - starting empty", e);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_user_editor_restoreFailed(), e);
createNewSelector(null);
}
} else {
@@ -111,7 +112,8 @@ public class SystemUsersNotificationSenderForm extends AbstractNotificationSende
getConfiguration().put(new PropertySimple(PROPNAME, newPropValue));
return true;
} catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Cannot save the selected users", e);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definition_notification_user_editor_saveFailed(),
+ e);
return false;
}
}
13 years, 7 months
[rhq] modules/core modules/enterprise
by ips
modules/core/domain/src/main/java/org/rhq/core/domain/authz/Role.java | 8
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java | 1
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/UserPermissionsManager.java | 6
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java | 14
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java | 18
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java | 21
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/TemplateSchedulesView.java | 5
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java | 17
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java | 101 +++-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java | 9
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java | 92 ++-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java | 5
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java | 8
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java | 1
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java | 131 +++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java | 24 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java | 238 +++++-----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java | 7
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/DashboardsView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/FavoriteResourcesPortlet.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListDetailView.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleListView.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationTable.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceCompositeSearchView.java | 4
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDetailView.java | 7
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsView.java | 5
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryView.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBView.java | 3
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java | 2
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java | 53 +-
45 files changed, 510 insertions(+), 323 deletions(-)
New commits:
commit d141aa16209e1439ba578f882ea60b09365b355e
Author: Ian Springer <ian.springer(a)redhat.com>
Date: Thu Nov 18 22:13:33 2010 -0500
fix a number of bugs in the user and role datasources and views; fix bug in permissions manager; make id field in Role entity an int, rather than an Integer
diff --git a/modules/core/domain/src/main/java/org/rhq/core/domain/authz/Role.java b/modules/core/domain/src/main/java/org/rhq/core/domain/authz/Role.java
index ef58302..8bde98d 100644
--- a/modules/core/domain/src/main/java/org/rhq/core/domain/authz/Role.java
+++ b/modules/core/domain/src/main/java/org/rhq/core/domain/authz/Role.java
@@ -95,7 +95,7 @@ public class Role implements Serializable {
@Column(name = "ID", nullable = false)
@GeneratedValue(strategy = GenerationType.AUTO, generator = "RHQ_ROLE_ID_SEQ")
@Id
- private Integer id;
+ private int id;
@Column(name = "NAME", nullable = false)
private String name;
@@ -133,11 +133,11 @@ public class Role implements Serializable {
this.name = name;
}
- public Integer getId() {
+ public int getId() {
return this.id;
}
- public void setId(Integer id) {
+ public void setId(int id) {
this.id = id;
}
@@ -296,7 +296,7 @@ public class Role implements Serializable {
@Override
public String toString() {
- return "org.rhq.core.domain.authz.Role[id=" + id + ", name=" + name + "]";
+ return "Role[id=" + this.id + ", name=" + this.name + ", permissions=" + this.permissions + "]";
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java
index 1030227..229fedc 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/CoreGUI.java
@@ -63,6 +63,7 @@ import org.rhq.enterprise.gui.coregui.client.util.selenium.SeleniumUtility;
* @author Ian Springer
*/
public class CoreGUI implements EntryPoint, ValueChangeHandler<String> {
+
// This must come first to ensure proper I18N class loading for dev mode
private static final Messages MSG = GWT.create(Messages.class);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/UserPermissionsManager.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/UserPermissionsManager.java
index acbb575..c26a2f4 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/UserPermissionsManager.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/UserPermissionsManager.java
@@ -84,6 +84,10 @@ public class UserPermissionsManager {
}
}
+ public Set<Permission> getGlobalPermissions() {
+ return this.globalPermissions;
+ }
+
public void loadResourcePermissions(ResourceComposite currentResource,
PermissionsLoadedListener permissionsLoadedListener) {
if ((this.currentContext != Context.RESOURCE) || (this.currentId != currentResource.getResource().getId())) {
@@ -199,6 +203,7 @@ public class UserPermissionsManager {
private void notifyGlobalPermissionsLoadedListener() {
if (this.globalPermissionsLoadedListener != null) {
this.globalPermissionsLoadedListener.onPermissionsLoaded(this.globalPermissions);
+ this.globalPermissionsLoadedListener = null;
}
}
@@ -243,6 +248,7 @@ public class UserPermissionsManager {
private void notifyResourcePermissionsLoadedListener() {
if (this.resourcePermissionsLoadedListener != null) {
this.resourcePermissionsLoadedListener.onPermissionsLoaded(this.resourcePermissions);
+ this.resourcePermissionsLoadedListener = null;
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
index fd14c4c..6a8adab 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RoleEditView.java
@@ -130,11 +130,6 @@ public class RoleEditView extends AbstractRecordEditor<RolesDataSource> implemen
}
}
- protected Record createNewRecord() {
- Role newRole = new Role();
- return getDataSource().copyValues(newRole);
- }
-
@Override
protected void editRecord(Record record) {
// A user can always view their own assigned roles, but only users with MANAGE_SECURITY can view or update
@@ -246,14 +241,15 @@ public class RoleEditView extends AbstractRecordEditor<RolesDataSource> implemen
// Grab the currently assigned sets from each of the selectors and stick them into the corresponding canvas
// items on the form, so when the form is saved, they'll get submitted along with the rest of the simple fields
// to the datasource's add or update methods .
- ListGridRecord[] groupRecords = this.groupSelector.getAssignedGrid().getSelection();
+ // TODO: Uncomment and fix the below lines.
+ /*ListGridRecord[] groupRecords = this.groupSelector.getAssignedGrid().getRecords();
getForm().setValue(RolesDataSource.Field.RESOURCE_GROUPS, groupRecords);
- ListGridRecord[] subjectRecords = this.subjectSelector.getAssignedGrid().getSelection();
+ ListGridRecord[] subjectRecords = this.subjectSelector.getAssignedGrid().getRecords();
getForm().setValue(RolesDataSource.Field.SUBJECTS, subjectRecords);
- ListGridRecord[] ldapGroupRecords = this.ldapGroupSelector.getAssignedGrid().getSelection();
- getForm().setValue(RolesDataSource.Field.LDAP_GROUPS, ldapGroupRecords);
+ ListGridRecord[] ldapGroupRecords = this.ldapGroupSelector.getAssignedGrid().getRecords();
+ getForm().setValue(RolesDataSource.Field.LDAP_GROUPS, ldapGroupRecords);*/
// Submit the form values to the datasource.
super.save();
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java
index ba5f6e9..2cc5520 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesDataSource.java
@@ -66,6 +66,10 @@ public class RolesDataSource extends RPCDataSource<Role> {
public static final String LDAP_GROUPS = "ldapGroups";
}
+ public static abstract class CriteriaField {
+ public static final String SUBJECT_ID = "subjectId";
+ }
+
public static final int ID_SUPERUSER = 1;
public static final int ID_ALL_RESOURCES = 2;
@@ -102,11 +106,11 @@ public class RolesDataSource extends RPCDataSource<Role> {
idDataField.setCanEdit(false);
fields.add(idDataField);
- DataSourceTextField nameField = new DataSourceTextField(Field.NAME, MSG.common_title_name(), 100, true);
+ DataSourceTextField nameField = createTextField(Field.NAME, MSG.common_title_name(), 3, 100, true);
fields.add(nameField);
- DataSourceTextField descriptionField = new DataSourceTextField(Field.DESCRIPTION, MSG
- .common_title_description(), 100, false);
+ DataSourceTextField descriptionField = createTextField(Field.DESCRIPTION, MSG.common_title_description(), null,
+ 100, false);
fields.add(descriptionField);
DataSourceField resourceGroupsField = new DataSourceField(Field.RESOURCE_GROUPS, FieldType.ANY, "Resource Groups");
@@ -128,7 +132,6 @@ public class RolesDataSource extends RPCDataSource<Role> {
}
public void executeFetch(final DSRequest request, final DSResponse response) {
-
RoleCriteria criteria = getFetchCriteria(request);
roleService.findRolesByCriteria(criteria, new AsyncCallback<PageList<Role>>() {
@@ -267,8 +270,10 @@ public class RolesDataSource extends RPCDataSource<Role> {
criteria.setPageControl(getPageControl(request));
// Filtering
- criteria.addFilterId(getFilter(request, Field.ID, Integer.class));
- Integer subjectId = request.getCriteria().getAttributeAsInt("subjectId");
+ Integer id = getFilter(request, Field.ID, Integer.class);
+ criteria.addFilterId(id);
+
+ Integer subjectId = request.getCriteria().getAttributeAsInt(CriteriaField.SUBJECT_ID);
if (subjectId != null) {
criteria.addFilterSubjectId(subjectId);
}
@@ -282,4 +287,5 @@ public class RolesDataSource extends RPCDataSource<Role> {
return criteria;
}
+
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
index 4b40221..57b3dc8 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/roles/RolesView.java
@@ -18,12 +18,16 @@
*/
package org.rhq.enterprise.gui.coregui.client.admin.roles;
+import java.util.Set;
+
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
+import org.rhq.core.domain.authz.Permission;
import org.rhq.enterprise.gui.coregui.client.BookmarkableView;
-import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
+import org.rhq.enterprise.gui.coregui.client.PermissionsLoadedListener;
+import org.rhq.enterprise.gui.coregui.client.UserPermissionsManager;
import org.rhq.enterprise.gui.coregui.client.components.table.TableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableSection;
import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
@@ -35,7 +39,8 @@ import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
* @author Greg Hinkle
* @author Ian Springer
*/
-public class RolesView extends TableSection implements BookmarkableView {
+public class RolesView extends TableSection<RolesDataSource> implements BookmarkableView {
+
public static final ViewName VIEW_ID = new ViewName("Roles", MSG.view_adminSecurity_roles());
// TODO: We need a 24x24 version of the Role icon.
@@ -82,7 +87,17 @@ public class RolesView extends TableSection implements BookmarkableView {
}
});
- addTableAction(extendLocatorId("New"), MSG.common_button_new(), new AbstractTableAction() {
+ addTableAction(extendLocatorId("New"), MSG.common_button_new(), new TableAction() {
+ private boolean[] hasManageSecurityPermission = new boolean[] {false};
+ public boolean isEnabled(ListGridRecord[] selection) {
+ UserPermissionsManager.getInstance().loadGlobalPermissions(new PermissionsLoadedListener() {
+ public void onPermissionsLoaded(Set<Permission> globalPermissions) {
+ hasManageSecurityPermission[0] = globalPermissions.contains(Permission.MANAGE_SECURITY);
+ }
+ });
+ return hasManageSecurityPermission[0];
+ }
+
public void executeAction(ListGridRecord[] selection, Object actionValue) {
newDetails();
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/TemplateSchedulesView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/TemplateSchedulesView.java
index 71f2f49..015fc6d 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/TemplateSchedulesView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/templates/TemplateSchedulesView.java
@@ -47,9 +47,10 @@ public class TemplateSchedulesView extends AbstractMeasurementScheduleListView {
}
@Override
- protected void configureTable() {
+ protected void configureTable() {
super.configureTable();
- addExtraWidget(new UpdateExistingSchedulesWidget(this));
+
+ addExtraWidget(new UpdateExistingSchedulesWidget(this));
}
public boolean isUpdateExistingSchedules() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
index 2f99ddf..8d40e67 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UserEditView.java
@@ -79,12 +79,6 @@ public class UserEditView extends AbstractRecordEditor<UsersDataSource> {
});
}
- protected Record createNewRecord() {
- Subject newSubject = new Subject();
- newSubject.setFactive(true);
- return getDataSource().copyValues(newSubject, false);
- }
-
@Override
protected void editRecord(Record record) {
// Don't allow the rhqadmin account to be disabled.
@@ -117,6 +111,15 @@ public class UserEditView extends AbstractRecordEditor<UsersDataSource> {
super.editRecord(record);
}
+ @Override
+ protected void editNewRecord() {
+ super.editNewRecord();
+
+ // Make sure the new user is enabled by default.
+ FormItem enabledField = getForm().getField(UsersDataSource.Field.FACTIVE);
+ enabledField.setValue(Boolean.TRUE.toString());
+ }
+
//
// In general, a user with MANAGE_SECURITY can update assigned roles, with two exceptions:
//
@@ -193,7 +196,7 @@ public class UserEditView extends AbstractRecordEditor<UsersDataSource> {
@Override
protected void save() {
- ListGridRecord[] roleRecords = this.roleSelector.getAssignedGrid().getSelection();
+ ListGridRecord[] roleRecords = this.roleSelector.getAssignedGrid().getRecords();
getForm().setValue(UsersDataSource.Field.ROLES, roleRecords);
super.save();
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java
index c24ac5b..5f84ce5 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersDataSource.java
@@ -30,6 +30,7 @@ import com.smartgwt.client.data.Record;
import com.smartgwt.client.data.fields.DataSourceIntegerField;
import com.smartgwt.client.data.fields.DataSourcePasswordField;
import com.smartgwt.client.data.fields.DataSourceTextField;
+import com.smartgwt.client.types.FieldType;
import com.smartgwt.client.widgets.form.validator.LengthRangeValidator;
import com.smartgwt.client.widgets.form.validator.MatchesFieldValidator;
import com.smartgwt.client.widgets.form.validator.RegExpValidator;
@@ -153,6 +154,9 @@ public class UsersDataSource extends RPCDataSource<Subject> {
true);
fields.add(enabledField);
+ DataSourceField rolesField = new DataSourceField(Field.ROLES, FieldType.ANY, "Roles");
+ fields.add(rolesField);
+
return fields;
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
index e6c73c5..57c1327 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/users/UsersView.java
@@ -18,11 +18,20 @@
*/
package org.rhq.enterprise.gui.coregui.client.admin.users;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import com.smartgwt.client.data.Record;
import com.smartgwt.client.widgets.Canvas;
+import com.smartgwt.client.widgets.grid.CellFormatter;
import com.smartgwt.client.widgets.grid.ListGridField;
import com.smartgwt.client.widgets.grid.ListGridRecord;
+import org.rhq.core.domain.authz.Permission;
+import org.rhq.enterprise.gui.coregui.client.UserPermissionsManager;
import org.rhq.enterprise.gui.coregui.client.admin.AdministrationView;
+import org.rhq.enterprise.gui.coregui.client.admin.roles.RolesDataSource;
import org.rhq.enterprise.gui.coregui.client.components.table.AbstractTableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableAction;
import org.rhq.enterprise.gui.coregui.client.components.table.TableActionEnablement;
@@ -30,13 +39,15 @@ import org.rhq.enterprise.gui.coregui.client.components.table.TableSection;
import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
/**
- * A table that lists all users and provides the ability to view details of or delete those users and to create new
- * users.
+ * A table that lists all users and provides the ability to view or edit details of users, delete users, or create new
+ * users. For the logged in user to view or edit a user other than themselves, they must possess the
+ * {@link Permission#MANAGE_SECURITY MANAGE_SECURITY} permission. Furthermore, a user without MANAGE_SECURITY cannot
+ * update their assigned roles.
*
* @author Greg Hinkle
* @author Ian Springer
*/
-public class UsersView extends TableSection {
+public class UsersView extends TableSection<UsersDataSource> {
public static final ViewName VIEW_ID = new ViewName("Users", MSG.view_adminSecurity_users());
public static final String VIEW_PATH = AdministrationView.VIEW_ID + "/"
@@ -55,52 +66,90 @@ public class UsersView extends TableSection {
@Override
protected void configureTable() {
- getListGrid().setUseAllDataSourceFields(false);
+ List<ListGridField> fields = createFields();
+ setListGridFields(fields.toArray(new ListGridField[fields.size()]));
+
+ addTableAction(extendLocatorId("Delete"), MSG.common_button_delete(), getDeleteConfirmMessage(),
+ createDeleteAction());
+ addTableAction(extendLocatorId("New"), MSG.common_button_new(), createNewAction());
+ }
+
+ private List<ListGridField> createFields() {
+ List<ListGridField> fields = new ArrayList<ListGridField>();
ListGridField nameField = new ListGridField(UsersDataSource.Field.NAME, 120);
+ fields.add(nameField);
ListGridField activeField = new ListGridField(UsersDataSource.Field.FACTIVE, 90);
+ fields.add(activeField);
ListGridField ldapField = new ListGridField(UsersDataSource.Field.LDAP, 90);
+ fields.add(ldapField);
ListGridField firstNameField = new ListGridField(UsersDataSource.Field.FIRST_NAME, 150);
+ fields.add(firstNameField);
ListGridField lastNameField = new ListGridField(UsersDataSource.Field.LAST_NAME, 150);
+ fields.add(lastNameField);
ListGridField departmentField = new ListGridField(UsersDataSource.Field.DEPARTMENT, 150);
+ fields.add(departmentField);
+
+ Set<Permission> globalPermissions = UserPermissionsManager.getInstance().getGlobalPermissions();
+ if (globalPermissions.contains(Permission.MANAGE_SECURITY)) {
+ ListGridField rolesField = new ListGridField(UsersDataSource.Field.ROLES, 250);
+ rolesField.setCellFormatter(new CellFormatter() {
+ public String format(Object value, ListGridRecord record, int rowNum, int colNum) {
+ Record[] roleRecords = record.getAttributeAsRecordArray(UsersDataSource.Field.ROLES);
+ StringBuilder formattedValue = new StringBuilder();
+ for (int i = 0; i < roleRecords.length; i++) {
+ Record roleRecord = roleRecords[i];
+ String roleName = roleRecord.getAttribute(RolesDataSource.Field.NAME);
+ formattedValue.append(roleName);
+ if (i != (roleRecords.length - 1)) {
+ formattedValue.append(", ");
+ }
+ }
+ return formattedValue.toString();
+ }
+ });
+ fields.add(rolesField);
+ }
- setListGridFields(nameField, activeField, ldapField, firstNameField, lastNameField, departmentField);
+ return fields;
+ }
- // TODO: fix msg
- addTableAction(extendLocatorId("Delete"), MSG.common_button_delete(), getDeleteConfirmMessage(),
- new TableAction() {
- public boolean isEnabled(ListGridRecord[] selection) {
- int count = selection.length;
- if (count == 0) {
- return false;
- }
+ private TableAction createDeleteAction() {
+ return new TableAction() {
+ public boolean isEnabled(ListGridRecord[] selection) {
+ int count = selection.length;
+ if (count == 0) {
+ return false;
+ }
- for (ListGridRecord record : selection) {
- int id = record.getAttributeAsInt(UsersDataSource.Field.ID);
- if (id == UsersDataSource.ID_OVERLORD || id == UsersDataSource.ID_RHQADMIN) {
- // The superuser and rhqadmin users cannot be deleted.
- return false;
- }
+ for (ListGridRecord record : selection) {
+ int id = record.getAttributeAsInt(UsersDataSource.Field.ID);
+ if (id == UsersDataSource.ID_OVERLORD || id == UsersDataSource.ID_RHQADMIN) {
+ // The superuser and rhqadmin users cannot be deleted.
+ return false;
}
- return true;
}
+ return true;
+ }
- public void executeAction(ListGridRecord[] selection, Object actionValue) {
- deleteSelectedRecords();
- }
- });
+ public void executeAction(ListGridRecord[] selection, Object actionValue) {
+ deleteSelectedRecords();
+ }
+ };
+ }
- addTableAction(extendLocatorId("New"), MSG.common_button_new(), new AbstractTableAction(
+ private AbstractTableAction createNewAction() {
+ return new AbstractTableAction(
TableActionEnablement.ALWAYS) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
newDetails();
}
- });
+ };
}
public Canvas getDetailsView(int subjectId) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
index 6aacb23..9fd74a1 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertHistoryView.java
@@ -126,6 +126,8 @@ public class AlertHistoryView extends TableSection {
}
setupTableInteractions();
+
+
}
private void setupTableInteractions() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
index f7870eb..491bff5 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
@@ -43,7 +43,7 @@ import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup;
*
* @author John Mazzitelli
*/
-public abstract class AbstractAlertDefinitionsView extends TableSection {
+public abstract class AbstractAlertDefinitionsView extends TableSection<AbstractAlertDefinitionsDataSource> {
public AbstractAlertDefinitionsView(String locatorId, String tableTitle) {
super(locatorId, tableTitle);
@@ -51,7 +51,6 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
@Override
protected void configureTable() {
-
ListGrid listGrid = getListGrid();
AbstractAlertDefinitionsDataSource ds = getAlertDefinitionDataSource();
@@ -98,6 +97,8 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
refresh();
}
});
+
+
}
@Override
@@ -123,10 +124,10 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
newAlertDef.setDeleted(false);
newAlertDef.setEnabled(true);
newAlertDef.setPriority(AlertPriority.MEDIUM);
- newAlertDef.setParentId(Integer.valueOf(0));
+ newAlertDef.setParentId(0);
newAlertDef.setConditionExpression(BooleanExpression.ANY);
newAlertDef.setWillRecover(false);
- newAlertDef.setRecoveryId(Integer.valueOf(0));
+ newAlertDef.setRecoveryId(0);
newAlertDef.setAlertDampening(new AlertDampening(AlertDampening.Category.NONE));
newAlertDef.setNotifyFiltered(false);
newAlertDef.setControlFiltered(false);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
index d1dfadb..aa6d838 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
@@ -86,63 +86,73 @@ public class ConditionsEditor extends LocatableVLayout {
protected void onInit() {
super.onInit();
- table = new Table(extendLocatorId("conditionsTable"));
- table.setShowHeader(false);
+ table = new ConditionsTable(extendLocatorId("conditionsTable"));
- final ConditionDataSource dataSource = new ConditionDataSource();
- table.setDataSource(dataSource);
+ addMember(table);
+ }
- table.addTableAction(this.extendLocatorId("add"), MSG.common_button_add(), null, new AbstractTableAction() {
- @Override
- public void executeAction(ListGridRecord[] selection, Object actionValue) {
- final Window winModal = new LocatableWindow(ConditionsEditor.this
- .extendLocatorId("newConditionEditorWindow"));
- winModal.setTitle(MSG.view_alert_common_tab_conditions_modal_title());
- winModal.setOverflow(Overflow.VISIBLE);
- winModal.setShowMinimizeButton(false);
- winModal.setIsModal(true);
- winModal.setShowModalMask(true);
- winModal.setAutoSize(true);
- winModal.setAutoCenter(true);
- //winModal.setShowResizer(true);
- //winModal.setCanDragResize(true);
- winModal.centerInPage();
- winModal.addCloseClickHandler(new CloseClickHandler() {
- @Override
- public void onCloseClick(CloseClientEvent event) {
- winModal.markForDestroy();
- }
- });
-
- NewConditionEditor newConditionEditor = new NewConditionEditor(extendLocatorId("newConditionEditor"),
- conditions, ConditionsEditor.this.resourceType, new Runnable() {
+ public void setEditable(boolean editable) {
+ table.setTableActionDisableOverride(!editable);
+ }
+
+ private class ConditionsTable extends Table<ConditionDataSource> {
+ private ConditionsTable(String locatorId) {
+ super(locatorId);
+
+ setShowHeader(false);
+
+ final ConditionDataSource dataSource = new ConditionDataSource();
+ setDataSource(dataSource);
+ }
+
+ @Override
+ protected void configureTable() {
+ addTableAction(this.extendLocatorId("add"), "Add", null, new AbstractTableAction() {
+ public void executeAction(ListGridRecord[] selection, Object actionValue) {
+ final Window winModal = new LocatableWindow(ConditionsEditor.this
+ .extendLocatorId("newConditionEditorWindow"));
+ winModal.setTitle(MSG.view_alert_common_tab_conditions_modal_title());
+ winModal.setOverflow(Overflow.VISIBLE);
+ winModal.setShowMinimizeButton(false);
+ winModal.setIsModal(true);
+ winModal.setShowModalMask(true);
+ winModal.setAutoSize(true);
+ winModal.setAutoCenter(true);
+ //winModal.setShowResizer(true);
+ //winModal.setCanDragResize(true);
+ winModal.centerInPage();
+ winModal.addCloseClickHandler(new CloseClickHandler() {
@Override
- public void run() {
+ public void onCloseClick(CloseClientEvent event) {
winModal.markForDestroy();
- table.refresh();
}
});
- winModal.addItem(newConditionEditor);
- winModal.show();
- }
+
+ NewConditionEditor newConditionEditor = new NewConditionEditor(extendLocatorId("newConditionEditor"),
+ conditions, ConditionsEditor.this.resourceType, new Runnable() {
+ @Override
+ public void run() {
+ winModal.markForDestroy();
+ refresh();
+ }
+ });
+ winModal.addItem(newConditionEditor);
+ winModal.show();
+ }
});
+
table.addTableAction(this.extendLocatorId("delete"), MSG.common_button_delete(), MSG
.view_alert_definitions_delete_confirm(), new AbstractTableAction(TableActionEnablement.ANY) {
- @Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
for (ListGridRecord record : selection) {
- AlertCondition cond = dataSource.copyValues(record);
+ AlertCondition cond = getDataSource().copyValues(record);
conditions.remove(cond);
}
- table.refresh();
+ refresh();
}
});
- addMember(table);
- }
-
- public void setEditable(boolean editable) {
- table.setTableActionDisableOverride(!editable);
+ }
}
private class ConditionDataSource extends RPCDataSource<AlertCondition> {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
index c1eb705..c36e7c2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
@@ -25,6 +25,7 @@ package org.rhq.enterprise.gui.coregui.client.alert.definitions;
import java.util.ArrayList;
import java.util.LinkedHashMap;
+import java.util.List;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.types.Alignment;
@@ -53,7 +54,7 @@ import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableDynamicForm;
public class NewNotificationEditor extends LocatableDynamicForm {
private final AlertDefinition alertDefinition; // the definition we are adding the notification to
- private final ArrayList<AlertNotification> notifications; // if we are creating a new notification, it gets added to this list
+ private final List<AlertNotification> notifications; // if we are creating a new notification, it gets added to this list
private final AlertNotification notificationToEdit; // the notification that this editor is editing (may be null)
private final Runnable closeFunction; // this is called after a button is pressed and the editor should close
@@ -61,7 +62,7 @@ public class NewNotificationEditor extends LocatableDynamicForm {
private CanvasItem senderCanvasItem;
public NewNotificationEditor(String locatorId, AlertDefinition alertDefinition,
- ArrayList<AlertNotification> notifs, AlertNotification notifToEdit, Runnable closeFunc) {
+ List<AlertNotification> notifs, AlertNotification notifToEdit, Runnable closeFunc) {
super(locatorId);
this.alertDefinition = alertDefinition;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
index f72846d..d63159b 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
@@ -62,7 +62,7 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
private static final String FIELD_CONFIGURATION = "configuration";
private AlertDefinition alertDefinition;
- private ArrayList<AlertNotification> notifications;
+ private List<AlertNotification> notifications;
private boolean formBuilt = false;
@@ -233,7 +233,7 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
}
}
- private class NotificationTable extends Table {
+ private class NotificationTable extends Table<NotificationDataSource> {
public NotificationTable(String locatorId) {
super(locatorId);
setShowHeader(false);
@@ -258,7 +258,7 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
ListGrid listGrid = (ListGrid) event.getSource();
ListGridRecord[] selectedRows = listGrid.getSelection();
if (selectedRows != null && selectedRows.length == 1) {
- AlertNotification notif = ((NotificationDataSource) getDataSource())
+ AlertNotification notif = (getDataSource())
.copyValues(selectedRows[0]);
popupNotificationEditor(notif);
}
@@ -278,7 +278,7 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
for (ListGridRecord record : selection) {
- AlertNotification notif = ((NotificationDataSource) getDataSource()).copyValues(record);
+ AlertNotification notif = (getDataSource()).copyValues(record);
notifications.remove(notif);
}
table.refresh();
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
index d2d2b9c..93a55a1 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/deployment/BundleDeploymentListView.java
@@ -45,7 +45,6 @@ public class BundleDeploymentListView extends Table {
@Override
protected void configureTable() {
-
getListGrid().getField("id").setWidth("60");
getListGrid().getField("name").setWidth("25%");
getListGrid().getField("name").setCellFormatter(new CellFormatter() {
@@ -77,5 +76,6 @@ public class BundleDeploymentListView extends Table {
status.setValueIconHeight(11);
status.setWidth(80);
+
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
index 82995f2..f4052f7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/destination/BundleDestinationListView.java
@@ -75,5 +75,6 @@ public class BundleDestinationListView extends Table {
status.setValueIconHeight(11);
status.setWidth(80);
+
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
index ccc31a1..bbe68f2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/list/BundlesListView.java
@@ -133,6 +133,8 @@ public class BundlesListView extends Table {
});
}
});
+
+
}
public int getMatches() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
index 68fd97a..6e8f401 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/bundle/version/BundleVersionListView.java
@@ -49,7 +49,6 @@ public class BundleVersionListView extends Table {
@Override
protected void configureTable() {
-
getListGrid().getField("id").setWidth("60");
getListGrid().getField("name").setWidth("25%");
getListGrid().getField("name").setCellFormatter(new CellFormatter() {
@@ -66,5 +65,6 @@ public class BundleVersionListView extends Table {
getListGrid().setSelectionType(SelectionStyle.NONE);
getListGrid().setSelectionAppearance(SelectionAppearance.ROW_STYLE);
+
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
index f246c19..2bf795c 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/AbstractRecordEditor.java
@@ -22,6 +22,7 @@ package org.rhq.enterprise.gui.coregui.client.components.form;
import java.util.EnumSet;
import java.util.List;
+import com.allen_sauer.gwt.log.client.Log;
import com.google.gwt.user.client.History;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.DSCallback;
@@ -61,9 +62,12 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
implements BookmarkableView, DetailsView {
private static final Label LOADING_LABEL = new Label(MSG.widget_recordEditor_label_loading());
+
private static final String FIELD_ID = "id";
private static final String FIELD_NAME = "name";
+ private static final int ID_NEW = 0;
+
private int recordId;
private TitleBar titleBar;
private VLayout editCanvas;
@@ -92,6 +96,7 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
// Add title bar. We'll set the actual title later.
this.titleBar = new TitleBar(null, headerIcon);
+ this.titleBar.hide();
addMember(this.titleBar);
}
@@ -113,27 +118,34 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
* @param isReadOnly whether or not the record editor should be in read-only mode
*/
protected void init(boolean isReadOnly) {
- this.isReadOnly = isReadOnly;
- this.editCanvas = buildEditor();
- this.editCanvas.hide();
- addMember(this.editCanvas);
-
- if (this.recordId == 0) {
- editNewRecord();
+ if (this.recordId == ID_NEW && isReadOnly) {
+ Message message =
+ new Message("You do not have the permissions required to create a new " + this.dataTypeName + ".",
+ Message.Severity.Error);
+ CoreGUI.goToView(getListViewPath(), message);
} else {
- fetchExistingRecord(this.recordId);
+ this.isReadOnly = isReadOnly;
+ this.editCanvas = buildEditor();
+ this.editCanvas.hide();
+ addMember(this.editCanvas);
+
+ if (this.recordId == ID_NEW) {
+ editNewRecord();
+
+ // Now that all the widgets have been created and initialized, make everything visible.
+ displayForm();
+ } else {
+ fetchExistingRecord(this.recordId);
+ }
}
}
private VLayout buildEditor() {
VLayout editorVLayout = new VLayout();
- boolean isNewRecord = (this.recordId == 0);
+ boolean isNewRecord = (this.recordId == ID_NEW);
this.form = new EnhancedDynamicForm(this.getLocatorId(), this.isReadOnly, isNewRecord);
this.form.setDataSource(this.dataSource);
- if (!isNewRecord) {
- this.form.setInitialCriteria(new Criteria(FIELD_ID, String.valueOf(this.recordId)));
- }
List<FormItem> items = createFormItems(isNewRecord);
this.form.setItems(items.toArray(new FormItem[items.size()]));
@@ -238,6 +250,11 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
+ " cannot be saved until these values are corrected.", Message.Severity.Warning, EnumSet.of(
Message.Option.Sticky, Message.Option.Transient));
CoreGUI.getMessageCenter().notify(message);
+ } else {
+ Message message = new Message("All fields now have valid values. This " + this.dataTypeName
+ + " can now be saved.", Message.Severity.Info, EnumSet.of(Message.Option.Sticky,
+ Message.Option.Transient));
+ CoreGUI.getMessageCenter().notify(message);
}
}
}
@@ -252,16 +269,30 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
if (response.getStatus() == RPCResponse.STATUS_SUCCESS) {
Record[] data = response.getData();
Record record = data[0];
+
String id = record.getAttribute(FIELD_ID);
String name = record.getAttribute(getTitleFieldName());
+
Message message;
- DSOperationType operationType = request.getOperationType();
String conciseMessage;
String detailedMessage;
+ DSOperationType operationType = request.getOperationType();
+ if (Log.isDebugEnabled()) {
+ Object dataObject = dataSource.copyValues(record);
+ if (operationType == DSOperationType.ADD) {
+ Log.debug("Created: " + dataObject);
+ } else {
+ Log.debug("Updated: " + dataObject);
+ }
+ }
switch (operationType) {
case ADD:
conciseMessage = MSG.widget_recordEditor_info_recordCreatedConcise(dataTypeName);
detailedMessage = MSG.widget_recordEditor_info_recordCreatedDetailed(dataTypeName, name);
+ if (CoreGUI.isDebugMode()) {
+ conciseMessage += " (" + FIELD_ID + "=" + id + ")";
+ detailedMessage += " (" + FIELD_ID + "=" + id + ")";
+ }
break;
case UPDATE:
conciseMessage = MSG.widget_recordEditor_info_recordUpdatedConcise(dataTypeName);
@@ -271,50 +302,61 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
throw new IllegalStateException(
MSG.widget_recordEditor_error_unsupportedOperationType(operationType.name()));
}
- if (CoreGUI.isDebugMode()) {
- conciseMessage += " (" + FIELD_ID + "=" + id + ")";
- detailedMessage += " (" + FIELD_ID + "=" + id + ")";
- }
+
message = new Message(conciseMessage, detailedMessage);
CoreGUI.goToView(getListViewPath(), message);
+ } else if (response.getStatus() == RPCResponse.STATUS_VALIDATION_ERROR) {
+ Message message = new Message("Operation failed - one or more fields have invalid values.",
+ Message.Severity.Error);
+ CoreGUI.getMessageCenter().notify(message);
+ } else {
+ // assume failure
+ Message message = new Message("Operation failed - an error occurred.", Message.Severity.Error);
+ CoreGUI.getMessageCenter().notify(message);
}
}
});
}
@SuppressWarnings("unchecked")
- protected void editRecord(final Record record) {
+ protected void editRecord(Record record) {
+ // Update the view title.
+ String recordName = record.getAttribute(getTitleFieldName());
+ String title = (this.isReadOnly) ? MSG.widget_recordEditor_title_view(this.dataTypeName, recordName) :
+ MSG.widget_recordEditor_title_edit(this.dataTypeName, recordName);
+ this.titleBar.setTitle(title);
+
// Load the data into the form.
this.form.editRecord(record);
- // This tells form.saveData() to invoke executeUpdate() on the dataSource.
- this.form.setSaveOperationType(DSOperationType.UPDATE);
-
- // Now that all the widgets have been created and initialized, make everything visible.
- displayForm();
+ // Perform up front validation for existing records.
+ // NOTE: We do *not* do this for new records, since we expect most of the required fields to be blank.
+ this.form.validate();
}
- private void editNewRecord() {
+ protected void editNewRecord() {
+ // Update the view title.
this.titleBar.setTitle("New " + this.dataTypeName);
- Record record = createNewRecord();
- this.form.editRecord(record);
+ // Clear the form
+ this.form.editNewRecord();
- // This tells form.saveData() to invoke executeAdd() on the dataSource.
- this.form.setSaveOperationType(DSOperationType.ADD);
-
- // Now that all the widgets have been created and initialized, make everything visible.
- displayForm();
+ // But make sure the value of the "id" field is set to "0", since a value of null could cause the dataSource's
+ // copyValues(Record) impl to choke.
+ FormItem idItem = this.form.getItem(FIELD_ID);
+ if (idItem != null) {
+ idItem.setDefaultValue(ID_NEW);
+ idItem.hide();
+ }
}
private void displayForm() {
LOADING_LABEL.hide();
+ this.titleBar.show();
this.editCanvas.show();
markForRedraw();
}
- protected abstract Record createNewRecord();
-
protected void fetchExistingRecord(final int recordId) {
Criteria criteria = new Criteria();
criteria.addCriteria(FIELD_ID, recordId);
@@ -329,26 +371,15 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
throw new IllegalStateException(MSG.widget_recordEditor_error_multipleRecords());
}
Record record = records[0];
- onExistingRecordFetched(record);
+ editRecord(record);
+
+ // Now that all the widgets have been created and initialized, make everything visible.
+ displayForm();
}
}
});
}
- protected void onExistingRecordFetched(Record record) {
- editRecord(record);
-
-
- // Perform up front validation for existing records.
- // NOTE: We do *not* do this for new records, since we expect most of the required fields to be blank.
- this.form.validate();
-
- String recordName = record.getAttribute(getTitleFieldName());
- String title = (this.isReadOnly) ? MSG.widget_recordEditor_title_view(this.dataTypeName, recordName) :
- MSG.widget_recordEditor_title_edit(this.dataTypeName, recordName);
- this.titleBar.setTitle(title);
- }
-
protected String getTitleFieldName() {
return FIELD_NAME;
}
@@ -360,7 +391,7 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
protected static ListGridRecord[] toListGridRecordArray(Record[] roleRecords) {
ListGridRecord[] roleListGridRecords = new ListGridRecord[roleRecords.length];
- for (int i = 0, roleRecordsLength = roleRecords.length; i < roleRecordsLength; i++) {
+ for (int i = ID_NEW, roleRecordsLength = roleRecords.length; i < roleRecordsLength; i++) {
Record roleRecord = roleRecords[i];
roleListGridRecords[i] = (ListGridRecord)roleRecord;
}
@@ -368,7 +399,7 @@ public abstract class AbstractRecordEditor<DS extends RPCDataSource> extends Loc
}
private static String capitalize(String itemTitle) {
- return Character.toUpperCase(itemTitle.charAt(0)) + itemTitle.substring(1);
+ return Character.toUpperCase(itemTitle.charAt(ID_NEW)) + itemTitle.substring(1);
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
index b013f36..496d896 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/form/EnhancedDynamicForm.java
@@ -32,6 +32,7 @@ import com.smartgwt.client.widgets.form.FormItemIfFunction;
import com.smartgwt.client.widgets.form.fields.BooleanItem;
import com.smartgwt.client.widgets.form.fields.FormItem;
import com.smartgwt.client.widgets.form.fields.FormItemIcon;
+import com.smartgwt.client.widgets.form.fields.HiddenItem;
import com.smartgwt.client.widgets.form.fields.StaticTextItem;
import com.smartgwt.client.widgets.form.fields.events.BlurEvent;
import com.smartgwt.client.widgets.form.fields.events.BlurHandler;
@@ -56,6 +57,9 @@ import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableDynamicForm;
* @author Ian Springer
*/
public class EnhancedDynamicForm extends LocatableDynamicForm {
+
+ private static final String FIELD_ID = "id";
+
private boolean isReadOnly;
private boolean isNewRecord;
@@ -85,14 +89,12 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
setHiliteRequiredFields(true);
setRequiredTitleSuffix(" <span class='requiredFieldMarker'>*</span> :");
- // DataSource Settings
- setAutoFetchData(true);
+ // DataSource Settings
setUseAllDataSourceFields(false);
// Validation Settings
setValidateOnChange(!isNewRecord);
setStopOnError(false);
-
}
@Override
@@ -103,7 +105,7 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
List<String> togglableTextItemNames = new ArrayList<String>();
boolean hasIdField = false;
for (FormItem item : items) {
- if (item.getName().equals("id")) {
+ if (item.getName().equals(FIELD_ID)) {
hasIdField = true;
}
if (this.isReadOnly) {
@@ -199,9 +201,14 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
}
}
- if (!this.isNewRecord && !hasIdField && getDataSource() != null && getField("id") != null
- && CoreGUI.isDebugMode()) {
- StaticTextItem idItem = new StaticTextItem("id", MSG.common_title_id());
+ // If the dataSource has an "id" field, make sure the form does too.
+ if (!hasIdField && getDataSource() != null && getDataSource().getField(FIELD_ID) != null) {
+ FormItem idItem;
+ if (this.isNewRecord || !CoreGUI.isDebugMode()) {
+ idItem = new HiddenItem(FIELD_ID);
+ } else {
+ idItem = new StaticTextItem(FIELD_ID, MSG.common_title_id());
+ }
itemsList.add(0, idItem);
}
@@ -210,7 +217,7 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
item.setValidateOnChange(true);
}
- item.setWidth("*"); // this causes a JavaScript exception ... :-(
+ //item.setWidth("*"); // this causes a JavaScript exception ... :-(
item.setWidth(240);
}
@@ -238,4 +245,5 @@ public class EnhancedDynamicForm extends LocatableDynamicForm {
}
markForRedraw();
}
+
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
index 3c15857..2da98c7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/Table.java
@@ -82,10 +82,13 @@ import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableListGrid;
import org.rhq.enterprise.gui.coregui.client.util.selenium.LocatableMenu;
/**
+ * A tabular view of set of data records from an {@link RPCDataSource}.
+ *
* @author Greg Hinkle
* @author Ian Springer
*/
-public class Table extends LocatableHLayout implements RefreshableView {
+public class Table<DS extends RPCDataSource> extends LocatableHLayout
+ implements RefreshableView {
private static final String FIELD_ID = "id";
private static final String FIELD_NAME = "name";
@@ -114,12 +117,13 @@ public class Table extends LocatableHLayout implements RefreshableView {
private boolean autoFetchData;
private boolean flexRowDisplay = true;
- private RPCDataSource dataSource;
+ private DS dataSource;
private DoubleClickHandler doubleClickHandler;
private List<TableActionInfo> tableActions = new ArrayList<TableActionInfo>();
private boolean tableActionDisableOverride = false;
protected List<Canvas> extraWidgets = new ArrayList<Canvas>();
+ private ToolStrip footer;
public Table(String locatorId) {
this(locatorId, null, null, null, null, true);
@@ -232,17 +236,13 @@ public class Table extends LocatableHLayout implements RefreshableView {
}
// Title
- title = new HTMLFlow();
- setTableTitle(tableTitle);
+ this.title = new HTMLFlow();
+ setTableTitle(this.tableTitle);
if (showHeader) {
titleLayout = new HLayout();
titleLayout.setAutoHeight();
titleLayout.setAlign(VerticalAlignment.BOTTOM);
- }
-
- // Add components to the view
- if (showHeader) {
contents.addMember(titleLayout, 0);
}
@@ -253,7 +253,7 @@ public class Table extends LocatableHLayout implements RefreshableView {
contents.addMember(listGrid);
// Footer
- ToolStrip footer = new ToolStrip();
+ this.footer = new ToolStrip();
footer.setPadding(5);
footer.setWidth100();
footer.setMembersMargin(15);
@@ -286,123 +286,137 @@ public class Table extends LocatableHLayout implements RefreshableView {
getTableInfo().setWrap(false);
if (showHeader) {
+ drawHeader();
+ }
- for (String headerIcon : headerIcons) {
- Img img = new Img(headerIcon, 24, 24);
- img.setPadding(4);
- titleLayout.addMember(img);
- }
+ if (showFooter) {
+ drawFooter();
+ }
+ } catch (Exception e) {
+ CoreGUI.getErrorHandler().handleError("Failed to draw Table [" + this + "].", e);
+ }
+ }
- titleLayout.addMember(title);
+ private void drawHeader() {
+ for (String headerIcon : headerIcons) {
+ Img img = new Img(headerIcon, 24, 24);
+ img.setPadding(4);
+ titleLayout.addMember(img);
+ }
- if (titleComponent != null) {
- titleLayout.addMember(new LayoutSpacer());
- titleLayout.addMember(titleComponent);
- }
+ titleLayout.addMember(title);
- }
+ if (titleComponent != null) {
+ titleLayout.addMember(new LayoutSpacer());
+ titleLayout.addMember(titleComponent);
+ }
+ }
- if (showFooter) {
+ private void drawFooter() {
+ footer.removeMembers(footer.getMembers());
- footer.removeMembers(footer.getMembers());
-
- for (final TableActionInfo tableAction : tableActions) {
-
- if (null == tableAction.getValueMap()) {
- // button action
- IButton button = new LocatableIButton(tableAction.getLocatorId(), tableAction.getTitle());
- button.setDisabled(true);
- button.setOverflow(Overflow.VISIBLE);
- button.addClickHandler(new ClickHandler() {
- public void onClick(ClickEvent clickEvent) {
- if (tableAction.confirmMessage != null) {
-
- String message = tableAction.confirmMessage.replaceAll("\\#", String
- .valueOf(listGrid.getSelection().length));
-
- SC.ask(message, new BooleanCallback() {
- public void execute(Boolean confirmed) {
- if (confirmed) {
- tableAction.action.executeAction(listGrid.getSelection(), null);
- }
- }
- });
- } else {
- tableAction.action.executeAction(listGrid.getSelection(), null);
- }
- }
- });
-
- tableAction.actionCanvas = button;
- footer.addMember(button);
-
- } else {
- // menu action
- LocatableMenu menu = new LocatableMenu(tableAction.getLocatorId() + "Menu");
- final Map<String, ? extends Object> menuEntries = tableAction.getValueMap();
- for (final String key : menuEntries.keySet()) {
- MenuItem item = new MenuItem(key);
- item.addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {
-
- @Override
- public void onClick(MenuItemClickEvent event) {
- tableAction.getAction()
- .executeAction(listGrid.getSelection(), menuEntries.get(key));
+ for (final TableActionInfo tableAction : tableActions) {
+
+ if (null == tableAction.getValueMap()) {
+ // button action
+ IButton button = new LocatableIButton(tableAction.getLocatorId(), tableAction.getTitle());
+ button.setDisabled(true);
+ button.setOverflow(Overflow.VISIBLE);
+ button.addClickHandler(new ClickHandler() {
+ public void onClick(ClickEvent clickEvent) {
+ if (tableAction.confirmMessage != null) {
+
+ String message = tableAction.confirmMessage.replaceAll("\\#", String
+ .valueOf(listGrid.getSelection().length));
+
+ SC.ask(message, new BooleanCallback() {
+ public void execute(Boolean confirmed) {
+ if (confirmed) {
+ tableAction.action.executeAction(listGrid.getSelection(), null);
+ }
}
});
- menu.addItem(item);
+ } else {
+ tableAction.action.executeAction(listGrid.getSelection(), null);
}
-
- IMenuButton menuButton = new LocatableIMenuButton(tableAction.getLocatorId(), tableAction
- .getTitle(), menu);
- menuButton.setDisabled(true);
- // this makes it pretty tight, but maybe better than the default, which is pretty wide
- menuButton.setAutoFit(true);
- menuButton.setOverflow(Overflow.VISIBLE);
-
- tableAction.actionCanvas = menuButton;
- footer.addMember(menuButton);
}
- }
-
- for (Canvas extraWidgetCanvas : extraWidgets) {
- footer.addMember(extraWidgetCanvas);
- }
+ });
- footer.addMember(new LayoutSpacer());
+ tableAction.actionCanvas = button;
+ footer.addMember(button);
- if (isShowFooterRefresh()) {
- IButton refreshButton = new LocatableIButton(extendLocatorId("Refresh"), "Refresh");
- refreshButton.addClickHandler(new ClickHandler() {
- public void onClick(ClickEvent clickEvent) {
- listGrid.invalidateCache();
+ } else {
+ // menu action
+ LocatableMenu menu = new LocatableMenu(tableAction.getLocatorId() + "Menu");
+ final Map<String, ? extends Object> menuEntries = tableAction.getValueMap();
+ for (final String key : menuEntries.keySet()) {
+ MenuItem item = new MenuItem(key);
+ item.addClickHandler(new com.smartgwt.client.widgets.menu.events.ClickHandler() {
+
+ @Override
+ public void onClick(MenuItemClickEvent event) {
+ tableAction.getAction()
+ .executeAction(listGrid.getSelection(), menuEntries.get(key));
}
});
- footer.addMember(refreshButton);
+ menu.addItem(item);
}
- footer.addMember(tableInfo);
+ IMenuButton menuButton = new LocatableIMenuButton(tableAction.getLocatorId(), tableAction
+ .getTitle(), menu);
+ menuButton.setDisabled(true);
+ // this makes it pretty tight, but maybe better than the default, which is pretty wide
+ menuButton.setAutoFit(true);
+ menuButton.setOverflow(Overflow.VISIBLE);
- // Manages enable/disable buttons for the grid
- listGrid.addSelectionChangedHandler(new SelectionChangedHandler() {
- public void onSelectionChanged(SelectionEvent selectionEvent) {
- refreshTableInfo();
- }
- });
+ tableAction.actionCanvas = menuButton;
+ footer.addMember(menuButton);
+ }
+ }
- listGrid.addDataArrivedHandler(new DataArrivedHandler() {
- public void onDataArrived(DataArrivedEvent dataArrivedEvent) {
- refreshTableInfo();
- fieldSizes.clear();
- }
- });
+ for (Canvas extraWidgetCanvas : extraWidgets) {
+ footer.addMember(extraWidgetCanvas);
+ }
+
+ footer.addMember(new LayoutSpacer());
+
+ if (isShowFooterRefresh()) {
+ IButton refreshButton = new LocatableIButton(extendLocatorId("Refresh"), "Refresh");
+ refreshButton.addClickHandler(new ClickHandler() {
+ public void onClick(ClickEvent clickEvent) {
+ listGrid.invalidateCache();
+ }
+ });
+ footer.addMember(refreshButton);
+ }
- // Ensure buttons are initially set correctly.
+ footer.addMember(tableInfo);
+
+ // Manages enable/disable buttons for the grid
+ listGrid.addSelectionChangedHandler(new SelectionChangedHandler() {
+ public void onSelectionChanged(SelectionEvent selectionEvent) {
refreshTableInfo();
}
- } catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Failed to draw Table [" + this + "].", e);
- }
+ });
+
+ listGrid.addDataArrivedHandler(new DataArrivedHandler() {
+ public void onDataArrived(DataArrivedEvent dataArrivedEvent) {
+ refreshTableInfo();
+ fieldSizes.clear();
+ }
+ });
+
+ // Ensure buttons are initially set correctly.
+ refreshTableInfo();
+ }
+
+ /**
+ * Subclasses can use this as a chance to configure the list grid after it has been
+ * created but before it has been drawn to the DOM. This is also the proper place to add table
+ * actions so that they're rendered in the footer.
+ */
+ protected void configureTable() {
+ return;
}
public void setFilterFormItems(FormItem... formItems) {
@@ -417,15 +431,6 @@ public class Table extends LocatableHLayout implements RefreshableView {
}
- /**
- * Overriding components can use this as a chance to configure the list grid after it has been
- * created but before it has been drawn to the DOM. This is also the proper place to add table
- * actions so that they're rendered in the footer.
- */
- protected void configureTable() {
-
- }
-
public String getTitle() {
return this.tableTitle;
}
@@ -499,11 +504,11 @@ public class Table extends LocatableHLayout implements RefreshableView {
title.markForRedraw();
}
- public RPCDataSource getDataSource() {
+ public DS getDataSource() {
return dataSource;
}
- public void setDataSource(RPCDataSource dataSource) {
+ public void setDataSource(DS dataSource) {
this.dataSource = dataSource;
}
@@ -771,6 +776,7 @@ public class Table extends LocatableHLayout implements RefreshableView {
LinkedHashMap<String, ? extends Object> valueMap, TableAction action) {
this.locatorId = locatorId;
this.title = title;
+ this.confirmMessage = confirmMessage;
this.valueMap = valueMap;
this.action = action;
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
index bf8bb55..1fc4fcd 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/components/table/TableSection.java
@@ -26,6 +26,7 @@ import com.google.gwt.user.client.History;
import com.smartgwt.client.data.Criteria;
import com.smartgwt.client.data.SortSpecifier;
import com.smartgwt.client.types.AnimationEffect;
+import com.smartgwt.client.types.VerticalAlignment;
import com.smartgwt.client.widgets.AnimationCallback;
import com.smartgwt.client.widgets.Canvas;
import com.smartgwt.client.widgets.grid.ListGridRecord;
@@ -38,12 +39,13 @@ import org.rhq.enterprise.gui.coregui.client.CoreGUI;
import org.rhq.enterprise.gui.coregui.client.DetailsView;
import org.rhq.enterprise.gui.coregui.client.ViewPath;
import org.rhq.enterprise.gui.coregui.client.components.buttons.BackButton;
+import org.rhq.enterprise.gui.coregui.client.util.RPCDataSource;
/**
* @author Greg Hinkle
* @author John Mazzitelli
*/
-public abstract class TableSection extends Table implements BookmarkableView {
+public abstract class TableSection<DS extends RPCDataSource> extends Table<DS> implements BookmarkableView {
private VLayout detailsHolder;
private Canvas detailsView;
@@ -85,9 +87,10 @@ public abstract class TableSection extends Table implements BookmarkableView {
super.onInit();
detailsHolder = new VLayout();
+ detailsHolder.setAlign(VerticalAlignment.TOP);
//detailsHolder.setWidth100();
//detailsHolder.setHeight100();
- detailsHolder.setMargin(5);
+ detailsHolder.setMargin(4);
detailsHolder.hide();
addMember(detailsHolder);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/DashboardsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/DashboardsView.java
index e8c6084..9baf529 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/DashboardsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/DashboardsView.java
@@ -27,7 +27,6 @@ import java.util.List;
import java.util.Map;
import com.allen_sauer.gwt.log.client.Log;
-import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.History;
import com.google.gwt.user.client.rpc.AsyncCallback;
import com.smartgwt.client.types.Overflow;
@@ -49,7 +48,6 @@ import org.rhq.core.domain.dashboard.Dashboard;
import org.rhq.core.domain.dashboard.DashboardPortlet;
import org.rhq.enterprise.gui.coregui.client.BookmarkableView;
import org.rhq.enterprise.gui.coregui.client.CoreGUI;
-import org.rhq.enterprise.gui.coregui.client.Messages;
import org.rhq.enterprise.gui.coregui.client.ViewPath;
import org.rhq.enterprise.gui.coregui.client.components.view.ViewName;
import org.rhq.enterprise.gui.coregui.client.dashboard.portlets.inventory.queue.AutodiscoveryPortlet;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/FavoriteResourcesPortlet.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/FavoriteResourcesPortlet.java
index 8cfdde1..97b48cc 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/FavoriteResourcesPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/inventory/resource/FavoriteResourcesPortlet.java
@@ -61,8 +61,6 @@ public class FavoriteResourcesPortlet extends ResourceSearchView implements Port
@Override
protected void configureTable() {
- super.configureTable();
-
Set<Integer> favoriteIds = UserSessionManager.getUserPreferences().getFavoriteResources();
Integer[] favArray = favoriteIds.toArray(new Integer[favoriteIds.size()]);
@@ -85,6 +83,7 @@ public class FavoriteResourcesPortlet extends ResourceSearchView implements Port
}
});
+ super.configureTable();
}
public void configure(PortletWindow portletWindow, DashboardPortlet storedPortlet) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
index a582132..005c2be 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/dashboard/portlets/recent/problems/ProblemResourcesPortlet.java
@@ -99,6 +99,8 @@ public class ProblemResourcesPortlet extends Table implements CustomSettingsPort
listGrid.setWrapCells(true);
addExtraWidget(new TimeRange(this.getLocatorId(), this));
}
+
+
}
@Override
@@ -268,7 +270,7 @@ public class ProblemResourcesPortlet extends Table implements CustomSettingsPort
timeRange = new String[] { MeasurementUtility.getDateTimeFormatter().format(new Date(begin)),
MeasurementUtility.getDateTimeFormatter().format(new Date(end)) };
}
- for (Canvas extraWidget : extraWidgets) {
+ for (Object extraWidget : extraWidgets) {
if (extraWidget instanceof TableWidget) {
((TableWidget) extraWidget).refresh(getListGrid());
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListDetailView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListDetailView.java
index 9530979..b410a80 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListDetailView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListDetailView.java
@@ -56,9 +56,7 @@ public abstract class AbstractMeasurementDataTraitListDetailView extends Table {
}
@Override
- protected void configureTable() {
- super.configureTable();
-
+ protected void configureTable() {
ListGrid listGrid = getListGrid();
listGrid.setSelectionType(SelectionStyle.NONE);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListView.java
index 88918bb..c5cc4e2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementDataTraitListView.java
@@ -57,8 +57,6 @@ public abstract class AbstractMeasurementDataTraitListView extends TableSection
@Override
protected void configureTable() {
- super.configureTable();
-
ListGrid listGrid = getListGrid();
listGrid.setSelectionType(SelectionStyle.SINGLE);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleListView.java
index 8413cc1..0d3e524 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/AbstractMeasurementScheduleListView.java
@@ -54,7 +54,6 @@ public abstract class AbstractMeasurementScheduleListView extends Table {
}
protected void configureTable() {
-
ListGrid listGrid = getListGrid();
// Set widths and cell formatters on the fields.
@@ -82,6 +81,8 @@ public abstract class AbstractMeasurementScheduleListView extends Table {
}
});
addExtraWidget(new UpdateCollectionIntervalWidget(this.getLocatorId(), this));
+
+
}
protected class CollectionEnabledCellFormatter extends BooleanCellFormatter {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
index 8f2e10c..3434179 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/event/EventCompositeHistoryView.java
@@ -120,6 +120,8 @@ public class EventCompositeHistoryView extends TableSection {
setListGridFields(timestampField, severityField, detailsField, sourceField);
setupTableInteractions();
+
+
}
private void setupTableInteractions() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
index 7780095..0ecdbd2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/ResourceGroupListView.java
@@ -138,6 +138,8 @@ public class ResourceGroupListView extends Table {
CoreGUI.goToView("ResourceGroup/" + event.getRecord().getAttribute("id"));
}
});
+
+
}
// -------- Static Utility loaders ------------
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
index b734425..3ea5d49 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/definitions/GroupDefinitionListView.java
@@ -57,7 +57,6 @@ public class GroupDefinitionListView extends TableSection {
@Override
protected void configureTable() {
-
ListGridField idField = new ListGridField("id", MSG.common_title_id(), 50);
ListGridField nameField = new ListGridField("name", MSG.common_title_name(), 150);
ListGridField descriptionField = new ListGridField("description", MSG.common_title_description());
@@ -144,6 +143,8 @@ public class GroupDefinitionListView extends TableSection {
});
}
});
+
+
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
index 547af2d..32f363f 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationMembers.java
@@ -168,6 +168,8 @@ public class HistoryGroupPluginConfigurationMembers extends LocatableVLayout {
listGrid.setFields(fieldResource, fieldDateCreated, fieldLastUpdated, fieldUser, fieldStatus);
listGrid.setLinkTextProperty("resourceName");
+
+
}
private String getStatusHtmlString(Record record) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationTable.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationTable.java
index a3e4b63..4639767 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationTable.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/inventory/HistoryGroupPluginConfigurationTable.java
@@ -200,6 +200,8 @@ public class HistoryGroupPluginConfigurationTable extends Table {
+ "/" + selection[0].getAttribute("id") + "/Members");
}
});
+
+
}
private String getStatusHtmlString(Record record) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
index 46ed7ad..3c7f368 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsDetailView.java
@@ -44,6 +44,8 @@ public class TraitsDetailView extends AbstractMeasurementDataTraitListDetailView
ListGridField resourceNameField = listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME);
resourceNameField.setWidth("20%");
resourceNameField.setCanGroupBy(true);
+
+
}
private static Criteria createCriteria(int groupId, int definitionId) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
index d35c6e7..f11c678 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/groups/detail/monitoring/traits/TraitsView.java
@@ -54,6 +54,8 @@ public class TraitsView extends AbstractMeasurementDataTraitListView {
ListGridField resourceNameField = listGrid.getField(MeasurementDataTraitCriteria.SORT_FIELD_RESOURCE_NAME);
resourceNameField.setWidth("20%");
resourceNameField.setCanGroupBy(true);
+
+
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceCompositeSearchView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceCompositeSearchView.java
index d3e4922..0c4df49 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceCompositeSearchView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceCompositeSearchView.java
@@ -50,9 +50,6 @@ public class ResourceCompositeSearchView extends ResourceSearchView {
@Override
protected void configureTable() {
-
- super.configureTable();
-
addTableAction(extendLocatorId("Delete"), MSG.common_button_delete(), MSG
.view_inventory_resources_deleteConfirm(), new AbstractTableAction(TableActionEnablement.ANY) {
@@ -138,6 +135,7 @@ public class ResourceCompositeSearchView extends ResourceSearchView {
}
+ super.configureTable();
}
public ResourceComposite getParentResourceComposite() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
index 078461f..4402029 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/ResourceSearchView.java
@@ -114,7 +114,6 @@ public class ResourceSearchView extends Table {
@Override
protected void configureTable() {
-
ListGridField iconField = new ListGridField("icon", MSG.common_title_icon(), 40);
iconField.setType(ListGridFieldType.IMAGE);
iconField.setImageURLPrefix("types/");
@@ -181,6 +180,8 @@ public class ResourceSearchView extends Table {
}
}
});*/
+
+
}
public int getMatches() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java
index 767b151..6d3d59f 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/configuration/ConfigurationHistoryView.java
@@ -75,8 +75,6 @@ public class ConfigurationHistoryView extends TableSection {
@Override
protected void configureTable() {
- super.configureTable();
-
List<ListGridField> fields = new ArrayList<ListGridField>();
ListGridField idField = new ListGridField(ConfigurationHistoryDataSource.Field.ID, 60);
@@ -154,6 +152,7 @@ public class ConfigurationHistoryView extends TableSection {
}
});
+
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDetailView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDetailView.java
index da87700..bac2d47 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDetailView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsDetailView.java
@@ -41,4 +41,11 @@ public class TraitsDetailView extends AbstractMeasurementDataTraitListDetailView
return criteria;
}
+
+ @Override
+ protected void configureTable() {
+ super.configureTable();
+
+
+ }
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsView.java
index 0d3b161..513fee8 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/monitoring/traits/TraitsView.java
@@ -42,6 +42,11 @@ public class TraitsView extends AbstractMeasurementDataTraitListView {
return new TraitsDetailView(extendLocatorId("Detail"), this.resourceId, definitionId);
}
+ @Override
+ protected void configureTable() {
+
+ }
+
private static Criteria createCriteria(int resourceId) {
Criteria criteria = new Criteria();
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryView.java
index 3b7accc..48cf7e9 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/resource/detail/operation/OperationHistoryView.java
@@ -73,7 +73,6 @@ public class OperationHistoryView extends TableSection {
@Override
protected void configureTable() {
-
getListGrid().getField(OperationHistoryDataSource.Field.ID).setWidth(40);
getListGrid().getField(OperationHistoryDataSource.Field.OPERATION_NAME).setWidth("*");
getListGrid().getField(OperationHistoryDataSource.Field.STATUS).setWidth(100);
@@ -139,6 +138,7 @@ public class OperationHistoryView extends TableSection {
addExtraWidget(operationsButton);
}
+
}
@Override
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBView.java
index e70a673..a8a7f6f 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/report/measurement/MeasurementOOBView.java
@@ -50,5 +50,8 @@ public class MeasurementOOBView extends Table {
return "<a href=\"#Resource/" + listGridRecord.getAttribute("resourceId") + "\">" + o + "</a>";
}
});
+
+
}
+
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
index 9f8b723..c2b1efd 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/util/RPCDataSource.java
@@ -482,7 +482,7 @@ public abstract class RPCDataSource<T> extends DataSource {
}
}
- Log.debug("Result = " + result);
+ Log.debug("Result: " + paramName + "=[" + result + "]");
return result;
}
diff --git a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java
index f1321b3..80fc211 100644
--- a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java
+++ b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/auth/SubjectManagerBean.java
@@ -191,31 +191,50 @@ public class SubjectManagerBean implements SubjectManagerLocal, SubjectManagerRe
+ subjectToModify.getName() + "].");
}
- if (!subjectToModify.getFactive() && authorizationManager.isSystemSuperuser(subjectToModify)) {
+ boolean subjectToModifyIsSystemSuperuser = authorizationManager.isSystemSuperuser(subjectToModify);
+ if (!subjectToModify.getFactive() && subjectToModifyIsSystemSuperuser) {
throw new PermissionException("You cannot disable the system user [" + subjectToModify.getName()
+ "].");
}
- if (!isSecurityManager) {
- RoleCriteria subjectRolesCriteria = new RoleCriteria();
- subjectRolesCriteria.addFilterSubjectId(subjectToModify.getId());
- PageList<Role> currentRoles = roleManager.findRolesByCriteria(whoami, subjectRolesCriteria);
- Set<Role> newRoles = subjectToModify.getRoles();
- if (newRoles == null) {
- newRoles = Collections.emptySet();
+ RoleCriteria subjectRolesCriteria = new RoleCriteria();
+ subjectRolesCriteria.addFilterSubjectId(subjectToModify.getId());
+ PageList<Role> currentRoles = roleManager.findRolesByCriteria(whoami, subjectRolesCriteria);
+ Set<Role> newRoles = subjectToModify.getRoles();
+ if (newRoles == null) {
+ newRoles = Collections.emptySet();
+ }
+ boolean rolesModified = !(currentRoles.containsAll(newRoles) && newRoles.containsAll(currentRoles));
+
+ RoleCriteria subjectLdapRolesCriteria = new RoleCriteria();
+ subjectLdapRolesCriteria.addFilterLdapSubjectId(subjectToModify.getId());
+ PageList<Role> currentLdapRoles = roleManager.findRolesByCriteria(whoami, subjectLdapRolesCriteria);
+ Set<Role> newLdapRoles = subjectToModify.getLdapRoles();
+ if (newLdapRoles == null) {
+ newLdapRoles = Collections.emptySet();
+ }
+ boolean ldapRolesModified =
+ !(currentLdapRoles.containsAll(newLdapRoles) && newLdapRoles.containsAll(currentLdapRoles));
+
+ if (isSecurityManager) {
+ if (subjectToModifyIsSystemSuperuser) {
+ if (rolesModified) {
+ throw new PermissionException("You cannot alter the roles for user [" + subjectToModify.getName()
+ + "] - roles are fixed for this user");
+ }
+
+ if (ldapRolesModified) {
+ throw new PermissionException("You cannot alter the LDAP roles for user [" + subjectToModify.getName()
+ + "] - LDAP roles are fixed for this user");
+ }
}
- if (!(currentRoles.containsAll(newRoles) && newRoles.containsAll(currentRoles))) {
+ } else {
+ if (rolesModified) {
throw new PermissionException("You cannot change the roles assigned to [" + subjectToModify.getName()
+ "] - only a user with the MANAGE_SECURITY permission can do so.");
}
- RoleCriteria subjectLdapRolesCriteria = new RoleCriteria();
- subjectLdapRolesCriteria.addFilterLdapSubjectId(subjectToModify.getId());
- PageList<Role> currentLdapRoles = roleManager.findRolesByCriteria(whoami, subjectLdapRolesCriteria);
- Set<Role> newLdapRoles = subjectToModify.getLdapRoles();
- if (newLdapRoles == null) {
- newLdapRoles = Collections.emptySet();
- }
- if (!(currentLdapRoles.containsAll(newLdapRoles) && newLdapRoles.containsAll(currentLdapRoles))) {
+
+ if (ldapRolesModified) {
throw new PermissionException("You cannot change the LDAP roles assigned to [" + subjectToModify.getName()
+ "] - only a user with the MANAGE_SECURITY permission can do so.");
}
13 years, 7 months
[rhq] modules/enterprise
by Joseph Marques
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertFormatUtility.java | 12
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java | 15
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java | 16
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java | 9
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java | 11
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java | 92 ++--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java | 35 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GroupAlertDefinitionsView.java | 23 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewConditionEditor.java | 214 +++++-----
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java | 13
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java | 47 +-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java | 28 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java | 10
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java | 22 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationInfo.java | 13
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationSenderForm.java | 65 +--
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SimpleNotificationSenderForm.java | 2
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java | 19
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemRolesNotificationSenderForm.java | 12
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/TemplateAlertDefinitionsView.java | 25 -
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 184 ++++++++
21 files changed, 565 insertions(+), 302 deletions(-)
New commits:
commit 01e83939b621fc772e902479803a8f350aa18aec
Author: Joseph Marques <joseph(a)redhat.com>
Date: Thu Nov 18 18:50:54 2010 -0500
i18n for org.rhq.enterprise.gui.coregui.client.alert.definitions
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertFormatUtility.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertFormatUtility.java
index bddd4b4..133683f 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertFormatUtility.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/AlertFormatUtility.java
@@ -159,28 +159,28 @@ public class AlertFormatUtility {
break;
}
case CONTROL: {
- str.append(MSG.view_alert_common_tab_conditions_type_metric_operation());
+ str.append(MSG.view_alert_common_tab_conditions_type_operation());
str.append(" [");
str.append(condition.getName());
str.append("] ");
- str.append(MSG.view_alert_common_tab_conditions_type_metric_status());
+ str.append(MSG.view_alert_common_tab_conditions_type_operation_status());
str.append(" [");
str.append(condition.getOption());
str.append("]");
break;
}
case RESOURCE_CONFIG: {
- str.append(MSG.view_alert_common_tab_conditions_type_metric_resource_configuration());
+ str.append(MSG.view_alert_common_tab_conditions_type_resource_configuration());
break;
}
case EVENT: {
- str.append(MSG.view_alert_common_tab_conditions_type_metric_event());
+ str.append(MSG.view_alert_common_tab_conditions_type_event());
str.append(" [");
str.append(condition.getName());
str.append("]");
if (condition.getOption() != null && condition.getOption().length() > 0) {
str.append(" ");
- str.append(MSG.view_alert_common_tab_conditions_type_metric_event_matching());
+ str.append(MSG.view_alert_common_tab_conditions_type_event_matching());
str.append(" '");
str.append(condition.getOption());
str.append("'");
@@ -188,7 +188,7 @@ public class AlertFormatUtility {
break;
}
default: {
- str.append(MSG.view_alert_common_tab_conditions_type_invalid(category.name()));
+ str.append(MSG.view_alert_common_tab_invalid_condition_category(category.name()));
break;
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
index d48c811..f960bc7 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsDataSource.java
@@ -102,25 +102,26 @@ public abstract class AbstractAlertDefinitionsDataSource extends RPCDataSource<A
protected List<DataSourceField> addDataSourceFields() {
List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceTextField nameField = new DataSourceTextField(FIELD_NAME, "Name");
+ DataSourceTextField nameField = new DataSourceTextField(FIELD_NAME, MSG.view_alerts_field_name());
fields.add(nameField);
- DataSourceTextField descriptionField = new DataSourceTextField(FIELD_DESCRIPTION, "Description");
+ DataSourceTextField descriptionField = new DataSourceTextField(FIELD_DESCRIPTION, MSG
+ .common_title_description());
fields.add(descriptionField);
- DataSourceTextField ctimeField = new DataSourceTextField(FIELD_CTIME, "Created Time");
+ DataSourceTextField ctimeField = new DataSourceTextField(FIELD_CTIME, MSG.view_alerts_field_created_time());
ctimeField.setType(FieldType.DATETIME);
fields.add(ctimeField);
- DataSourceTextField mtimeField = new DataSourceTextField(FIELD_MTIME, "Modified Time");
+ DataSourceTextField mtimeField = new DataSourceTextField(FIELD_MTIME, MSG.view_alerts_field_modified_time());
mtimeField.setType(FieldType.DATETIME);
fields.add(mtimeField);
- DataSourceTextField enabledField = new DataSourceTextField(FIELD_ENABLED, "Enabled");
+ DataSourceTextField enabledField = new DataSourceTextField(FIELD_ENABLED, MSG.view_alerts_field_enabled());
enabledField.setType(FieldType.BOOLEAN);
fields.add(enabledField);
- DataSourceImageField priorityField = new DataSourceImageField(FIELD_PRIORITY, "Priority");
+ DataSourceImageField priorityField = new DataSourceImageField(FIELD_PRIORITY, MSG.view_alerts_field_priority());
fields.add(priorityField);
return fields;
@@ -132,7 +133,7 @@ public abstract class AbstractAlertDefinitionsDataSource extends RPCDataSource<A
GWTServiceLookup.getAlertDefinitionService().findAlertDefinitionsByCriteria(criteria,
new AsyncCallback<PageList<AlertDefinition>>() {
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to load alert definition data", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_loadFailed(), caught);
response.setStatus(DSResponse.STATUS_FAILURE);
processResponse(request.getRequestId(), response);
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
index 8386cbe..f7870eb 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/AbstractAlertDefinitionsView.java
@@ -68,7 +68,7 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
boolean permitted = isAllowedToModifyAlertDefinitions();
TableActionEnablement enablement = (permitted) ? TableActionEnablement.ALWAYS : TableActionEnablement.NEVER;
- addTableAction(extendLocatorId("New"), "New", null, new AbstractTableAction(enablement) {
+ addTableAction(extendLocatorId("New"), MSG.common_button_new(), null, new AbstractTableAction(enablement) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
newButtonPressed(selection);
// I don't think you want this refresh, it will recreate the new alert detail
@@ -77,19 +77,22 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
});
enablement = (permitted) ? TableActionEnablement.ANY : TableActionEnablement.NEVER;
- addTableAction(extendLocatorId("Enable"), "Enable", "Are You Sure?", new AbstractTableAction(enablement) {
+ addTableAction(extendLocatorId("Enable"), MSG.common_button_enable(), MSG
+ .view_alert_definitions_enable_confirm(), new AbstractTableAction(enablement) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
enableButtonPressed(selection);
refresh();
}
});
- addTableAction(extendLocatorId("Disable"), "Disable", "Are You Sure?", new AbstractTableAction(enablement) {
+ addTableAction(extendLocatorId("Disable"), MSG.common_button_disable(), MSG
+ .view_alert_definitions_disable_confirm(), new AbstractTableAction(enablement) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
disableButtonPressed(selection);
refresh();
}
});
- addTableAction(extendLocatorId("Delete"), "Delete", "Are You Sure?", new AbstractTableAction(enablement) {
+ addTableAction(extendLocatorId("Delete"), MSG.common_button_delete(), MSG
+ .view_alert_definitions_delete_confirm(), new AbstractTableAction(enablement) {
public void executeAction(ListGridRecord[] selection, Object actionValue) {
deleteButtonPressed(selection);
refresh();
@@ -110,7 +113,7 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
}
@Override
- public SingleAlertDefinitionView getDetailsView(int id) {
+ public SingleAlertDefinitionView getDetailsView(final int id) {
final SingleAlertDefinitionView singleAlertDefinitionView = new SingleAlertDefinitionView(this
.extendLocatorId("singleAlertDefinitionView"), this);
@@ -138,7 +141,8 @@ public abstract class AbstractAlertDefinitionsView extends TableSection {
GWTServiceLookup.getAlertDefinitionService().findAlertDefinitionsByCriteria(criteria,
new AsyncCallback<PageList<AlertDefinition>>() {
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to load alert definition data", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definitions_loadFailed_single(String.valueOf(id)), caught);
}
public void onSuccess(PageList<AlertDefinition> result) {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
index 6991b2c..0e11a60 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsAlertDefinitionForm.java
@@ -136,7 +136,8 @@ public class ConditionsAlertDefinitionForm extends LocatableVLayout implements E
LocatableDynamicForm conditionExpressionForm;
conditionExpressionForm = new LocatableDynamicForm(this.extendLocatorId("conditionExpressionForm"));
- conditionExpression = new SelectItem("conditionExpression", "Fire alert when");
+ conditionExpression = new SelectItem("conditionExpression", MSG
+ .view_alert_common_tab_conditions_expression());
LinkedHashMap<String, String> condExprs = new LinkedHashMap<String, String>(2);
condExprs.put(BooleanExpression.ANY.name(), BooleanExpression.ANY.toString());
condExprs.put(BooleanExpression.ALL.name(), BooleanExpression.ALL.toString());
@@ -144,10 +145,10 @@ public class ConditionsAlertDefinitionForm extends LocatableVLayout implements E
conditionExpression.setDefaultValue(BooleanExpression.ANY.name());
conditionExpression.setWrapTitle(false);
conditionExpression.setHoverWidth(300);
- conditionExpression
- .setTooltip("Determines if ANY or ALL of the conditions must evaluate to true in order for the entire condition set to be considered true.");
+ conditionExpression.setTooltip(MSG.view_alert_common_tab_conditions_expression_tooltip());
- conditionExpressionStatic = new StaticTextItem("conditionExpressionStatic", "Fire alert when");
+ conditionExpressionStatic = new StaticTextItem("conditionExpressionStatic", MSG
+ .view_alert_common_tab_conditions_expression());
conditionExpressionStatic.setWrapTitle(false);
conditionExpressionForm.setFields(conditionExpression, conditionExpressionStatic);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
index 4824992..d1dfadb 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ConditionsEditor.java
@@ -92,12 +92,12 @@ public class ConditionsEditor extends LocatableVLayout {
final ConditionDataSource dataSource = new ConditionDataSource();
table.setDataSource(dataSource);
- table.addTableAction(this.extendLocatorId("add"), "Add", null, new AbstractTableAction() {
+ table.addTableAction(this.extendLocatorId("add"), MSG.common_button_add(), null, new AbstractTableAction() {
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
final Window winModal = new LocatableWindow(ConditionsEditor.this
.extendLocatorId("newConditionEditorWindow"));
- winModal.setTitle("Add Condition");
+ winModal.setTitle(MSG.view_alert_common_tab_conditions_modal_title());
winModal.setOverflow(Overflow.VISIBLE);
winModal.setShowMinimizeButton(false);
winModal.setIsModal(true);
@@ -126,8 +126,8 @@ public class ConditionsEditor extends LocatableVLayout {
winModal.show();
}
});
- table.addTableAction(this.extendLocatorId("delete"), "Delete", "Are you sure?", new AbstractTableAction(
- TableActionEnablement.ANY) {
+ table.addTableAction(this.extendLocatorId("delete"), MSG.common_button_delete(), MSG
+ .view_alert_definitions_delete_confirm(), new AbstractTableAction(TableActionEnablement.ANY) {
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
for (ListGridRecord record : selection) {
@@ -159,7 +159,8 @@ public class ConditionsEditor extends LocatableVLayout {
protected List<DataSourceField> addDataSourceFields() {
List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceTextField conditionField = new DataSourceTextField(FIELD_CONDITION, "Condition");
+ DataSourceTextField conditionField = new DataSourceTextField(FIELD_CONDITION, MSG
+ .view_alert_common_tab_conditions_text());
fields.add(conditionField);
return fields;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
index 1942004..d896479 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/DampeningAlertDefinitionForm.java
@@ -145,7 +145,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
break;
}
default: {
- throw new IllegalStateException("Invalid category - please report this as a bug: " + category); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_dampening_category(category.name())); // should never happen
}
}
}
@@ -228,7 +228,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
break;
}
default: {
- throw new IllegalStateException("Bad dampening category - please report this bug: " + cat); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_dampening_category(cat.name())); // should never happen
}
}
@@ -309,7 +309,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
break;
}
default: {
- throw new IllegalStateException("Bad dampening category - please report this bug: " + cat); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_dampening_category(cat.name())); // should never happen
}
}
@@ -354,7 +354,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
break;
}
default: {
- throw new IllegalStateException("Bad dampening category - please report this bug: " + cat); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_dampening_category(cat.name())); // should never happen
}
}
alertDefinition.setAlertDampening(alertDampening);
@@ -383,7 +383,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
private void buildForm() {
if (!formBuilt) {
- dampeningRuleSelection = new SelectItem("dampeningRule", "Dampening Rule");
+ dampeningRuleSelection = new SelectItem("dampeningRule", MSG.view_alert_common_tab_dampening());
LinkedHashMap<String, String> rules = new LinkedHashMap<String, String>(4);
rules.put(AlertDampening.Category.NONE.name(), getCategoryTitle(AlertDampening.Category.NONE));
rules.put(AlertDampening.Category.CONSECUTIVE_COUNT.name(),
@@ -405,7 +405,7 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
}
});
- dampeningRuleStatic = new StaticTextItem("dampeningRuleStatic", "Dampening Rule");
+ dampeningRuleStatic = new StaticTextItem("dampeningRuleStatic", MSG.view_alert_common_tab_dampening());
dampeningRuleStatic.setWrapTitle(false);
dampeningRuleStatic.setHoverWidth(300);
@@ -413,66 +413,75 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
// nothing to do - the none category has no ui components to render
// CONSECUTIVE_COUNT
- consecutiveOccurrencesSpinner = new SpinnerItem("consecutiveOccurrencesSpinner", "Occurrences");
+ consecutiveOccurrencesSpinner = new SpinnerItem("consecutiveOccurrencesSpinner", MSG
+ .view_alert_common_tab_dampening_consecutive_occurrences_label());
consecutiveOccurrencesSpinner.setWrapTitle(false);
consecutiveOccurrencesSpinner.setMin(1);
consecutiveOccurrencesSpinner.setMax(999999);
consecutiveOccurrencesSpinner.setStep(1);
consecutiveOccurrencesSpinner.setDefaultValue(1);
consecutiveOccurrencesSpinner.setHoverWidth(300);
- consecutiveOccurrencesSpinner
- .setTooltip("The number of times the condition set must be consecutively true before the alert is triggered.");
- consecutiveOccurrencesStatic = new StaticTextItem("consecutiveOccurrencesStatic", "Occurrences");
+ consecutiveOccurrencesSpinner.setTooltip(MSG
+ .view_alert_common_tab_dampening_consecutive_occurrences_label_tooltip());
+ consecutiveOccurrencesStatic = new StaticTextItem("consecutiveOccurrencesStatic", MSG
+ .view_alert_common_tab_dampening_consecutive_occurrences_label());
consecutiveOccurrencesStatic.setWrapTitle(false);
// PARTIAL_COUNT
- partialOccurrencesSpinner = new SpinnerItem("partialOccurrencesSpinner", "Occurrences");
+ partialOccurrencesSpinner = new SpinnerItem("partialOccurrencesSpinner", MSG
+ .view_alert_common_tab_dampening_partial_occurrences_label());
partialOccurrencesSpinner.setWrapTitle(false);
partialOccurrencesSpinner.setMin(1);
partialOccurrencesSpinner.setMax(999999);
partialOccurrencesSpinner.setStep(1);
partialOccurrencesSpinner.setDefaultValue(1);
partialOccurrencesSpinner.setHoverWidth(300);
- partialOccurrencesSpinner
- .setTooltip("The number of times the condition set must be true during the last N evaluations before the alert is triggered.");
- partialOccurrencesStatic = new StaticTextItem("partialOccurrencesStatic", "Occurrences");
+ partialOccurrencesSpinner.setTooltip(MSG
+ .view_alert_common_tab_dampening_partial_occurrences_label_tooltip());
+ partialOccurrencesStatic = new StaticTextItem("partialOccurrencesStatic", MSG
+ .view_alert_common_tab_dampening_partial_occurrences_label());
partialOccurrencesStatic.setWrapTitle(false);
- partialEvaluationsSpinner = new SpinnerItem("partialEvaluationsSpinner", "Evaluations");
+ partialEvaluationsSpinner = new SpinnerItem("partialEvaluationsSpinner", MSG
+ .view_alert_common_tab_dampening_partial_evalatuions_label());
partialEvaluationsSpinner.setWrapTitle(false);
partialEvaluationsSpinner.setMin(1);
partialEvaluationsSpinner.setMax(999999);
partialEvaluationsSpinner.setStep(1);
partialEvaluationsSpinner.setDefaultValue(1);
partialEvaluationsSpinner.setHoverWidth(300);
- partialEvaluationsSpinner
- .setTooltip("The total number of times the condition set will be tested to see if the given number of occurrences are true.");
- partialEvaluationsStatic = new StaticTextItem("partialEvaluationStatic", "Evaluations");
+ partialEvaluationsSpinner.setTooltip(MSG
+ .view_alert_common_tab_dampening_partial_evalatuions_label_tooltip());
+ partialEvaluationsStatic = new StaticTextItem("partialEvaluationStatic", MSG
+ .view_alert_common_tab_dampening_partial_evalatuions_label());
partialEvaluationsStatic.setWrapTitle(false);
// DURATION_COUNT
- durationOccurrencesSpinner = new SpinnerItem("durationOccurrencesSpinner", "Occurrences");
+ durationOccurrencesSpinner = new SpinnerItem("durationOccurrencesSpinner", MSG
+ .view_alert_common_tab_dampening_duration_occurrences_label());
durationOccurrencesSpinner.setWrapTitle(false);
durationOccurrencesSpinner.setMin(1);
durationOccurrencesSpinner.setMax(999999);
durationOccurrencesSpinner.setStep(1);
durationOccurrencesSpinner.setDefaultValue(1);
durationOccurrencesSpinner.setHoverWidth(300);
- durationOccurrencesSpinner
- .setTooltip("The number of times the condition set must be true during the given time period before the alert is triggered.");
- durationOccurrencesStatic = new StaticTextItem("durationOccurrencesStatic", "Occurrences");
+ durationOccurrencesSpinner.setTooltip(MSG
+ .view_alert_common_tab_dampening_duration_occurrences_label_tooltip());
+ durationOccurrencesStatic = new StaticTextItem("durationOccurrencesStatic", MSG
+ .view_alert_common_tab_dampening_duration_occurrences_label());
durationOccurrencesStatic.setWrapTitle(false);
- durationTimePeriodSpinner = new SpinnerItem("durationTimePeriodSpinner", "Time Period");
+ durationTimePeriodSpinner = new SpinnerItem("durationTimePeriodSpinner", MSG
+ .view_alert_common_tab_dampening_duration_period_label());
durationTimePeriodSpinner.setWrapTitle(false);
durationTimePeriodSpinner.setMin(1);
durationTimePeriodSpinner.setMax(999999);
durationTimePeriodSpinner.setStep(1);
durationTimePeriodSpinner.setDefaultValue(1);
durationTimePeriodSpinner.setHoverWidth(300);
- durationTimePeriodSpinner
- .setTooltip("The time span in which the condition set will be tested to see if the given number of occurrences are true.");
- durationTimePeriodStatic = new StaticTextItem("durationTimePeriodStatic", "Time Period");
+ durationTimePeriodSpinner.setTooltip(MSG.view_alert_common_tab_dampening_duration_period_label_tooltip());
+ durationTimePeriodStatic = new StaticTextItem("durationTimePeriodStatic", MSG
+ .view_alert_common_tab_dampening_duration_period_label());
durationTimePeriodStatic.setWrapTitle(false);
durationTimeUnitsSelection = new SelectItem("durationTimeUnits", "");
@@ -527,7 +536,8 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
break;
}
default: {
- throw new IllegalStateException("Invalid category - please report this as a bug: " + cat); // should never happen
+ throw new IllegalStateException(MSG
+ .view_alert_common_tab_invalid_dampening_category(cat.name())); // should never happen
}
}
markForRedraw();
@@ -548,19 +558,19 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
private String getCategoryTitle(AlertDampening.Category category) {
switch (category) {
case NONE: {
- return "None";
+ return MSG.view_alert_common_tab_dampening_category_none();
}
case CONSECUTIVE_COUNT: {
- return "Consecutive";
+ return MSG.view_alert_common_tab_dampening_category_consecutive_count();
}
case PARTIAL_COUNT: {
- return "Last N Evaluations";
+ return MSG.view_alert_common_tab_dampening_category_partial_count();
}
case DURATION_COUNT: {
- return "Time Period";
+ return MSG.view_alert_common_tab_dampening_category_duration_count();
}
default: {
- throw new IllegalStateException("Invalid category - please report this as a bug: " + category); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_dampening_category(category.name())); // should never happen
}
}
}
@@ -568,32 +578,32 @@ public class DampeningAlertDefinitionForm extends LocatableDynamicForm implement
private String getTimeUnitsTitle(AlertDampening.TimeUnits units) {
switch (units) {
case MINUTES: {
- return "minutes";
+ return MSG.common_label_month();
}
case HOURS: {
- return "hours";
+ return MSG.common_label_hours();
}
case DAYS: {
- return "days";
+ return MSG.common_label_days();
}
case WEEKS: {
- return "weeks";
+ return MSG.common_label_weeks();
}
default: {
- throw new IllegalStateException("Invalid time units - please report this as a bug: " + units); // should never happen
+ throw new IllegalStateException(MSG.view_alert_common_tab_invalid_time_units(units.name())); // should never happen
}
}
}
private String getCategoryHelp(String categorySelection) {
if (AlertDampening.Category.NONE.name().equals(categorySelection)) {
- return "Dampening is disabled. Every time the condition set is true, an alert will be triggered.";
+ return MSG.view_alert_common_tab_dampening_category_none_tooltip();
} else if (AlertDampening.Category.CONSECUTIVE_COUNT.name().equals(categorySelection)) {
- return "An alert is triggered once every X occurrences the condition set is true consecutively.";
+ return MSG.view_alert_common_tab_dampening_category_consecutive_count_tooltip();
} else if (AlertDampening.Category.PARTIAL_COUNT.name().equals(categorySelection)) {
- return "An alert is triggered once every X occurrences the condition set is true during the last N evaluations of the condition set.";
+ return MSG.view_alert_common_tab_dampening_category_partial_count_tooltip();
} else if (AlertDampening.Category.DURATION_COUNT.name().equals(categorySelection)) {
- return "An alert is triggered once every X occurrences the condition set is true within a given time period.";
+ return MSG.view_alert_common_tab_dampening_category_duration_count_tooltip();
}
return null; // should never happen
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
index 12e27d9..8795043 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GeneralPropertiesAlertDefinitionForm.java
@@ -100,10 +100,10 @@ public class GeneralPropertiesAlertDefinitionForm extends LocatableDynamicForm i
priorityStatic.setValue(alertDef.getPriority().name());
enabledSelection.setValue(alertDef.getEnabled() ? "yes" : "no");
- enabledStatic.setValue(alertDef.getEnabled() ? "Yes" : "No");
+ enabledStatic.setValue(alertDef.getEnabled() ? MSG.common_val_yes() : MSG.common_val_no());
readOnlySelection.setValue(alertDef.isReadOnly() ? "yes" : "no");
- readOnlyStatic.setValue(alertDef.isReadOnly() ? "Yes" : "No");
+ readOnlyStatic.setValue(alertDef.isReadOnly() ? MSG.common_val_yes() : MSG.common_val_no());
}
markForRedraw();
@@ -204,17 +204,17 @@ public class GeneralPropertiesAlertDefinitionForm extends LocatableDynamicForm i
private void buildForm() {
if (!formBuilt) {
- nameTextField = new TextItem("name", "Name");
+ nameTextField = new TextItem("name", MSG.common_title_name());
nameTextField.setWidth(300);
nameTextField.setDefaultValue("");
- nameStatic = new StaticTextItem("nameStatic", "Name");
+ nameStatic = new StaticTextItem("nameStatic", MSG.common_title_name());
- descriptionTextField = new TextAreaItem("description", "Description");
+ descriptionTextField = new TextAreaItem("description", MSG.common_title_description());
descriptionTextField.setWidth(300);
descriptionTextField.setDefaultValue("");
- descriptionStatic = new StaticTextItem("descriptionStatic", "Description");
+ descriptionStatic = new StaticTextItem("descriptionStatic", MSG.common_title_description());
- prioritySelection = new SelectItem("priority", "Priority");
+ prioritySelection = new SelectItem("priority", MSG.view_alerts_field_priority());
LinkedHashMap<String, String> priorities = new LinkedHashMap<String, String>(3);
priorities.put(AlertPriority.HIGH.name(), AlertPriority.HIGH.name());
priorities.put(AlertPriority.MEDIUM.name(), AlertPriority.MEDIUM.name());
@@ -226,26 +226,25 @@ public class GeneralPropertiesAlertDefinitionForm extends LocatableDynamicForm i
prioritySelection.setValueMap(priorities);
prioritySelection.setValueIcons(priorityIcons);
prioritySelection.setDefaultValue(AlertPriority.MEDIUM.name());
- priorityStatic = new StaticTextItem("priorityStatic", "Priority");
+ priorityStatic = new StaticTextItem("priorityStatic", MSG.view_alerts_field_priority());
priorityStatic.setValueIcons(priorityIcons);
- enabledSelection = new RadioGroupItem("enabled", "Enabled");
+ enabledSelection = new RadioGroupItem("enabled", MSG.view_alerts_field_enabled());
LinkedHashMap<String, String> enabledYesNo = new LinkedHashMap<String, String>(2);
- enabledYesNo.put("yes", "Yes");
- enabledYesNo.put("no", "No");
+ enabledYesNo.put("yes", MSG.common_val_yes());
+ enabledYesNo.put("no", MSG.common_val_no());
enabledSelection.setValueMap(enabledYesNo);
enabledSelection.setDefaultValue("yes");
- enabledStatic = new StaticTextItem("enabledStatic", "Enabled");
+ enabledStatic = new StaticTextItem("enabledStatic", MSG.view_alerts_field_enabled());
- readOnlySelection = new RadioGroupItem("readOnly", "Protected");
+ readOnlySelection = new RadioGroupItem("readOnly", MSG.view_alerts_field_protected());
LinkedHashMap<String, String> readOnlyYesNo = new LinkedHashMap<String, String>(2);
- readOnlyYesNo.put("yes", "Yes");
- readOnlyYesNo.put("no", "No");
+ readOnlyYesNo.put("yes", MSG.common_val_yes());
+ readOnlyYesNo.put("no", MSG.common_val_no());
readOnlySelection.setValueMap(readOnlyYesNo);
readOnlySelection.setDefaultValue("yes");
- readOnlySelection
- .setPrompt("If true, this definition is protected from being changed by the parent definition. In other words, the parent definition settings will not override this definition.");
- readOnlyStatic = new StaticTextItem("readOnlyStatic", "Protected");
+ readOnlySelection.setPrompt(MSG.view_alerts_field_protected_tooltip());
+ readOnlyStatic = new StaticTextItem("readOnlyStatic", MSG.view_alerts_field_protected());
setFields(nameTextField, nameStatic, descriptionTextField, descriptionStatic, prioritySelection,
priorityStatic, enabledSelection, enabledStatic, readOnlySelection, readOnlyStatic);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GroupAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GroupAlertDefinitionsView.java
index e632915..eeac74a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GroupAlertDefinitionsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/GroupAlertDefinitionsView.java
@@ -53,7 +53,7 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
private ResourcePermission permissions;
public GroupAlertDefinitionsView(String locatorId, ResourceGroupComposite groupComposite) {
- super(locatorId, "Group Alert Definitions");
+ super(locatorId, MSG.view_alert_definitions_table_title_group());
this.group = groupComposite.getResourceGroup();
this.permissions = groupComposite.getResourcePermission();
@@ -131,13 +131,13 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] group alert definitions enabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_enable_success(String.valueOf(result)), Severity.Info));
GroupAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to enable group alert definitions", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_enable_failure(), caught);
}
});
}
@@ -159,13 +159,13 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] group alert definitions disabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_disable_success(String.valueOf(result)), Severity.Info));
GroupAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to disable group alert definitions.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_disable_failure(), caught);
}
});
}
@@ -187,13 +187,13 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] group alert definitions deleted.", Severity.Info));
+ new Message(MSG.view_alert_definitions_delete_success(String.valueOf(result)), Severity.Info));
GroupAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to delete group alert definitions.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_delete_failure(), caught);
}
});
}
@@ -205,13 +205,14 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
Integer.valueOf(this.group.getId()), new AsyncCallback<Integer>() {
@Override
public void onSuccess(Integer result) {
- CoreGUI.getMessageCenter().notify(new Message("Alert definition is created", Severity.Info));
+ CoreGUI.getMessageCenter().notify(
+ new Message(MSG.view_alert_definitions_create_success(), Severity.Info));
alertDefinition.setId(result.intValue());
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to create alert definition.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_create_failure(), caught);
}
});
} else {
@@ -220,12 +221,12 @@ public class GroupAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(AlertDefinition result) {
CoreGUI.getMessageCenter().notify(
- new Message("Group alert definition is updated.", Severity.Info));
+ new Message(MSG.view_alert_definitions_update_success(), Severity.Info));
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to update group alert definition.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_update_failure(), caught);
}
});
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewConditionEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewConditionEditor.java
index 361ad78..3f4a4bd 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewConditionEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewConditionEditor.java
@@ -145,29 +145,40 @@ public class NewConditionEditor extends LocatableDynamicForm {
setMargin(20);
- conditionTypeSelectItem = new SelectItem("conditionType", "Condition Type");
+ conditionTypeSelectItem = new SelectItem("conditionType", MSG
+ .view_alert_definition_condition_editor_option_label());
LinkedHashMap<String, String> condTypes = new LinkedHashMap<String, String>(7);
- condTypes.put(AlertConditionCategory.AVAILABILITY.name(), "Availability Change");
+ condTypes.put(AlertConditionCategory.AVAILABILITY.name(), MSG
+ .view_alert_definition_condition_editor_option_availability());
if (supportsMetrics) {
- condTypes.put(AlertConditionCategory.THRESHOLD.name(), "Measurement Absolute Value Threshold");
- condTypes.put(AlertConditionCategory.BASELINE.name(), "Measurement Baseline Threshold");
- condTypes.put(AlertConditionCategory.CHANGE.name(), "Measurement Value Change");
+ condTypes.put(AlertConditionCategory.THRESHOLD.name(), MSG
+ .view_alert_definition_condition_editor_option_metric_threshold());
+ condTypes.put(AlertConditionCategory.BASELINE.name(), MSG
+ .view_alert_definition_condition_editor_option_metric_baseline());
+ condTypes.put(AlertConditionCategory.CHANGE.name(), MSG
+ .view_alert_definition_condition_editor_option_metric_change());
}
if (supportsCalltimeMetrics) {
- condTypes.put(ALERT_CONDITION_CATEGORY_CALLTIME_THRESHOLD, "Calltime Value Threshold");
- condTypes.put(ALERT_CONDITION_CATEGORY_CALLTIME_CHANGE, "Calltime Value Change");
+ condTypes.put(ALERT_CONDITION_CATEGORY_CALLTIME_THRESHOLD, MSG
+ .view_alert_definition_condition_editor_option_metric_calltime_threshold());
+ condTypes.put(ALERT_CONDITION_CATEGORY_CALLTIME_CHANGE, MSG
+ .view_alert_definition_condition_editor_option_metric_calltime_change());
}
if (supportsTraits) {
- condTypes.put(AlertConditionCategory.TRAIT.name(), "Trait Value Change");
+ condTypes.put(AlertConditionCategory.TRAIT.name(), MSG
+ .view_alert_definition_condition_editor_option_metric_trait_change());
}
if (supportsOperations) {
- condTypes.put(AlertConditionCategory.CONTROL.name(), "Operation Execution");
+ condTypes.put(AlertConditionCategory.CONTROL.name(), MSG
+ .view_alert_definition_condition_editor_option_operation());
}
if (supportsResourceConfig) {
- condTypes.put(AlertConditionCategory.RESOURCE_CONFIG.name(), "Resource Configuration Change");
+ condTypes.put(AlertConditionCategory.RESOURCE_CONFIG.name(), MSG
+ .view_alert_definition_condition_editor_option_resource_configuration());
}
if (supportsEvents) {
- condTypes.put(AlertConditionCategory.EVENT.name(), "Event Detection");
+ condTypes.put(AlertConditionCategory.EVENT.name(), MSG
+ .view_alert_definition_condition_editor_option_event());
}
conditionTypeSelectItem.setValueMap(condTypes);
conditionTypeSelectItem.setDefaultValue(AlertConditionCategory.AVAILABILITY.name());
@@ -183,7 +194,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
spacer2.setColSpan(2);
spacer2.setHeight(5);
- ButtonItem ok = new ButtonItem("okButtonItem", "OK");
+ ButtonItem ok = new ButtonItem("okButtonItem", MSG.common_button_ok());
ok.setEndRow(false);
ok.setAlign(Alignment.RIGHT);
ok.addClickHandler(new ClickHandler() {
@@ -196,7 +207,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
}
});
- ButtonItem cancel = new ButtonItem("cancelButtonItem", "Cancel");
+ ButtonItem cancel = new ButtonItem("cancelButtonItem", MSG.common_button_cancel());
cancel.setStartRow(false);
cancel.setAlign(Alignment.LEFT);
cancel.addClickHandler(new ClickHandler() {
@@ -354,7 +365,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
}
default: {
- CoreGUI.getErrorHandler().handleError("Invalid alert category selected: " + category); // should never happen
+ CoreGUI.getErrorHandler()
+ .handleError(MSG.view_alert_common_tab_invalid_condition_category(category.name())); // should never happen
break;
}
}
@@ -367,17 +379,17 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.THRESHOLD);
- String helpStr = "Specify the threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier.";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_threshold_tooltip();
StaticTextItem helpItem = buildHelpTextItem("thresholdHelp", helpStr, ifFunc);
formItems.add(helpItem);
formItems.add(buildMetricDropDownMenu(THRESHOLD_METRIC_ITEMNAME, false, ifFunc));
formItems.add(buildComparatorDropDownMenu(THRESHOLD_COMPARATOR_ITEMNAME, ifFunc));
- TextItem absoluteValue = new TextItem(THRESHOLD_ABSVALUE_ITEMNAME, "Metric Value");
+ TextItem absoluteValue = new TextItem(THRESHOLD_ABSVALUE_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_threshold_value());
absoluteValue.setWrapTitle(false);
absoluteValue.setRequired(true);
- absoluteValue
- .setTooltip("The threshold value of the metric that will trigger the condition when compared using the selected comparator.");
+ absoluteValue.setTooltip(MSG.view_alert_definition_condition_editor_metric_threshold_value_tooltip());
absoluteValue.setShowIfCondition(ifFunc);
formItems.add(absoluteValue);
@@ -390,7 +402,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.BASELINE);
- String helpStr = "Specify the baseline value that must be violated to trigger the condition. The value you specify is a percentage of the given baseline value.";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_baseline_tooltip();
StaticTextItem helpItem = buildHelpTextItem("baselineHelp", helpStr, ifFunc);
formItems.add(helpItem);
@@ -398,19 +410,20 @@ public class NewConditionEditor extends LocatableDynamicForm {
formItems.add(buildMetricDropDownMenu(BASELINE_METRIC_ITEMNAME, true, ifFunc));
formItems.add(buildComparatorDropDownMenu(BASELINE_COMPARATOR_ITEMNAME, ifFunc));
- TextItem baselinePercentage = new TextItem(BASELINE_PERCENTAGE_ITEMNAME, "Baseline Percentage");
+ TextItem baselinePercentage = new TextItem(BASELINE_PERCENTAGE_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_baseline_percentage());
baselinePercentage.setWrapTitle(false);
baselinePercentage.setRequired(true);
- baselinePercentage
- .setTooltip("A collected metric value will trigger this condition when compared to this percentage of the selected baseline value using the selected comparator");
+ baselinePercentage.setTooltip(MSG.view_alert_definition_condition_editor_metric_baseline_percentage_tooltip());
baselinePercentage.setShowIfCondition(ifFunc);
formItems.add(baselinePercentage);
- SelectItem baselineSelection = new SelectItem(BASELINE_SELECTION_ITEMNAME, "Baseline");
+ SelectItem baselineSelection = new SelectItem(BASELINE_SELECTION_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_baseline_value());
LinkedHashMap<String, String> baselines = new LinkedHashMap<String, String>(3);
- baselines.put("min", "Minimum"); // TODO can we have the current value of the min baseline
- baselines.put("mean", "Average"); // TODO can we have the current value of the avg baseline
- baselines.put("max", "Maximum"); // TODO can we have the current value of the max baseline
+ baselines.put("min", MSG.view_alert_definition_condition_editor_common_min()); // TODO can we have the current value of the min baseline
+ baselines.put("mean", MSG.view_alert_definition_condition_editor_common_avg()); // TODO can we have the current value of the avg baseline
+ baselines.put("max", MSG.view_alert_definition_condition_editor_common_max()); // TODO can we have the current value of the max baseline
baselineSelection.setValueMap(baselines);
baselineSelection.setDefaultValue("mean");
baselineSelection.setWrapTitle(false);
@@ -427,7 +440,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.CHANGE);
- String helpStr = "Specify the metric whose value must change to trigger the condition.";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_change_tooltip();
StaticTextItem helpItem = buildHelpTextItem("changeMetricHelp", helpStr, ifFunc);
formItems.add(helpItem);
@@ -441,18 +454,20 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(ALERT_CONDITION_CATEGORY_CALLTIME_THRESHOLD);
- String helpStr = "Specify the calltime threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier. You also must specify which calltime limit to compare the value with (minimum, maximum or average calltime value).";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_calltime_threshold_tooltip();
StaticTextItem helpItem = buildHelpTextItem("calltimeThresholdHelp", helpStr, ifFunc);
formItems.add(helpItem);
formItems.add(buildCalltimeMetricDropDownMenu(CALLTIME_THRESHOLD_METRIC_ITEMNAME, ifFunc));
- SelectItem minMaxAvgSelection = new SelectItem(CALLTIME_THRESHOLD_MINMAXAVG_ITEMNAME, "Calltime Limit");
+ SelectItem minMaxAvgSelection = new SelectItem(CALLTIME_THRESHOLD_MINMAXAVG_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_limit());
LinkedHashMap<String, String> limits = new LinkedHashMap<String, String>(3);
- limits.put("MIN", "Minimum");
- limits.put("AVG", "Average");
- limits.put("MAX", "Maximum");
- minMaxAvgSelection.setTooltip("The calltime limit value that is to be compared with the given value");
+ limits.put("MIN", MSG.view_alert_definition_condition_editor_common_min());
+ limits.put("AVG", MSG.view_alert_definition_condition_editor_common_avg());
+ limits.put("MAX", MSG.view_alert_definition_condition_editor_common_max());
+ minMaxAvgSelection
+ .setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_common_limit_tooltip());
minMaxAvgSelection.setValueMap(limits);
minMaxAvgSelection.setDefaultValue("AVG");
minMaxAvgSelection.setWrapTitle(false);
@@ -462,18 +477,18 @@ public class NewConditionEditor extends LocatableDynamicForm {
formItems.add(minMaxAvgSelection);
formItems.add(buildComparatorDropDownMenu(CALLTIME_THRESHOLD_COMPARATOR_ITEMNAME, ifFunc));
- TextItem absoluteValue = new TextItem(CALLTIME_THRESHOLD_ABSVALUE_ITEMNAME, "Calltime Value");
+ TextItem absoluteValue = new TextItem(CALLTIME_THRESHOLD_ABSVALUE_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_threshold_value());
absoluteValue.setWrapTitle(false);
absoluteValue.setRequired(true);
- absoluteValue
- .setTooltip("The threshold value of the metric that will trigger the condition when compared using the selected comparator.");
+ absoluteValue.setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_threshold_value_tooltip());
absoluteValue.setShowIfCondition(ifFunc);
formItems.add(absoluteValue);
- TextItem regex = new TextItem(CALLTIME_THRESHOLD_REGEX_ITEMNAME, "Regular Expression");
+ TextItem regex = new TextItem(CALLTIME_THRESHOLD_REGEX_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_regex());
regex.setRequired(false);
- regex
- .setTooltip("If specified, this is a regular expression that must match a call destination in order to trigger the condition.");
+ regex.setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_common_regex_tooltip());
regex.setWrapTitle(false);
regex.setShowIfCondition(ifFunc);
formItems.add(regex);
@@ -486,18 +501,20 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(ALERT_CONDITION_CATEGORY_CALLTIME_CHANGE);
- String helpStr = "Specify the calltime value that, when changed at least a specified amount, triggers the condition. You must specify which calltime limit to check (minimum, maximum or average calltime value) and the percentage of change that must occur.";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_calltime_change_tooltip();
StaticTextItem helpItem = buildHelpTextItem("calltimeChangeHelp", helpStr, ifFunc);
formItems.add(helpItem);
formItems.add(buildCalltimeMetricDropDownMenu(CALLTIME_CHANGE_METRIC_ITEMNAME, ifFunc));
- SelectItem minMaxAvgSelection = new SelectItem(CALLTIME_CHANGE_MINMAXAVG_ITEMNAME, "Calltime Limit");
+ SelectItem minMaxAvgSelection = new SelectItem(CALLTIME_CHANGE_MINMAXAVG_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_limit());
LinkedHashMap<String, String> limits = new LinkedHashMap<String, String>(3);
- limits.put("MIN", "Minimum");
- limits.put("AVG", "Average");
- limits.put("MAX", "Maximum");
- minMaxAvgSelection.setTooltip("The calltime limit value that is to be checked for change");
+ limits.put("MIN", MSG.view_alert_definition_condition_editor_common_min());
+ limits.put("AVG", MSG.view_alert_definition_condition_editor_common_avg());
+ limits.put("MAX", MSG.view_alert_definition_condition_editor_common_max());
+ minMaxAvgSelection
+ .setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_common_limit_tooltip());
minMaxAvgSelection.setValueMap(limits);
minMaxAvgSelection.setDefaultValue("AVG");
minMaxAvgSelection.setWrapTitle(false);
@@ -508,18 +525,18 @@ public class NewConditionEditor extends LocatableDynamicForm {
formItems.add(buildCalltimeComparatorDropDownMenu(CALLTIME_CHANGE_COMPARATOR_ITEMNAME, ifFunc));
- TextItem percentage = new TextItem(CALLTIME_CHANGE_PERCENTAGE_ITEMNAME, "Percentage Change");
+ TextItem percentage = new TextItem(CALLTIME_CHANGE_PERCENTAGE_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_change_percentage());
percentage.setWrapTitle(false);
percentage.setRequired(true);
- percentage
- .setTooltip("A collected calltime value will trigger this condition when it differs by at least this percentage of the selected calltime limit value");
+ percentage.setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_change_percentage_tooltip());
percentage.setShowIfCondition(ifFunc);
formItems.add(percentage);
- TextItem regex = new TextItem(CALLTIME_CHANGE_REGEX_ITEMNAME, "Regular Expression");
+ TextItem regex = new TextItem(CALLTIME_CHANGE_REGEX_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_regex());
regex.setRequired(false);
- regex
- .setTooltip("If specified, this is a regular expression that must match a call destination in order to trigger the condition.");
+ regex.setTooltip(MSG.view_alert_definition_condition_editor_metric_calltime_common_regex_tooltip());
regex.setWrapTitle(false);
regex.setShowIfCondition(ifFunc);
formItems.add(regex);
@@ -532,7 +549,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.TRAIT);
- String helpStr = "Specify the trait whose value must change to trigger the condition.";
+ String helpStr = MSG.view_alert_definition_condition_editor_metric_trait_change_tooltip();
StaticTextItem helpItem = buildHelpTextItem("traitHelp", helpStr, ifFunc);
formItems.add(helpItem);
@@ -543,7 +560,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
}
}
- SelectItem traitSelection = new SelectItem(TRAIT_METRIC_ITEMNAME, "Trait");
+ SelectItem traitSelection = new SelectItem(TRAIT_METRIC_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_metric_trait_change_value());
traitSelection.setValueMap(traitsMap);
traitSelection.setDefaultValue(traitsMap.keySet().iterator().next()); // just use the first one
traitSelection.setWidth("*");
@@ -559,14 +577,15 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.AVAILABILITY);
- String helpStr = "Specify the availability state change that will trigger the condition.";
+ String helpStr = MSG.view_alert_definition_condition_editor_avilability_tooltip();
StaticTextItem helpItem = buildHelpTextItem("availabilityHelp", helpStr, ifFunc);
formItems.add(helpItem);
- SelectItem selection = new SelectItem(AVAILABILITY_ITEMNAME, "Availability");
+ SelectItem selection = new SelectItem(AVAILABILITY_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_avilability_value());
LinkedHashMap<String, String> avails = new LinkedHashMap<String, String>(2);
- avails.put(AvailabilityType.UP.name(), "Goes UP");
- avails.put(AvailabilityType.DOWN.name(), "Goes DOWN");
+ avails.put(AvailabilityType.UP.name(), MSG.view_alert_definition_condition_editor_avilability_option_up());
+ avails.put(AvailabilityType.DOWN.name(), MSG.view_alert_definition_condition_editor_avilability_option_down());
selection.setValueMap(avails);
selection.setDefaultValue(AvailabilityType.DOWN.name());
selection.setShowIfCondition(ifFunc);
@@ -580,7 +599,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.CONTROL);
- String helpStr = "Specify the result that must occur when the selected operation is executed in order to trigger the condition.";
+ String helpStr = MSG.view_alert_definition_condition_editor_operation_tooltip();
StaticTextItem helpItem = buildHelpTextItem("operationHelp", helpStr, ifFunc);
formItems.add(helpItem);
@@ -589,7 +608,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
ops.put(opDef.getName(), opDef.getDisplayName());
}
- SelectItem opSelection = new SelectItem(OPERATION_NAME_ITEMNAME, "Operation");
+ SelectItem opSelection = new SelectItem(OPERATION_NAME_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_operation_value());
opSelection.setValueMap(ops);
opSelection.setDefaultValue(ops.keySet().iterator().next()); // just use the first one
opSelection.setWidth("*");
@@ -597,12 +617,17 @@ public class NewConditionEditor extends LocatableDynamicForm {
opSelection.setShowIfCondition(ifFunc);
formItems.add(opSelection);
- SelectItem opResultsSelection = new SelectItem(OPERATION_RESULTS_ITEMNAME, "Operation Status");
+ SelectItem opResultsSelection = new SelectItem(OPERATION_RESULTS_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_operation_status());
LinkedHashMap<String, String> operationStatuses = new LinkedHashMap<String, String>(4);
- operationStatuses.put(OperationRequestStatus.INPROGRESS.name(), OperationRequestStatus.INPROGRESS.name());
- operationStatuses.put(OperationRequestStatus.SUCCESS.name(), OperationRequestStatus.SUCCESS.name());
- operationStatuses.put(OperationRequestStatus.FAILURE.name(), OperationRequestStatus.FAILURE.name());
- operationStatuses.put(OperationRequestStatus.CANCELED.name(), OperationRequestStatus.CANCELED.name());
+ operationStatuses.put(OperationRequestStatus.INPROGRESS.name(), MSG
+ .view_alert_definition_condition_editor_operation_status_inprogress());
+ operationStatuses.put(OperationRequestStatus.SUCCESS.name(), MSG
+ .view_alert_definition_condition_editor_operation_status_success());
+ operationStatuses.put(OperationRequestStatus.FAILURE.name(), MSG
+ .view_alert_definition_condition_editor_operation_status_failure());
+ operationStatuses.put(OperationRequestStatus.CANCELED.name(), MSG
+ .view_alert_definition_condition_editor_operation_status_canceled());
opResultsSelection.setValueMap(operationStatuses);
opResultsSelection.setDefaultValue(OperationRequestStatus.FAILURE.name());
opResultsSelection.setWrapTitle(false);
@@ -617,27 +642,28 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.EVENT);
- String helpStr = "Specify the event severity that an event message must be reported with in order to trigger this condition. If you specify an optional regular expression, the event message must also match that regular expression in order for the condition to trigger.";
+ String helpStr = MSG.view_alert_definition_condition_editor_event_tooltip();
StaticTextItem helpItem = buildHelpTextItem("eventHelp", helpStr, ifFunc);
formItems.add(helpItem);
- SelectItem eventSeveritySelection = new SelectItem(EVENT_SEVERITY_ITEMNAME, "Event Severity");
+ SelectItem eventSeveritySelection = new SelectItem(EVENT_SEVERITY_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_event_severity());
LinkedHashMap<String, String> severities = new LinkedHashMap<String, String>(5);
- severities.put(EventSeverity.DEBUG.name(), EventSeverity.DEBUG.name());
- severities.put(EventSeverity.INFO.name(), EventSeverity.INFO.name());
- severities.put(EventSeverity.WARN.name(), EventSeverity.WARN.name());
- severities.put(EventSeverity.ERROR.name(), EventSeverity.ERROR.name());
- severities.put(EventSeverity.FATAL.name(), EventSeverity.FATAL.name());
+ severities.put(EventSeverity.DEBUG.name(), MSG.view_alert_definition_condition_editor_event_severity_debug());
+ severities.put(EventSeverity.INFO.name(), MSG.view_alert_definition_condition_editor_event_severity_info());
+ severities.put(EventSeverity.WARN.name(), MSG.view_alert_definition_condition_editor_event_severity_warn());
+ severities.put(EventSeverity.ERROR.name(), MSG.view_alert_definition_condition_editor_event_severity_error());
+ severities.put(EventSeverity.FATAL.name(), MSG.view_alert_definition_condition_editor_event_severity_fatal());
eventSeveritySelection.setValueMap(severities);
eventSeveritySelection.setDefaultValue(EventSeverity.ERROR.name());
eventSeveritySelection.setWrapTitle(false);
eventSeveritySelection.setShowIfCondition(ifFunc);
formItems.add(eventSeveritySelection);
- TextItem eventRegex = new TextItem(EVENT_REGEX_ITEMNAME, "Regular Expression");
+ TextItem eventRegex = new TextItem(EVENT_REGEX_ITEMNAME, MSG
+ .view_alert_definition_condition_editor_event_regex());
eventRegex.setRequired(false);
- eventRegex
- .setTooltip("If specified, this is a regular expression that must match a collected event message in order to trigger the condition.");
+ eventRegex.setTooltip(MSG.view_alert_definition_condition_editor_event_regex_tooltip());
eventRegex.setWrapTitle(false);
eventRegex.setShowIfCondition(ifFunc);
formItems.add(eventRegex);
@@ -650,7 +676,7 @@ public class NewConditionEditor extends LocatableDynamicForm {
ShowIfCategoryFunction ifFunc = new ShowIfCategoryFunction(AlertConditionCategory.RESOURCE_CONFIG);
- String helpStr = "This condition is triggered when the resource configuration changes.";
+ String helpStr = MSG.view_alert_definition_condition_editor_resource_configuration_tooltip();
StaticTextItem helpItem = buildHelpTextItem("changeConfigHelp", helpStr, ifFunc);
formItems.add(helpItem);
@@ -668,7 +694,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
}
}
- SelectItem metricSelection = new SelectItem(itemName, "Metric");
+ SelectItem metricSelection = new SelectItem(itemName, MSG
+ .view_alert_definition_condition_editor_metric_threshold_name());
metricSelection.setValueMap(metricsMap);
metricSelection.setDefaultValue(metricsMap.keySet().iterator().next()); // just use the first one
metricSelection.setWidth("*");
@@ -686,7 +713,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
}
}
- SelectItem metricSelection = new SelectItem(itemName, "Metric");
+ SelectItem metricSelection = new SelectItem(itemName, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_name());
metricSelection.setValueMap(metricsMap);
metricSelection.setDefaultValue(metricsMap.keySet().iterator().next()); // just use the first one
metricSelection.setWidth("*");
@@ -698,14 +726,19 @@ public class NewConditionEditor extends LocatableDynamicForm {
private SelectItem buildComparatorDropDownMenu(String itemName, FormItemIfFunction ifFunc) {
LinkedHashMap<String, String> comparators = new LinkedHashMap<String, String>(3);
- comparators.put("<", "< (Less than)");
- comparators.put("=", "= (Equal to)");
- comparators.put(">", "> (Greater than)");
-
- SelectItem comparatorSelection = new SelectItem(itemName, "Comparator");
+ comparators.put("<", "< (" + MSG.view_alert_definition_condition_editor_metric_threshold_comparator_less()
+ + ")");
+ comparators.put("=", "= (" + MSG.view_alert_definition_condition_editor_metric_threshold_comparator_equal()
+ + ")");
+ comparators.put(">", "> (" + MSG.view_alert_definition_condition_editor_metric_threshold_comparator_greater()
+ + ")");
+
+ SelectItem comparatorSelection = new SelectItem(itemName, MSG
+ .view_alert_definition_condition_editor_metric_threshold_comparator());
comparatorSelection.setValueMap(comparators);
comparatorSelection.setDefaultValue("<");
- comparatorSelection.setTooltip("How a collected metric value should be compared to the given threshold value");
+ comparatorSelection
+ .setTooltip(MSG.view_alert_definition_condition_editor_metric_threshold_comparator_tooltip());
comparatorSelection.setShowIfCondition(ifFunc);
return comparatorSelection;
}
@@ -713,14 +746,16 @@ public class NewConditionEditor extends LocatableDynamicForm {
private SelectItem buildCalltimeComparatorDropDownMenu(String itemName, FormItemIfFunction ifFunc) {
LinkedHashMap<String, String> comparators = new LinkedHashMap<String, String>(3);
- comparators.put("LO", "Shrinks");
- comparators.put("CH", "Changes");
- comparators.put("HI", "Grows");
+ comparators.put("LO", MSG.view_alert_definition_condition_editor_metric_calltime_common_comparator_shrinks());
+ comparators.put("CH", MSG.view_alert_definition_condition_editor_metric_calltime_common_comparator_changes());
+ comparators.put("HI", MSG.view_alert_definition_condition_editor_metric_calltime_common_comparator_grows());
- SelectItem comparatorSelection = new SelectItem(itemName, "Comparator");
+ SelectItem comparatorSelection = new SelectItem(itemName, MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_comparator());
comparatorSelection.setValueMap(comparators);
comparatorSelection.setDefaultValue("CH");
- comparatorSelection.setTooltip("How a collected calltime value should be compared to the given calltime limit");
+ comparatorSelection.setTooltip(MSG
+ .view_alert_definition_condition_editor_metric_calltime_common_comparator_tooltip());
comparatorSelection.setShowIfCondition(ifFunc);
return comparatorSelection;
}
@@ -742,7 +777,8 @@ public class NewConditionEditor extends LocatableDynamicForm {
return def;
}
}
- CoreGUI.getErrorHandler().handleError("Should have found metric definition - something is wrong");
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_condition_editor_metric_common_definition_not_found());
return null;
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
index 68c07f4..c1eb705 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NewNotificationEditor.java
@@ -81,7 +81,8 @@ public class NewNotificationEditor extends LocatableDynamicForm {
senderCanvasItem.setShowTitle(false);
senderCanvasItem.setColSpan(2);
- notificationSenderSelectItem = new SelectItem("notificationSender", "Notification Sender");
+ notificationSenderSelectItem = new SelectItem("notificationSender", MSG
+ .view_alert_definition_notification_editor_sender());
notificationSenderSelectItem.setDefaultToFirstOption(true);
notificationSenderSelectItem.setWrapTitle(false);
notificationSenderSelectItem.setRedrawOnChange(true);
@@ -115,13 +116,15 @@ public class NewNotificationEditor extends LocatableDynamicForm {
switchToAlertSender(result[0]);
senderCanvasItem.show();
} else {
- CoreGUI.getErrorHandler().handleError("No alert senders available");
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_editor_none_available());
}
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot get alert senders", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definition_notification_editor_loadFailed(),
+ caught);
}
});
}
@@ -142,7 +145,7 @@ public class NewNotificationEditor extends LocatableDynamicForm {
spacer2.setColSpan(2);
spacer2.setHeight(5);
- ButtonItem ok = new ButtonItem("okButtonItem", "OK");
+ ButtonItem ok = new ButtonItem("okButtonItem", MSG.common_button_ok());
ok.setEndRow(false);
ok.setAlign(Alignment.RIGHT);
ok.addClickHandler(new ClickHandler() {
@@ -159,7 +162,7 @@ public class NewNotificationEditor extends LocatableDynamicForm {
}
});
- ButtonItem cancel = new ButtonItem("cancelButtonItem", "Cancel");
+ ButtonItem cancel = new ButtonItem("cancelButtonItem", MSG.common_button_cancel());
cancel.setStartRow(false);
cancel.setAlign(Alignment.LEFT);
cancel.addClickHandler(new ClickHandler() {
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
index 947ca60..f72846d 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/NotificationsAlertDefinitionForm.java
@@ -178,10 +178,12 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
protected List<DataSourceField> addDataSourceFields() {
List<DataSourceField> fields = super.addDataSourceFields();
- DataSourceTextField senderField = new DataSourceTextField(FIELD_SENDER, "Sender");
+ DataSourceTextField senderField = new DataSourceTextField(FIELD_SENDER, MSG
+ .view_alert_definition_notification_editor_field_sender());
fields.add(senderField);
- DataSourceTextField configField = new DataSourceTextField(FIELD_CONFIGURATION, "Configuration");
+ DataSourceTextField configField = new DataSourceTextField(FIELD_CONFIGURATION, MSG
+ .view_alert_definition_notification_editor_field_configuration());
fields.add(configField);
return fields;
@@ -198,7 +200,8 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
record.setAttribute(FIELD_OBJECT, from);
record.setAttribute(FIELD_SENDER, from.getSenderName());
// our executeFetch will fill in the real value for FIELD_CONFIGURATION
- record.setAttribute(FIELD_CONFIGURATION, "(unknown)");
+ record.setAttribute(FIELD_CONFIGURATION, "("
+ + MSG.view_alert_definition_notification_editor_field_configuration_not_loaded() + ")");
return record;
}
@@ -221,8 +224,8 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to get notification configuration preview",
- caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_editor_field_configuration_loadFailed(), caught);
response.setData(records);
processResponse(request.getRequestId(), response);
}
@@ -241,9 +244,11 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
@Override
protected void configureTable() {
- ListGridField senderField = new ListGridField(FIELD_SENDER, "Sender");
+ ListGridField senderField = new ListGridField(FIELD_SENDER, MSG
+ .view_alert_definition_notification_editor_field_sender());
senderField.setWidth("25%");
- ListGridField configField = new ListGridField(FIELD_CONFIGURATION, "Configuration");
+ ListGridField configField = new ListGridField(FIELD_CONFIGURATION, MSG
+ .view_alert_definition_notification_editor_field_configuration());
configField.setWidth("75%");
getListGrid().setFields(senderField, configField);
@@ -260,34 +265,34 @@ public class NotificationsAlertDefinitionForm extends LocatableVLayout implement
}
});
- addTableAction(this.extendLocatorId("add"), "Add", null, new AbstractTableAction() {
+ addTableAction(this.extendLocatorId("add"), MSG.common_button_add(), null, new AbstractTableAction() {
@Override
public void executeAction(ListGridRecord[] selection, Object actionValue) {
popupNotificationEditor(null);
}
});
- addTableAction(this.extendLocatorId("delete"), "Delete",
- "Are you sure you want to delete the selected alert notifications?", new AbstractTableAction(
- TableActionEnablement.ANY) {
- @Override
- public void executeAction(ListGridRecord[] selection, Object actionValue) {
- for (ListGridRecord record : selection) {
- AlertNotification notif = ((NotificationDataSource) getDataSource()).copyValues(record);
- notifications.remove(notif);
- }
- table.refresh();
+ addTableAction(this.extendLocatorId("delete"), MSG.common_button_delete(), MSG
+ .view_alert_definition_notification_editor_delete_confirm(), new AbstractTableAction(
+ TableActionEnablement.ANY) {
+ @Override
+ public void executeAction(ListGridRecord[] selection, Object actionValue) {
+ for (ListGridRecord record : selection) {
+ AlertNotification notif = ((NotificationDataSource) getDataSource()).copyValues(record);
+ notifications.remove(notif);
}
- });
+ table.refresh();
+ }
+ });
}
private void popupNotificationEditor(AlertNotification notifToEdit) {
final Window winModal = new LocatableWindow(NotificationsAlertDefinitionForm.this
.extendLocatorId("notificationEditorWindow"));
if (notifToEdit == null) {
- winModal.setTitle("Add Notification");
+ winModal.setTitle(MSG.view_alert_definition_notification_editor_title_add());
} else {
- winModal.setTitle("Edit Notification");
+ winModal.setTitle(MSG.view_alert_definition_notification_editor_title_edit());
}
winModal.setOverflow(Overflow.VISIBLE);
winModal.setShowMinimizeButton(false);
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
index cf8af6a..a3cfea1 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/RecoveryAlertDefinitionForm.java
@@ -95,7 +95,7 @@ public class RecoveryAlertDefinitionForm extends LocatableDynamicForm implements
refreshWidgets(allAlertDefinitions);
disableWhenFiredSelection.setValue(alertDef.getWillRecover() ? "yes" : "no");
- disableWhenFiredStatic.setValue(alertDef.getWillRecover() ? "Yes" : "No");
+ disableWhenFiredStatic.setValue(alertDef.getWillRecover() ? MSG.common_val_yes() : MSG.common_val_no());
}
markForRedraw();
@@ -150,28 +150,31 @@ public class RecoveryAlertDefinitionForm extends LocatableDynamicForm implements
private void buildForm() {
if (!formBuilt) {
- disableWhenFiredSelection = new RadioGroupItem("disableWhenFired", "Disable When Fired");
+ disableWhenFiredSelection = new RadioGroupItem("disableWhenFired", MSG
+ .view_alert_definition_recovery_editor_disable_when_fired());
LinkedHashMap<String, String> yesNo = new LinkedHashMap<String, String>(2);
- yesNo.put("yes", "Yes");
- yesNo.put("no", "No");
+ yesNo.put("yes", MSG.common_val_yes());
+ yesNo.put("no", MSG.common_val_no());
disableWhenFiredSelection.setValueMap(yesNo);
disableWhenFiredSelection.setDefaultValue("no");
disableWhenFiredSelection.setWrapTitle(false);
disableWhenFiredSelection.setWidth(300);
disableWhenFiredSelection.setHoverWidth(300);
disableWhenFiredSelection
- .setTooltip("Indicates if this alert will be disabled after it fires. Once disabled, the alert can be manually re-enabled or a recovery alert can be set up to automatically re-enable it. If this alert is a recovery alert itself, this setting cannot be turned on.");
- disableWhenFiredStatic = new StaticTextItem("disableWhenFiredStatic", "Disable When Fired");
+ .setTooltip(MSG.view_alert_definition_recovery_editor_disable_when_fired_tooltip());
+ disableWhenFiredStatic = new StaticTextItem("disableWhenFiredStatic", MSG
+ .view_alert_definition_recovery_editor_disable_when_fired());
disableWhenFiredStatic.setWrapTitle(false);
- recoverAlertSelection = new SelectItem("recoveryAlert", "Recover Alert");
+ recoverAlertSelection = new SelectItem("recoveryAlert", MSG
+ .view_alert_definition_recovery_editor_recovery_alert());
recoverAlertSelection.setDefaultValue("0");
recoverAlertSelection.setWrapTitle(false);
recoverAlertSelection.setHoverWidth(300);
- recoverAlertSelection
- .setTooltip("The target alert that will be recovered (i.e. re-enabled) after this alert triggers. Do not select an alert here if you are not defining a recovery alert.");
+ recoverAlertSelection.setTooltip(MSG.view_alert_definition_recovery_editor_recovery_alert_tooltip());
- recoverAlertStatic = new StaticTextItem("recoveryAlertStatic", "Recover Alert");
+ recoverAlertStatic = new StaticTextItem("recoveryAlertStatic", MSG
+ .view_alert_definition_recovery_editor_recovery_alert());
recoverAlertStatic.setDefaultValue(getNoRecoveryMenuItemTitle());
recoverAlertStatic.setWrapTitle(false);
recoverAlertStatic.setWidth(300);
@@ -217,7 +220,8 @@ public class RecoveryAlertDefinitionForm extends LocatableDynamicForm implements
GWTServiceLookup.getAlertDefinitionService().findAlertDefinitionsByCriteria(criteria,
new AsyncCallback<PageList<AlertDefinition>>() {
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot build recovery menu", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definition_recovery_editor_loadFailed(),
+ caught);
}
public void onSuccess(PageList<AlertDefinition> result) {
@@ -275,7 +279,7 @@ public class RecoveryAlertDefinitionForm extends LocatableDynamicForm implements
private String getNoRecoveryMenuItemTitle() {
StringBuilder str = new StringBuilder();
str.append("-- ");
- str.append("None");
+ str.append(MSG.view_alert_definition_recovery_editor_none_available());
str.append(" --");
return str.toString();
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
index b9c4dca..97acbd2 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsDataSource.java
@@ -64,17 +64,17 @@ public class ResourceAlertDefinitionsDataSource extends AbstractAlertDefinitions
if ((parentId == null || parentId.intValue() == 0) && (groupAlertDefinition == null)) {
record.setAttribute(FIELD_PARENT, "");
record.setLinkText("");
- record.setAttribute(FIELD_READONLY, "N/A");
+ record.setAttribute(FIELD_READONLY, MSG.common_val_na());
} else {
// TODO: fix the URLs so they point to the new GWT pages when they are implemented
if (parentId != null && parentId.intValue() != 0) {
record.setAttribute(FIELD_PARENT, "/alerts/Config.do?mode=viewRoles&type="
+ this.resource.getResourceType().getId() + "&from=" + from.getId() + "&ad=" + parentId);
- record.setLinkText("View Template");
+ record.setLinkText(MSG.view_alert_definition_for_type());
} else {
record.setAttribute(FIELD_PARENT, "#ResourceGroup/" + groupAlertDefinition.getResourceGroup().getId()
+ "/Alerts/Definitions/" + groupAlertDefinition.getId());
- record.setLinkText("View Group Definition");
+ record.setLinkText(MSG.view_alert_definition_for_group());
}
record.setAttribute(FIELD_READONLY, readOnly);
}
@@ -87,10 +87,10 @@ public class ResourceAlertDefinitionsDataSource extends AbstractAlertDefinitions
List<DataSourceField> fields = super.addDataSourceFields();
// add two more columns
- DataSourceLinkField parentIdField = new DataSourceLinkField(FIELD_PARENT, "Parent");
+ DataSourceLinkField parentIdField = new DataSourceLinkField(FIELD_PARENT, MSG.view_alerts_field_parent());
fields.add(parentIdField);
- DataSourceTextField readOnlyField = new DataSourceTextField(FIELD_READONLY, "Read Only");
+ DataSourceTextField readOnlyField = new DataSourceTextField(FIELD_READONLY, MSG.view_alerts_field_protected());
fields.add(readOnlyField);
return fields;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
index d7d499c..cf8398c 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceAlertDefinitionsView.java
@@ -129,13 +129,13 @@ public class ResourceAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] alert definitions enabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_enable_success(String.valueOf(result)), Severity.Info));
ResourceAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to enable alert definitions", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_enable_failure(), caught);
}
});
}
@@ -156,13 +156,13 @@ public class ResourceAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] alert definitions disabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_disable_success(String.valueOf(result)), Severity.Info));
ResourceAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to disable alert definitions.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_disable_failure(), caught);
}
});
}
@@ -183,13 +183,13 @@ public class ResourceAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Integer result) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + result + "] alert definitions deleted.", Severity.Info));
+ new Message(MSG.view_alert_definitions_delete_success(String.valueOf(result)), Severity.Info));
ResourceAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to delete alert definitions.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_delete_failure(), caught);
}
});
}
@@ -201,13 +201,14 @@ public class ResourceAlertDefinitionsView extends AbstractAlertDefinitionsView {
Integer.valueOf(resource.getId()), new AsyncCallback<Integer>() {
@Override
public void onSuccess(Integer result) {
- CoreGUI.getMessageCenter().notify(new Message("Alert definition is created", Severity.Info));
+ CoreGUI.getMessageCenter().notify(
+ new Message(MSG.view_alert_definitions_create_success(), Severity.Info));
alertDefinition.setId(result.intValue());
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to create alert definition.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_create_failure(), caught);
}
});
} else {
@@ -215,12 +216,13 @@ public class ResourceAlertDefinitionsView extends AbstractAlertDefinitionsView {
alertDefinition, true, new AsyncCallback<AlertDefinition>() {
@Override
public void onSuccess(AlertDefinition result) {
- CoreGUI.getMessageCenter().notify(new Message("Alert definition is updated.", Severity.Info));
+ CoreGUI.getMessageCenter().notify(
+ new Message(MSG.view_alert_definitions_update_success(), Severity.Info));
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to update alert definition.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_update_failure(), caught);
}
});
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationInfo.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationInfo.java
index d8f4b46..c4df95a 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationInfo.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationInfo.java
@@ -20,6 +20,8 @@
package org.rhq.enterprise.gui.coregui.client.alert.definitions;
import org.rhq.core.domain.configuration.Configuration;
+import org.rhq.enterprise.gui.coregui.client.CoreGUI;
+import org.rhq.enterprise.gui.coregui.client.Messages;
/**
* Convienence class that encapsulates the different configuration properties that a notification
@@ -28,6 +30,9 @@ import org.rhq.core.domain.configuration.Configuration;
* @author John Mazzitelli
*/
public class ResourceOperationNotificationInfo {
+
+ static Messages MSG = CoreGUI.getMessages();
+
public enum Constants {
SELECTION_MODE("selection-mode"), // self, specific, relative
SPECIFIC_RESOURCE_ID("selection-specific-resource-id"), //
@@ -55,16 +60,16 @@ public class ResourceOperationNotificationInfo {
public String getDisplayString() {
switch (ordinal()) {
case 0: {
- return "This Resource";
+ return MSG.view_alert_definition_notification_operation_editor_mode_this();
}
case 1: {
- return "Specific Resource";
+ return MSG.view_alert_definition_notification_operation_editor_mode_specific();
}
case 2: {
- return "Relative Resource";
+ return MSG.view_alert_definition_notification_operation_editor_mode_relative();
}
default: {
- return "UNKNOWN OPTION - THIS IS A BUG"; // should never happen
+ return MSG.view_alert_definition_notification_operation_editor_mode_unknown(); // should never happen
}
}
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationSenderForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationSenderForm.java
index cf3adb4..22f5569 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationSenderForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/ResourceOperationNotificationSenderForm.java
@@ -108,7 +108,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
operationArgumentsCanvasItem.setHeight(400);
operationArgumentsCanvasItem.setWidth(500);
- operationSelectItem = new SelectItem("operationSelectItem", "Operation");
+ operationSelectItem = new SelectItem("operationSelectItem", MSG
+ .view_alert_definition_notification_operation_editor_common_operation());
operationSelectItem.setStartRow(true);
operationSelectItem.setEndRow(true);
operationSelectItem.setWrapTitle(false);
@@ -125,7 +126,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
// for SPECIFIC mode
- singleResourceTextItem = new StaticTextItem("singleResourceTextItem", "Resource");
+ singleResourceTextItem = new StaticTextItem("singleResourceTextItem", MSG
+ .view_alert_definition_notification_operation_editor_specific_resource());
singleResourceTextItem.setStartRow(true);
singleResourceTextItem.setEndRow(false);
singleResourceTextItem.setValue("Pick a resource...");
@@ -133,7 +135,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
singleResourceTextItem.setAttribute(RESOURCE_ID_ATTRIBUTE, 0); // we hide the resource ID in this attribute
singleResourceTextItem.setValidators(new ResourceIdValidator(singleResourceTextItem));
- ButtonItem singleResourceButtonItem = new ButtonItem("singleResourceButtonItem", "Pick");
+ ButtonItem singleResourceButtonItem = new ButtonItem("singleResourceButtonItem", MSG
+ .view_alert_definition_notification_operation_editor_specific_pick_button());
singleResourceButtonItem.setStartRow(false);
singleResourceButtonItem.setEndRow(true);
singleResourceButtonItem.setShowTitle(false);
@@ -156,15 +159,16 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
// for RELATIVE mode
- ancestorTypeSelectItem = new SelectItem("ancestorTypeSelectItem", "Start Search From");
+ ancestorTypeSelectItem = new SelectItem("ancestorTypeSelectItem", MSG
+ .view_alert_definition_notification_operation_editor_relative_ancestor());
ancestorTypeSelectItem.setStartRow(true);
ancestorTypeSelectItem.setEndRow(true);
ancestorTypeSelectItem.setWrapTitle(false);
ancestorTypeSelectItem.setRedrawOnChange(true);
ancestorTypeSelectItem.setDefaultToFirstOption(true);
ancestorTypeSelectItem.setHoverWidth(200);
- ancestorTypeSelectItem
- .setTooltip("Select the top of the type hierarchy from which to search its descedant tree for the Filter By type");
+ ancestorTypeSelectItem.setTooltip(MSG
+ .view_alert_definition_notification_operation_editor_relative_ancestor_tooltip());
ancestorTypeSelectItem.setShowIfCondition(new ShowIfModeFunction(ResourceSelectionMode.RELATIVE));
ancestorTypeSelectItem.addChangedHandler(new ChangedHandler() {
@Override
@@ -173,15 +177,16 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
}
});
- descendantTypeSelectItem = new SelectItem("descendantTypeSelectItem", "Then Filter By");
+ descendantTypeSelectItem = new SelectItem("descendantTypeSelectItem", MSG
+ .view_alert_definition_notification_operation_editor_relative_descendant());
descendantTypeSelectItem.setStartRow(true);
descendantTypeSelectItem.setEndRow(false);
descendantTypeSelectItem.setWrapTitle(false);
descendantTypeSelectItem.setRedrawOnChange(true);
descendantTypeSelectItem.setDefaultToFirstOption(true);
descendantTypeSelectItem.setHoverWidth(200);
- descendantTypeSelectItem
- .setTooltip("The resource type to search for under the root type defined in the Start Search From selection.");
+ descendantTypeSelectItem.setTooltip(MSG
+ .view_alert_definition_notification_operation_editor_relative_descendant_tooltip());
descendantTypeSelectItem.setShowIfCondition(new ShowIfModeFunction(ResourceSelectionMode.RELATIVE));
descendantTypeSelectItem.addChangedHandler(new ChangedHandler() {
@Override
@@ -195,14 +200,15 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
descendantNameTextItem.setEndRow(true);
descendantNameTextItem.setShowTitle(false);
descendantNameTextItem.setRequired(false);
- descendantNameTextItem
- .setTooltip("A specific name to uniquely identify a resource when more than one resource of the selected type might exist. This is optional if there will only ever be one resource of the resource type in the selected type hierarchy.");
+ descendantNameTextItem.setTooltip(MSG
+ .view_alert_definition_notification_operation_editor_relative_descendant_filter_tooltip());
descendantNameTextItem.setHoverWidth(200);
descendantNameTextItem.setShowIfCondition(new ShowIfModeFunction(ResourceSelectionMode.RELATIVE));
// the mode selector menu
- modeSelectItem = new SelectItem("modeSelectItem", "Resource Selection Mode");
+ modeSelectItem = new SelectItem("modeSelectItem", MSG
+ .view_alert_definition_notification_operation_editor_mode_title());
modeSelectItem.setStartRow(true);
modeSelectItem.setEndRow(true);
modeSelectItem.setWrapTitle(false);
@@ -222,7 +228,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
break;
}
case SPECIFIC: {
- singleResourceTextItem.setValue("Pick a resource...");
+ singleResourceTextItem.setValue(MSG
+ .view_alert_definition_notification_operation_editor_specific_pick_text());
singleResourceTextItem.setAttribute(RESOURCE_ID_ATTRIBUTE, 0);
hideOperationDropDownMenu();
break;
@@ -299,7 +306,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot get type ancestry", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_operation_editor_relative_ancestor_loadFailed(), caught);
}
};
@@ -331,7 +339,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
@Override
public void onSuccess(HashMap<Integer, String> results) {
LinkedHashMap<String, String> map = new LinkedHashMap<String, String>(results.size() + 1);
- map.put(String.valueOf(rootResourceTypeId), "Root Ancestor Type");
+ map.put(String.valueOf(rootResourceTypeId), MSG
+ .view_alert_definition_notification_operation_editor_relative_ancestor_root());
for (Map.Entry<Integer, String> entry : results.entrySet()) {
map.put(entry.getKey().toString(), entry.getValue());
}
@@ -349,7 +358,9 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot get type descendants", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_operation_editor_relative_descendant_loadFailed(),
+ caught);
}
});
}
@@ -418,7 +429,9 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
@Override
public void onSuccess(PageList<ResourceType> result) {
if (result == null || result.size() != 1) {
- CoreGUI.getErrorHandler().handleError("Error getting operations: " + result);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_operation_editor_operations_loadFailed() + ": "
+ + result);
hideOperationDropDownMenu();
return;
}
@@ -453,7 +466,8 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to load the list of available operations", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_operation_editor_operations_loadFailed(), caught);
hideOperationDropDownMenu();
}
});
@@ -480,13 +494,15 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
singleResourceTextItem.setValue(resource.getName());
setOperationDropDownMenuValues(resource.getResourceType().getId(), opId, args);
} else {
- onFailure(new Exception("query returns no results"));
+ onFailure(new Exception(MSG
+ .view_alert_definition_notification_operation_editor_operations_loadFailed()));
}
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Cannot determine resource name", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_operation_editor_operations_loadFailed(), caught);
singleResourceTextItem.setValue(resourceId);
hideOperationDropDownMenu();
}
@@ -526,7 +542,7 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
ConfigurationEditor configEditor = new ConfigurationEditor(extendLocatorId("opArgs"), def, config);
operationArgumentsCanvasItem.addMember(configEditor);
} else {
- Label l = new Label("This operation does not take any parameters");
+ Label l = new Label(MSG.view_alert_definition_notification_operation_editor_operations_no_parameters());
l.setWrap(false);
operationArgumentsCanvasItem.addMember(l);
}
@@ -607,7 +623,7 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
return false;
}
} catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Cannot save the notification configuration", e);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definition_notification_editor_saveFailed(), e);
return false;
}
}
@@ -638,13 +654,14 @@ public class ResourceOperationNotificationSenderForm extends AbstractNotificatio
Integer id = Integer.valueOf(idItem.getAttributeAsInt(RESOURCE_ID_ATTRIBUTE));
boolean valid = (id != null && id.intValue() != 0);
if (!valid) {
- setErrorMessage("Please pick a resource");
+ setErrorMessage(MSG.view_alert_definition_notification_operation_editor_specific_pick_error_invalid());
} else {
LinkedHashMap<Integer, OperationDefinition> ops = (LinkedHashMap<Integer, OperationDefinition>) operationSelectItem
.getAttributeAsObject(OPERATION_DEFS_ATTRIBUTE);
if (ops == null || ops.isEmpty()) {
valid = false;
- setErrorMessage("Please pick a resource that has one or more operations");
+ setErrorMessage(MSG
+ .view_alert_definition_notification_operation_editor_specific_pick_error_no_operation());
}
}
return valid;
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SimpleNotificationSenderForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SimpleNotificationSenderForm.java
index 65ddcd9..1095a28 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SimpleNotificationSenderForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SimpleNotificationSenderForm.java
@@ -65,7 +65,7 @@ public class SimpleNotificationSenderForm extends AbstractNotificationSenderForm
@Override
public void onFailure(Throwable caught) {
- String errMsg = "Cannot get alert sender configuration definition";
+ String errMsg = MSG.view_alert_definition_notification_editor_loadFailed_single();
CoreGUI.getErrorHandler().handleError(errMsg, caught);
Label label = new Label(errMsg);
label.setIcon("[SKIN]/Dialog/error.png");
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
index 2e3caf0..6ef3b00 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SingleAlertDefinitionView.java
@@ -65,25 +65,28 @@ public class SingleAlertDefinitionView extends LocatableVLayout {
LocatableTabSet tabSet = new LocatableTabSet(this.getLocatorId());
tabSet.setHeight100();
- Tab generalPropertiesTab = new LocatableTab(tabSet.extendLocatorId("General"), "General Properties");
+ Tab generalPropertiesTab = new LocatableTab(tabSet.extendLocatorId("General"), MSG
+ .view_alert_common_tab_general());
generalProperties = new GeneralPropertiesAlertDefinitionForm(this.getLocatorId(), alertDefinition);
generalPropertiesTab.setPane(generalProperties);
- Tab conditionsTab = new LocatableTab(tabSet.extendLocatorId("Conditions"), "Conditions");
+ Tab conditionsTab = new LocatableTab(tabSet.extendLocatorId("Conditions"), MSG
+ .view_alert_common_tab_conditions());
conditions = new ConditionsAlertDefinitionForm(this.getLocatorId(), alertDefView.getResourceType(),
alertDefinition);
conditionsTab.setPane(conditions);
- Tab notificationsTab = new LocatableTab(tabSet.extendLocatorId("Notifications"), "Notifications");
+ Tab notificationsTab = new LocatableTab(tabSet.extendLocatorId("Notifications"), MSG
+ .view_alert_common_tab_notifications());
notifications = new NotificationsAlertDefinitionForm(this.getLocatorId(), alertDefinition);
notificationsTab.setPane(notifications);
- Tab recoveryTab = new LocatableTab(tabSet.extendLocatorId("Recovery"), "Recovery");
+ Tab recoveryTab = new LocatableTab(tabSet.extendLocatorId("Recovery"), MSG.view_alert_common_tab_recovery());
recovery = new RecoveryAlertDefinitionForm(this.getLocatorId(), alertDefView.getAlertDefinitionDataSource(),
alertDefinition);
recoveryTab.setPane(recovery);
- Tab dampeningTab = new LocatableTab(tabSet.extendLocatorId("Dampening"), "Dampening");
+ Tab dampeningTab = new LocatableTab(tabSet.extendLocatorId("Dampening"), MSG.view_alert_common_tab_dampening());
dampening = new DampeningAlertDefinitionForm(this.getLocatorId(), alertDefinition);
dampeningTab.setPane(dampening);
@@ -92,9 +95,9 @@ public class SingleAlertDefinitionView extends LocatableVLayout {
final HLayout buttons = new HLayout();
buttons.setMembersMargin(20);
- editButton = new LocatableButton(this.extendLocatorId("Edit"), "Edit");
- saveButton = new LocatableButton(this.extendLocatorId("Save"), "Save");
- cancelButton = new LocatableButton(this.extendLocatorId("Cancel"), "Cancel");
+ editButton = new LocatableButton(this.extendLocatorId("Edit"), MSG.common_button_edit());
+ saveButton = new LocatableButton(this.extendLocatorId("Save"), MSG.common_button_save());
+ cancelButton = new LocatableButton(this.extendLocatorId("Cancel"), MSG.common_button_cancel());
editButton.show();
saveButton.hide();
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemRolesNotificationSenderForm.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemRolesNotificationSenderForm.java
index 8319e36..a0d3e52 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemRolesNotificationSenderForm.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/SystemRolesNotificationSenderForm.java
@@ -78,13 +78,14 @@ public class SystemRolesNotificationSenderForm extends AbstractNotificationSende
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler()
- .handleError("Cannot determine current roles - starting empty", caught);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_role_editor_loadFailed(), caught);
createNewSelector(null);
}
});
} catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Cannot use current roles - starting empty", e);
+ CoreGUI.getErrorHandler().handleError(
+ MSG.view_alert_definition_notification_role_editor_restoreFailed(), e);
createNewSelector(null);
}
} else {
@@ -110,7 +111,8 @@ public class SystemRolesNotificationSenderForm extends AbstractNotificationSende
getConfiguration().put(new PropertySimple(PROPNAME, newPropValue));
return true;
} catch (Exception e) {
- CoreGUI.getErrorHandler().handleError("Cannot save the selected roles", e);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definition_notification_role_editor_saveFailed(),
+ e);
return false;
}
}
@@ -187,5 +189,5 @@ public class SystemRolesNotificationSenderForm extends AbstractNotificationSende
return "role";
}
}
-
+
}
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/TemplateAlertDefinitionsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/TemplateAlertDefinitionsView.java
index ef91200..0394520 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/TemplateAlertDefinitionsView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/alert/definitions/TemplateAlertDefinitionsView.java
@@ -128,13 +128,14 @@ public class TemplateAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Void v) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + alertDefIds.length + "] alert templates enabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_enable_success(String.valueOf(alertDefIds.length)),
+ Severity.Info));
TemplateAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to enable alert templates", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_enable_failure(), caught);
}
});
}
@@ -156,13 +157,14 @@ public class TemplateAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Void v) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + alertDefIds.length + "] alert templates disabled.", Severity.Info));
+ new Message(MSG.view_alert_definitions_disable_success(String.valueOf(alertDefIds.length)),
+ Severity.Info));
TemplateAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to disable alert templates", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_disable_failure(), caught);
}
});
}
@@ -184,13 +186,14 @@ public class TemplateAlertDefinitionsView extends AbstractAlertDefinitionsView {
@Override
public void onSuccess(Void v) {
CoreGUI.getMessageCenter().notify(
- new Message("[" + alertDefIds.length + "] alert templates deleted.", Severity.Info));
+ new Message(MSG.view_alert_definitions_delete_success(String.valueOf(alertDefIds.length)),
+ Severity.Info));
TemplateAlertDefinitionsView.this.refresh();
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to delete alert templates", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_delete_failure(), caught);
}
});
}
@@ -202,13 +205,14 @@ public class TemplateAlertDefinitionsView extends AbstractAlertDefinitionsView {
Integer.valueOf(this.resourceType.getId()), new AsyncCallback<Integer>() {
@Override
public void onSuccess(Integer result) {
- CoreGUI.getMessageCenter().notify(new Message("Alert template is created", Severity.Info));
+ CoreGUI.getMessageCenter().notify(
+ new Message(MSG.view_alert_definitions_create_success(), Severity.Info));
alertDefinition.setId(result.intValue());
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to create alert template.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_create_failure(), caught);
}
});
} else {
@@ -216,12 +220,13 @@ public class TemplateAlertDefinitionsView extends AbstractAlertDefinitionsView {
new AsyncCallback<AlertDefinition>() {
@Override
public void onSuccess(AlertDefinition result) {
- CoreGUI.getMessageCenter().notify(new Message("Alert template is updated.", Severity.Info));
+ CoreGUI.getMessageCenter().notify(
+ new Message(MSG.view_alert_definitions_update_success(), Severity.Info));
}
@Override
public void onFailure(Throwable caught) {
- CoreGUI.getErrorHandler().handleError("Failed to update alert template.", caught);
+ CoreGUI.getErrorHandler().handleError(MSG.view_alert_definitions_update_failure(), caught);
}
});
}
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index 106476e..eca963e 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -15,6 +15,7 @@ common_buildInfo_gwtVersion = ${gwt.version}~
#--------------
common_button_ack = Ack~
common_button_ack_all = Ack All~
+common_button_add = Add~
common_button_advanced = Advanced...~
common_button_apply = Apply~
common_button_cancel = Cancel~
@@ -24,6 +25,7 @@ common_button_create_child = Create Child~
common_button_delete = Delete~
common_button_delete_all = Delete All~
common_button_disable = Disable~
+common_button_edit = Edit~
common_button_enable = Enable~
common_button_finish = Finish~
common_button_import = Import~
@@ -61,6 +63,7 @@ common_label_unlimited = unlimited~
common_label_user = user~
common_label_users = users~
common_label_week=week~
+common_label_weeks=weeks~
# Common Titles
#--------------
@@ -499,6 +502,8 @@ view_alerts_table_title_group=Group Alert History~
view_alerts_table_title_resource=Resource Alert History~
view_alerts_table_filter_priority=Priority Filter~
view_alerts_field_created_time=Creation Time~
+view_alerts_field_modified_time=Modified Time~
+view_alerts_field_enabled=Enabled~
view_alerts_field_ack_time=Ack Time~
view_alerts_field_ack_subject=Ack Subject~
view_alerts_field_ack_status=Status~
@@ -511,6 +516,9 @@ view_alerts_field_condition_text_many=Multiple Conditions~
view_alerts_field_condition_value=Condition Value~
view_alerts_field_resource=Resource~
view_alerts_field_priority=Priority~
+view_alerts_field_parent=Parent~
+view_alerts_field_protected=Protected~
+view_alerts_field_protected_tooltip=If true, this definition is protected from being changed by the parent definition. In other words, the parent definition settings will not override this definition.~
view_alerts_loadFailed=Failed to fetch alerts data~
view_alerts_delete_confirm=Delete the selected alert(s)?~
view_alerts_delete_confirm_all=Delete all alerts from this source?~
@@ -527,13 +535,148 @@ view_alert_details_breadcrumb=Details~
view_alert_details_field_ack_by=Acknowledged by~
view_alert_details_field_ack_at=Acknowledged at~
view_alert_details_field_recovery_info=Recovery Info~
-view_alert_common_tab_general=General~
+view_alert_definition_for_type=View Template~
+view_alert_definition_for_group=View Group Definition~
+view_alert_definitions_table_title_group=Group Alert Definitions~
+view_alert_definitions_table_title_resource=Resource Alert Definitions~
+view_alert_definitions_loadFailed=Failed to fetch alert definition data~
+view_alert_definitions_loadFailed_single=Failed to fetch data for alert definition with id {0}~
+view_alert_definitions_enable_confirm=Enable the selected alert definition(s)?~
+view_alert_definitions_enable_success=Successfully enabled {0} alert definitions~
+view_alert_definitions_enable_failure=Failed to enable the selected alert definitions~
+view_alert_definitions_disable_confirm=Disable the selected alert definition(s)?~
+view_alert_definitions_disable_success=Successfully disabled {0} alert definitions~
+view_alert_definitions_disable_failure=Failed to disable the selected alert definitions~
+view_alert_definitions_delete_confirm=Delete the selected alert definition(s)?~
+view_alert_definitions_delete_success=Successfully deleted {0} alert definitions~
+view_alert_definitions_delete_failure=Failed to deleted the selected alert definitions~
+view_alert_definitions_create_success=Alert definition successfully created~
+view_alert_definitions_create_failure=Alert definition creation failed~
+view_alert_definitions_update_success=Alert definition successfully updated~
+view_alert_definitions_update_failure=Alert definition update failed~
+view_alert_definition_condition_editor_option_label=Condition Type~
+view_alert_definition_condition_editor_option_availability=Availability Change~
+view_alert_definition_condition_editor_option_metric_threshold=Measurement Absolute Value Threshold~
+view_alert_definition_condition_editor_option_metric_baseline=Measurement Baseline Threshold~
+view_alert_definition_condition_editor_option_metric_change=Measurement Value Change~
+view_alert_definition_condition_editor_option_metric_calltime_threshold=Call Time Value Threshold~
+view_alert_definition_condition_editor_option_metric_calltime_change=Call Time Value Change~
+view_alert_definition_condition_editor_option_metric_trait_change=Trait Value Change~
+view_alert_definition_condition_editor_option_operation=Operation Execution~
+view_alert_definition_condition_editor_option_resource_configuration=Resource Configuration Change~
+view_alert_definition_condition_editor_option_event=Event Detection~
+view_alert_definition_condition_editor_avilability_tooltip=Specify the availability state change that will trigger the condition.~
+view_alert_definition_condition_editor_avilability_value=Availability~
+view_alert_definition_condition_editor_avilability_option_up=Comes up~
+view_alert_definition_condition_editor_avilability_option_down=Goes down~
+view_alert_definition_condition_editor_metric_common_definition_not_found=Should have found metric definition - something is wrong~
+view_alert_definition_condition_editor_metric_threshold_tooltip=Specify the threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier.~
+view_alert_definition_condition_editor_metric_threshold_name=Metric~
+view_alert_definition_condition_editor_metric_threshold_value=Metric Value~
+view_alert_definition_condition_editor_metric_threshold_value_tooltip=The threshold value of the metric that will trigger the condition when compared using the selected comparator.~
+view_alert_definition_condition_editor_metric_threshold_comparator=Comparator~
+view_alert_definition_condition_editor_metric_threshold_comparator_less=Less than~
+view_alert_definition_condition_editor_metric_threshold_comparator_equal=Equal to~
+view_alert_definition_condition_editor_metric_threshold_comparator_greater=Greater Than~
+view_alert_definition_condition_editor_metric_threshold_comparator_tooltip=How a collected metric value should be compared to the given threshold value~
+view_alert_definition_condition_editor_metric_baseline_tooltip=Specify the baseline value that must be violated to trigger the condition. The value you specify is a percentage of the given baseline value.~
+view_alert_definition_condition_editor_metric_baseline_percentage=Baseline Percentage~
+view_alert_definition_condition_editor_metric_baseline_percentage_tooltip=A collected metric value will trigger this condition when compared to this percentage of the selected baseline value using the selected comparator~
+view_alert_definition_condition_editor_metric_baseline_value=Baseline~
+view_alert_definition_condition_editor_metric_change_tooltip=Specify the metric whose value must change to trigger the condition.~
+view_alert_definition_condition_editor_metric_calltime_threshold_tooltip=Specify the calltime threshold value that, when violated, triggers the condition. The value you specify is an absolute value with an optional units specifier. You also must specify which calltime limit to compare the value with (minimum, maximum or average calltime value).~
+view_alert_definition_condition_editor_metric_calltime_common_name=Call Time Metric~
+view_alert_definition_condition_editor_metric_calltime_common_limit=Call Time Limit~
+view_alert_definition_condition_editor_metric_calltime_common_limit_tooltip=The calltime limit value that is to be compared with the given value~
+view_alert_definition_condition_editor_metric_calltime_common_regex=Regular Expression~
+view_alert_definition_condition_editor_metric_calltime_common_regex_tooltip=If specified, this is a regular expression that must match a call destination in order to trigger the condition.~
+view_alert_definition_condition_editor_metric_calltime_common_comparator=Comparator~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_shrinks=Shrinks~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_grows=Grows~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_changes=Changes~
+view_alert_definition_condition_editor_metric_calltime_common_comparator_tooltip=How a collected calltime value should be compared to the given calltime limit~
+view_alert_definition_condition_editor_metric_calltime_threshold_value=Call Time Value~
+view_alert_definition_condition_editor_metric_calltime_threshold_value_tooltip=The threshold value of the metric that will trigger the condition when compared using the selected comparator.~
+view_alert_definition_condition_editor_metric_calltime_change_tooltip=Specify the calltime value that, when changed at least a specified amount, triggers the condition. You must specify which calltime limit to check (minimum, maximum or average calltime value) and the percentage of change that must occur.~
+view_alert_definition_condition_editor_metric_calltime_change_percentage=Percentage Change~
+view_alert_definition_condition_editor_metric_calltime_change_percentage_tooltip=A collected calltime value will trigger this condition when it differs by at least this percentage of the selected calltime limit value~
+view_alert_definition_condition_editor_metric_trait_change_tooltip=Specify the trait whose value must change to trigger the condition.~
+view_alert_definition_condition_editor_metric_trait_change_value=Trait~
+view_alert_definition_condition_editor_operation_tooltip=Specify the result that must occur when the selected operation is executed in order to trigger the condition.~
+view_alert_definition_condition_editor_operation_value=Operation~
+view_alert_definition_condition_editor_operation_status=Operation Status~
+view_alert_definition_condition_editor_operation_status_inprogress=In Progress~
+view_alert_definition_condition_editor_operation_status_success=Success~
+view_alert_definition_condition_editor_operation_status_failure=Failure~
+view_alert_definition_condition_editor_operation_status_canceled=Canceled~
+view_alert_definition_condition_editor_resource_configuration_tooltip=This condition is triggered when the resource configuration changes.~
+view_alert_definition_condition_editor_event_tooltip=Specify the event severity that an event message must be reported with in order to trigger this condition. If you specify an optional regular expression, the event message must also match that regular expression in order for the condition to trigger.~
+view_alert_definition_condition_editor_event_severity=Event Severity~
+view_alert_definition_condition_editor_event_severity_debug=Debug~
+view_alert_definition_condition_editor_event_severity_info=Info~
+view_alert_definition_condition_editor_event_severity_warn=Warn~
+view_alert_definition_condition_editor_event_severity_error=Error~
+view_alert_definition_condition_editor_event_severity_fatal=Fatal~
+view_alert_definition_condition_editor_event_regex=Regular Expression~
+view_alert_definition_condition_editor_event_regex_tooltip=If specified, this is a regular expression that must match a collected event message in order to trigger the condition.~
+view_alert_definition_condition_editor_common_min=Minimum~
+view_alert_definition_condition_editor_common_avg=Average~
+view_alert_definition_condition_editor_common_max=Maximum~
+view_alert_definition_notification_editor_title_add=Add Notification~
+view_alert_definition_notification_editor_title_edit=Edit Notification~
+view_alert_definition_notification_editor_sender=Notification Sender~
+view_alert_definition_notification_editor_none_available=No alert senders available~
+view_alert_definition_notification_editor_loadFailed=Cannot get alert senders~
+view_alert_definition_notification_editor_loadFailed_single=Cannot get alert sender configuration definition~
+view_alert_definition_notification_editor_saveFailed=Cannot save the notification configuration~
+view_alert_definition_notification_editor_field_sender=Sender~
+view_alert_definition_notification_editor_field_configuration=Configuration~
+view_alert_definition_notification_editor_field_configuration_not_loaded=Unknown~
+view_alert_definition_notification_editor_field_configuration_loadFailed=Failed to get notification configuration preview~
+view_alert_definition_notification_editor_delete_confirm=Are you sure you want to delete the selected alert notifications?~
+view_alert_definition_notification_operation_editor_mode_title=Resource Selection Mode~
+view_alert_definition_notification_operation_editor_mode_this=This Resource~
+view_alert_definition_notification_operation_editor_mode_specific=Specific Resource~
+view_alert_definition_notification_operation_editor_mode_relative=Relative Resource~
+view_alert_definition_notification_operation_editor_mode_unknown=UNKNOWN OPTION - THIS IS A BUG~
+view_alert_definition_notification_operation_editor_common_operation=Operation~
+view_alert_definition_notification_operation_editor_specific_resource=Resource~
+view_alert_definition_notification_operation_editor_specific_pick_button=Pick~
+view_alert_definition_notification_operation_editor_specific_pick_text=Pick a resource...~
+view_alert_definition_notification_operation_editor_specific_pick_error_invalid=Please pick a resource~
+view_alert_definition_notification_operation_editor_specific_pick_error_no_operation=Please pick a resource that has one or more operations~
+view_alert_definition_notification_operation_editor_relative_ancestor=Start Search From~
+view_alert_definition_notification_operation_editor_relative_ancestor_tooltip=Select the top of the type hierarchy from which to search its descedant tree for the Filter By type~
+view_alert_definition_notification_operation_editor_relative_ancestor_loadFailed=Cannot get type ancestry~
+view_alert_definition_notification_operation_editor_relative_ancestor_root=Root Ancestor Type~
+view_alert_definition_notification_operation_editor_relative_descendant=Then Filter By~
+view_alert_definition_notification_operation_editor_relative_descendant_tooltip=The resource type to search for under the root type defined in the Start Search From selection.~
+view_alert_definition_notification_operation_editor_relative_descendant_filter_tooltip=A specific name to uniquely identify a resource when more than one resource of the selected type might exist. This is optional if there will only ever be one resource of the resource type in the selected type hierarchy.~
+view_alert_definition_notification_operation_editor_relative_descendant_loadFailed=Cannot get type descendants~
+view_alert_definition_notification_operation_editor_operations_loadFailed=Failed to load the list of available operations~
+view_alert_definition_notification_operation_editor_operations_no_parameters=This operation does not take any parameters~
+view_alert_definition_notification_role_editor_loadFailed=Cannot determine current roles - starting empty~
+view_alert_definition_notification_role_editor_restoreFailed=Cannot use current roles - starting empty~
+view_alert_definition_notification_role_editor_saveFailed=Cannot save the selected roles~
+view_alert_definition_notification_user_editor_loadFailed=Cannot determine current users - starting empty~
+view_alert_definition_notification_user_editor_restoreFailed=Cannot use current users - starting empty~
+view_alert_definition_notification_user_editor_saveFailed=Cannot save the selected users~
+view_alert_definition_recovery_editor_disable_when_fired=Disable When Fired~
+view_alert_definition_recovery_editor_disable_when_fired_tooltip=Indicates if this alert will be disabled after it fires. Once disabled, the alert can be manually re-enabled or a recovery alert can be set up to automatically re-enable it. If this alert is a recovery alert itself, this setting cannot be turned on.~
+view_alert_definition_recovery_editor_recovery_alert=Recover Alert~
+view_alert_definition_recovery_editor_recovery_alert_tooltip=The target alert that will be recovered (i.e. re-enabled) after this alert triggers. Do not select an alert here if you are not defining a recovery alert.~
+view_alert_definition_recovery_editor_loadFailed=Cannot build recovery menu~
+view_alert_definition_recovery_editor_none_available=None~
+view_alert_common_tab_general=General Properties~
view_alert_common_tab_conditions=Conditions~
-view_alert_common_tab_conditions_text=Matching Condition~
+view_alert_common_tab_conditions_modal_title=Add Condition~
+view_alert_common_tab_conditions_expression=Fire alert when~
+view_alert_common_tab_conditions_expression_tooltip=Determines if ANY or ALL of the conditions must evaluate to true in order for the entire condition set to be considered true.~
+view_alert_common_tab_conditions_text=Condition~
view_alert_common_tab_conditions_value=Value~
view_alert_common_tab_conditions_type_availability=Availability Change~
-view_alert_common_tab_conditions_type_availability_down=Went down
-view_alert_common_tab_conditions_type_availability_up=Came up
+view_alert_common_tab_conditions_type_availability_down=Went down~
+view_alert_common_tab_conditions_type_availability_up=Came up~
view_alert_common_tab_conditions_type_metric_threshold=Metric Value Exceeds Threshold~
view_alert_common_tab_conditions_type_metric_calltime_threshold=Call Time Value Exceeds Threshold~
view_alert_common_tab_conditions_type_metric_calltime_destination=with call destination matching~
@@ -546,12 +689,11 @@ view_alert_common_tab_conditions_type_metric_baseline=Metric Value Exceeds Basel
view_alert_common_tab_conditions_type_metric_baseline_verb=of~
view_alert_common_tab_conditions_type_metric_change=Metric Value Change~
view_alert_common_tab_conditions_type_metric_trait_change=Trait Change~
-view_alert_common_tab_conditions_type_metric_operation=Operation Execution~
-view_alert_common_tab_conditions_type_metric_status=with result status~
-view_alert_common_tab_conditions_type_metric_resource_configuration=Resource Configuration Change~
-view_alert_common_tab_conditions_type_metric_event=Event Detection~
-view_alert_common_tab_conditions_type_metric_event_matching=with event source matching~
-view_alert_common_tab_conditions_type_invalid=Unsupported Category: {0}~
+view_alert_common_tab_conditions_type_operation=Operation Execution~
+view_alert_common_tab_conditions_type_operation_status=with result status~
+view_alert_common_tab_conditions_type_resource_configuration=Resource Configuration Change~
+view_alert_common_tab_conditions_type_event=Event Detection~
+view_alert_common_tab_conditions_type_event_matching=with event source matching~
view_alert_common_tab_conditions_recovery_enabled=Triggered ''{0}'' to be re-enabled~
view_alert_common_tab_conditions_recovery_disabled=This alert caused its alert definition to be disabled~
view_alert_common_tab_notifications=Notifications~
@@ -561,6 +703,28 @@ view_alert_common_tab_notifications_message=Message~
view_alert_common_tab_notifications_all_emails=All Emails~
view_alert_common_tab_notifications_bad_emails=Bad Emails~
view_alert_common_tab_dampening=Dampening~
+view_alert_common_tab_dampening_category_none=None~
+view_alert_common_tab_dampening_category_none_tooltip=Dampening is disabled. Every time the condition set is true, an alert will be triggered.~
+view_alert_common_tab_dampening_category_consecutive_count=Consecutive~
+view_alert_common_tab_dampening_category_consecutive_count_tooltip=An alert is triggered once every X occurrences the condition set is true consecutively.~
+view_alert_common_tab_dampening_category_partial_count=Last N Evaluations~
+view_alert_common_tab_dampening_category_partial_count_tooltip=An alert is triggered once every X occurrences the condition set is true during the last N evaluations of the condition set.~
+view_alert_common_tab_dampening_category_duration_count=Time Period~
+view_alert_common_tab_dampening_category_duration_count_tooltip=An alert is triggered once every X occurrences the condition set is true within a given time period.~
+view_alert_common_tab_dampening_consecutive_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_consecutive_occurrences_label_tooltip=The number of times the condition set must be consecutively true before the alert is triggered~
+view_alert_common_tab_dampening_partial_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_partial_occurrences_label_tooltip=The number of times the condition set must be true during the last N evaluations before the alert is triggered.~
+view_alert_common_tab_dampening_partial_evalatuions_label=Evaluations~
+view_alert_common_tab_dampening_partial_evalatuions_label_tooltip=The total number of times the condition set will be tested to see if the given number of occurrences are true.~
+view_alert_common_tab_dampening_duration_occurrences_label=Occurrences~
+view_alert_common_tab_dampening_duration_occurrences_label_tooltip=The number of times the condition set must be true during the given time period before the alert is triggered.~
+view_alert_common_tab_dampening_duration_period_label=Time Period~
+view_alert_common_tab_dampening_duration_period_label_tooltip=The time span in which the condition set will be tested to see if the given number of occurrences are true.~
+view_alert_common_tab_recovery=Recovery~
+view_alert_common_tab_invalid_condition_category=Invalid condition category - please report this as a bug: {0}~
+view_alert_common_tab_invalid_dampening_category=Invalid dampening category - please report this as a bug: {0}~
+view_alert_common_tab_invalid_time_units=Invalid time units - please report this as a bug: {0}~
# Auto Discovery Queue
#----------------------------
13 years, 7 months
[rhq] modules/enterprise
by Jay Shaughnessy
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/AdministrationView.java | 4 +---
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties | 1 +
2 files changed, 2 insertions(+), 3 deletions(-)
New commits:
commit 3d8e1f032985f1ef53f65a4c9e28914fb0df7919
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Thu Nov 18 17:43:26 2010 -0500
I18N - add missing prop for Admin landing page blurb
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/AdministrationView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/AdministrationView.java
index c253fda..a4dcde9 100644
--- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/AdministrationView.java
+++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/AdministrationView.java
@@ -87,9 +87,7 @@ public class AdministrationView extends AbstractSectionedLeftNavigationView {
}
protected HTMLFlow defaultView() {
- String contents = "<h1>Administration</h1>\n"
- + "From this section, the RHQ global settings can be administered. This includes configuring \n"
- + "<a href=\"\">Security</a>, setting up <a href=\"\">Plugins</a> and various other stuff.";
+ String contents = "<h1>" + MSG.view_admin_administration() + "</h1>\n" + MSG.view_admin_landing();
HTMLFlow flow = new HTMLFlow(contents);
flow.setPadding(20);
return flow;
diff --git a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
index 79592b2..106476e 100644
--- a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
+++ b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
@@ -411,6 +411,7 @@ dataSource_resourceErrors_error_fetchFailure = Failed to find Resource errors fo
#================= Administration ==================
view_admin_administration = Administration~
+view_admin_landing = From this section, the RHQ global settings can be administered. This includes configuring Security, setting up Plugins, and managing RHQ servers and agents.~
view_admin_configuration = Configuration~
view_admin_security = Security~
view_admin_topology = Topology~
13 years, 7 months