etc/rhq-ircBot/pom.xml
| 2
etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBot.java
| 4 -
etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBotListener.java
| 33 ++++----
modules/core/domain/src/main/java/org/rhq/core/domain/cloud/StorageNodeLoadComposite.java
| 22 ++++-
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeDetailView.java
| 6 -
modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeTableView.java
| 14 +--
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_cs.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_de.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ko.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ru.properties
| 2
modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
| 2
modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cloud/StorageNodeManagerBean.java
| 39 ++++++----
15 files changed, 87 insertions(+), 49 deletions(-)
New commits:
commit 3d3f1aae4bbf93ad44d50ae70794a0bf86b1282f
Author: Jirka Kremser <jkremser(a)redhat.com>
Date: Fri May 31 14:38:03 2013 +0200
Adding some localization for Storage Node entity UI.
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeDetailView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeDetailView.java
index b9b442e..1f94abb 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeDetailView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeDetailView.java
@@ -186,7 +186,7 @@ public class StorageNodeDetailView extends EnhancedVLayout implements
Bookmarkab
// portItem.setValidators(portValidator);
jmxPortItem.setValue(storageNode.getJmxPort());
- final StaticTextItem jmxConnectionUrlItem = new
StaticTextItem("jmxConnectionUrl", "td(i18n) JMX Connection URL");
+ final StaticTextItem jmxConnectionUrlItem = new
StaticTextItem("jmxConnectionUrl",
MSG.view_adminTopology_storageNode_jmxUrl());
jmxConnectionUrlItem.setValue(storageNode.getJMXConnectionURL());
final TextItem cqlPortItem = new TextItem(FIELD_CQL_PORT.propertyName(),
FIELD_CQL_PORT.title());
@@ -201,7 +201,7 @@ public class StorageNodeDetailView extends EnhancedVLayout implements
Bookmarkab
// make clickable link to associated resource
StaticTextItem resourceItem = new StaticTextItem("associatedResource",
- "td(i18n) Associated Resource");
+ "Associated Resource");
String storageNodeItemText = "";
Resource storageNodeResource = storageNode.getResource();
if (storageNodeResource != null && storageNodeResource.getName() != null)
{
@@ -209,7 +209,7 @@ public class StorageNodeDetailView extends EnhancedVLayout implements
Bookmarkab
String formattedValue =
StringUtility.escapeHtml(storageNodeResource.getName());
storageNodeItemText = LinkManager.getHref(detailsUrl, formattedValue);
} else {
- storageNodeItemText = "td(i18n) none";
+ storageNodeItemText = MSG.common_label_none();
}
resourceItem.setValue(storageNodeItemText);
diff --git
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeTableView.java
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeTableView.java
index 31ab7ff..863081c 100644
---
a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeTableView.java
+++
b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/admin/storage/StorageNodeTableView.java
@@ -63,7 +63,7 @@ import org.rhq.enterprise.gui.coregui.client.util.message.Message;
public class StorageNodeTableView extends
TableSection<StorageNodeDatasource> implements HasViewName {
- public static final ViewName VIEW_ID = new ViewName("StorageNodes",
"td(i18n) Storage Nodes", IconEnum.STORAGE_NODE);
+ public static final ViewName VIEW_ID = new ViewName("StorageNodes",
MSG.view_adminTopology_storageNodes(), IconEnum.STORAGE_NODE);
public static final String VIEW_PATH = AdministrationView.VIEW_ID + "/"
+ AdministrationView.SECTION_TOPOLOGY_VIEW_ID + "/" + VIEW_ID;
@@ -119,11 +119,11 @@ public class StorageNodeTableView extends
try {
rawUrl =
LinkManager.getResourceLink(record.getAttributeAsInt(FIELD_RESOURCE_ID.propertyName()));
} catch (NumberFormatException nfe) {
- rawUrl = "td(i18n) none";
+ rawUrl = MSG.common_label_none();
}
String formattedValue = StringUtility.escapeHtml(rawUrl);
- String label = StringUtility.escapeHtml("td(i18n) Link to
Resource");
+ String label = StringUtility.escapeHtml("Link to
Resource");
return LinkManager.getHref(formattedValue, label);
}
});
@@ -181,7 +181,7 @@ public class StorageNodeTableView extends
operationsMap.put("Start RPC Server", "startRPCServer");
operationsMap.put("Decommission", "decommission");
- addTableAction("td(i18n) Invoke Operation", null, operationsMap, new
AuthorizedTableAction(this,
+ addTableAction(MSG.common_title_operation(), null, operationsMap, new
AuthorizedTableAction(this,
TableActionEnablement.ANY, Permission.MANAGE_SETTINGS) {
@Override
@@ -203,7 +203,7 @@ public class StorageNodeTableView extends
public void execute() {
// Message msg = new
Message(MSG.view_adminTopology_message_setMode(
//
String.valueOf(selections.length), mode.name()), Message.Severity.Info);
- Message msg = new Message("td(i18n)
Operation" + operationName
+ Message msg = new Message("Operation" +
operationName
+ " was successfully scheduled for resources
with ids"
+ Arrays.asList(getSelectedIds(selections)),
Message.Severity.Info);
CoreGUI.getMessageCenter().notify(msg);
@@ -225,7 +225,7 @@ public class StorageNodeTableView extends
}
public void onFailure(Throwable caught) {
CoreGUI.getErrorHandler().handleError(
- "td(i18n) Scheduling operation
" + operationName
+ "Scheduling operation " +
operationName
+ " failed for resources
with ids"
+
Arrays.asList(getSelectedIds(selections)) + " "
+ caught.getMessage(), caught);
@@ -243,7 +243,7 @@ public class StorageNodeTableView extends
public void onFailure(Throwable caught) {
CoreGUI.getErrorHandler().handleError(
- "td(i18n) Scheduling operation
" + operationName
+ "Scheduling operation " +
operationName
+ " failed for resources
with ids"
+
Arrays.asList(getSelectedIds(selections)) + " "
+ caught.getMessage(), 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 1c6cb41..fbd2321 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
@@ -653,6 +653,8 @@ view_adminTopology_server_securePort = Secure Port
view_adminTopology_server_setMaintenance = Set Maintenance
view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = Servers
+view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = user
view_adminUsers_failCreateUserWithExistingName = Failed to create user with existing name
[{0}]. Please use another name.
view_admin_administration = Administration
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_cs.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_cs.properties
index 12c8632..3eaafc3 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_cs.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_cs.properties
@@ -669,6 +669,8 @@ view_adminTopology_server_securePort = Zabezpečený port
view_adminTopology_server_setMaintenance = Nastavit údržbu
view_adminTopology_server_setNormal = Nastavit do normálu
view_adminTopology_servers = Servery
+view_adminTopology_storageNode_jmxConnectionUrl=URL pro JMX spojení
+view_adminTopology_storageNodes=Datové uzly
view_adminUsersDetails_dataTypeName = uživatel
view_adminUsers_failCreateUserWithExistingName = Nepodařilo se vytvořit uživatele s
existujícím jménem [{0}]. Použíjte prosím jiné jméno.
view_admin_administration = Administrace
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
index f02eace..5e6013b 100644
---
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
@@ -617,6 +617,8 @@ view_adminTopology_server_mode = Modus
##view_adminTopology_server_setMaintenance = Set Maintenance
##view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = Server
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = Benutzer
##view_adminUsers_failCreateUserWithExistingName = Failed to create user with existing
name [{0}]. Please use another name.
view_admin_administration = Verwaltung
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
index 07ecabf..c28d079 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ja.properties
@@ -649,6 +649,8 @@ view_adminTopology_remoteAgentInstall = リモートエージェントのイン
##view_adminTopology_server_setMaintenance = Set Maintenance
##view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = サーバー
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = ユーザー
##view_adminUsers_failCreateUserWithExistingName = Failed to create user with existing
name [{0}]. Please use another name.
view_admin_administration = 管理
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ko.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ko.properties
index da0a8a5..728544e 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ko.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ko.properties
@@ -572,6 +572,8 @@ view_adminTopology_remoteAgentInstall = 원격 에이전트 설치
##view_adminTopology_server_setMaintenance = Set Maintenance
##view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = 서버
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = 사용자
view_adminUsers_failCreateUserWithExistingName = 기존 이름 [{0}]과 사용자를 만들지 못했습니다. 다른 이름을
사용하십시오.
view_admin_administration = 관리
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
index a3cf109..6560399 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_pt.properties
@@ -653,6 +653,8 @@ view_adminTopology_remoteAgentInstall = Instala\u00E7\u00E3o Remota de
Agentes
##view_adminTopology_server_setMaintenance = Set Maintenance
##view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = Servidores
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = usu\u00E1rio
##view_adminUsers_failCreateUserWithExistingName = Failed to create user with existing
name [{0}]. Please use another name.
view_admin_administration = Administra\u00E7\u00E3o
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ru.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ru.properties
index 1637583..3c419e5 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ru.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_ru.properties
@@ -614,6 +614,8 @@
##view_adminTopology_partitionEvents_typeFilter = Type Filter
#view_adminTopology_remoteAgentInstall = Remote Agent Install
#view_adminTopology_servers = Servers
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
##view_adminTopology_serverDetail_connectedAgents = Connected Agents
##view_adminTopology_serverDetail_installationDate = Installation Date
##view_adminTopology_serverDetail_operationMode = Operation Mode
diff --git
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
index 5ed9e01..ec487c1 100644
---
a/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
+++
b/modules/enterprise/gui/coregui/src/main/resources/org/rhq/enterprise/gui/coregui/client/Messages_zh.properties
@@ -641,6 +641,8 @@ view_adminTopology_remoteAgentInstall =
\u8fdc\u7a0b\u4ee3\u7406\u5b89\u88c5
##view_adminTopology_server_setMaintenance = Set Maintenance
##view_adminTopology_server_setNormal = Set Normal
view_adminTopology_servers = \u670d\u52a1\u5668
+##view_adminTopology_storageNode_jmxConnectionUrl=JMX Connection URL
+##view_adminTopology_storageNodes=Storage Nodes
view_adminUsersDetails_dataTypeName = user
##view_adminUsers_failCreateUserWithExistingName = Failed to create user with existing
name [{0}]. Please use another name.
view_admin_administration = \u7ba1\u7406
commit 71635b0463fad04a696a0e66a709571ad8b8e824
Author: Jirka Kremser <jkremser(a)redhat.com>
Date: Fri May 31 13:24:55 2013 +0200
Fixing bug in IRC bot (isRedHatChannel); pto command now shows PTOs longer than 1 day;
ensuring the bot do not notify users when using the pto and support commands
diff --git a/etc/rhq-ircBot/pom.xml b/etc/rhq-ircBot/pom.xml
index a6ab873..adbab6a 100644
--- a/etc/rhq-ircBot/pom.xml
+++ b/etc/rhq-ircBot/pom.xml
@@ -8,7 +8,7 @@
<groupId>org.rhq.etc</groupId>
<artifactId>rhq-ircbot</artifactId>
- <version>1.1</version>
+ <version>1.1.1</version>
<packaging>jar</packaging>
<name>RHQ IRC Bot</name>
diff --git a/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBot.java
b/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBot.java
index 7e8f563..998efa9 100644
--- a/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBot.java
+++ b/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBot.java
@@ -45,7 +45,7 @@ public class RhqIrcBot extends PircBotX {
public RhqIrcBot(RhqIrcBotListener rhqBot) {
setName("rhq-bot");
- setVersion("1.1");
+ setVersion("1.1.1");
setFinger("RHQ IRC bot (source code in RHQ git under
etc/rhq-ircBot/)");
setVerbose(true);
@@ -96,7 +96,7 @@ public class RhqIrcBot extends PircBotX {
PircBotX bot = new RhqIrcBot(rhqBotListener);
bot.connect(server);
- bot.joinChannel(channel);
+ bot.joinChannel(channel.trim());
}
private static void setupTrustStore() {
diff --git a/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBotListener.java
b/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBotListener.java
index a7b3e78..6b8529f 100644
--- a/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBotListener.java
+++ b/etc/rhq-ircBot/src/main/java/org/rhq/etc/ircbot/RhqIrcBotListener.java
@@ -45,7 +45,7 @@ public class RhqIrcBotListener extends ListenerAdapter<RhqIrcBot>
{
private static final Pattern ECHO_PATTERN = Pattern.compile("(?i)echo[
]+(.+)");
private static final String SUPPORT_LINK =
"https://docspace.corp.redhat.com/docs/DOC-124477";
private static final String COMMIT_LINK =
"https://git.fedorahosted.org/cgit/rhq/rhq.git/commit/?id=%s";
- private static final String PTO_LINK =
"https://mail.corp.redhat.com/home/ccrouch@redhat.com/JBoss%20ON%20OOO?fmt=rss&view=day";
+ private static final String PTO_LINK =
"https://mail.corp.redhat.com/home/ccrouch@redhat.com/JBoss%20ON%20OOO?fmt=rss&view=day&start=0day&end=0day";
private static final DateFormat monthFormat = new SimpleDateFormat("MMM");
private static final DateFormat dayInMonthFormat = new
SimpleDateFormat("d");
@@ -104,7 +104,8 @@ public class RhqIrcBotListener extends
ListenerAdapter<RhqIrcBot> {
public RhqIrcBotListener(String server, String channel) {
this.server = server;
this.channel = channel;
- isRedHatChannel = "irc.devel.redhat.com".equals(channel);
+ isRedHatChannel = "irc.devel.redhat.com".equals(server);
+ if (isRedHatChannel) System.out.print("Red Hat channel");
StringBuilder commandRegExp = new StringBuilder();
commandRegExp.append("^(?i)[
]*").append(Command.PREFIX).append("(");
for (Command command : Command.values()) {
@@ -317,21 +318,21 @@ public class RhqIrcBotListener extends
ListenerAdapter<RhqIrcBot> {
if (cellText.startsWith(month.toLowerCase())) {
monthFound = true;
if (cellText.substring(cellText.length() - 1,
cellText.length()).equals(dayInMonth)) {
- return cell.firstElementSibling().text() + " is on support
this week";
+ return doNotNotify(cell.firstElementSibling().text() + " is
on support this week");
}
continue;
}
if (monthFound && cellText.equals(dayInMonth)) {
- return cell.firstElementSibling().text() + " is on support this
week";
+ return doNotNotify(cell.firstElementSibling().text() + " is on
support this week");
} else if (monthFound) {
if (cell.equals(cell.firstElementSibling()) ||
cell.equals(cell.lastElementSibling())) {
continue; //the first row with name or the last row with a
comment
}
- int day = -1;
+ int day;
try {
day = Integer.parseInt(cellText);
if (day > dayInMonthInt) {
- return cell.parent().previousElementSibling().child(0).text()
+ " is on support this week";
+ return
doNotNotify(cell.parent().previousElementSibling().child(0).text() + " is on support
this week");
}
} catch (NumberFormatException nfe) {
break; // next month
@@ -343,26 +344,29 @@ public class RhqIrcBotListener extends
ListenerAdapter<RhqIrcBot> {
}
// fallback solution if SSL is not set correctly
String randomDevel = JON_DEVS.toArray(new String[JON_DEVS.size()])[new
Random().nextInt(JON_DEVS.size())];
- return "404 Developer Not Found, selecting randomly " + randomDevel +
". Check the " + SUPPORT_LINK;
+ return "404 Developer Not Found, selecting randomly " +
doNotNotify(randomDevel) + ". Check the " + SUPPORT_LINK;
}
private static String whoIsOnPto(String link) {
- String month = monthFormat.format(new Date());
- String dayInMonth = dayInMonthFormat.format(new Date());
try {
String onPto = "";
Document doc = Jsoup.connect(link).ignoreContentType(true).get();
- Elements dates = doc.getElementsContainingOwnText(dayInMonth + " "
+ month);
- for (Element date : dates) {
- onPto += date.firstElementSibling().text() + ", ";
+ Elements titles = doc.select("rss channel item title");
+ for (Element title : titles) {
+ onPto += doNotNotify(title.text()) + ", ";
}
if (!onPto.isEmpty()) {
- return onPto.substring(0, onPto.length() - 2);
+ return doNotNotify(onPto.substring(0, onPto.length() - 2));
}
} catch (IOException e) {
e.printStackTrace();
}
- return "noone is on PTO today";
+ return "no one is on PTO today";
+ }
+
+ private String doNotNotify(String nick) {
+ //replace all vowels with unicode chars that look same not to spam users with
notifications
+ return nick.toLowerCase().replaceFirst("a",
"\u0430").replaceFirst("e",
"\u0435").replaceFirst("i",
"\u0456").replaceFirst("o",
"\u043E").replaceFirst("u",
"\u222A").replaceFirst("y", "\u028F");
}
public void setDocspaceLogin(String docspaceLogin) {
@@ -372,4 +376,3 @@ public class RhqIrcBotListener extends
ListenerAdapter<RhqIrcBot> {
public void setDocspacePassword(String docspacePassword) {
this.docspacePassword = docspacePassword;
}
-}
commit bb390b7f6f9a156221e6e6de95ec9238c2bb2ee2
Author: Jirka Kremser <jkremser(a)redhat.com>
Date: Fri May 31 13:23:39 2013 +0200
Adding calculated metric heap percentage usage to the StorageNodeLoadComposite.
diff --git
a/modules/core/domain/src/main/java/org/rhq/core/domain/cloud/StorageNodeLoadComposite.java
b/modules/core/domain/src/main/java/org/rhq/core/domain/cloud/StorageNodeLoadComposite.java
index e93670e..137af64 100644
---
a/modules/core/domain/src/main/java/org/rhq/core/domain/cloud/StorageNodeLoadComposite.java
+++
b/modules/core/domain/src/main/java/org/rhq/core/domain/cloud/StorageNodeLoadComposite.java
@@ -37,8 +37,9 @@ public class StorageNodeLoadComposite implements Serializable {
private long beginTime;
private long endTime;
- private MeasurementAggregateWithUnits heapCommited;
+ private MeasurementAggregateWithUnits heapCommitted;
private MeasurementAggregateWithUnits heapUsed;
+ private MeasurementAggregateWithUnits heapPercentageUsed;
private MeasurementAggregateWithUnits load;
private MeasurementAggregate tokens;
private MeasurementAggregateWithUnits actuallyOwns;
@@ -77,12 +78,12 @@ public class StorageNodeLoadComposite implements Serializable {
this.endTime = endTime;
}
- public MeasurementAggregateWithUnits getHeapCommited() {
- return heapCommited;
+ public MeasurementAggregateWithUnits getHeapCommitted() {
+ return heapCommitted;
}
- public void setHeapCommited(MeasurementAggregateWithUnits heapCommited) {
- this.heapCommited = heapCommited;
+ public void setHeapCommitted(MeasurementAggregateWithUnits heapCommitted) {
+ this.heapCommitted = heapCommitted;
}
public MeasurementAggregateWithUnits getHeapUsed() {
@@ -92,6 +93,14 @@ public class StorageNodeLoadComposite implements Serializable {
public void setHeapUsed(MeasurementAggregateWithUnits heapUsed) {
this.heapUsed = heapUsed;
}
+
+ public MeasurementAggregateWithUnits getHeapPercentageUsed() {
+ return heapPercentageUsed;
+ }
+
+ public void setHeapPercentageUsed(MeasurementAggregateWithUnits heapPercentageUsed)
{
+ this.heapPercentageUsed = heapPercentageUsed;
+ }
public MeasurementAggregateWithUnits getLoad() {
return load;
@@ -131,8 +140,9 @@ public class StorageNodeLoadComposite implements Serializable {
builder.append("storageNode.addresss=").append(storageNode.getAddress()).append(",
");
builder.append("beginTime=").append(beginTime).append(", ");
- builder.append("heapCommited=").append(heapCommited).append(",
");
+ builder.append("heapCommitted=").append(heapCommitted).append(",
");
builder.append("heapUsed=").append(heapUsed).append(", ");
+
builder.append("heapPercentageUsed=").append(heapPercentageUsed).append(",
");
builder.append("load=").append(load).append(", ");
builder.append("tokens=").append(tokens).append(", ");
builder.append("actuallyOwns=").append(actuallyOwns);
diff --git
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cloud/StorageNodeManagerBean.java
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cloud/StorageNodeManagerBean.java
index 89ffe11..fca789b 100644
---
a/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cloud/StorageNodeManagerBean.java
+++
b/modules/enterprise/server/jar/src/main/java/org/rhq/enterprise/server/cloud/StorageNodeManagerBean.java
@@ -169,7 +169,7 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
public StorageNodeLoadComposite getLoad(Subject subject, StorageNode node, long
beginTime, long endTime) {
StorageNodeLoadComposite result = new StorageNodeLoadComposite(node, beginTime,
endTime);
final String tokensMetric = "Tokens", ownershipMetric =
"Ownership", loadMetric = "Load";
- final String heapComittedMetric = "{HeapMemoryUsage.committed}",
heapUsedMetric = "{HeapMemoryUsage.used}";
+ final String heapCommittedMetric = "{HeapMemoryUsage.committed}",
heapUsedMetric = "{HeapMemoryUsage.used}", heapUsedPercentageMetric =
"Calculated.HeapUsagePercentage";
int resourceId;
if (node.getResource() == null) {
@@ -194,7 +194,7 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
StorageNode.QUERY_FIND_SCHEDULE_IDS_BY_GRANDPARENT_RESOURCE_ID_AND_MEASUREMENT_DEFINITION_NAMES,
Object[].class);
query.setParameter("grandparrentId",
resourceId).setParameter("metricNames",
- Arrays.asList(heapComittedMetric, heapUsedMetric));
+ Arrays.asList(heapCommittedMetric, heapUsedMetric,
heapUsedPercentageMetric));
scheduleIds = query.getResultList();
for (Object[] pair : scheduleIds) {
scheduleIdsMap.put((String) pair[0], (Integer) pair[1]);
@@ -210,11 +210,11 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
if (scheduleIdsMap.get(ownershipMetric) != null) {
MeasurementAggregate ownershipAggregate =
measurementManager.getAggregate(subject,
scheduleIdsMap.get(ownershipMetric), beginTime, endTime);
- StorageNodeLoadComposite.MeasurementAggregateWithUnits
ovnershipAggregateWithUnits = new StorageNodeLoadComposite.MeasurementAggregateWithUnits(
+ StorageNodeLoadComposite.MeasurementAggregateWithUnits
ownershipAggregateWithUnits = new StorageNodeLoadComposite.MeasurementAggregateWithUnits(
ownershipAggregate, MeasurementUnits.PERCENTAGE);
-
ovnershipAggregateWithUnits.setFormattedValue(getSummaryString(ownershipAggregate,
- MeasurementUnits.PERCENTAGE));
- result.setActuallyOwns(ovnershipAggregateWithUnits);
+
ownershipAggregateWithUnits.setFormattedValue(getSummaryString(ownershipAggregate,
+ MeasurementUnits.PERCENTAGE));
+ result.setActuallyOwns(ownershipAggregateWithUnits);
}
if (scheduleIdsMap.get(loadMetric) != null) {
MeasurementAggregate loadAggregate =
measurementManager.getAggregate(subject,
@@ -225,14 +225,14 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
result.setLoad(loadAggregateWithUnits);
}
- if (scheduleIdsMap.get(heapComittedMetric) != null) {
- MeasurementAggregate heapCommitedAggregate =
measurementManager.getAggregate(subject,
- scheduleIdsMap.get(heapComittedMetric), beginTime, endTime);
- StorageNodeLoadComposite.MeasurementAggregateWithUnits
heapCommitedAggregateWithUnits = new
StorageNodeLoadComposite.MeasurementAggregateWithUnits(
- heapCommitedAggregate, MeasurementUnits.BYTES);
-
heapCommitedAggregateWithUnits.setFormattedValue(getSummaryString(heapCommitedAggregate,
- MeasurementUnits.BYTES));
- result.setHeapCommited(heapCommitedAggregateWithUnits);
+ if (scheduleIdsMap.get(heapCommittedMetric) != null) {
+ MeasurementAggregate heapCommittedAggregate =
measurementManager.getAggregate(subject,
+ scheduleIdsMap.get(heapCommittedMetric), beginTime, endTime);
+ StorageNodeLoadComposite.MeasurementAggregateWithUnits
heapCommittedAggregateWithUnits = new
StorageNodeLoadComposite.MeasurementAggregateWithUnits(
+ heapCommittedAggregate, MeasurementUnits.BYTES);
+
heapCommittedAggregateWithUnits.setFormattedValue(getSummaryString(heapCommittedAggregate,
+ MeasurementUnits.BYTES));
+ result.setHeapCommitted(heapCommittedAggregateWithUnits);
}
if (scheduleIdsMap.get(heapUsedMetric) != null) {
MeasurementAggregate heapUsedAggregate =
measurementManager.getAggregate(subject,
@@ -243,6 +243,15 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
.setFormattedValue(getSummaryString(heapUsedAggregate,
MeasurementUnits.BYTES));
result.setHeapUsed(heapUsedAggregateWithUnits);
}
+ if (scheduleIdsMap.get(heapUsedPercentageMetric) != null) {
+ MeasurementAggregate heapUsedPercentageAggregate =
measurementManager.getAggregate(subject,
+ scheduleIdsMap.get(heapUsedPercentageMetric), beginTime, endTime);
+ StorageNodeLoadComposite.MeasurementAggregateWithUnits
heapUsedPercentageAggregateWithUnits = new
StorageNodeLoadComposite.MeasurementAggregateWithUnits(
+ heapUsedPercentageAggregate, MeasurementUnits.PERCENTAGE);
+
heapUsedPercentageAggregateWithUnits.setFormattedValue(getSummaryString(heapUsedPercentageAggregate,
+ MeasurementUnits.PERCENTAGE));
+ result.setHeapPercentageUsed(heapUsedPercentageAggregateWithUnits);
+ }
}
return result;
@@ -269,7 +278,7 @@ public class StorageNodeManagerBean implements
StorageNodeManagerLocal, StorageN
entityManager);
return runner.execute();
}
-
+
private String getSummaryString(MeasurementAggregate aggregate, MeasurementUnits
units) {
String formattedValue = "Min: "
+ MeasurementConverter.format(aggregate.getMin(), units, true)