KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > jdepend > swingui > EfferentNode


1 package jdepend.swingui;
2
3 import java.util.*;
4
5 import jdepend.framework.*;
6
7 /**
8  * The <code>EfferentNode</code> class is a <code>PackageNode</code> for an
9  * efferent Java package and its efferent packages.
10  *
11  * @author <b>Mike Clark</b>
12  * @author Clarkware Consulting, Inc.
13  */

14
15 public class EfferentNode extends PackageNode {
16
17     /**
18      * Constructs an <code>EfferentNode</code> with the specified parent node
19      * and efferent Java package.
20      *
21      * @param parent Parent package node.
22      * @param jPackage Efferent Java package.
23      */

24     public EfferentNode(PackageNode parent, JavaPackage jPackage) {
25         super(parent, jPackage);
26     }
27
28     /**
29      * Creates and returns a <code>PackageNode</code> with the specified
30      * parent node and Java package.
31      *
32      * @param parent Parent package node.
33      * @param jPackage Java package.
34      * @return A non-null <code>PackageNode</code.
35      */

36     protected PackageNode makeNode(PackageNode parent, JavaPackage jPackage) {
37         return new EfferentNode(parent, jPackage);
38     }
39
40     /**
41      * Returns the collection of Java packages coupled to the package
42      * represented in this node.
43      *
44      * @return Collection of coupled packages.
45      */

46     protected Collection getCoupledPackages() {
47         return getPackage().getEfferents();
48     }
49
50     /**
51      * Indicates whether the specified package should be displayed as a child of
52      * this node.
53      * <p>
54      * Efferent packages without classes are never shown at the root level to
55      * exclude non-analyzed packages.
56      *
57      * @param jPackage Package to test.
58      * @return <code>true</code> to display the package; <code>false</code>
59      * otherwise.
60      */

61     public boolean isChild(JavaPackage jPackage) {
62         if (getParent() != null) {
63             return true;
64         } else if (jPackage.getClassCount() > 0) {
65             return true;
66         }
67
68         return false;
69     }
70
71     /**
72      * Returns the string representation of this node in it's current tree
73      * context.
74      *
75      * @return Node label.
76      */

77     public String JavaDoc toString() {
78         if (getParent() == null) {
79             return "Depends Upon - Efferent Dependencies" + " ("
80                     + getChildren().size() + " Packages)";
81         }
82
83         return super.toString();
84     }
85 }
86
87
Popular Tags