blob: 930183a63d6e4a8188dd266f6ba1602f27b99dbf [file] [log] [blame]
package org.eclipse.emf.refactor.metrics.uml24.umlpack;
import java.util.List;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.refactor.metrics.core.Metric;
import org.eclipse.emf.refactor.metrics.interfaces.IMetricCalculator;
import org.eclipse.emf.refactor.metrics.interfaces.IOperation;
import org.eclipse.emf.refactor.metrics.operations.Operations;
public class NDCOP implements IMetricCalculator {
private List<EObject> context;
private String metricID1 = "org.eclipse.emf.refactor.metrics.uml24.ntctp";
private String metricID2 = "org.eclipse.emf.refactor.metrics.uml24.nesubp";
IOperation operation = Operations.getOperation("Sum");
@Override
public void setContext(List<EObject> context) {
this.context = context;
}
@Override
public double calculate() {
Metric metric1 = Metric.getMetricInstanceFromId(metricID1);
Metric metric2 = Metric.getMetricInstanceFromId(metricID2);
IMetricCalculator calc1 = metric1.getCalculateClass();
IMetricCalculator calc2 = metric2.getCalculateClass();
calc1.setContext(this.context);
calc2.setContext(this.context);
return operation.calculate(calc1.calculate(),calc2.calculate());
}
}