private DefaultTableModel optionsTableModel = null;\r
private FpdFileContents ffc = null;\r
private String moduleKey = null;\r
+ private int moduleSaNum = -1;\r
private HashMap<String, ArrayList<String>> classInstanceMap = null;\r
private ArrayList<String> classProduced = null;\r
private HashMap<String, ArrayList<String>> classConsumed = null;\r
\r
public void setKey(String k, int i, OpeningPlatformType dc){\r
this.moduleKey = k;\r
+ moduleSaNum = i;\r
this.docConsole = dc;\r
classProduced = null;\r
classConsumed = null;\r
String[][] saa = new String[instanceCount][5];\r
ffc.getLibraryInstances(key, saa);\r
for (int i = 0; i < saa.length; ++i) {\r
- ModuleIdentification mi = getModuleId(saa[i][1] + " " + saa[i][2] + " " + saa[i][3] + " " + saa[i][4]);\r
+ ModuleIdentification mi = GlobalData.getModuleId(saa[i][1] + " " + saa[i][2] + " " + saa[i][3] + " " + saa[i][4]);\r
if (mi != null) {\r
saa[i][0] = mi.getName();\r
saa[i][2] = mi.getVersion();\r
//\r
// display module SA options\r
//\r
+ jTextFieldFvBinding.setText("");\r
String fvBinding = ffc.getFvBinding(key);\r
if (fvBinding != null) {\r
jTextFieldFvBinding.setText(fvBinding);\r
}\r
+ jTextFieldFileGuid.setText("");\r
String fileGuid = ffc.getFfsFileNameGuid(key);\r
if (fileGuid != null) {\r
jTextFieldFileGuid.setText(fileGuid);\r
}\r
+ jTextFieldFfsKey.setText("");\r
String ffsKey = ffc.getFfsFormatKey(key);\r
if (ffsKey != null) {\r
jTextFieldFfsKey.setText(ffsKey);\r
}\r
\r
private void resolveLibraryInstances(String key) {\r
- ModuleIdentification mi = getModuleId(key);\r
+ ModuleIdentification mi = GlobalData.getModuleId(key);\r
PackageIdentification[] depPkgList = null;\r
try{\r
Map<String, XmlObject> m = GlobalData.getNativeMsa(mi);\r
this.classProduced.add(classProduced[i]);\r
}\r
}\r
- //\r
- // Get classes unresolved\r
- //\r
-// Iterator<String> lip = this.classProduced.listIterator();\r
-// while(lip.hasNext()){\r
-// String clsProduced = lip.next();\r
-// this.classConsumed.remove(clsProduced);\r
-//\r
-// }\r
+ \r
//\r
// find potential instances in all dependency pkgs for classes still in classConsumed.\r
//\r
}\r
\r
private void removeInstance(String key) {\r
- ModuleIdentification mi = getModuleId(key); \r
+ ModuleIdentification mi = GlobalData.getModuleId(key); \r
//\r
// remove pcd information of instance from current ModuleSA\r
//\r
\r
}\r
\r
- private ModuleIdentification getModuleId(String key){\r
- //\r
- // Get ModuleGuid, ModuleVersion, PackageGuid, PackageVersion, Arch into string array.\r
- //\r
- String[] keyPart = key.split(" ");\r
- Set<PackageIdentification> spi = GlobalData.getPackageList();\r
- Iterator ispi = spi.iterator();\r
- \r
- while(ispi.hasNext()) {\r
- PackageIdentification pi = (PackageIdentification)ispi.next();\r
- if ( !pi.getGuid().equals(keyPart[2])){ \r
-\r
- continue;\r
- }\r
- if (keyPart[3] != null && keyPart[3].length() > 0 && !keyPart[3].equals("null")){\r
- if(!pi.getVersion().equals(keyPart[3])){\r
- continue;\r
- }\r
- }\r
- Set<ModuleIdentification> smi = GlobalData.getModules(pi);\r
- Iterator ismi = smi.iterator();\r
- while(ismi.hasNext()) {\r
- ModuleIdentification mi = (ModuleIdentification)ismi.next();\r
- if (mi.getGuid().equals(keyPart[0])){\r
- if (keyPart[1] != null && keyPart[1].length() > 0 && !keyPart[1].equals("null")){\r
- if(!mi.getVersion().equals(keyPart[1])){\r
- continue;\r
- }\r
- }\r
-\r
- return mi;\r
- }\r
- }\r
- }\r
- return null;\r
- }\r
\r
private String[] getClassProduced(ModuleIdentification mi){\r
\r
jPanelPcd.add(getJPanelPcdSouth(), java.awt.BorderLayout.SOUTH);\r
jPanelPcd.addComponentListener(new java.awt.event.ComponentAdapter() {\r
public void componentShown(java.awt.event.ComponentEvent e) {\r
-// initPcdBuildDefinition(moduleKey);\r
+ initPcdBuildDefinition(moduleSaNum);\r
}\r
});\r
\r
else{\r
int selectedRow = lsm.getMinSelectionIndex();\r
String cName = jTablePcd.getValueAt(selectedRow, 0)+"";\r
+ String tsGuid = jTablePcd.getValueAt(selectedRow, 1)+"";\r
String[] pcdInfo = {"", ""};\r
- getPcdInfo(cName, pcdInfo);\r
+ getPcdInfo(cName, tsGuid, pcdInfo);\r
jTextAreaPcdHelp.setText(pcdInfo[0]);\r
initComboBox(pcdInfo[1]);\r
jComboBoxItemType.setSelectedItem(pcdInfo[1]);\r
}\r
}\r
\r
- private void getPcdInfo(String cName, String[] sa) {\r
+ private void getPcdInfo(String cName, String tsGuid, String[] sa) {\r
String[][] saa = new String[ffc.getLibraryInstancesCount(moduleKey)][5];\r
ffc.getLibraryInstances(moduleKey, saa);\r
\r
try{\r
- if (ffc.getPcdBuildDataInfo(getModuleId(moduleKey), cName, sa)) {\r
+ if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(moduleKey), cName, tsGuid, sa)) {\r
return;\r
}\r
for (int j = 0; j < saa.length; ++j) {\r
- if (ffc.getPcdBuildDataInfo(getModuleId(saa[j][1] + " " + saa[j][2] + " " + saa[j][3] + " " + saa[j][4]),\r
- cName, sa)) {\r
+ if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(saa[j][1] + " " + saa[j][2] + " " + saa[j][3] + " " + saa[j][4]),\r
+ cName, tsGuid, sa)) {\r
return;\r
}\r
}\r
selectedInstancesTableModel.addColumn("PackageVersion");\r
jTableSelectedInstances = new JTable(selectedInstancesTableModel);\r
jTableSelectedInstances.setRowHeight(20);\r
- jTableSelectedInstances.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
+ jTableSelectedInstances.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS);\r
jTableSelectedInstances.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
\r
}\r
while(li.hasNext()) {\r
String instance = li.next();\r
String[] s = {"", "", "", "", ""};\r
- if (getModuleId(instance) != null) {\r
- s[0] = getModuleId(instance).getName();\r
+ if (GlobalData.getModuleId(instance) != null) {\r
+ s[0] = GlobalData.getModuleId(instance).getName();\r
}\r
\r
String[] instancePart = instance.split(" ");\r
libInstanceTableModel.addColumn("PackageVersion");\r
jTableLibInstances = new JTable(libInstanceTableModel);\r
jTableLibInstances.setRowHeight(20);\r
- jTableLibInstances.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);\r
+ jTableLibInstances.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_SUBSEQUENT_COLUMNS);\r
jTableLibInstances.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);\r
\r
}\r
libInstanceTableModel.getValueAt(row, 2) + " " +\r
libInstanceTableModel.getValueAt(row, 3) + " " +\r
libInstanceTableModel.getValueAt(row, 4);\r
- ModuleIdentification libMi = getModuleId(instanceValue);\r
+ ModuleIdentification libMi = GlobalData.getModuleId(instanceValue);\r
ffc.genLibraryInstance(libMi, moduleKey);\r
//\r
// Add pcd information of selected instance to current moduleSA\r
ffc.addFrameworkModulesPcdBuildDefs(libMi, null, ffc.getModuleSA(moduleKey));\r
}\r
catch (Exception exception) {\r
- JOptionPane.showMessageDialog(frame, "PCD Insertion Fail. " + exception.getMessage());\r
+ JOptionPane.showMessageDialog(frame, "Adding Instance" + s[0] + ": "+ exception.getMessage());\r
}\r
resolveLibraryInstances(instanceValue);\r
}\r
jLabelFfsFileGuid = new JLabel();\r
jLabelFfsFileGuid.setText("FFS File GUID");\r
jLabelFfsFileGuid.setPreferredSize(new java.awt.Dimension(90,16));\r
+ jLabelFfsFileGuid.setVisible(false);\r
jLabelFvBinding = new JLabel();\r
jLabelFvBinding.setText("FV Binding");\r
jLabelFvBinding.setPreferredSize(new java.awt.Dimension(90,16));\r
if (jTextFieldFileGuid == null) {\r
jTextFieldFileGuid = new JTextField();\r
jTextFieldFileGuid.setPreferredSize(new java.awt.Dimension(300,20));\r
+ jTextFieldFileGuid.setVisible(false);\r
jTextFieldFileGuid.addFocusListener(new java.awt.event.FocusAdapter() {\r
public void focusLost(java.awt.event.FocusEvent e) {\r
String originalFileGuid = ffc.getFfsFileNameGuid(moduleKey);\r
private JTextField getJTextFieldFfsKey() {\r
if (jTextFieldFfsKey == null) {\r
jTextFieldFfsKey = new JTextField();\r
- jTextFieldFfsKey.setPreferredSize(new java.awt.Dimension(150,20));\r
+ jTextFieldFfsKey.setPreferredSize(new java.awt.Dimension(250,20));\r
jTextFieldFfsKey.addFocusListener(new java.awt.event.FocusAdapter() {\r
public void focusLost(java.awt.event.FocusEvent e) {\r
String originalFfsKey = ffc.getFfsFormatKey(moduleKey);\r