package org.dtangler.core.dependencyengine;
import org.dtangler.core.configuration.Arguments;
import org.dtangler.core.exception.DtException;
public abstract class AbstractDependencyEngine implements DependencyEngine {
String dependencyEngineId;
public String getDependencyEngineId() {
if (dependencyEngineId == null)
return new String(this.getClass().getSimpleName());
return dependencyEngineId;
}
public void setDependencyEngineId(String dependencyEngineId) {
this.dependencyEngineId = dependencyEngineId;
}
public abstract ArgumentsMatch getArgumentsMatchThisEngineExt(
Arguments arguments);
public ArgumentsMatch getArgumentsMatchThisEngine(Arguments arguments) {
if (arguments == null) {
throw new DtException("invalid arguments: null");
}
if (arguments.getDependencyEngineId() != null
&& arguments.getDependencyEngineId().length() > 0) {
if (dependencyEngineId != null
&& arguments.getDependencyEngineId().equalsIgnoreCase(
dependencyEngineId)) {
return ArgumentsMatch.yes;
} else {
return ArgumentsMatch.no;
}
}
return this.getArgumentsMatchThisEngineExt(arguments);
}
}