import java.util.Date;\r
\r
public class LogFileNamer {\r
- private final String root;\r
- private final String ending;\r
- private final String dir;\r
+ private final String root;\r
+ private final String ending;\r
+ private final String dir;\r
\r
- public LogFileNamer(final String dir, final String root) {\r
- this.dir = dir;\r
- if (root == null || "".equals(root) || root.endsWith("/")) {\r
- this.root = root;\r
- } else {\r
- this.root = root + "-";\r
- }\r
- ending = new SimpleDateFormat("YYYYMMdd").format(new Date());\r
- }\r
+ public LogFileNamer(final String dir, final String root) {\r
+ this.dir = dir;\r
+ if (root == null || "".equals(root) || root.endsWith("/")) {\r
+ this.root = root;\r
+ } else {\r
+ this.root = root + "-";\r
+ }\r
+ ending = new SimpleDateFormat("YYYYMMdd").format(new Date());\r
+ }\r
\r
- public LogFileNamer noPID() {\r
- return this;\r
- }\r
+ public LogFileNamer noPID() {\r
+ return this;\r
+ }\r
\r
- private static final String FILE_FORMAT_STR = "%s/%s%s%s_%d.log";\r
+ private static final String FILE_FORMAT_STR = "%s/%s%s%s_%d.log";\r
\r
- /**\r
- * Accepts a String. If Separated by "|" then first part is the Appender name,\r
- * and the second is used in the FileNaming (This is to allow for shortened\r
- * Logger names, and more verbose file names) ONAP: jna code has license issues.\r
- * Just do Date + Unique Number\r
- * \r
- * @param appender\r
- * \r
- * returns the String Appender\r
- * @throws IOException\r
- */\r
- public String setAppender(String appender) throws IOException {\r
- String filename;\r
- int i = 0;\r
- File f;\r
- while ((f = new File(filename = String.format(FILE_FORMAT_STR, dir, root, appender, ending, i))).exists()) {\r
- ++i;\r
- }\r
- ;\r
- f.createNewFile();\r
- System.setProperty("LOG4J_FILENAME_" + appender, filename);\r
- return appender;\r
- }\r
+ /**\r
+ * Accepts a String. If Separated by "|" then first part is the Appender name,\r
+ * and the second is used in the FileNaming (This is to allow for shortened\r
+ * Logger names, and more verbose file names) ONAP: jna code has license issues.\r
+ * Just do Date + Unique Number\r
+ * \r
+ * @param appender\r
+ * \r
+ * returns the String Appender\r
+ * @throws IOException\r
+ */\r
+ public String setAppender(String appender) throws IOException {\r
+ int i = 0;\r
+ File f;\r
+ while ((f = new File(String.format(FILE_FORMAT_STR, dir, root, appender, ending, i))).exists()) {\r
+ ++i;\r
+ }\r
+ \r
+ f.createNewFile();\r
+ System.setProperty("LOG4J_FILENAME_" + appender, f.getCanonicalPath());\r
+ return appender;\r
+ }\r
\r
- public void configure(final String path, final String fname, final String log_level) throws IOException {\r
- final String fullPath = path + '/' + fname;\r
- if (new File(fullPath).exists()) {\r
- org.apache.log4j.PropertyConfigurator.configureAndWatch(fullPath, 60 * 1000L);\r
- } else {\r
- URL rsrc = ClassLoader.getSystemResource(fname);\r
- if (rsrc == null) {\r
- String msg = "Neither File: " + path + '/' + fname + " nor resource on Classpath " + fname + " exist";\r
- throw new IOException(msg);\r
- }\r
- org.apache.log4j.PropertyConfigurator.configure(rsrc);\r
- }\r
+ public void configure(final String path, final String fname, final String log_level) throws IOException {\r
+ final String fullPath = path + '/' + fname;\r
+ if (new File(fullPath).exists()) {\r
+ org.apache.log4j.PropertyConfigurator.configureAndWatch(fullPath, 60 * 1000L);\r
+ } else {\r
+ URL rsrc = ClassLoader.getSystemResource(fname);\r
+ if (rsrc == null) {\r
+ String msg = "Neither File: " + path + '/' + fname + " nor resource on Classpath " + fname + " exist";\r
+ throw new IOException(msg);\r
+ }\r
+ org.apache.log4j.PropertyConfigurator.configure(rsrc);\r
+ }\r
\r
- }\r
+ }\r
}\r