summaryrefslogtreecommitdiffstats
path: root/src/com
diff options
context:
space:
mode:
authornjames <njames@us.ibm.com>2015-02-13 19:11:43 -0600
committernjames <njames@us.ibm.com>2015-02-13 19:11:43 -0600
commiteb848c4d48f0d90df7f598e51d96bb44163b3281 (patch)
treeb824ad547fec7f71f02b06a7a16f0455e32b1c46 /src/com
parent8c040316e7f5cf88f38c494d46ee06c777f2861f (diff)
downloadserverwiz-eb848c4d48f0d90df7f598e51d96bb44163b3281.tar.gz
serverwiz-eb848c4d48f0d90df7f598e51d96bb44163b3281.zip
fix card hierarchy bug
Diffstat (limited to 'src/com')
-rw-r--r--src/com/ibm/ServerWizard2/MainDialog.java37
-rw-r--r--src/com/ibm/ServerWizard2/SystemModel.java48
-rw-r--r--src/com/ibm/ServerWizard2/TargetWizardController.java42
3 files changed, 90 insertions, 37 deletions
diff --git a/src/com/ibm/ServerWizard2/MainDialog.java b/src/com/ibm/ServerWizard2/MainDialog.java
index 1f812cf..af0299e 100644
--- a/src/com/ibm/ServerWizard2/MainDialog.java
+++ b/src/com/ibm/ServerWizard2/MainDialog.java
@@ -599,13 +599,6 @@ public class MainDialog extends Dialog {
}
}
- public void refreshInstanceTree() {
- currentPath="";
- for (Target target : controller.getRootTargets()) {
- this.updateInstanceTree(target, null);
- }
- btnAddTarget.setEnabled(false);
- }
public void updatePopupMenu(Target selectedTarget) {
if (selectedTarget == null || tree.getSelectionCount()==0) {
@@ -790,6 +783,17 @@ public class MainDialog extends Dialog {
treeitem.removeAll();
treeitem.dispose();
}
+ public void refreshInstanceTree() {
+ currentPath="";
+ if (this.busMode && this.targetForConnections !=null) {
+ this.updateInstanceTree(targetForConnections, null);
+ } else {
+ for (Target target : controller.getRootTargets()) {
+ this.updateInstanceTree(target, null);
+ }
+ }
+ btnAddTarget.setEnabled(false);
+ }
public void updateInstanceTree(Target target, TreeItem parentItem) {
this.updateInstanceTree(target, parentItem, null);
@@ -802,6 +806,9 @@ public class MainDialog extends Dialog {
if (target.isHidden()) {
return;
}
+ if (parentItem==null) {
+ this.clearTreeAll();
+ }
boolean hideBus = false;
String name = target.getName();
String lastPath = currentPath;
@@ -850,7 +857,7 @@ public class MainDialog extends Dialog {
TreeItem treeitem = item;
if (item == null) {
if (parentItem == null) {
- clearTreeAll();
+ //clearTreeAll();
treeitem = new TreeItem(tree, SWT.VIRTUAL | SWT.BORDER);
} else {
treeitem = new TreeItem(parentItem, SWT.VIRTUAL | SWT.BORDER);
@@ -892,12 +899,20 @@ public class MainDialog extends Dialog {
return;
}
Target busTarget = (Target) cmbBusses.getData(cmbBusses.getText());
- if (targetForConnections == null || busTarget == null) {
+ if (targetForConnections == null) {
return;
}
- for (Connection conn : targetForConnections.getBusses().get(busTarget)) {
- addConnection(conn);
+ if (busTarget == null) {
+ for (Target tmpBusTarget : targetForConnections.getBusses().keySet()) {
+ for (Connection conn : targetForConnections.getBusses().get(tmpBusTarget)) {
+ addConnection(conn);
+ }
+ }
+ } else {
+ for (Connection conn : targetForConnections.getBusses().get(busTarget)) {
+ addConnection(conn);
+ }
}
}
diff --git a/src/com/ibm/ServerWizard2/SystemModel.java b/src/com/ibm/ServerWizard2/SystemModel.java
index 39424bc..b74a7b1 100644
--- a/src/com/ibm/ServerWizard2/SystemModel.java
+++ b/src/com/ibm/ServerWizard2/SystemModel.java
@@ -117,18 +117,42 @@ public class SystemModel {
if (entityId>0) {
HashMap<Integer,Vector<SdrRecord>> sdrMap= sdrLookup.get(entityId);
if (sdrMap!=null) {
- Vector<SdrRecord> sdrs = sdrMap.get(entityInst);
- if (sdrs!=null) {
- for (SdrRecord sdr:sdrs ) {
- String msg = "IMPORT MATCH: "+target.getName()+"; "+sdr.toString();
- ServerWizard2.LOGGER.info(msg);
- this.logData=this.logData+msg+"\n";
- ipmiAttr[i]=sdr.getAttributeValue();
- }
- } else {
- String msg = ">>IMPORT ERROR: "+target.getName()+"; Entity ID: "+entityId+"; Entity Inst: "+entityInst+" not found in SDR";
- ServerWizard2.LOGGER.warning(msg);
- this.logData=this.logData+msg+"\n";
+ if (entityId==215) { //APSS is special case
+ Integer apss[] = new Integer[16];
+ for (int x=0;x<16;x++) {
+ Vector<SdrRecord> sdrs = sdrMap.get(x);
+ if (sdrs!=null) {
+ SdrRecord sdr = sdrs.get(0);
+ if (sdr!=null) {
+ apss[x]=sdr.getSensorId();
+ } else {
+ apss[x]=255;
+ }
+ } else {
+ apss[x]=255;
+ }
+ }
+ String apssStr="";
+ String sep=",";
+ for (i=0;i<16;i++) {
+ if (i==15) { sep=""; }
+ apssStr=apssStr+String.format("0x%02X", apss[i])+sep;
+ }
+ this.setGlobalSetting(instPath, "ADC_CHANNEL_SENSOR_NUMBERS",apssStr);
+ } else {
+ Vector<SdrRecord> sdrs = sdrMap.get(entityInst);
+ if (sdrs!=null) {
+ for (SdrRecord sdr:sdrs ) {
+ String msg = "IMPORT MATCH: "+target.getName()+"; "+sdr.toString();
+ ServerWizard2.LOGGER.info(msg);
+ this.logData=this.logData+msg+"\n";
+ ipmiAttr[i]=sdr.getAttributeValue();
+ }
+ } else {
+ String msg = ">>IMPORT ERROR: "+target.getName()+"; Entity ID: "+entityId+"; Entity Inst: "+entityInst+" not found in SDR";
+ ServerWizard2.LOGGER.warning(msg);
+ this.logData=this.logData+msg+"\n";
+ }
}
} else {
String msg = ">>IMPORT ERROR: "+target.getName()+"; Entity ID: "+entityId+ " not found in SDR";
diff --git a/src/com/ibm/ServerWizard2/TargetWizardController.java b/src/com/ibm/ServerWizard2/TargetWizardController.java
index dc5bdf4..e103d76 100644
--- a/src/com/ibm/ServerWizard2/TargetWizardController.java
+++ b/src/com/ibm/ServerWizard2/TargetWizardController.java
@@ -4,8 +4,10 @@ import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.BufferedReader;
import java.io.File;
+import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
+import java.io.StringWriter;
import java.nio.file.Files;
import java.nio.file.StandardCopyOption;
import java.util.HashMap;
@@ -303,22 +305,34 @@ public class TargetWizardController implements PropertyChangeListener {
String line;
String msg="";
try {
- Process proc = Runtime.getRuntime().exec(commandLine);
- proc.waitFor();
- InputStream error = proc.getErrorStream();
- InputStream stdout = proc.getInputStream();
- BufferedReader reader = new BufferedReader (new InputStreamReader(error));
- BufferedReader reader2 = new BufferedReader (new InputStreamReader(stdout));
- while ((line = reader.readLine ()) != null) {
- msg=msg+"ERROR: " + line;
- ServerWizard2.LOGGER.severe("ERROR: " + line);
- }
- while ((line = reader2.readLine ()) != null) {
- msg=msg+line+"\n";
- ServerWizard2.LOGGER.info(line);
+ final ProcessBuilder builder = new ProcessBuilder(commandLine).redirectErrorStream(true);
+
+ final Process process = builder.start();
+ final StringWriter writer = new StringWriter();
+
+ new Thread(new Runnable() {
+ public void run() {
+ char[] buffer = new char[1024];
+ int len;
+ InputStreamReader in = new InputStreamReader(process.getInputStream());
+
+ try {
+ while ((len = in.read(buffer)) != -1) {
+ writer.write(buffer, 0, len);
+ }
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
}
+ }).start();
+
+ final int exitValue = process.waitFor();
+ final String processOutput = writer.toString();
+ ServerWizard2.LOGGER.info(processOutput);
+ ServerWizard2.LOGGER.info("Return Code: "+exitValue);
LogViewerDialog dlg = new LogViewerDialog(null);
- dlg.setData(msg);
+ dlg.setData(processOutput);
dlg.open();
} catch (Exception e){
e.printStackTrace();
OpenPOWER on IntegriCloud