java/code/src/com/redhat/rhn/frontend/action/systems/sdc/SystemHardwareAction.java | 61 +++++-----
java/code/webapp/WEB-INF/pages/systems/sdc/hardware.jsp | 4
2 files changed, 36 insertions(+), 29 deletions(-)
New commits:
commit c479096c33fccba46dd6d940a57057c1bd0ab688
Author: Justin Sherrill <jsherril(a)redhat.com>
Date: Wed Sep 8 16:11:54 2010 -0400
630876 - fixing ISE if viewing the hardware of a system registered with no hardware
diff --git a/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/SystemHardwareAction.java b/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/SystemHardwareAction.java
index c269d2e..c3b1070 100644
--- a/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/SystemHardwareAction.java
+++ b/java/code/src/com/redhat/rhn/frontend/action/systems/sdc/SystemHardwareAction.java
@@ -18,15 +18,16 @@ import com.redhat.rhn.domain.action.Action;
import com.redhat.rhn.domain.action.ActionFactory;
import com.redhat.rhn.domain.server.CPU;
import com.redhat.rhn.domain.server.Device;
+import com.redhat.rhn.domain.server.NetworkInterface;
import com.redhat.rhn.domain.server.Server;
import com.redhat.rhn.domain.server.ServerFactory;
-import com.redhat.rhn.domain.server.NetworkInterface;
import com.redhat.rhn.domain.user.User;
import com.redhat.rhn.frontend.struts.RequestContext;
import com.redhat.rhn.frontend.struts.RhnAction;
import com.redhat.rhn.manager.action.ActionManager;
import com.redhat.rhn.manager.system.SystemManager;
+import org.apache.commons.lang.StringUtils;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
@@ -90,41 +91,43 @@ public class SystemHardwareAction extends RhnAction {
private void setupForm(HttpServletRequest request, CPU cpu, Server server) {
request.setAttribute("system", server);
+ if (cpu != null) {
+ request.setAttribute("cpu_model", cpu.getModel());
+ request.setAttribute("cpu_count", cpu.getNrCPU());
+ request.setAttribute("cpu_mhz", cpu.getMHz());
+ request.setAttribute("cpu_vendor", cpu.getVendor());
+ request.setAttribute("cpu_stepping", cpu.getStepping());
+ request.setAttribute("cpu_family", cpu.getFamily());
+ request.setAttribute("cpu_arch", server.getServerArch().getName());
+ request.setAttribute("cpu_cache", cpu.getCache());
+ }
- request.setAttribute("cpu_model", cpu.getModel());
- request.setAttribute("cpu_count", cpu.getNrCPU());
- request.setAttribute("cpu_mhz", cpu.getMHz());
- request.setAttribute("cpu_vendor", cpu.getVendor());
- request.setAttribute("cpu_stepping", cpu.getStepping());
- request.setAttribute("cpu_family", cpu.getFamily());
- request.setAttribute("cpu_arch", server.getServerArch().getName());
- request.setAttribute("cpu_cache", cpu.getCache());
request.setAttribute("system_ram", server.getRam());
request.setAttribute("system_swap", server.getSwap());
StringBuffer dmiBios = new StringBuffer();
- if (server.getDmi().getBios() != null) {
- if (server.getDmi().getBios().getVendor() != null &&
- server.getDmi().getBios().getVendor() != "") {
- dmiBios.append(server.getDmi().getBios().getVendor() + " ");
- }
- if (server.getDmi().getBios().getVersion() != null &&
- server.getDmi().getBios().getVersion() != "") {
- dmiBios.append(server.getDmi().getBios().getVersion() + " ");
- }
- if (server.getDmi().getBios().getRelease() != null &&
- server.getDmi().getBios().getRelease() != "") {
- dmiBios.append(server.getDmi().getBios().getRelease());
+ if (server.getDmi() != null) {
+
+ if (server.getDmi().getBios() != null) {
+ if (StringUtils.isEmpty(server.getDmi().getBios().getVendor())) {
+ dmiBios.append(server.getDmi().getBios().getVendor() + " ");
+ }
+ if (StringUtils.isEmpty(server.getDmi().getBios().getVersion())) {
+ dmiBios.append(server.getDmi().getBios().getVersion() + " ");
+ }
+ if (StringUtils.isEmpty(server.getDmi().getBios().getRelease())) {
+ dmiBios.append(server.getDmi().getBios().getRelease());
+ }
}
- }
- request.setAttribute("dmi_vendor", server.getDmi().getVendor());
- request.setAttribute("dmi_system", server.getDmi().getSystem());
- request.setAttribute("dmi_product", server.getDmi().getProduct());
- request.setAttribute("dmi_bios", dmiBios.toString());
- request.setAttribute("dmi_asset_tag", server.getDmi().getAsset());
- request.setAttribute("dmi_board", server.getDmi().getBoard());
+ request.setAttribute("dmi_vendor", server.getDmi().getVendor());
+ request.setAttribute("dmi_system", server.getDmi().getSystem());
+ request.setAttribute("dmi_product", server.getDmi().getProduct());
+ request.setAttribute("dmi_bios", dmiBios.toString());
+ request.setAttribute("dmi_asset_tag", server.getDmi().getAsset());
+ request.setAttribute("dmi_board", server.getDmi().getBoard());
+ }
request.setAttribute("network_hostname", server.getHostname());
request.setAttribute("network_ip_addr", server.getIpAddress());
@@ -204,7 +207,7 @@ public class SystemHardwareAction extends RhnAction {
}
List storageDevices = new ArrayList();
- for (Device hd : (List<Device>)ServerFactory.lookupStorageDevicesByServer(server)) {
+ for (Device hd : ServerFactory.lookupStorageDevicesByServer(server)) {
Device d = hd;
Map device = new HashMap();
device.put("description", d.getDescription());
diff --git a/java/code/webapp/WEB-INF/pages/systems/sdc/hardware.jsp b/java/code/webapp/WEB-INF/pages/systems/sdc/hardware.jsp
index ec949aa..e775550 100644
--- a/java/code/webapp/WEB-INF/pages/systems/sdc/hardware.jsp
+++ b/java/code/webapp/WEB-INF/pages/systems/sdc/hardware.jsp
@@ -21,7 +21,11 @@
</html:form>
<h2><bean:message key="sdc.details.hardware.general"/></h2>
+
+ <c:if test="${cpu_mhz != null}" >
(${cpu_count}) ${cpu_model} (${cpu_mhz} MHZ)
+ </c:if>
+
<table class="details">
<tr>
<th>