/**
* Written by Fedor Burdun of Azul Systems, and released to the public domain,
* as explained at http://creativecommons.org/publicdomain/zero/1.0/
*
* @author Fedor Burdun
*/
package org.jrt.impl;
import java.lang.management.ManagementFactory;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.UUID;
public class Configuration {
public String uuid = String.valueOf(++JRT.jrtInstances);
public boolean i2oEnabled = true;
public boolean o2iEnabled = true;
public long logWriterInterval = 1000;
//equal to jRT.jar=-lp=jRTs.%d.%p-%h.%i
public String logPrefix = "jRTs." + (new SimpleDateFormat("MMddyy-hhmm")).format(new Date()) + "." +
ManagementFactory.getRuntimeMXBean().getName().replace("@", "-") +
// UUID.randomUUID() +
"." + uuid;
public boolean printExceptions = true;
public static class IOFilterEntry {
public String remoteaddr = null;
public String localport = null;
public String remoteport = null;
public IOFilterEntry(String localport, String remoteaddr, String remoteport) {
this.localport = localport;
this.remoteaddr = remoteaddr;
this.remoteport = remoteport;
}
}
public ArrayList<IOFilterEntry> filterEntries = new ArrayList<IOFilterEntry>();
public long startDelaying = 0; //miliseconds
public long workingTime = Long.MAX_VALUE; //infinity
public void setLogNamePattern(String str) {
logPrefix = str
.replaceAll("%r", UUID.randomUUID().toString())
.replaceAll("%p", ManagementFactory.getRuntimeMXBean().getName().replaceAll("@\\w+", ""))
.replaceAll("%h", ManagementFactory.getRuntimeMXBean().getName().replaceAll("\\w+@", ""))
.replaceAll("%i", uuid)
.replaceAll("%d", (new SimpleDateFormat("MMddyy-hhmm")).format(new Date()));
}
}