forked from I2P_Developers/i2p.i2p
* Addressbook:
- Rewrite subscriptions.txt to convert to new default URL - Static method call cleanups
This commit is contained in:
@@ -91,7 +91,7 @@ class ConfigParser {
|
|||||||
String inputLine;
|
String inputLine;
|
||||||
inputLine = input.readLine();
|
inputLine = input.readLine();
|
||||||
while (inputLine != null) {
|
while (inputLine != null) {
|
||||||
inputLine = ConfigParser.stripComments(inputLine);
|
inputLine = stripComments(inputLine);
|
||||||
String[] splitLine = inputLine.split("=");
|
String[] splitLine = inputLine.split("=");
|
||||||
if (splitLine.length == 2) {
|
if (splitLine.length == 2) {
|
||||||
result.put(splitLine[0].trim().toLowerCase(Locale.US), splitLine[1].trim());
|
result.put(splitLine[0].trim().toLowerCase(Locale.US), splitLine[1].trim());
|
||||||
@@ -116,7 +116,7 @@ class ConfigParser {
|
|||||||
FileInputStream fileStream = new FileInputStream(file);
|
FileInputStream fileStream = new FileInputStream(file);
|
||||||
BufferedReader input = new BufferedReader(new InputStreamReader(
|
BufferedReader input = new BufferedReader(new InputStreamReader(
|
||||||
fileStream));
|
fileStream));
|
||||||
Map<String, String> rv = ConfigParser.parse(input);
|
Map<String, String> rv = parse(input);
|
||||||
try {
|
try {
|
||||||
fileStream.close();
|
fileStream.close();
|
||||||
} catch (IOException ioe) {}
|
} catch (IOException ioe) {}
|
||||||
@@ -136,7 +136,7 @@ class ConfigParser {
|
|||||||
public static Map<String, String> parse(String string) throws IOException {
|
public static Map<String, String> parse(String string) throws IOException {
|
||||||
StringReader stringReader = new StringReader(string);
|
StringReader stringReader = new StringReader(string);
|
||||||
BufferedReader input = new BufferedReader(stringReader);
|
BufferedReader input = new BufferedReader(stringReader);
|
||||||
return ConfigParser.parse(input);
|
return parse(input);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -153,7 +153,7 @@ class ConfigParser {
|
|||||||
public static Map<String, String> parse(File file, Map<String, String> map) {
|
public static Map<String, String> parse(File file, Map<String, String> map) {
|
||||||
Map<String, String> result;
|
Map<String, String> result;
|
||||||
try {
|
try {
|
||||||
result = ConfigParser.parse(file);
|
result = parse(file);
|
||||||
for (Map.Entry<String, String> entry : map.entrySet()) {
|
for (Map.Entry<String, String> entry : map.entrySet()) {
|
||||||
if (!result.containsKey(entry.getKey()))
|
if (!result.containsKey(entry.getKey()))
|
||||||
result.put(entry.getKey(), entry.getValue());
|
result.put(entry.getKey(), entry.getValue());
|
||||||
@@ -161,7 +161,7 @@ class ConfigParser {
|
|||||||
} catch (IOException exp) {
|
} catch (IOException exp) {
|
||||||
result = map;
|
result = map;
|
||||||
try {
|
try {
|
||||||
ConfigParser.write(result, file);
|
write(result, file);
|
||||||
} catch (IOException exp2) {
|
} catch (IOException exp2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -182,7 +182,7 @@ class ConfigParser {
|
|||||||
List<String> result = new LinkedList<String>();
|
List<String> result = new LinkedList<String>();
|
||||||
String inputLine = input.readLine();
|
String inputLine = input.readLine();
|
||||||
while (inputLine != null) {
|
while (inputLine != null) {
|
||||||
inputLine = ConfigParser.stripComments(inputLine).trim();
|
inputLine = stripComments(inputLine).trim();
|
||||||
if (inputLine.length() > 0) {
|
if (inputLine.length() > 0) {
|
||||||
result.add(inputLine);
|
result.add(inputLine);
|
||||||
}
|
}
|
||||||
@@ -205,7 +205,7 @@ class ConfigParser {
|
|||||||
FileInputStream fileStream = new FileInputStream(file);
|
FileInputStream fileStream = new FileInputStream(file);
|
||||||
BufferedReader input = new BufferedReader(new InputStreamReader(
|
BufferedReader input = new BufferedReader(new InputStreamReader(
|
||||||
fileStream));
|
fileStream));
|
||||||
List<String> rv = ConfigParser.parseSubscriptions(input);
|
List<String> rv = parseSubscriptions(input);
|
||||||
try {
|
try {
|
||||||
fileStream.close();
|
fileStream.close();
|
||||||
} catch (IOException ioe) {}
|
} catch (IOException ioe) {}
|
||||||
@@ -224,7 +224,7 @@ class ConfigParser {
|
|||||||
public static List<String> parseSubscriptions(String string) throws IOException {
|
public static List<String> parseSubscriptions(String string) throws IOException {
|
||||||
StringReader stringReader = new StringReader(string);
|
StringReader stringReader = new StringReader(string);
|
||||||
BufferedReader input = new BufferedReader(stringReader);
|
BufferedReader input = new BufferedReader(stringReader);
|
||||||
return ConfigParser.parseSubscriptions(input);
|
return parseSubscriptions(input);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -234,18 +234,30 @@ class ConfigParser {
|
|||||||
*
|
*
|
||||||
* @param file
|
* @param file
|
||||||
* A File to attempt to parse.
|
* A File to attempt to parse.
|
||||||
* @param list list of files to parse
|
* @param list The default subscriptions to be saved and returned if the file cannot be read
|
||||||
* @return A List consisting of one element for each line in file, or if
|
* @return A List consisting of one element for each line in file, or if
|
||||||
* file cannot be read, list.
|
* file cannot be read, list.
|
||||||
*/
|
*/
|
||||||
public static List<String> parseSubscriptions(File file, List<String> list) {
|
public static List<String> parseSubscriptions(File file, List<String> list) {
|
||||||
List<String> result;
|
List<String> result;
|
||||||
try {
|
try {
|
||||||
result = ConfigParser.parseSubscriptions(file);
|
result = parseSubscriptions(file);
|
||||||
|
// Fix up files that contain the old default
|
||||||
|
// which was changed in 0.9.11
|
||||||
|
if (result.remove(Daemon.OLD_DEFAULT_SUB)) {
|
||||||
|
for (String sub : list) {
|
||||||
|
if (!result.contains(sub))
|
||||||
|
result.add(sub);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
writeSubscriptions(result, file);
|
||||||
|
// TODO log
|
||||||
|
} catch (IOException ioe) {}
|
||||||
|
}
|
||||||
} catch (IOException exp) {
|
} catch (IOException exp) {
|
||||||
result = list;
|
result = list;
|
||||||
try {
|
try {
|
||||||
ConfigParser.writeSubscriptions(result, file);
|
writeSubscriptions(result, file);
|
||||||
} catch (IOException exp2) {
|
} catch (IOException exp2) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -289,8 +301,7 @@ class ConfigParser {
|
|||||||
boolean success = false;
|
boolean success = false;
|
||||||
if (!isWindows) {
|
if (!isWindows) {
|
||||||
File tmp = SecureFile.createTempFile("temp-", ".tmp", file.getAbsoluteFile().getParentFile());
|
File tmp = SecureFile.createTempFile("temp-", ".tmp", file.getAbsoluteFile().getParentFile());
|
||||||
ConfigParser
|
write(map, new BufferedWriter(new OutputStreamWriter(new SecureFileOutputStream(tmp), "UTF-8")));
|
||||||
.write(map, new BufferedWriter(new OutputStreamWriter(new SecureFileOutputStream(tmp), "UTF-8")));
|
|
||||||
success = tmp.renameTo(file);
|
success = tmp.renameTo(file);
|
||||||
if (!success) {
|
if (!success) {
|
||||||
tmp.delete();
|
tmp.delete();
|
||||||
@@ -299,8 +310,7 @@ class ConfigParser {
|
|||||||
}
|
}
|
||||||
if (!success) {
|
if (!success) {
|
||||||
// hmm, that didn't work, try it the old way
|
// hmm, that didn't work, try it the old way
|
||||||
ConfigParser
|
write(map, new BufferedWriter(new OutputStreamWriter(new SecureFileOutputStream(file), "UTF-8")));
|
||||||
.write(map, new BufferedWriter(new OutputStreamWriter(new SecureFileOutputStream(file), "UTF-8")));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -337,7 +347,7 @@ class ConfigParser {
|
|||||||
*/
|
*/
|
||||||
public static void writeSubscriptions(List<String> list, File file)
|
public static void writeSubscriptions(List<String> list, File file)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
ConfigParser.writeSubscriptions(list, new BufferedWriter(
|
writeSubscriptions(list, new BufferedWriter(
|
||||||
new OutputStreamWriter(new SecureFileOutputStream(file), "UTF-8")));
|
new OutputStreamWriter(new SecureFileOutputStream(file), "UTF-8")));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -50,6 +50,9 @@ public class Daemon {
|
|||||||
private static final Daemon _instance = new Daemon();
|
private static final Daemon _instance = new Daemon();
|
||||||
private volatile boolean _running;
|
private volatile boolean _running;
|
||||||
private static final boolean DEBUG = false;
|
private static final boolean DEBUG = false;
|
||||||
|
private static final String DEFAULT_SUB = "http://i2p-projekt.i2p/hosts.txt";
|
||||||
|
/** @since 0.9.12 */
|
||||||
|
static final String OLD_DEFAULT_SUB = "http://www.i2p2.i2p/hosts.txt";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Update the router and published address books using remote data from the
|
* Update the router and published address books using remote data from the
|
||||||
@@ -253,7 +256,7 @@ public class Daemon {
|
|||||||
|
|
||||||
List<String> defaultSubs = new LinkedList<String>();
|
List<String> defaultSubs = new LinkedList<String>();
|
||||||
// defaultSubs.add("http://i2p/NF2RLVUxVulR3IqK0sGJR0dHQcGXAzwa6rEO4WAWYXOHw-DoZhKnlbf1nzHXwMEJoex5nFTyiNMqxJMWlY54cvU~UenZdkyQQeUSBZXyuSweflUXFqKN-y8xIoK2w9Ylq1k8IcrAFDsITyOzjUKoOPfVq34rKNDo7fYyis4kT5bAHy~2N1EVMs34pi2RFabATIOBk38Qhab57Umpa6yEoE~rbyR~suDRvD7gjBvBiIKFqhFueXsR2uSrPB-yzwAGofTXuklofK3DdKspciclTVzqbDjsk5UXfu2nTrC1agkhLyqlOfjhyqC~t1IXm-Vs2o7911k7KKLGjB4lmH508YJ7G9fLAUyjuB-wwwhejoWqvg7oWvqo4oIok8LG6ECR71C3dzCvIjY2QcrhoaazA9G4zcGMm6NKND-H4XY6tUWhpB~5GefB3YczOqMbHq4wi0O9MzBFrOJEOs3X4hwboKWANf7DT5PZKJZ5KorQPsYRSq0E3wSOsFCSsdVCKUGsAAAA/i2p/hosts.txt");
|
// defaultSubs.add("http://i2p/NF2RLVUxVulR3IqK0sGJR0dHQcGXAzwa6rEO4WAWYXOHw-DoZhKnlbf1nzHXwMEJoex5nFTyiNMqxJMWlY54cvU~UenZdkyQQeUSBZXyuSweflUXFqKN-y8xIoK2w9Ylq1k8IcrAFDsITyOzjUKoOPfVq34rKNDo7fYyis4kT5bAHy~2N1EVMs34pi2RFabATIOBk38Qhab57Umpa6yEoE~rbyR~suDRvD7gjBvBiIKFqhFueXsR2uSrPB-yzwAGofTXuklofK3DdKspciclTVzqbDjsk5UXfu2nTrC1agkhLyqlOfjhyqC~t1IXm-Vs2o7911k7KKLGjB4lmH508YJ7G9fLAUyjuB-wwwhejoWqvg7oWvqo4oIok8LG6ECR71C3dzCvIjY2QcrhoaazA9G4zcGMm6NKND-H4XY6tUWhpB~5GefB3YczOqMbHq4wi0O9MzBFrOJEOs3X4hwboKWANf7DT5PZKJZ5KorQPsYRSq0E3wSOsFCSsdVCKUGsAAAA/i2p/hosts.txt");
|
||||||
defaultSubs.add("http://i2p-projekt.i2p/hosts.txt");
|
defaultSubs.add(DEFAULT_SUB);
|
||||||
|
|
||||||
SubscriptionList subscriptions = new SubscriptionList(subscriptionFile,
|
SubscriptionList subscriptions = new SubscriptionList(subscriptionFile,
|
||||||
etagsFile, lastModifiedFile, lastFetchedFile, delay, defaultSubs, settings
|
etagsFile, lastModifiedFile, lastFetchedFile, delay, defaultSubs, settings
|
||||||
|
Reference in New Issue
Block a user