class JavaClass::Dependencies::ClassNode

A concrete Node which contains a ClassFile and its dependencies. This models a Node as a Java class.

Author

Peter Kofler

Public Class Methods

new(java_class) click to toggle source
Calls superclass method
# File lib/javaclass/dependencies/class_node.rb, line 12
def initialize(java_class)
  super(java_class.to_classname)
  @java_class = java_class
end

Public Instance Methods

outgoing_dependencies() { |edge| ... } click to toggle source

Iterate on a list of Edge dependencies this node has.

# File lib/javaclass/dependencies/class_node.rb, line 18
def outgoing_dependencies
  @java_class.imported_3rd_party_types.each do |import|
      yield Edge.new(@java_class.to_classname, import.to_classname)
  end
  # later iterate all types/fields/methods and create an edge from the method to the target type.
  # So Edges make sense and multiplicity in dependencies is possible.
end
satisfies?(class_name) click to toggle source

Does this Node satisfy the dependency to class_name ?

# File lib/javaclass/dependencies/class_node.rb, line 27
def satisfies?(class_name)
  @java_class.to_classname == class_name.to_classname
  # later class name will be a full qualified class#method or field name.
end