1
2
3 package net.sourceforge.pmd.ast;
4
5 public class ASTImportDeclaration extends SimpleJavaNode {
6
7 private boolean isImportOnDemand;
8 private boolean isStatic;
9
10 public ASTImportDeclaration(int id) {
11 super(id);
12 }
13
14 public ASTImportDeclaration(JavaParser p, int id) {
15 super(p, id);
16 }
17
18 public void setImportOnDemand() {
19 isImportOnDemand = true;
20 }
21
22 public boolean isImportOnDemand() {
23 return isImportOnDemand;
24 }
25
26 public void setStatic() {
27 isStatic = true;
28 }
29
30 public boolean isStatic() {
31 return isStatic;
32 }
33
34
35 public ASTName getImportedNameNode() {
36 return (ASTName) jjtGetChild(0);
37 }
38
39 public String getImportedName() {
40 return ((ASTName) jjtGetChild(0)).getImage();
41 }
42
43 public String getPackageName() {
44 String importName = getImportedName();
45 if (isImportOnDemand) {
46 return importName;
47 }
48 if (importName.indexOf('.') == -1) {
49 return "";
50 }
51 int lastDot = importName.lastIndexOf('.');
52 return importName.substring(0, lastDot);
53 }
54
55
56 /***
57 * Accept the visitor. *
58 */
59 public Object jjtAccept(JavaParserVisitor visitor, Object data) {
60 return visitor.visit(this, data);
61 }
62 }