commit: f4cdd26a2420db3b1d4ce25d60da06a18ce6b08a
Author: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 30 16:55:17 2025 +0000
Commit: Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sun Mar 30 16:55:17 2025 +0000
URL: https://gitweb.gentoo.org/proj/javatoolkit.git/commit/?id=f4cdd26a
small refactor
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>
src/javatoolkit/java/properties.py | 6 ++---
src/javatoolkit/maven/MavenPom.py | 30 ++++++++++++------------
src/javatoolkit/parser/tree.py | 2 +-
src/javatoolkit/scripts/eclipse_build.py | 40 ++++++++++++++------------------
4 files changed, 36 insertions(+), 42 deletions(-)
diff --git a/src/javatoolkit/java/properties.py
b/src/javatoolkit/java/properties.py
index 1fb829e..c818fe6 100644
--- a/src/javatoolkit/java/properties.py
+++ b/src/javatoolkit/java/properties.py
@@ -8,12 +8,12 @@ class PropertiesParser:
Parse eclipse projects build.properties file.
"""
- def __init__(self, file):
+ def __init__(self, file: str):
self.file = file
- self.config = {}
+ self.config: dict[str, list[str]] = {}
self.parse(file)
- def parse(self, file):
+ def parse(self, file: str):
if not os.path.isfile(file):
return
if not os.access(file, os.R_OK):
diff --git a/src/javatoolkit/maven/MavenPom.py
b/src/javatoolkit/maven/MavenPom.py
index 752b8f1..3896323 100644
--- a/src/javatoolkit/maven/MavenPom.py
+++ b/src/javatoolkit/maven/MavenPom.py
@@ -28,7 +28,7 @@ class MavenPom:
self.version = ""
self.name = ""
self.is_child = "false"
- self.dependencies = []
+ self.dependencies: list[MavenPom] = []
self.buffer = io.StringIO()
self.__write = self.buffer.write
self.mydoc = None
@@ -36,20 +36,20 @@ class MavenPom:
def getInfos(self, node):
for child_node in node.childNodes:
- if child_node.nodeType == child_node.ELEMENT_NODE:
- if child_node.childNodes:
- if child_node.childNodes[0].nodeValue != "":
- if child_node.nodeName == "version":
- self.version = child_node.childNodes[0].nodeValue
-
- if child_node.nodeName == "artifactId":
- self.artifact = child_node.childNodes[0].nodeValue
-
- if child_node.nodeName == "groupId":
- self.group = child_node.childNodes[0].nodeValue
-
- if child_node.nodeName == "name":
- self.name = child_node.childNodes[0].nodeValue
+ if (
+ child_node.nodeType == child_node.ELEMENT_NODE
+ and child_node.childNodes
+ and (value := child_node.childNodes.nodeValue) != ""
+ ):
+ match child_node.nodeName:
+ case "version":
+ self.version = value
+ case "artifactId":
+ self.artifact = value
+ case "groupId":
+ self.group = value
+ case "name":
+ self.name = value
def getDescription(self, mydoc, **kwargs):
if mydoc:
diff --git a/src/javatoolkit/parser/tree.py b/src/javatoolkit/parser/tree.py
index c9beaca..1d47425 100644
--- a/src/javatoolkit/parser/tree.py
+++ b/src/javatoolkit/parser/tree.py
@@ -6,7 +6,7 @@
import sys
-class ParseError:
+class ParseError(Exception):
def __init__(self, error):
self.error = error
diff --git a/src/javatoolkit/scripts/eclipse_build.py
b/src/javatoolkit/scripts/eclipse_build.py
index 75261ba..0c7085c 100755
--- a/src/javatoolkit/scripts/eclipse_build.py
+++ b/src/javatoolkit/scripts/eclipse_build.py
@@ -74,7 +74,7 @@ def main():
with open(options.output, "w") as output:
output.write('<?xml version="1.0" encoding="UTF-8" ?>\n')
output.write(
- '<project basedir="." default="jar" name="' + options.project
+ '">\n'
+ f'<project basedir="." default="jar"
name="{options.project}">\n'
)
output.write('<property name="target" value="1.4"/>\n')
output.write('<property name="source" value="1.4"/>\n')
@@ -83,30 +83,24 @@ def main():
output.write('<mkdir dir="bin"/>\n')
output.write('<copy includeemptydirs="false" todir="bin">\n')
try:
- if properties.config["source.."]:
- for dir in properties.config["source.."]:
- output.write(
- '<fileset dir="'
- + dir
- + '" excludes="**/*.java, **/*.launch" />\n'
- )
- if properties.config["bin.includes"]:
- for item in properties.config["bin.includes"]:
- if item != ".":
- if item.endswith("/"):
- item = item.rstrip("/")
- output.write(
- '<fileset dir="." includes="'
- + item
- + '/**" excludes="**/*.java, **/*.launch"
/>\n'
- )
- else:
- output.write('<fileset file="' + item + '"
/>\n')
+ for dir in properties.config.get("source..", ()):
+ output.write(
+ f'<fileset dir="{dir}" excludes="**/*.java,
**/*.launch" />\n'
+ )
+ for item in properties.config.get("bin.includes", ()):
+ if item != ".":
+ if item.endswith("/"):
+ item = item.rstrip("/")
+ output.write(
+ f'<fileset dir="." includes="{item}/**"
excludes="**/*.java, **/*.launch" />\n'
+ )
+ else:
+ output.write(f'<fileset file="{item}" />\n')
finally:
output.write("</copy>\n")
if options.includes:
for file in options.includes:
- output.write('<copy file="' + file + '" todir="bin"/>')
+ output.write(f'<copy file="{file}" todir="bin"/>')
output.write("</target>\n")
output.write(
'\n<target name="clean">\n\t<delete dir="bin"/>\n</target>\n\n'
@@ -118,14 +112,14 @@ def main():
try:
if properties.config["source.."]:
for dir in properties.config["source.."]:
- output.write('\t<src path="' + dir + '" />\n')
+ output.write(f'\t<src path="{dir}" />\n')
finally:
output.write("</javac>\n")
output.write("</target>\n\n")
output.write('<target depends="compile" name="jar" >\n')
output.write('<jar file="${ant.project.name}.jar" basedir="bin"')
if options.manifest:
- output.write('\nmanifest="' + parser.manifest + '">\n')
+ output.write(f'\nmanifest="{parser.manifest}">\n')
else:
output.write(">\n")
output.write("</jar>\n")