package com.schneide.crap4j.crap; import com.schneide.crap4j.reader.model.IContextedCrapData; import com.schneide.crap4j.reader.model.ICrapData; public class GenericCrapData<O> implements IContextedCrapData<O> { private final O context; private final int crappyMethods; private final int totalMethods; private final double crap; private final int crapLoad; private final double coverage; private final double complexity; public GenericCrapData(O context, ICrapData data) { this(context, data.getCrappyMethods(), data.getTotalMethods(), data.getCrap(), data.getCrapLoad(), data.getCoverage(), data.getComplexity()); } public GenericCrapData(O context, int crappyMethods, int totalMethods, double crap, int crapLoad, double coverage, double complexity) { super(); this.context = context; this.crappyMethods = crappyMethods; this.totalMethods = totalMethods; this.crap = crap; this.crapLoad = crapLoad; this.coverage = coverage; this.complexity = complexity; } //@Override public O getContext() { return this.context; } //@Override public double getCoverage() { return this.coverage; } //@Override public double getCrap() { return this.crap; } //@Override public int getCrapLoad() { return this.crapLoad; } public int getCrappyMethods() { return this.crappyMethods; } public int getTotalMethods() { return this.totalMethods; } //@Override public double getCrapPercentage() { return (getCrappyMethods() / ((double) getTotalMethods())); } //@Override public double getComplexity() { return this.complexity; } @Override public String toString() { StringBuilder result = new StringBuilder(); result.append(String.valueOf(getContext())); result.append(": crapPercentage="); //$NON-NLS-1$ result.append(getCrapPercentage()); result.append(", crap="); //$NON-NLS-1$ result.append(getCrap()); result.append(", crapLoad="); //$NON-NLS-1$ result.append(getCrapLoad()); result.append(", coverage="); //$NON-NLS-1$ result.append(getCoverage()); result.append(", complexity="); //$NON-NLS-1$ result.append(getComplexity()); return result.toString(); } }