summaryrefslogtreecommitdiffstats
path: root/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java
diff options
context:
space:
mode:
Diffstat (limited to 'config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java')
-rw-r--r--config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java
new file mode 100644
index 00000000000..47f478ea4d7
--- /dev/null
+++ b/config-proxy/src/main/java/com/yahoo/vespa/config/proxy/filedistribution/RequestTracker.java
@@ -0,0 +1,30 @@
+// Copyright 2019 Oath Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+
+package com.yahoo.vespa.config.proxy.filedistribution;
+
+import com.yahoo.log.LogLevel;
+
+import java.io.File;
+import java.time.Instant;
+import java.util.logging.Logger;
+
+/**
+ * Set last modification time for a file reference or downloaded url, to be able
+ * to later clean up file references or urls not used for a long time.
+ *
+ * @author hmusum
+ */
+class RequestTracker {
+
+ private final static Logger log = Logger.getLogger(RequestTracker.class.getName());
+
+ void trackRequest(File file) {
+ String absolutePath = file.getAbsolutePath();
+ if ( ! file.exists())
+ log.log(LogLevel.WARNING, "Could not find file '" + absolutePath + "'");
+
+ if ( ! file.setLastModified(Instant.now().toEpochMilli()))
+ log.log(LogLevel.WARNING, "Could not set last modified timestamp for '" + absolutePath + "'");
+ }
+
+}