package jdepend.metadata;
import java.io.Serializable;
import jdepend.metadata.util.JavaClassCollection;
public abstract class InvokeItem implements Serializable {
protected transient Method caller;
protected transient Method callee;
public static final String Ca = "Ca";
public static final String Ce = "Ce";
public InvokeItem() {
super();
}
public Method getCallee() {
return callee;
}
protected void setCallee(Method callee) {
this.callee = callee;
this.callee.addInvokedItem(this);
}
public Method getCaller() {
return caller;
}
public void setCaller(Method caller) {
this.caller = caller;
}
/**
* 补充callee信息
*
* @param javaClasses
* @return
*/
public abstract boolean supplyCallee(JavaClassCollection javaClasses);
/**
* 调用的method是否是传入的method
*
* @param method
* @return
*/
public abstract boolean math2(Method method);
public abstract String getName();
/**
* 该调用类型需要转化为其他调用的类型
*
* @return
*/
public InvokeItem transform() {
return null;
}
}