]>
Commit | Line | Data |
---|---|---|
1 | import java.util.*;\r | |
2 | \r | |
3 | public class Component extends Module\r | |
4 | {\r | |
5 | Component()\r | |
6 | {\r | |
7 | }\r | |
8 | Component(String n)\r | |
9 | {\r | |
10 | name=n;\r | |
11 | }\r | |
12 | String name;\r | |
13 | \r | |
14 | // These are the libs we want to build with.\r | |
15 | public Set<LibInst> buildLibs;\r | |
16 | \r | |
17 | public String name() { return name; }\r | |
18 | \r | |
19 | public boolean autoBuild()\r | |
20 | {\r | |
21 | // buildLibs must contain a list of libInstances. We need to check that\r | |
22 | // These libs meet certain criterea.\r | |
23 | if(!duplicateLibClasses(buildLibs).isEmpty())\r | |
24 | {\r | |
25 | // Error: The lib instance implement the same lib twice.\r | |
26 | return false;\r | |
27 | }\r | |
28 | if(! libClassesProduced(buildLibs).containsAll(consumesLibClasses))\r | |
29 | {\r | |
30 | // We can not cover the libclasses consumed with these instances.\r | |
31 | return false;\r | |
32 | }\r | |
33 | getConstructorOrder(buildLibs);\r | |
34 | getDestructorOrder(buildLibs);\r | |
35 | \r | |
36 | // Get PPI, Protocol, GUID, PCDs from the lib instances. These are all simple unions of\r | |
37 | // the corresponding sets in the modules. There is no ordering needed.\r | |
38 | // TODO\r | |
39 | \r | |
40 | return true;\r | |
41 | }\r | |
42 | \r | |
43 | }\r |