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")

Reply via email to