Browse Source

Move static method in superclass

tags/release-3.2.0
Decebal Suiu 4 years ago
parent
commit
41f5ade508

+ 22
- 0
pf4j/src/main/java/org/pf4j/processor/ExtensionStorage.java View File

@@ -17,8 +17,12 @@ package org.pf4j.processor;

import javax.annotation.processing.Filer;
import javax.lang.model.element.Element;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.Reader;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;

/**
* It's a storage (database) that persists {@link org.pf4j.Extension}s.
@@ -29,6 +33,9 @@ import java.util.Set;
*/
public abstract class ExtensionStorage {

private static final Pattern COMMENT = Pattern.compile("#.*");
private static final Pattern WHITESPACE = Pattern.compile("\\s+");

protected final ExtensionAnnotationProcessor processor;

public ExtensionStorage(ExtensionAnnotationProcessor processor) {
@@ -74,4 +81,19 @@ public abstract class ExtensionStorage {
processor.info(element, message, args);
}

public static void read(Reader reader, Set<String> entries) throws IOException {
BufferedReader bufferedReader = new BufferedReader(reader);

String line;
while ((line = bufferedReader.readLine()) != null) {
line = COMMENT.matcher(line).replaceFirst("");
line = WHITESPACE.matcher(line).replaceAll("");
if (line.length() > 0) {
entries.add(line);
}
}

bufferedReader.close();
}

}

+ 0
- 21
pf4j/src/main/java/org/pf4j/processor/LegacyExtensionStorage.java View File

@@ -18,17 +18,14 @@ package org.pf4j.processor;
import javax.annotation.processing.FilerException;
import javax.tools.FileObject;
import javax.tools.StandardLocation;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Reader;
import java.nio.file.NoSuchFileException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;

/**
* Stores {@link org.pf4j.Extension}s in {@code META-INF/extensions.idx}.
@@ -39,28 +36,10 @@ public class LegacyExtensionStorage extends ExtensionStorage {

public static final String EXTENSIONS_RESOURCE = "META-INF/extensions.idx";

private static final Pattern COMMENT = Pattern.compile("#.*");
private static final Pattern WHITESPACE = Pattern.compile("\\s+");

public LegacyExtensionStorage(ExtensionAnnotationProcessor processor) {
super(processor);
}

public static void read(Reader reader, Set<String> entries) throws IOException {
BufferedReader bufferedReader = new BufferedReader(reader);

String line;
while ((line = bufferedReader.readLine()) != null) {
line = COMMENT.matcher(line).replaceFirst("");
line = WHITESPACE.matcher(line).replaceAll("");
if (line.length() > 0) {
entries.add(line);
}
}

bufferedReader.close();
}

@Override
public Map<String, Set<String>> read() {
Map<String, Set<String>> extensions = new HashMap<>();

+ 0
- 21
pf4j/src/main/java/org/pf4j/processor/ServiceProviderExtensionStorage.java View File

@@ -18,17 +18,14 @@ package org.pf4j.processor;
import javax.annotation.processing.FilerException;
import javax.tools.FileObject;
import javax.tools.StandardLocation;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.Reader;
import java.nio.file.NoSuchFileException;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;

/**
* Stores {@link org.pf4j.Extension}s in {@code META-INF/services}.
@@ -39,28 +36,10 @@ public class ServiceProviderExtensionStorage extends ExtensionStorage {

public static final String EXTENSIONS_RESOURCE = "META-INF/services";

private static final Pattern COMMENT = Pattern.compile("#.*");
private static final Pattern WHITESPACE = Pattern.compile("\\s+");

public ServiceProviderExtensionStorage(ExtensionAnnotationProcessor processor) {
super(processor);
}

public static void read(Reader reader, Set<String> entries) throws IOException {
BufferedReader bufferedReader = new BufferedReader(reader);

String line;
while ((line = bufferedReader.readLine()) != null) {
line = COMMENT.matcher(line).replaceFirst("");
line = WHITESPACE.matcher(line).replaceAll("");
if (line.length() > 0) {
entries.add(line);
}
}

bufferedReader.close();
}

@Override
public Map<String, Set<String>> read() {
Map<String, Set<String>> extensions = new HashMap<>();

Loading…
Cancel
Save