Setup backwards compatiblity with old libresonic.home

Signed-off-by: Andrew DeMaria <lostonamountain@gmail.com>
This commit is contained in:
Andrew DeMaria
2017-07-13 21:34:30 -06:00
parent 348411cc0d
commit 5447141718
3 changed files with 18 additions and 4 deletions
@@ -240,8 +240,11 @@ public class SettingsService {
File home; File home;
String overrideHome = System.getProperty("airsonic.home"); String overrideHome = System.getProperty("airsonic.home");
String oldHome = System.getProperty("libresonic.home");
if (overrideHome != null) { if (overrideHome != null) {
home = new File(overrideHome); home = new File(overrideHome);
} else if(oldHome != null) {
home = new File(oldHome);
} else { } else {
boolean isWindows = System.getProperty("os.name", "Windows").toLowerCase().startsWith("windows"); boolean isWindows = System.getProperty("os.name", "Windows").toLowerCase().startsWith("windows");
home = isWindows ? AIRSONIC_HOME_WINDOWS : AIRSONIC_HOME_OTHER; home = isWindows ? AIRSONIC_HOME_WINDOWS : AIRSONIC_HOME_OTHER;
@@ -251,9 +254,18 @@ public class SettingsService {
return home; return home;
} }
public static String getFileSystemAppName() {
String home = getAirsonicHome().getPath();
return home.contains("libresonic") ? "libresonic" : "airsonic";
}
public static String getDefaultJDBCUrl() {
return "jdbc:hsqldb:file:" + getAirsonicHome().getPath() + "/db/" + getFileSystemAppName();
}
public static File getLogFile() { public static File getLogFile() {
File airsonicHome = SettingsService.getAirsonicHome(); File airsonicHome = SettingsService.getAirsonicHome();
return new File(airsonicHome, "airsonic.log"); return new File(airsonicHome, getFileSystemAppName() + ".log");
} }
@@ -298,7 +310,7 @@ public class SettingsService {
public static File getPropertyFile() { public static File getPropertyFile() {
File propertyFile = getAirsonicHome(); File propertyFile = getAirsonicHome();
return new File(propertyFile, "airsonic.properties"); return new File(propertyFile, getFileSystemAppName() + ".properties");
} }
private int getInt(String key, int defaultValue) { private int getInt(String key, int defaultValue) {
@@ -8,7 +8,8 @@
class="org.springframework.jdbc.datasource.DriverManagerDataSource"> class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" /> <property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:file:#{T(org.airsonic.player.service.SettingsService).airsonicHome.path}/db/airsonic" /> <property name="url"
value="#{T(org.airsonic.player.service.SettingsService).defaultJDBCUrl}" />
<property name="username" value="sa" /> <property name="username" value="sa" />
<property name="password" value="" /> <property name="password" value="" />
</bean> </bean>
@@ -7,7 +7,8 @@
class="org.springframework.jdbc.datasource.DriverManagerDataSource"> class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="org.hsqldb.jdbcDriver" /> <property name="driverClassName" value="org.hsqldb.jdbcDriver" />
<property name="url" value="jdbc:hsqldb:file:#{systemProperties['airsonic.home']}/db/airsonic" /> <property name="url"
value="#{T(org.airsonic.player.service.SettingsService).defaultJDBCUrl}" />
<property name="username" value="sa" /> <property name="username" value="sa" />
<property name="password" value="" /> <property name="password" value="" />
</bean> </bean>