From 40f0b0d27ec38c97fadb4c64dba6855c6ee2e904 Mon Sep 17 00:00:00 2001
From: ulrich
Date: Sun, 01 Dec 2024 17:15:08 +0000
Subject: [PATCH] Kommantare ergaenzt
---
src/de/uhilger/neon/Scanner.java | 33 ++++++++++++++++++++++++++++++---
1 files changed, 30 insertions(+), 3 deletions(-)
diff --git a/src/de/uhilger/neon/Scanner.java b/src/de/uhilger/neon/Scanner.java
index 01ad324..38b3022 100644
--- a/src/de/uhilger/neon/Scanner.java
+++ b/src/de/uhilger/neon/Scanner.java
@@ -50,8 +50,12 @@
private final ClassLoader urlCL;
/**
- * Einen Scanner erzeugen, der das Archiv, in dem sich eine gegebene Klasse befindet, nach Klassen
+ * Einen Scanner erzeugen, der den Ort,
+ * in dem sich eine gegebene Klasse befindet, nach Klassen
* durchsucht, die eine bestimmte Annotation besitzen
+ *
+ * Der Ort fur Klassen kann ein Java-Archiv (.jar) oder ein Ordner
+ * im Dateisystem sein.
*
* @param c eine Klasse die sich im Archiv befindet, das durchsucht werden soll
* @param annotation die Annotation, nach der gesucht wird
@@ -67,6 +71,20 @@
return annotation;
}
+ /**
+ * Klassen suchen, die die dem Konstruktor gegebene Annotation besitzen.
+ *
+ * Anhand der im Konstruktor uebergebenen Klasse wird deren Ablageort ermittelt, entweder
+ * ein Ordner im Dateisystem oder ein Java-Archiv (.jar). Dieser Ablageort wird dann
+ * nach annotierten Klassen durchsucht. Gefundene Klassen werden dem Listener gemeldet.
+ *
+ * @param packageName Name der Package, die einschl. Unterpackages durchsucht wird, nur Klassen
+ * dieser Package und ihrer Unterpackages werden geladen und auf die Anotation ueberprueft
+ * @param l ein Objekt, das verstaendigt wird, wenn eine annotierte Klasse gefunden wurde
+ * @param h der Handler, dem die gefundene Klasse hinzugefuegt werden soll
+ * @param contextName Name des Kontext, dem gefundene Klassen hinzugefuegt werden sollen
+ */
+
public void process(ScannerListener l, String packageName, Handler h, String contextName) {
if (isJar()) {
processZipContent(packageName, l, h, contextName);
@@ -85,7 +103,7 @@
* @param h der Handler, dem die gefundene Klasse hinzugefuegt werden soll
* @param contextName Name des Kontext, dem gefundene Klassen hinzugefuegt werden sollen
*/
- public void processZipContent(String packageName, ScannerListener l, Handler h, String contextName) {
+ private void processZipContent(String packageName, ScannerListener l, Handler h, String contextName) {
try {
ZipFile zipfile = new ZipFile(new File(path));
Enumeration en = zipfile.entries();
@@ -135,8 +153,17 @@
}
}
+ /**
+ * Einen Ordner mit Klassen durchsuchen
+ *
+ * @param packageName Name der Package, die einschl. Unterpackages durchsucht wird, nur Klassen
+ * dieser Package und ihrer Unterpackages werden geladen und auf die Anotation ueberprueft
+ * @param l ein Objekt, das verstaendigt wird, wenn eine annotierte Klasse gefunden wurde
+ * @param h der Handler, dem die gefundene Klasse hinzugefuegt werden soll
+ * @param contextName Name des Kontext, dem gefundene Klassen hinzugefuegt werden sollen
+ */
@SuppressWarnings("unchecked")
- public void processClasses(ScannerListener l, String packageName, Handler h, String contextName) {
+ private void processClasses(ScannerListener l, String packageName, Handler h, String contextName) {
ClassLoader cl = getCl();
InputStream stream = cl.getResourceAsStream(packageName.replaceAll("[.]", "/"));
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
--
Gitblit v1.9.3