summaryrefslogtreecommitdiff
path: root/src/main/java/org/torproject/collector
diff options
context:
space:
mode:
authoriwakeh <iwakeh@torproject.org>2017-06-17 06:55:26 +0000
committeriwakeh <iwakeh@torproject.org>2017-06-17 06:55:26 +0000
commit100782847372b8f3790223751a2864b195d629be (patch)
treed26e2fa8fa89ea812293d0f925d6c05609858c92 /src/main/java/org/torproject/collector
parent15cf44d70278e55a472ebf701f98f06d79c78988 (diff)
fixup! Adapts CollecTor to metrics-lib 1.9.0, which removed DescriptorFile. Build.xml still pointing to 1.8.2-dev Implements task-22652.
Diffstat (limited to 'src/main/java/org/torproject/collector')
-rw-r--r--src/main/java/org/torproject/collector/sync/SyncManager.java7
-rw-r--r--src/main/java/org/torproject/collector/sync/SyncPersistence.java15
2 files changed, 13 insertions, 9 deletions
diff --git a/src/main/java/org/torproject/collector/sync/SyncManager.java b/src/main/java/org/torproject/collector/sync/SyncManager.java
index 369f3ff..b74ceb4 100644
--- a/src/main/java/org/torproject/collector/sync/SyncManager.java
+++ b/src/main/java/org/torproject/collector/sync/SyncManager.java
@@ -99,16 +99,15 @@ public class SyncManager {
Exception ex
= ((UnparseableDescriptor)desc).getDescriptorParseException();
log.warn("Parsing of {} caused Exception(s). Processing anyway.",
- descFile, ex);
+ desc.getDescriptorFile(), ex);
}
if (!crit.applies(desc)) {
log.warn("Not processing {} in {}.", desc.getClass().getName(),
- descFile);
+ desc.getDescriptorFile());
continue;
}
- persist.storeDesc(desc,
- descFile.getName(), collectionDate.getTime());
+ persist.storeDesc(desc, collectionDate.getTime());
}
descriptorReader.saveHistoryFile(historyFile);
}
diff --git a/src/main/java/org/torproject/collector/sync/SyncPersistence.java b/src/main/java/org/torproject/collector/sync/SyncPersistence.java
index e764344..156c6a8 100644
--- a/src/main/java/org/torproject/collector/sync/SyncPersistence.java
+++ b/src/main/java/org/torproject/collector/sync/SyncPersistence.java
@@ -59,10 +59,9 @@ public class SyncPersistence {
* The storage locations are taken from <code>collector.properties</code>'
* options <code>OutputPath</code> and <code>RecentPath</code>.
*/
- public void storeDescs(List<Descriptor> descs, String filename,
- long received) {
+ public void storeDescs(List<Descriptor> descs, long received) {
for (Descriptor desc : descs) {
- storeDesc(desc, filename, received);
+ storeDesc(desc, received);
}
try {
PersistenceUtils.cleanDirectory(recentPath);
@@ -76,7 +75,8 @@ public class SyncPersistence {
* The storage locations are taken from <code>collector.properties</code>'
* options <code>OutputPath</code> and <code>RecentPath</code>.
*/
- public void storeDesc(Descriptor desc, String filename, long received) {
+ public void storeDesc(Descriptor desc, long received) {
+ String filename = desc.getDescriptorFile().getName();
boolean recognizedAndWritten = false;
for (Class clazz : desc.getClass().getInterfaces()) {
DescriptorPersistence descPersist = null;
@@ -107,8 +107,13 @@ public class SyncPersistence {
(RelayExtraInfoDescriptor) desc, received);
break;
case "BridgeNetworkStatus": // need to infer authId from filename
+ String[] filenameParts = filename.split(DASH);
+ if (filenameParts.length < 3) {
+ log.error("Invalid BridgeNetworkStatus; skipping: {}.", filename);
+ break;
+ }
descPersist = new StatusPersistence(
- (BridgeNetworkStatus) desc, filename.split(DASH)[2], received);
+ (BridgeNetworkStatus) desc, filenameParts[2], received);
break;
case "BridgeServerDescriptor":
descPersist = new BridgeServerDescriptorPersistence(