Long codeChurn = fileDAO.calculeCodeChurn(repository,
fileFile.getFileName(), beginDate, endDate);
Long codeChurn2 = fileDAO.calculeCodeChurn(repository,
fileFile.getFileName2(), beginDate, endDate);
AuxCodeChurn pairFileCodeChurn = pairFileDAO.calculeCodeChurnAddDelChange(repository,
fileFile.getFileName2(), fileFile.getFileName(),
beginDate, endDate);
double codeChurnAvg = (codeChurn + codeChurn2) / 2.0d;
closenessSum = MathUtils.zeroIfNaN(closenessSum);
closenessAvg = MathUtils.zeroIfNaN(closenessAvg);
closenessMax = MathUtils.zeroIfNaN(closenessMax);
// pair file age in release interval (days)
int ageRelease = pairFileDAO.calculePairFileDaysAge(repository, fileFile.getFileName(), fileFile.getFileName2(), beginDate, endDate, true);
// pair file age in total until final date (days)
int ageTotal = pairFileDAO.calculePairFileDaysAge(repository, fileFile.getFileName(), fileFile.getFileName2(), null, endDate, true);
boolean samePackage = PathUtils.isSameFullPath(fileFile.getFileName(), fileFile.getFileName2());
AuxFileFileMetrics auxFileFileMetrics = new AuxFileFileMetrics(
fileFile.getFileName(), fileFile.getFileName2(), BooleanUtils.toInteger(samePackage),
// barycenterSum, barycenterAvg, barycenterMax,
betweennessSum, betweennessAvg, betweennessMax,
closenessSum, closenessAvg, closenessMax,
degreeSum, degreeAvg, degreeMax,
eigenvectorSum, eigenvectorAvg, eigenvectorMax,
egoBetweennessSum, egoBetweennessAvg, egoBetweennessMax,
egoSizeSum, egoSizeAvg, egoSizeMax,
egoTiesSum, egoTiesAvg, egoTiesMax,
// egoPairsSum, egoPairsAvg, egoPairsMax,
egoDensitySum, egoDensityAvg, egoDensityMax,
efficiencySum, efficiencyAvg, efficiencyMax,
effectiveSizeSum, effectiveSizeAvg, effectiveSizeMax,
constraintSum, constraintAvg, constraintMax,
hierarchySum, hierarchyAvg, hierarchyMax,
pairFileGlobal.getSize(), pairFileGlobal.getTies(),
pairFileGlobal.getDensity(), pairFileGlobal.getDiameter(),
devCommitsSum, devCommitsAvg, devCommitsMax,
ownershipSum, ownershipAvg, ownershipMax,
majorContributors, minorContributors,
ownerExperience, ownerExperience2,
cummulativeOwnerExperience, cummulativeOwnerExperience2,
committers, distinctCommitters, commits, geometricAverageCommittersCommits,
distinctCommentersCount, commentsSum, wordiness,
codeChurn, codeChurn2, codeChurnAvg,
pairFileCodeChurn.getAdditionsNormalized(), pairFileCodeChurn.getDeletionsNormalized(), pairFileCodeChurn.getChanges(),
ageRelease, ageTotal, updates, futureUpdates
);
// apriori /////////////////////////////////////////////////////////
Long fileNumberOfPullrequestOfPairFuture