20 package net.sf.gridarta.model.smoothface;
22 import java.io.BufferedReader;
23 import java.io.IOException;
24 import java.io.InputStream;
25 import java.io.InputStreamReader;
26 import java.io.Reader;
28 import java.util.regex.Pattern;
33 import org.apache.log4j.Category;
34 import org.apache.log4j.Logger;
35 import org.jetbrains.annotations.NotNull;
64 try (InputStream inputStream = url.openStream()) {
66 try (Reader bufferedReader =
new BufferedReader(reader)) {
67 load(url.toString(), bufferedReader, smoothFaces, errorViewCollector);
71 }
catch (
final IOException ex) {
84 private static void load(@NotNull
final String readerName, @NotNull
final Reader reader, @NotNull
final SmoothFaces smoothFaces, @NotNull
final ErrorViewCollector errorViewCollector)
throws IOException {
85 int smoothEntries = 0;
86 try (BufferedReader bufferedReader =
new BufferedReader(reader)) {
87 final Pattern pattern = Pattern.compile(
" ");
88 for (String line = bufferedReader.readLine(); line !=
null; line = bufferedReader.readLine()) {
89 if (line.trim().isEmpty() || line.startsWith(
"#")) {
92 final String[] elements = pattern.split(line);
93 if (elements.length != 2) {
99 smoothFaces.add(smoothFace);
106 if (
LOG.isInfoEnabled()) {
107 LOG.info(
"Loaded " + smoothEntries +
" smooth rules from '" + readerName +
"'.");