KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > fr > emn > info > eaop > instrumentation > AddImports


1 /* ----------------------------------------------------------------------------
2  * EAOP 1.0, 2002-12-19
3  * (c) 2002 Remi Douence, Mario Sudholt; OBASCO group; EMN/INRIA; France
4  * THIS SOFTWARE IS PROVIDED AS IS AND WITHOUT ANY WARRANTY
5   -------------------------------------------------------------------------- */

6
7 package fr.emn.info.eaop.instrumentation;
8
9 import recoder.*;
10 import recoder.kit.*;
11 import recoder.java.*;
12 import recoder.java.reference.*;
13 import recoder.list.*;
14
15
16 /**
17  * Class adding import statements for events and the monitor.
18  *
19  * @author MS
20  * @version 1.0
21  */

22 public class AddImports extends Instrumentation {
23
24     public AddImports(CrossReferenceServiceConfiguration sc,
25               CompilationUnit cu) {
26     super(sc, cu, null);
27     }
28
29     /**
30      * Method adding an import statement for all event classes and the
31      * monitor class.
32      */

33     public ProblemReport execute() {
34     boolean isFunction = false;
35     String JavaDoc type = "";
36     ImportMutableList iml = new ImportArrayList();
37
38     // add imports for Event, Monitor
39
Import im =
40         new Import(new TypeReference(
41                        new PackageReference(
42                  new PackageReference(
43                    new PackageReference(
44                      new PackageReference(new Identifier("fr")),
45                    new Identifier("emn")),
46                  new Identifier("info")),
47                    new Identifier("eaop")),
48                new Identifier("event")),
49                true);
50     iml.add(im);
51
52     im =
53         new Import(new TypeReference(
54                          new PackageReference(
55                    new PackageReference(
56                      new PackageReference(
57                        new PackageReference(new Identifier("fr")),
58                      new Identifier("emn")),
59                    new Identifier("info")),
60                      new Identifier("eaop")),
61                          new Identifier("Monitor")),
62                false);
63     iml.add(im);
64
65     im =
66         new Import(new TypeReference(
67                         new PackageReference(
68                           new PackageReference(
69                     new PackageReference(
70                       new PackageReference(
71                         new PackageReference(new Identifier("fr")),
72                        new Identifier("emn")),
73                      new Identifier("info")),
74                   new Identifier("eaop")),
75                 new Identifier("instrumentation")),
76                        new Identifier(constructorDummyTypeStr)),
77                false);
78
79     iml.add(im);
80
81     cu.getImports().add(iml);
82
83     return Transformation.NO_PROBLEM;
84     }
85 }
86
87
Popular Tags