mirror of https://github.com/acidanthera/audk.git
auto adjust pcd settings when display existing ModuleSA settings. if new PCD added/deleted in MSA file, in platform FrameworkModules, the change of PCD will reflect in the display after you click settings.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@1214 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
6f02e338e7
commit
1dac04abec
|
@ -102,13 +102,13 @@ public class FpdFileContents {
|
|||
}
|
||||
ListIterator<ModuleSADocument.ModuleSA> li = l.listIterator();
|
||||
while (li.hasNext()) {
|
||||
ModuleSADocument.ModuleSA msa = li.next();
|
||||
if (msa.getPcdBuildDefinition() == null || msa.getPcdBuildDefinition().getPcdDataList() == null) {
|
||||
ModuleSADocument.ModuleSA moduleSa = li.next();
|
||||
if (moduleSa.getPcdBuildDefinition() == null || moduleSa.getPcdBuildDefinition().getPcdDataList() == null) {
|
||||
continue;
|
||||
}
|
||||
String ModuleInfo = msa.getModuleGuid() + " " + msa.getModuleVersion() +
|
||||
" " + msa.getPackageGuid() + " " + msa.getPackageVersion() + " " + listToString(msa.getSupArchList());
|
||||
List<PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData> lp = msa.getPcdBuildDefinition().getPcdDataList();
|
||||
String ModuleInfo = moduleSa.getModuleGuid() + " " + moduleSa.getModuleVersion() +
|
||||
" " + moduleSa.getPackageGuid() + " " + moduleSa.getPackageVersion() + " " + listToString(moduleSa.getSupArchList());
|
||||
List<PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData> lp = moduleSa.getPcdBuildDefinition().getPcdDataList();
|
||||
ListIterator<PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData> lpi = lp.listIterator();
|
||||
while (lpi.hasNext()) {
|
||||
PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData pcdData = lpi.next();
|
||||
|
@ -230,32 +230,32 @@ public class FpdFileContents {
|
|||
}
|
||||
ListIterator li = getfpdFrameworkModules().getModuleSAList().listIterator();
|
||||
while(li.hasNext()) {
|
||||
ModuleSADocument.ModuleSA msa = (ModuleSADocument.ModuleSA)li.next();
|
||||
if (msa.getModuleGuid().equalsIgnoreCase(s[0]) && msa.getPackageGuid().equalsIgnoreCase(s[2])) {
|
||||
if (msa.getModuleVersion() != null) {
|
||||
if (!msa.getModuleVersion().equals(s[1])) {
|
||||
ModuleSADocument.ModuleSA moduleSa = (ModuleSADocument.ModuleSA)li.next();
|
||||
if (moduleSa.getModuleGuid().equalsIgnoreCase(s[0]) && moduleSa.getPackageGuid().equalsIgnoreCase(s[2])) {
|
||||
if (moduleSa.getModuleVersion() != null) {
|
||||
if (!moduleSa.getModuleVersion().equals(s[1])) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (msa.getPackageVersion() != null) {
|
||||
if (!msa.getPackageVersion().equals(s[3])) {
|
||||
if (moduleSa.getPackageVersion() != null) {
|
||||
if (!moduleSa.getPackageVersion().equals(s[3])) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
//ToDo add arch check for s[4]
|
||||
if (msa.getSupArchList() != null) {
|
||||
if (!listToString(msa.getSupArchList()).equals(s[4])) {
|
||||
if (moduleSa.getSupArchList() != null) {
|
||||
if (!listToString(moduleSa.getSupArchList()).equals(s[4])) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
return msa;
|
||||
return moduleSa;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
private ModuleSADocument.ModuleSA getModuleSA(int i) {
|
||||
ModuleSADocument.ModuleSA msa = null;
|
||||
ModuleSADocument.ModuleSA moduleSa = null;
|
||||
if (fpdRoot.getFrameworkModules() == null) {
|
||||
return null;
|
||||
}
|
||||
|
@ -264,10 +264,10 @@ public class FpdFileContents {
|
|||
for (int j = 0; j < i; ++j) {
|
||||
cursor.toNextSibling();
|
||||
}
|
||||
msa = (ModuleSADocument.ModuleSA)cursor.getObject();
|
||||
moduleSa = (ModuleSADocument.ModuleSA)cursor.getObject();
|
||||
}
|
||||
cursor.dispose();
|
||||
return msa;
|
||||
return moduleSa;
|
||||
}
|
||||
|
||||
public void removeModuleSA(int i) {
|
||||
|
@ -311,6 +311,103 @@ public class FpdFileContents {
|
|||
cursor.dispose();
|
||||
}
|
||||
|
||||
public boolean adjustPcd (int seqModuleSa) throws Exception {
|
||||
boolean dataModified = false;
|
||||
ModuleSADocument.ModuleSA moduleSa = getModuleSA(seqModuleSa);
|
||||
int pcdCount = getPcdDataCount(seqModuleSa);
|
||||
String[][] saaModuleSaPcd = new String[pcdCount][7];
|
||||
getPcdData(seqModuleSa, saaModuleSaPcd);
|
||||
String mg = moduleSa.getModuleGuid();
|
||||
String mv = moduleSa.getModuleVersion();
|
||||
String pg = moduleSa.getPackageGuid();
|
||||
String pv = moduleSa.getPackageVersion();
|
||||
String arch = listToString(moduleSa.getSupArchList());
|
||||
//
|
||||
// delete pcd in ModuleSA but not in MSA files any longer.
|
||||
//
|
||||
String moduleKey = mg + " " + mv + " " + pg + " " + pv + " " + arch;
|
||||
int libCount = getLibraryInstancesCount(moduleKey);
|
||||
String[][] saaLib = new String[libCount][5];
|
||||
getLibraryInstances(moduleKey, saaLib);
|
||||
ModuleIdentification mi = GlobalData.getModuleId(moduleKey);
|
||||
Vector<ModuleIdentification> vMi = new Vector<ModuleIdentification>();
|
||||
vMi.add(mi);
|
||||
try {
|
||||
nextPcd:for (int i = 0; i < saaModuleSaPcd.length; ++i) {
|
||||
if (GlobalData.pcdInMsa(saaModuleSaPcd[i][0], saaModuleSaPcd[i][1], mi)){
|
||||
continue;
|
||||
}
|
||||
for (int j = 0; j < saaLib.length; ++j) {
|
||||
String libKey = saaLib[j][1] + " " + saaLib[j][2] + " " + saaLib[j][3] + " " + saaLib[j][4];
|
||||
ModuleIdentification libMi = GlobalData.getModuleId(libKey);
|
||||
vMi.add(libMi);
|
||||
if (GlobalData.pcdInMsa(saaModuleSaPcd[i][0], saaModuleSaPcd[i][1], libMi)) {
|
||||
continue nextPcd;
|
||||
}
|
||||
}
|
||||
removePcdData(seqModuleSa, saaModuleSaPcd[i][0], saaModuleSaPcd[i][1]);
|
||||
dataModified = true;
|
||||
}
|
||||
}
|
||||
catch (Exception e) {
|
||||
|
||||
}
|
||||
//
|
||||
// add new Pcd from MSA file to ModuleSA.
|
||||
//
|
||||
try {
|
||||
|
||||
for (int i = 0; i < vMi.size(); ++i) {
|
||||
ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = (ModuleSurfaceAreaDocument.ModuleSurfaceArea) GlobalData
|
||||
.getModuleXmlObject(vMi
|
||||
.get(i));
|
||||
if (msa.getPcdCoded() == null || msa.getPcdCoded().getPcdEntryList() == null) {
|
||||
continue;
|
||||
}
|
||||
ListIterator li = msa.getPcdCoded().getPcdEntryList().listIterator();
|
||||
msaPcdIter:while (li.hasNext()) {
|
||||
PcdCodedDocument.PcdCoded.PcdEntry msaPcd = (PcdCodedDocument.PcdCoded.PcdEntry) li.next();
|
||||
ArrayList<String> al = getDynPcdMapValue(msaPcd.getCName() + " " + msaPcd.getTokenSpaceGuidCName());
|
||||
if (al != null) {
|
||||
for (int j = 0; j < al.size(); ++j) {
|
||||
if (al.get(j).contains(moduleKey)) {
|
||||
continue msaPcdIter;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Map<String, XmlObject> m = new HashMap<String, XmlObject>();
|
||||
m.put("ModuleSurfaceArea", msa);
|
||||
SurfaceAreaQuery.setDoc(m);
|
||||
PackageIdentification[] depPkgs = SurfaceAreaQuery.getDependencePkg(null);
|
||||
PcdDeclarationsDocument.PcdDeclarations.PcdEntry spdPcd = LookupPcdDeclaration(msaPcd, depPkgs);
|
||||
if (spdPcd == null) {
|
||||
//
|
||||
// ToDo Error
|
||||
//
|
||||
throw new PcdDeclNotFound("No Declaration for PCD Entry " + msaPcd.getCName() + " in Module "
|
||||
+ mi.getName());
|
||||
}
|
||||
//
|
||||
// AddItem to ModuleSA PcdBuildDefinitions
|
||||
//
|
||||
String defaultVal = msaPcd.getDefaultValue() == null ? spdPcd.getDefaultValue()
|
||||
: msaPcd.getDefaultValue();
|
||||
|
||||
genPcdData(msaPcd.getCName(), spdPcd.getToken(), msaPcd.getTokenSpaceGuidCName(),
|
||||
msaPcd.getPcdItemType().toString(), spdPcd.getDatumType() + "", defaultVal, moduleSa);
|
||||
dataModified = true;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
catch (Exception e){
|
||||
throw e;
|
||||
}
|
||||
|
||||
return dataModified;
|
||||
}
|
||||
|
||||
private void maintainDynPcdMap(String pcdKey, String moduleInfo) {
|
||||
|
||||
ArrayList<String> al = dynPcdMap.get(pcdKey);
|
||||
|
@ -340,7 +437,7 @@ public class FpdFileContents {
|
|||
//
|
||||
// key for ModuleSA : "ModuleGuid ModuleVer PackageGuid PackageVer Arch"
|
||||
//
|
||||
public int getPcdDataCount(int i){
|
||||
public int getPcdDataCount (int i){
|
||||
ModuleSADocument.ModuleSA msa = getModuleSA(i);
|
||||
|
||||
if (msa == null || msa.getPcdBuildDefinition() == null || msa.getPcdBuildDefinition().getPcdDataList() == null){
|
||||
|
@ -350,7 +447,7 @@ public class FpdFileContents {
|
|||
|
||||
}
|
||||
|
||||
public void getPcdData(int i, String[][] saa) {
|
||||
public void getPcdData (int i, String[][] saa) {
|
||||
ModuleSADocument.ModuleSA msa = getModuleSA(i);
|
||||
|
||||
if (msa == null || msa.getPcdBuildDefinition() == null || msa.getPcdBuildDefinition().getPcdDataList() == null){
|
||||
|
@ -370,13 +467,46 @@ public class FpdFileContents {
|
|||
}
|
||||
}
|
||||
|
||||
public void updatePcdData(String key, String cName, String tsGuid, String itemType, String maxSize, String value){
|
||||
ModuleSADocument.ModuleSA msa = getModuleSA(key);
|
||||
if (msa == null || msa.getPcdBuildDefinition() == null){
|
||||
public void removePcdData (int seqModuleSa, String cName, String tsGuid) {
|
||||
ModuleSADocument.ModuleSA moduleSa = getModuleSA(seqModuleSa);
|
||||
if (moduleSa == null || moduleSa.getPcdBuildDefinition() == null){
|
||||
return;
|
||||
}
|
||||
|
||||
XmlCursor cursor = msa.getPcdBuildDefinition().newCursor();
|
||||
String mg = moduleSa.getModuleGuid();
|
||||
String mv = moduleSa.getModuleVersion();
|
||||
String pg = moduleSa.getPackageGuid();
|
||||
String pv = moduleSa.getPackageVersion();
|
||||
String arch = listToString(moduleSa.getSupArchList());
|
||||
String moduleKey = mg + " " + mv + " " + pg + " " + pv + " " + arch;
|
||||
|
||||
XmlCursor cursor = moduleSa.getPcdBuildDefinition().newCursor();
|
||||
if (cursor.toFirstChild()){
|
||||
|
||||
do {
|
||||
PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData pcdData = (PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData)cursor.getObject();
|
||||
if (pcdData.getCName().equals(cName) && pcdData.getTokenSpaceGuidCName().equals(tsGuid)) {
|
||||
maintainDynPcdMap(cName + " " + tsGuid, moduleKey);
|
||||
if (getPcdDataCount(seqModuleSa) == 1) {
|
||||
cursor.toParent();
|
||||
}
|
||||
cursor.removeXml();
|
||||
break;
|
||||
}
|
||||
}
|
||||
while(cursor.toNextSibling());
|
||||
|
||||
}
|
||||
cursor.dispose();
|
||||
}
|
||||
|
||||
public void updatePcdData (String key, String cName, String tsGuid, String itemType, String maxSize, String value){
|
||||
ModuleSADocument.ModuleSA moduleSa = getModuleSA(key);
|
||||
if (moduleSa == null || moduleSa.getPcdBuildDefinition() == null){
|
||||
return;
|
||||
}
|
||||
|
||||
XmlCursor cursor = moduleSa.getPcdBuildDefinition().newCursor();
|
||||
if (cursor.toFirstChild()){
|
||||
do {
|
||||
PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData pcdData = (PcdBuildDefinitionDocument.PcdBuildDefinition.PcdData)cursor.getObject();
|
||||
|
@ -400,7 +530,7 @@ public class FpdFileContents {
|
|||
* @param sa Results: HelpText, Original item type.
|
||||
* @return
|
||||
*/
|
||||
public boolean getPcdBuildDataInfo(ModuleIdentification mi, String cName, String[] sa) throws Exception{
|
||||
public boolean getPcdBuildDataInfo(ModuleIdentification mi, String cName, String tsGuid, String[] sa) throws Exception{
|
||||
try {
|
||||
|
||||
ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = (ModuleSurfaceAreaDocument.ModuleSurfaceArea)GlobalData.getModuleXmlObject(mi);
|
||||
|
@ -422,6 +552,9 @@ public class FpdFileContents {
|
|||
if (!msaPcd.getCName().equals(cName)) {
|
||||
continue;
|
||||
}
|
||||
if (!msaPcd.getTokenSpaceGuidCName().equals(tsGuid)) {
|
||||
continue;
|
||||
}
|
||||
PcdDeclarationsDocument.PcdDeclarations.PcdEntry spdPcd = LookupPcdDeclaration(msaPcd, depPkgs);
|
||||
if (spdPcd == null) {
|
||||
//
|
||||
|
@ -571,7 +704,7 @@ public class FpdFileContents {
|
|||
XmlCursor cursor = instance.newCursor();
|
||||
try{
|
||||
String comment = "Pkg: " + pn + " Mod: " + mn
|
||||
+ " Path: " + GlobalData.getMsaFile(libMi).getPath();
|
||||
+ " Path: " + GlobalData.getMsaFile(libMi).getPath().substring(System.getenv("WORKSPACE").length() + 1);
|
||||
cursor.insertComment(comment);
|
||||
}
|
||||
catch (Exception e){
|
||||
|
@ -830,7 +963,7 @@ public class FpdFileContents {
|
|||
XmlCursor cursor = msa.newCursor();
|
||||
try{
|
||||
String comment = "Mod: " + mi.getName() + " Type: " + mi.getModuleType() + " Path: "
|
||||
+ GlobalData.getMsaFile(mi).getPath();
|
||||
+ GlobalData.getMsaFile(mi).getPath().substring(System.getenv("WORKSPACE").length() + 1);
|
||||
cursor.insertComment(comment);
|
||||
}
|
||||
catch(Exception e){
|
||||
|
|
|
@ -336,6 +336,15 @@ public class FpdFrameworkModules extends IInternalFrame {
|
|||
|
||||
TableSorter sorter = (TableSorter)jTableFpdModules.getModel();
|
||||
selectedRow = sorter.modelIndex(selectedRow);
|
||||
try {
|
||||
if (ffc.adjustPcd(selectedRow)) {
|
||||
docConsole.setSaved(false);
|
||||
}
|
||||
}
|
||||
catch (Exception exp) {
|
||||
JOptionPane.showMessageDialog(frame, exp.getMessage());
|
||||
return;
|
||||
}
|
||||
|
||||
if (settingDlg == null) {
|
||||
settingDlg = new FpdModuleSA(ffc);
|
||||
|
@ -355,6 +364,7 @@ public class FpdFrameworkModules extends IInternalFrame {
|
|||
}
|
||||
return jButtonSettings;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* This method initializes jButton2
|
||||
|
|
|
@ -551,8 +551,9 @@ public class FpdModuleSA extends JDialog implements ActionListener {
|
|||
else{
|
||||
int selectedRow = lsm.getMinSelectionIndex();
|
||||
String cName = jTablePcd.getValueAt(selectedRow, 0)+"";
|
||||
String tsGuid = jTablePcd.getValueAt(selectedRow, 1)+"";
|
||||
String[] pcdInfo = {"", ""};
|
||||
getPcdInfo(cName, pcdInfo);
|
||||
getPcdInfo(cName, tsGuid, pcdInfo);
|
||||
jTextAreaPcdHelp.setText(pcdInfo[0]);
|
||||
initComboBox(pcdInfo[1]);
|
||||
jComboBoxItemType.setSelectedItem(pcdInfo[1]);
|
||||
|
@ -632,17 +633,17 @@ public class FpdModuleSA extends JDialog implements ActionListener {
|
|||
}
|
||||
}
|
||||
|
||||
private void getPcdInfo(String cName, String[] sa) {
|
||||
private void getPcdInfo(String cName, String tsGuid, String[] sa) {
|
||||
String[][] saa = new String[ffc.getLibraryInstancesCount(moduleKey)][5];
|
||||
ffc.getLibraryInstances(moduleKey, saa);
|
||||
|
||||
try{
|
||||
if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(moduleKey), cName, sa)) {
|
||||
if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(moduleKey), cName, tsGuid, sa)) {
|
||||
return;
|
||||
}
|
||||
for (int j = 0; j < saa.length; ++j) {
|
||||
if (ffc.getPcdBuildDataInfo(GlobalData.getModuleId(saa[j][1] + " " + saa[j][2] + " " + saa[j][3] + " " + saa[j][4]),
|
||||
cName, sa)) {
|
||||
cName, tsGuid, sa)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ import org.apache.xmlbeans.XmlObject;
|
|||
import org.tianocore.DbPathAndFilename;
|
||||
import org.tianocore.FrameworkDatabaseDocument;
|
||||
import org.tianocore.ModuleSurfaceAreaDocument;
|
||||
import org.tianocore.PcdCodedDocument;
|
||||
import org.tianocore.ModuleSurfaceAreaDocument.ModuleSurfaceArea;
|
||||
import org.tianocore.frameworkwizard.platform.ui.id.FpdModuleIdentification;
|
||||
import org.tianocore.frameworkwizard.platform.ui.id.ModuleIdentification;
|
||||
|
@ -464,7 +465,7 @@ public class GlobalData {
|
|||
return null;
|
||||
}
|
||||
|
||||
public static Vector<String> getModuleSupArchs(ModuleIdentification mi) throws Exception{
|
||||
public static Vector<String> getModuleSupArchs(ModuleIdentification mi) throws Exception {
|
||||
Vector<String> vArchs = null;
|
||||
ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = (ModuleSurfaceAreaDocument.ModuleSurfaceArea)getModuleXmlObject(mi);
|
||||
if (msa.getModuleDefinitions() == null || msa.getModuleDefinitions().getSupportedArchitectures() == null) {
|
||||
|
@ -481,6 +482,21 @@ public class GlobalData {
|
|||
return vArchs;
|
||||
}
|
||||
|
||||
public static boolean pcdInMsa (String cName, String tsGuid, ModuleIdentification mi) throws Exception {
|
||||
ModuleSurfaceAreaDocument.ModuleSurfaceArea msa = (ModuleSurfaceAreaDocument.ModuleSurfaceArea)getModuleXmlObject(mi);
|
||||
if (msa.getPcdCoded() == null || msa.getPcdCoded().getPcdEntryList() == null) {
|
||||
return false;
|
||||
}
|
||||
ListIterator li = msa.getPcdCoded().getPcdEntryList().listIterator();
|
||||
while (li.hasNext()) {
|
||||
PcdCodedDocument.PcdCoded.PcdEntry msaPcd = (PcdCodedDocument.PcdCoded.PcdEntry)li.next();
|
||||
if (msaPcd.getCName().equals(cName) && msaPcd.getTokenSpaceGuidCName().equals(tsGuid)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
final class KeyComparator implements Comparator<String> {
|
||||
|
|
|
@ -893,71 +893,10 @@ public class SurfaceAreaQuery {
|
|||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the PcdToken array from module's surface area document. The array
|
||||
* should contains following data:
|
||||
* <p>
|
||||
* -------------------------------------------------------------------
|
||||
* </p>
|
||||
* <p>
|
||||
* CName | ItemType | TokenspaceName | DefaultValue | Usage | HelpText
|
||||
* </p>
|
||||
* <p>
|
||||
* -------------------------------------------------------------------
|
||||
* </p>
|
||||
* <p>
|
||||
* Note: Until new schema applying, now we can only get CName, ItemType,
|
||||
* </p>
|
||||
*
|
||||
* @return 2-array table contains all information of PCD token retrieved
|
||||
* from MSA.
|
||||
*/
|
||||
public static Object[][] etModulePCDTokenArray() {
|
||||
return null;
|
||||
// int index;
|
||||
// Object[][] result;
|
||||
// PCDs.PcdData[] pcds;
|
||||
// String[] xPath = new String[] { "/PcdData" };
|
||||
// XmlObject[] returns = get("PCDs", xPath);
|
||||
//
|
||||
// if ((returns == null) || (returns.length == 0)) {
|
||||
// return null;
|
||||
// }
|
||||
//
|
||||
// pcds = (PCDs.PcdData[]) returns;
|
||||
// result = new Object[pcds.length][6];
|
||||
// for (index = 0; index < pcds.length; index++) {
|
||||
// //
|
||||
// // Get CName
|
||||
// //
|
||||
// result[index][0] = pcds[index].getCName();
|
||||
// //
|
||||
// // Get ItemType: FEATURE_FLAG, FIXED_AT_BUILD, PATCHABLE_IN_MODLE,
|
||||
// // DYNAMIC, DYNAMIC_EX
|
||||
// //
|
||||
// if (pcds[index].getItemType() != null) {
|
||||
// result[index][1] = pcds[index].getItemType().toString();
|
||||
// } else {
|
||||
// result[index][1] = null;
|
||||
// }
|
||||
//
|
||||
// //
|
||||
// // BUGBUG: following field can *not* be got from current MSA until
|
||||
// // schema changed.
|
||||
// //
|
||||
// // result [index][2] = pcds[index].getTokenSpaceName();
|
||||
// result[index][2] = null;
|
||||
// result[index][3] = pcds[index].getDefaultValue();
|
||||
// // result [index][4] = pcds[index].getUsage ();
|
||||
// result[index][4] = null;
|
||||
// // result [index][5] = pcds[index].getHelpText ();
|
||||
// result[index][5] = null;
|
||||
// }
|
||||
// return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Retrieve MAS header
|
||||
* Retrieve MSA header
|
||||
*
|
||||
* @return
|
||||
* @return
|
||||
|
|
Loading…
Reference in New Issue