--- /dev/null
+/** @file\r
+ \r
+ The file is used to define Package Dependencies Vector\r
+ \r
+ Copyright (c) 2006, Intel Corporation\r
+ All rights reserved. This program and the accompanying materials\r
+ are licensed and made available under the terms and conditions of the BSD License\r
+ which accompanies this distribution. The full text of the license may be found at\r
+ http://opensource.org/licenses/bsd-license.php\r
+ \r
+ THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ \r
+ **/\r
+package org.tianocore.frameworkwizard.module.Identifications.Externs;\r
+\r
+import java.util.Vector;\r
+\r
+import org.tianocore.frameworkwizard.common.DataType;\r
+import org.tianocore.frameworkwizard.common.EnumerationData;\r
+\r
+public class ExternsVector {\r
+\r
+ private Vector<ExternsIdentification> vExterns = new Vector<ExternsIdentification>();\r
+\r
+ public int findExterns(ExternsIdentification sfi) {\r
+ for (int index = 0; index < vExterns.size(); index++) {\r
+ if (vExterns.elementAt(index).equals(sfi)) {\r
+ return index;\r
+ }\r
+ }\r
+ return -1;\r
+ }\r
+\r
+ public ExternsIdentification getExterns(int index) {\r
+ if (index > -1) {\r
+ return vExterns.elementAt(index);\r
+ } else {\r
+ return null;\r
+ }\r
+ }\r
+\r
+ public void addExterns(ExternsIdentification arg0) {\r
+ vExterns.addElement(arg0);\r
+ }\r
+\r
+ public void setExterns(ExternsIdentification arg0, int arg1) {\r
+ vExterns.setElementAt(arg0, arg1);\r
+ }\r
+\r
+ public void removeExterns(ExternsIdentification arg0) {\r
+ int index = findExterns(arg0);\r
+ if (index > -1) {\r
+ vExterns.removeElementAt(index);\r
+ }\r
+ }\r
+\r
+ public void removeExterns(int index) {\r
+ if (index > -1 && index < this.size()) {\r
+ vExterns.removeElementAt(index);\r
+ }\r
+ }\r
+\r
+ public Vector<ExternsIdentification> getvExterns() {\r
+ return vExterns;\r
+ }\r
+\r
+ public void setvExterns(Vector<ExternsIdentification> Externs) {\r
+ vExterns = Externs;\r
+ }\r
+\r
+ public int size() {\r
+ return this.vExterns.size();\r
+ }\r
+\r
+ public Vector<String> toStringVector(int index) {\r
+ Vector<String> v = new Vector<String>();\r
+\r
+ //\r
+ // For Specification\r
+ //\r
+ if (this.getExterns(index).getType().equals(EnumerationData.EXTERNS_SPECIFICATION)) {\r
+ v.addElement(getExterns(index).getType());\r
+ v.addElement(getExterns(index).getType() + " Name");\r
+ v.addElement(getExterns(index).getName0());\r
+ return v;\r
+ }\r
+\r
+ //\r
+ // For Image\r
+ //\r
+ if (this.getExterns(index).getType().equals(EnumerationData.EXTERNS_IMAGE)) {\r
+ v.addElement(getExterns(index).getType());\r
+ String name = "";\r
+ String value = "";\r
+\r
+ name = EnumerationData.EXTERNS_MODULE_ENTRY_POINT;\r
+ value = this.getExterns(index).getName0();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_MODULE_UNLOAD_IMAGE;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName1()\r
+ + DataType.HTML_LINE_SEPARATOR;\r
+\r
+ v.addElement("<html>" + name + "<html>");\r
+ v.addElement("<html>" + value + "<html>");\r
+ return v;\r
+ }\r
+\r
+ //\r
+ // For Library\r
+ //\r
+ if (this.getExterns(index).getType().equals(EnumerationData.EXTERNS_LIBRARY)) {\r
+ v.addElement(getExterns(index).getType());\r
+ String name = "";\r
+ String value = "";\r
+\r
+ name = EnumerationData.EXTERNS_CONSTRUCTOR;\r
+ value = this.getExterns(index).getName0();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_DESTRUCTOR;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName1()\r
+ + DataType.HTML_LINE_SEPARATOR;\r
+\r
+ v.addElement("<html>" + name + "<html>");\r
+ v.addElement("<html>" + value + "<html>");\r
+ return v;\r
+ }\r
+\r
+ //\r
+ // For Driver\r
+ //\r
+ if (this.getExterns(index).getType().equals(EnumerationData.EXTERNS_DRIVER)) {\r
+ v.addElement(getExterns(index).getType());\r
+ String name = "";\r
+ String value = "";\r
+\r
+ name = EnumerationData.EXTERNS_DRIVER_BINDING;\r
+ value = this.getExterns(index).getName0();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_COMPONENT_NAME;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName1();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_DRIVER_CONFIG;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName2();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_DRIVER_DIAG;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName3()\r
+ + DataType.HTML_LINE_SEPARATOR;\r
+\r
+ v.addElement("<html>" + name + "<html>");\r
+ v.addElement("<html>" + value + "<html>");\r
+ return v;\r
+ }\r
+\r
+ //\r
+ // For Call Back\r
+ //\r
+ if (this.getExterns(index).getType().equals(EnumerationData.EXTERNS_CALL_BACK)) {\r
+ v.addElement(getExterns(index).getType());\r
+ String name = "";\r
+ String value = "";\r
+\r
+ name = EnumerationData.EXTERNS_VIRTUAL_ADDRESS_MAP_CALL_BACK;\r
+ value = this.getExterns(index).getName0();\r
+ name = name + DataType.HTML_LINE_SEPARATOR + EnumerationData.EXTERNS_EXIT_BOOT_SERVICES_CALL_BACK;\r
+ value = value + DataType.HTML_LINE_SEPARATOR + this.getExterns(index).getName1()\r
+ + DataType.HTML_LINE_SEPARATOR;\r
+\r
+ v.addElement("<html>" + name + "<html>");\r
+ v.addElement("<html>" + value + "<html>");\r
+ return v;\r
+ }\r
+\r
+ //\r
+ // Return a empty v\r
+ //\r
+ return v;\r
+ }\r
+}\r