From 431588a27a5bc593f09fd17355cbb786f8b00159 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Sat, 6 Apr 2019 10:05:52 +0200 Subject: [PATCH] refactor(maven): externalize update and extract --- lib/manager/maven/extract.js | 23 +++++++++++++++++++ lib/manager/maven/index.js | 43 ++---------------------------------- lib/manager/maven/update.js | 21 ++++++++++++++++++ 3 files changed, 46 insertions(+), 41 deletions(-) create mode 100644 lib/manager/maven/update.js diff --git a/lib/manager/maven/extract.js b/lib/manager/maven/extract.js index f4d138c054..c91af4b3d4 100644 --- a/lib/manager/maven/extract.js +++ b/lib/manager/maven/extract.js @@ -135,8 +135,31 @@ function extractDependencies(raw) { return result; } +async function extractAllPackageFiles(config, packageFiles) { + const mavenFiles = []; + for (const packageFile of packageFiles) { + const content = await platform.getFile(packageFile); + if (content) { + const deps = extractDependencies(content); + if (deps) { + mavenFiles.push({ + packageFile, + manager: 'maven', + ...deps, + }); + } else { + logger.info({ packageFile }, 'can not read dependencies'); + } + } else { + logger.info({ packageFile }, 'packageFile has no content'); + } + } + return mavenFiles; +} + module.exports = { containsPlaceholder, parsePom, extractDependencies, + extractAllPackageFiles, }; diff --git a/lib/manager/maven/index.js b/lib/manager/maven/index.js index 550c51e6ec..0589932837 100644 --- a/lib/manager/maven/index.js +++ b/lib/manager/maven/index.js @@ -1,44 +1,5 @@ -const { extractDependencies } = require('./extract'); - -async function extractAllPackageFiles(config, packageFiles) { - const mavenFiles = []; - for (const packageFile of packageFiles) { - const content = await platform.getFile(packageFile); - if (content) { - const deps = extractDependencies(content); - if (deps) { - mavenFiles.push({ - packageFile, - manager: 'maven', - ...deps, - }); - } else { - logger.info({ packageFile }, 'can not read dependencies'); - } - } else { - logger.info({ packageFile }, 'packageFile has no content'); - } - } - return mavenFiles; -} - -function updateDependency(fileContent, upgrade) { - const { currentValue, newValue, fileReplacePosition } = upgrade; - const leftPart = fileContent.slice(0, fileReplacePosition); - const rightPart = fileContent.slice(fileReplacePosition); - const versionClosePosition = rightPart.indexOf('</'); - const restPart = rightPart.slice(versionClosePosition); - const versionPart = rightPart.slice(0, versionClosePosition); - const version = versionPart.trim(); - if (version === newValue) { - return fileContent; - } - if (version === currentValue) { - const replacedPart = versionPart.replace(currentValue, newValue); - return leftPart + replacedPart + restPart; - } - return null; -} +const { extractAllPackageFiles } = require('./extract'); +const { updateDependency } = require('./update'); module.exports = { extractAllPackageFiles, diff --git a/lib/manager/maven/update.js b/lib/manager/maven/update.js new file mode 100644 index 0000000000..dc21a32afa --- /dev/null +++ b/lib/manager/maven/update.js @@ -0,0 +1,21 @@ +module.exports = { + updateDependency, +}; + +function updateDependency(fileContent, upgrade) { + const { currentValue, newValue, fileReplacePosition } = upgrade; + const leftPart = fileContent.slice(0, fileReplacePosition); + const rightPart = fileContent.slice(fileReplacePosition); + const versionClosePosition = rightPart.indexOf('</'); + const restPart = rightPart.slice(versionClosePosition); + const versionPart = rightPart.slice(0, versionClosePosition); + const version = versionPart.trim(); + if (version === newValue) { + return fileContent; + } + if (version === currentValue) { + const replacedPart = versionPart.replace(currentValue, newValue); + return leftPart + replacedPart + restPart; + } + return null; +} -- GitLab