From 148d4828a712a397ce7541e802844a32b5708ec2 Mon Sep 17 00:00:00 2001 From: Jan-Pascal van Best Date: Sun, 25 Mar 2012 20:20:50 +0200 Subject: [PATCH] Prepare for config file version numbering --- src/main/java/org/vanbest/xmltv/Config.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/java/org/vanbest/xmltv/Config.java b/src/main/java/org/vanbest/xmltv/Config.java index 9bb6a57..06f7d3f 100644 --- a/src/main/java/org/vanbest/xmltv/Config.java +++ b/src/main/java/org/vanbest/xmltv/Config.java @@ -48,6 +48,8 @@ public class Config { private static final int LOG_PROGRAMME_INFO = 0x0200; public static int LOG_DEFAULT = LOG_INFO; + + private final static int CURRENT_FILE_FORMAT=1; String project_version; @@ -111,6 +113,7 @@ public class Config { public void writeConfig(File configFile) throws IOException { FileUtils.forceMkdir(configFile.getParentFile()); PrintWriter out = new PrintWriter(new OutputStreamWriter( new FileOutputStream( configFile ))); + out.println("config-file-format: " + CURRENT_FILE_FORMAT); out.println("cache-file: " + escape(cacheFile.getPath())); out.println("nice-time-milliseconds: " + niceMilliseconds); for(Channel c: channels) { @@ -172,6 +175,7 @@ public class Config { public static Config readConfig(File file) { Config result = getDefaultConfig(); result.cattrans = new HashMap(); + int fileformat=0; // Assume legacy config file format try { BufferedReader reader = new BufferedReader( new InputStreamReader( new FileInputStream( file))); @@ -192,6 +196,18 @@ public class Config { case "category" : result.cattrans.put(parts.get(1), parts.get(2)); break; + case "current-file-format" : + try { + fileformat = Integer.parseInt(parts.get(1)); + } catch (NumberFormatException e) { + System.out.println("Unknown config file format " + parts.get(1)); + fileformat = CURRENT_FILE_FORMAT; // may crash later + } + if (fileformat > CURRENT_FILE_FORMAT) { + System.out.println("Unknown config file format " + parts.get(1)); + fileformat = CURRENT_FILE_FORMAT; + } + break; case "cache-file": result.cacheFile = new File(parts.get(1)); break; -- 2.39.5