@ -1,4 +1,4 @@ |
|||||||
package net.sourceforge.subsonic.booter.deployer; |
package org.libresonic.player.booter.deployer; |
||||||
|
|
||||||
import java.util.Date; |
import java.util.Date; |
||||||
import java.io.Serializable; |
import java.io.Serializable; |
@ -0,0 +1,17 @@ |
|||||||
|
package org.libresonic.player.booter.deployer; |
||||||
|
|
||||||
|
/** |
||||||
|
* RMI interface implemented by the Libresonic deployer and used by the agent. |
||||||
|
* |
||||||
|
* @author Sindre Mehus |
||||||
|
*/ |
||||||
|
public interface LibresonicDeployerService { |
||||||
|
|
||||||
|
/** |
||||||
|
* Returns information about the Libresonic deployment, such |
||||||
|
* as URL, memory consumption, start time etc. |
||||||
|
* |
||||||
|
* @return Deployment information. |
||||||
|
*/ |
||||||
|
DeploymentStatus getDeploymentInfo(); |
||||||
|
} |
@ -0,0 +1,2 @@ |
|||||||
|
Manifest-Version: 1.0 |
||||||
|
Main-Class: org.libresonic.player.booter.Main |
Before Width: | Height: | Size: 734 B After Width: | Height: | Size: 734 B |
Before Width: | Height: | Size: 673 B After Width: | Height: | Size: 673 B |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 810 B After Width: | Height: | Size: 810 B |
Before Width: | Height: | Size: 771 B After Width: | Height: | Size: 771 B |
@ -1,24 +1,24 @@ |
|||||||
<?xml version="1.0" encoding="ISO-8859-1"?> |
<?xml version="1.0" encoding="ISO-8859-1"?> |
||||||
<!-- |
<!-- |
||||||
~ This file is part of Subsonic. |
~ This file is part of Libresonic. |
||||||
~ |
~ |
||||||
~ Subsonic is free software: you can redistribute it and/or modify |
~ Libresonic is free software: you can redistribute it and/or modify |
||||||
~ it under the terms of the GNU General Public License as published by |
~ it under the terms of the GNU General Public License as published by |
||||||
~ the Free Software Foundation, either version 3 of the License, or |
~ the Free Software Foundation, either version 3 of the License, or |
||||||
~ (at your option) any later version. |
~ (at your option) any later version. |
||||||
~ |
~ |
||||||
~ Subsonic is distributed in the hope that it will be useful, |
~ Libresonic is distributed in the hope that it will be useful, |
||||||
~ but WITHOUT ANY WARRANTY; without even the implied warranty of |
~ but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
~ GNU General Public License for more details. |
~ GNU General Public License for more details. |
||||||
~ |
~ |
||||||
~ You should have received a copy of the GNU General Public License |
~ You should have received a copy of the GNU General Public License |
||||||
~ along with Subsonic. If not, see <http://www.gnu.org/licenses/>. |
~ along with Libresonic. If not, see <http://www.gnu.org/licenses/>. |
||||||
~ |
~ |
||||||
~ Copyright 2014 (C) Sindre Mehus |
~ Copyright 2014 (C) Sindre Mehus |
||||||
--> |
--> |
||||||
|
|
||||||
<web-app id="subsonic" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" |
<web-app id="libresonic" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" |
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
||||||
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> |
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> |
||||||
|
|
@ -0,0 +1,24 @@ |
|||||||
|
@echo off |
||||||
|
|
||||||
|
REM The directory where Libresonic will create files. Make sure it is writable. |
||||||
|
set SUBSONIC_HOME=c:\libresonic |
||||||
|
|
||||||
|
REM The host name or IP address on which to bind Libresonic. Only relevant if you have |
||||||
|
REM multiple network interfaces and want to make Libresonic available on only one of them. |
||||||
|
REM The default value 0.0.0.0 will bind Libresonic to all available network interfaces. |
||||||
|
set SUBSONIC_HOST=0.0.0.0 |
||||||
|
|
||||||
|
REM The port on which Libresonic will listen for incoming HTTP traffic. |
||||||
|
set SUBSONIC_PORT=4040 |
||||||
|
|
||||||
|
REM The port on which Libresonic will listen for incoming HTTPS traffic (0 to disable). |
||||||
|
set SUBSONIC_HTTPS_PORT=0 |
||||||
|
|
||||||
|
REM The context path (i.e., the last part of the Libresonic URL). Typically "/" or "/libresonic". |
||||||
|
set SUBSONIC_CONTEXT_PATH=/ |
||||||
|
|
||||||
|
REM The memory limit (max Java heap size) in megabytes. |
||||||
|
set MAX_MEMORY=150 |
||||||
|
|
||||||
|
java -Xmx%MAX_MEMORY%m -Dlibresonic.home=%SUBSONIC_HOME% -Dlibresonic.host=%SUBSONIC_HOST% -Dlibresonic.port=%SUBSONIC_PORT% -Dlibresonic.httpsPort=%SUBSONIC_HTTPS_PORT% -Dlibresonic.contextPath=%SUBSONIC_CONTEXT_PATH% -jar libresonic-booter-jar-with-dependencies.jar |
||||||
|
|
@ -0,0 +1 @@ |
|||||||
|
/etc/default/libresonic |
@ -0,0 +1,16 @@ |
|||||||
|
#! /bin/sh |
||||||
|
|
||||||
|
set -e |
||||||
|
|
||||||
|
ln -sf /usr/share/libresonic/libresonic.sh /usr/bin/libresonic |
||||||
|
|
||||||
|
chmod 750 /var/libresonic |
||||||
|
|
||||||
|
# Clear jetty cache. |
||||||
|
rm -rf /var/libresonic/jetty |
||||||
|
|
||||||
|
# Configure Libresonic service. |
||||||
|
update-rc.d libresonic defaults 99 |
||||||
|
|
||||||
|
# Start Libresonic service. |
||||||
|
invoke-rc.d libresonic start |
@ -0,0 +1,15 @@ |
|||||||
|
#! /bin/sh |
||||||
|
|
||||||
|
set -e |
||||||
|
|
||||||
|
# Stop Libresonic service. |
||||||
|
if [ -e /etc/init.d/libresonic ]; then |
||||||
|
invoke-rc.d libresonic stop |
||||||
|
fi |
||||||
|
|
||||||
|
# Backup database. |
||||||
|
if [ -e /var/libresonic/db ]; then |
||||||
|
rm -rf /var/libresonic/db.backup |
||||||
|
cp -R /var/libresonic/db /var/libresonic/db.backup |
||||||
|
fi |
||||||
|
|
@ -0,0 +1,8 @@ |
|||||||
|
#! /bin/sh |
||||||
|
|
||||||
|
set -e |
||||||
|
|
||||||
|
# Stop Libresonic service. |
||||||
|
if [ -e /etc/init.d/libresonic ]; then |
||||||
|
invoke-rc.d libresonic stop |
||||||
|
fi |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
@ -1,6 +1,6 @@ |
|||||||
#!/bin/bash |
#!/bin/bash |
||||||
|
|
||||||
SUBSONIC_HOME="/Library/Application Support/Subsonic" |
SUBSONIC_HOME="/Library/Application Support/Libresonic" |
||||||
|
|
||||||
# Backup database. |
# Backup database. |
||||||
|
|
@ -0,0 +1,78 @@ |
|||||||
|
Name: libresonic |
||||||
|
Version: @VERSION@ |
||||||
|
Release: @BUILD_NUMBER@ |
||||||
|
Summary: A web-based music streamer, jukebox and Podcast receiver |
||||||
|
|
||||||
|
Group: Applications/Multimedia |
||||||
|
License: GPLv3 |
||||||
|
URL: http://libresonic.org |
||||||
|
|
||||||
|
%description |
||||||
|
Libresonic is a web-based music streamer, jukebox and Podcast receiver, |
||||||
|
providing access to your music collection wherever you are. Use it |
||||||
|
to share your music with friends, or to listen to your music while away |
||||||
|
from home. |
||||||
|
|
||||||
|
Apps for Android, iPhone and Windows Phone are also available. |
||||||
|
|
||||||
|
Java 1.6 or higher is required to run Libresonic. |
||||||
|
|
||||||
|
Libresonic can be found at http://libresonic.org |
||||||
|
|
||||||
|
%files |
||||||
|
%defattr(644,root,root,755) |
||||||
|
/usr/share/libresonic/libresonic-booter-jar-with-dependencies.jar |
||||||
|
/usr/share/libresonic/libresonic.war |
||||||
|
%attr(755,root,root) /usr/share/libresonic/libresonic.sh |
||||||
|
%attr(755,root,root) /etc/init.d/libresonic |
||||||
|
%attr(755,root,root) /var/libresonic/transcode/ffmpeg |
||||||
|
%attr(755,root,root) /var/libresonic/transcode/lame |
||||||
|
%config(noreplace) /etc/sysconfig/libresonic |
||||||
|
|
||||||
|
%pre |
||||||
|
# Stop Libresonic service. |
||||||
|
if [ -e /etc/init.d/libresonic ]; then |
||||||
|
service libresonic stop |
||||||
|
fi |
||||||
|
|
||||||
|
# Backup database. |
||||||
|
if [ -e /var/libresonic/db ]; then |
||||||
|
rm -rf /var/libresonic/db.backup |
||||||
|
cp -R /var/libresonic/db /var/libresonic/db.backup |
||||||
|
fi |
||||||
|
|
||||||
|
exit 0 |
||||||
|
|
||||||
|
%post |
||||||
|
ln -sf /usr/share/libresonic/libresonic.sh /usr/bin/libresonic |
||||||
|
chmod 750 /var/libresonic |
||||||
|
|
||||||
|
# Clear jetty cache. |
||||||
|
rm -rf /var/libresonic/jetty |
||||||
|
|
||||||
|
# For SELinux: Set security context |
||||||
|
chcon -t java_exec_t /etc/init.d/libresonic 2>/dev/null |
||||||
|
|
||||||
|
# Configure and start Libresonic service. |
||||||
|
chkconfig --add libresonic |
||||||
|
service libresonic start |
||||||
|
|
||||||
|
exit 0 |
||||||
|
|
||||||
|
%preun |
||||||
|
# Only do it if uninstalling, not upgrading. |
||||||
|
if [ $1 = 0 ] ; then |
||||||
|
|
||||||
|
# Stop the service. |
||||||
|
[ -e /etc/init.d/libresonic ] && service libresonic stop |
||||||
|
|
||||||
|
# Remove symlink. |
||||||
|
rm -f /usr/bin/libresonic |
||||||
|
|
||||||
|
# Remove startup scripts. |
||||||
|
chkconfig --del libresonic |
||||||
|
|
||||||
|
fi |
||||||
|
|
||||||
|
exit 0 |
||||||
|
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
@ -0,0 +1,6 @@ |
|||||||
|
-Xmx150m |
||||||
|
-verbose:gc |
||||||
|
-Dlibresonic.host=0.0.0.0 |
||||||
|
-Dlibresonic.port=4040 |
||||||
|
-Dlibresonic.httpsPort=0 |
||||||
|
-Dlibresonic.contextPath=/ |
@ -0,0 +1,213 @@ |
|||||||
|
# libresonic.nsi |
||||||
|
|
||||||
|
!include "WordFunc.nsh" |
||||||
|
!include "MUI.nsh" |
||||||
|
|
||||||
|
!insertmacro VersionCompare |
||||||
|
|
||||||
|
# The name of the installer |
||||||
|
Name "Libresonic" |
||||||
|
|
||||||
|
# The default installation directory |
||||||
|
InstallDir $PROGRAMFILES\Libresonic |
||||||
|
|
||||||
|
# Registry key to check for directory (so if you install again, it will |
||||||
|
# overwrite the old one automatically) |
||||||
|
InstallDirRegKey HKLM "Software\Libresonic" "Install_Dir" |
||||||
|
|
||||||
|
#-------------------------------- |
||||||
|
#Interface Configuration |
||||||
|
|
||||||
|
!define MUI_HEADERIMAGE |
||||||
|
!define MUI_HEADERIMAGE_BITMAP "${NSISDIR}\Contrib\Graphics\Header\orange.bmp" |
||||||
|
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\Getting Started.html" |
||||||
|
!define MUI_FINISHPAGE_SHOWREADME_TEXT "View Getting Started document" |
||||||
|
|
||||||
|
#-------------------------------- |
||||||
|
# Pages |
||||||
|
|
||||||
|
# This page checks for JRE |
||||||
|
Page custom CheckInstalledJRE |
||||||
|
|
||||||
|
!insertmacro MUI_PAGE_WELCOME |
||||||
|
!insertmacro MUI_PAGE_DIRECTORY |
||||||
|
!insertmacro MUI_PAGE_INSTFILES |
||||||
|
!insertmacro MUI_PAGE_FINISH |
||||||
|
|
||||||
|
!insertmacro MUI_UNPAGE_WELCOME |
||||||
|
!insertmacro MUI_UNPAGE_CONFIRM |
||||||
|
!insertmacro MUI_UNPAGE_INSTFILES |
||||||
|
|
||||||
|
# Languages |
||||||
|
!insertmacro MUI_LANGUAGE "English" |
||||||
|
|
||||||
|
Section "Libresonic" |
||||||
|
|
||||||
|
SectionIn RO |
||||||
|
|
||||||
|
# Install for all users |
||||||
|
SetShellVarContext "all" |
||||||
|
|
||||||
|
# Take backup of existing libresonic-service.exe.vmoptions |
||||||
|
CopyFiles /SILENT $INSTDIR\libresonic-service.exe.vmoptions $TEMP\libresonic-service.exe.vmoptions |
||||||
|
|
||||||
|
# Silently uninstall existing version. |
||||||
|
ExecWait '"$INSTDIR\uninstall.exe" /S _?=$INSTDIR' |
||||||
|
|
||||||
|
# Remove previous Jetty temp directory. |
||||||
|
RMDir /r "c:\libresonic\jetty" |
||||||
|
|
||||||
|
# Backup database. |
||||||
|
RMDir /r "c:\libresonic\db.backup" |
||||||
|
CreateDirectory "c:\libresonic\db.backup" |
||||||
|
CopyFiles /SILENT "c:\libresonic\db\*" "c:\libresonic\db.backup" |
||||||
|
|
||||||
|
# Set output path to the installation directory. |
||||||
|
SetOutPath $INSTDIR |
||||||
|
|
||||||
|
# Write files. |
||||||
|
File ..\..\..\target\libresonic-agent.exe |
||||||
|
File ..\..\..\target\libresonic-agent.exe.vmoptions |
||||||
|
File ..\..\..\target\libresonic-agent-elevated.exe |
||||||
|
File ..\..\..\target\libresonic-agent-elevated.exe.vmoptions |
||||||
|
File ..\..\..\target\libresonic-service.exe |
||||||
|
File ..\..\..\target\libresonic-service.exe.vmoptions |
||||||
|
File ..\..\..\..\libresonic-booter\target\libresonic-booter-jar-with-dependencies.jar |
||||||
|
File ..\..\..\..\libresonic-main\README.TXT |
||||||
|
File ..\..\..\..\libresonic-main\LICENSE.TXT |
||||||
|
File "..\..\..\..\libresonic-main\Getting Started.html" |
||||||
|
File ..\..\..\..\libresonic-main\target\libresonic.war |
||||||
|
File ..\..\..\..\libresonic-main\target\classes\version.txt |
||||||
|
File ..\..\..\..\libresonic-main\target\classes\build_number.txt |
||||||
|
|
||||||
|
# Write the installation path into the registry |
||||||
|
WriteRegStr HKLM SOFTWARE\Libresonic "Install_Dir" "$INSTDIR" |
||||||
|
|
||||||
|
# Write the uninstall keys for Windows |
||||||
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Libresonic" "DisplayName" "Libresonic" |
||||||
|
WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Libresonic" "UninstallString" '"$INSTDIR\uninstall.exe"' |
||||||
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Libresonic" "NoModify" 1 |
||||||
|
WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Libresonic" "NoRepair" 1 |
||||||
|
WriteUninstaller "uninstall.exe" |
||||||
|
|
||||||
|
# Restore libresonic-service.exe.vmoptions |
||||||
|
CopyFiles /SILENT $TEMP\libresonic-service.exe.vmoptions $INSTDIR\libresonic-service.exe.vmoptions |
||||||
|
Delete $TEMP\libresonic-service.exe.vmoptions |
||||||
|
|
||||||
|
# Write transcoding pack files. |
||||||
|
SetOutPath "c:\libresonic\transcode" |
||||||
|
File ..\..\..\..\libresonic-transcode\windows\*.* |
||||||
|
|
||||||
|
# Add Windows Firewall exception. |
||||||
|
# (Requires NSIS plugin found on http://nsis.sourceforge.net/NSIS_Simple_Firewall_Plugin to be installed |
||||||
|
# as NSIS_HOME/Plugins/SimpleFC.dll) |
||||||
|
|
||||||
|
SimpleFC::AdvAddRule "Libresonic Service (TCP)" "" "6" "1" "1" "7" "1" "$INSTDIR\libresonic-service.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
SimpleFC::AdvAddRule "Libresonic Service (UDP)" "" "17" "1" "1" "7" "1" "$INSTDIR\libresonic-service.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
SimpleFC::AdvAddRule "Libresonic Agent (TCP)" "" "6" "1" "1" "7" "1" "$INSTDIR\libresonic-agent.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
SimpleFC::AdvAddRule "Libresonic Agent (UDP)" "" "17" "1" "1" "7" "1" "$INSTDIR\libresonic-agent.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
SimpleFC::AdvAddRule "Libresonic Agent Elevated (TCP)" "" "6" "1" "1" "7" "1" "$INSTDIR\libresonic-agent-elevated.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
SimpleFC::AdvAddRule "Libresonic Agent Elevated (UDP)" "" "17" "1" "1" "7" "1" "$INSTDIR\libresonic-agent-elevated.exe" "" "" "Libresonic" "" "" "" "" |
||||||
|
|
||||||
|
# Install and start service. |
||||||
|
ExecWait '"$INSTDIR\libresonic-service.exe" -install' |
||||||
|
ExecWait '"$INSTDIR\libresonic-service.exe" -start' |
||||||
|
|
||||||
|
# Start agent. |
||||||
|
Exec '"$INSTDIR\libresonic-agent-elevated.exe" -balloon' |
||||||
|
|
||||||
|
SectionEnd |
||||||
|
|
||||||
|
|
||||||
|
Section "Start Menu Shortcuts" |
||||||
|
|
||||||
|
CreateDirectory "$SMPROGRAMS\Libresonic" |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Open Libresonic.lnk" "$INSTDIR\libresonic.url" "" "$INSTDIR\libresonic-agent.exe" 0 |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Libresonic Tray Icon.lnk" "$INSTDIR\libresonic-agent.exe" "-balloon" "$INSTDIR\libresonic-agent.exe" 0 |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Start Libresonic Service.lnk" "$INSTDIR\libresonic-service.exe" "-start" "$INSTDIR\libresonic-service.exe" 0 |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Stop Libresonic Service.lnk" "$INSTDIR\libresonic-service.exe" "-stop" "$INSTDIR\libresonic-service.exe" 0 |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Uninstall Libresonic.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0 |
||||||
|
CreateShortCut "$SMPROGRAMS\Libresonic\Getting Started.lnk" "$INSTDIR\Getting Started.html" "" "$INSTDIR\Getting Started.html" 0 |
||||||
|
|
||||||
|
CreateShortCut "$SMSTARTUP\Libresonic.lnk" "$INSTDIR\libresonic-agent.exe" "" "$INSTDIR\libresonic-agent.exe" 0 |
||||||
|
|
||||||
|
SectionEnd |
||||||
|
|
||||||
|
|
||||||
|
# Uninstaller |
||||||
|
|
||||||
|
Section "Uninstall" |
||||||
|
|
||||||
|
# Uninstall for all users |
||||||
|
SetShellVarContext "all" |
||||||
|
|
||||||
|
# Stop and uninstall service if present. |
||||||
|
ExecWait '"$INSTDIR\libresonic-service.exe" -stop' |
||||||
|
ExecWait '"$INSTDIR\libresonic-service.exe" -uninstall' |
||||||
|
|
||||||
|
# Stop agent by killing it. |
||||||
|
# (Requires NSIS plugin found on http://nsis.sourceforge.net/Processes_plug-in to be installed |
||||||
|
# as NSIS_HOME/Plugins/Processes.dll) |
||||||
|
Processes::KillProcess "libresonic-agent" |
||||||
|
Processes::KillProcess "libresonic-agent-elevated" |
||||||
|
Processes::KillProcess "ffmpeg" |
||||||
|
|
||||||
|
# Remove registry keys |
||||||
|
DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\Libresonic" |
||||||
|
DeleteRegKey HKLM SOFTWARE\Libresonic |
||||||
|
|
||||||
|
# Remove files. |
||||||
|
Delete "$SMSTARTUP\Libresonic.lnk" |
||||||
|
RMDir /r "$SMPROGRAMS\Libresonic" |
||||||
|
Delete "$INSTDIR\build_number.txt" |
||||||
|
Delete "$INSTDIR\elevate.exe" |
||||||
|
Delete "$INSTDIR\Getting Started.html" |
||||||
|
Delete "$INSTDIR\LICENSE.TXT" |
||||||
|
Delete "$INSTDIR\README.TXT" |
||||||
|
Delete "$INSTDIR\libresonic.url" |
||||||
|
Delete "$INSTDIR\libresonic.war" |
||||||
|
Delete "$INSTDIR\libresonic-agent.exe" |
||||||
|
Delete "$INSTDIR\libresonic-agent.exe.vmoptions" |
||||||
|
Delete "$INSTDIR\libresonic-agent-elevated.exe" |
||||||
|
Delete "$INSTDIR\libresonic-agent-elevated.exe.vmoptions" |
||||||
|
Delete "$INSTDIR\libresonic-booter-jar-with-dependencies.jar" |
||||||
|
Delete "$INSTDIR\libresonic-service.exe" |
||||||
|
Delete "$INSTDIR\libresonic-service.exe.vmoptions" |
||||||
|
Delete "$INSTDIR\uninstall.exe" |
||||||
|
Delete "$INSTDIR\version.txt" |
||||||
|
RMDir /r "$INSTDIR\log" |
||||||
|
RMDir "$INSTDIR" |
||||||
|
|
||||||
|
# Remove Windows Firewall exception. |
||||||
|
# (Requires NSIS plugin found on http://nsis.sourceforge.net/NSIS_Simple_Firewall_Plugin to be installed |
||||||
|
# as NSIS_HOME/Plugins/SimpleFC.dll) |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Service (TCP)" |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Service (UDP)" |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Agent (TCP)" |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Agent (UDP)" |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Agent Elevated (TCP)" |
||||||
|
SimpleFC::AdvRemoveRule "Libresonic Agent Elevated (UDP)" |
||||||
|
|
||||||
|
SectionEnd |
||||||
|
|
||||||
|
|
||||||
|
Function CheckInstalledJRE |
||||||
|
# Read the value from the registry into the $0 register |
||||||
|
ReadRegStr $0 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" CurrentVersion |
||||||
|
|
||||||
|
# Check JRE version. At least 1.6 is required. |
||||||
|
# $1=0 Versions are equal |
||||||
|
# $1=1 Installed version is newer |
||||||
|
# $1=2 Installed version is older (or non-existent) |
||||||
|
${VersionCompare} $0 "1.6" $1 |
||||||
|
IntCmp $1 2 InstallJRE 0 0 |
||||||
|
Return |
||||||
|
|
||||||
|
InstallJRE: |
||||||
|
# Launch Java web installer. |
||||||
|
MessageBox MB_OK "Java was not found and will now be installed." |
||||||
|
File /oname=$TEMP\jre-setup.exe jre-8u31-windows-i586-iftw.exe |
||||||
|
ExecWait '"$TEMP\jre-setup.exe"' $0 |
||||||
|
Delete "$TEMP\jre-setup.exe" |
||||||
|
|
||||||
|
FunctionEnd |
@ -0,0 +1,10 @@ |
|||||||
|
<html> |
||||||
|
|
||||||
|
<head> |
||||||
|
<meta http-equiv="refresh" content="0;URL=http://libresonic.org/pages/getting-started.jsp"> |
||||||
|
</head> |
||||||
|
|
||||||
|
<body> |
||||||
|
</body> |
||||||
|
|
||||||
|
</html> |
@ -1,27 +1,27 @@ |
|||||||
/* |
/* |
||||||
* This file is part of Subsonic. |
* This file is part of Libresonic. |
||||||
* |
* |
||||||
* Subsonic is free software: you can redistribute it and/or modify |
* Libresonic is free software: you can redistribute it and/or modify |
||||||
* it under the terms of the GNU General Public License as published by |
* it under the terms of the GNU General Public License as published by |
||||||
* the Free Software Foundation, either version 3 of the License, or |
* the Free Software Foundation, either version 3 of the License, or |
||||||
* (at your option) any later version. |
* (at your option) any later version. |
||||||
* |
* |
||||||
* Subsonic is distributed in the hope that it will be useful, |
* Libresonic is distributed in the hope that it will be useful, |
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
* GNU General Public License for more details. |
* GNU General Public License for more details. |
||||||
* |
* |
||||||
* You should have received a copy of the GNU General Public License |
* You should have received a copy of the GNU General Public License |
||||||
* along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
* along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
* |
* |
||||||
* Copyright 2014 (C) Sindre Mehus |
* Copyright 2014 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
|
|
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import java.util.List; |
import java.util.List; |
||||||
|
|
||||||
import net.sourceforge.subsonic.domain.ArtistBio; |
import org.libresonic.player.domain.ArtistBio; |
||||||
|
|
||||||
/** |
/** |
||||||
* @author Sindre Mehus |
* @author Sindre Mehus |
@ -1,26 +1,26 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import net.sourceforge.subsonic.Logger; |
import org.libresonic.player.Logger; |
||||||
import net.sourceforge.subsonic.service.SecurityService; |
import org.libresonic.player.service.SecurityService; |
||||||
import net.sourceforge.subsonic.util.BoundedList; |
import org.libresonic.player.util.BoundedList; |
||||||
import org.apache.commons.lang.StringUtils; |
import org.apache.commons.lang.StringUtils; |
||||||
import org.directwebremoting.WebContext; |
import org.directwebremoting.WebContext; |
||||||
import org.directwebremoting.WebContextFactory; |
import org.directwebremoting.WebContextFactory; |
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
/** |
/** |
||||||
* Contains info about cover art images for an album. |
* Contains info about cover art images for an album. |
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
/** |
/** |
||||||
* Contains lyrics info for a song. |
* Contains lyrics info for a song. |
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import java.util.Date; |
import java.util.Date; |
||||||
|
|
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
/** |
/** |
||||||
* Details about what a user is currently listening to. |
* Details about what a user is currently listening to. |
@ -1,26 +1,26 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import java.util.List; |
import java.util.List; |
||||||
|
|
||||||
import net.sourceforge.subsonic.util.StringUtil; |
import org.libresonic.player.util.StringUtil; |
||||||
|
|
||||||
/** |
/** |
||||||
* The playlist of a player. |
* The playlist of a player. |
@ -1,27 +1,27 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import java.util.List; |
import java.util.List; |
||||||
|
|
||||||
import net.sourceforge.subsonic.domain.MediaFile; |
import org.libresonic.player.domain.MediaFile; |
||||||
import net.sourceforge.subsonic.domain.Playlist; |
import org.libresonic.player.domain.Playlist; |
||||||
|
|
||||||
/** |
/** |
||||||
* The playlist of a player. |
* The playlist of a player. |
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
/** |
/** |
||||||
* Media folder scanning status. |
* Media folder scanning status. |
@ -1,22 +1,22 @@ |
|||||||
/* |
/* |
||||||
* This file is part of Subsonic. |
* This file is part of Libresonic. |
||||||
* |
* |
||||||
* Subsonic is free software: you can redistribute it and/or modify |
* Libresonic is free software: you can redistribute it and/or modify |
||||||
* it under the terms of the GNU General Public License as published by |
* it under the terms of the GNU General Public License as published by |
||||||
* the Free Software Foundation, either version 3 of the License, or |
* the Free Software Foundation, either version 3 of the License, or |
||||||
* (at your option) any later version. |
* (at your option) any later version. |
||||||
* |
* |
||||||
* Subsonic is distributed in the hope that it will be useful, |
* Libresonic is distributed in the hope that it will be useful, |
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
* GNU General Public License for more details. |
* GNU General Public License for more details. |
||||||
* |
* |
||||||
* You should have received a copy of the GNU General Public License |
* You should have received a copy of the GNU General Public License |
||||||
* along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
* along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
* |
* |
||||||
* Copyright 2014 (C) Sindre Mehus |
* Copyright 2014 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
/** |
/** |
||||||
* Contains info about a similar artist. |
* Contains info about a similar artist. |
@ -1,27 +1,27 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import net.sourceforge.subsonic.Logger; |
import org.libresonic.player.Logger; |
||||||
import net.sourceforge.subsonic.dao.MediaFileDao; |
import org.libresonic.player.dao.MediaFileDao; |
||||||
import net.sourceforge.subsonic.domain.User; |
import org.libresonic.player.domain.User; |
||||||
import net.sourceforge.subsonic.service.SecurityService; |
import org.libresonic.player.service.SecurityService; |
||||||
import org.directwebremoting.WebContext; |
import org.directwebremoting.WebContext; |
||||||
import org.directwebremoting.WebContextFactory; |
import org.directwebremoting.WebContextFactory; |
||||||
|
|
@ -1,33 +1,33 @@ |
|||||||
/* |
/* |
||||||
This file is part of Subsonic. |
This file is part of Libresonic. |
||||||
|
|
||||||
Subsonic is free software: you can redistribute it and/or modify |
Libresonic is free software: you can redistribute it and/or modify |
||||||
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
||||||
the Free Software Foundation, either version 3 of the License, or |
the Free Software Foundation, either version 3 of the License, or |
||||||
(at your option) any later version. |
(at your option) any later version. |
||||||
|
|
||||||
Subsonic is distributed in the hope that it will be useful, |
Libresonic is distributed in the hope that it will be useful, |
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
GNU General Public License for more details. |
GNU General Public License for more details. |
||||||
|
|
||||||
You should have received a copy of the GNU General Public License |
You should have received a copy of the GNU General Public License |
||||||
along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
|
along with Libresonic. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
Copyright 2009 (C) Sindre Mehus |
Copyright 2009 (C) Sindre Mehus |
||||||
*/ |
*/ |
||||||
package net.sourceforge.subsonic.ajax; |
package org.libresonic.player.ajax; |
||||||
|
|
||||||
import org.apache.commons.io.FilenameUtils; |
import org.apache.commons.io.FilenameUtils; |
||||||
import org.apache.commons.lang.ObjectUtils; |
import org.apache.commons.lang.ObjectUtils; |
||||||
import org.apache.commons.lang.StringUtils; |
import org.apache.commons.lang.StringUtils; |
||||||
|
|
||||||
import net.sourceforge.subsonic.Logger; |
import org.libresonic.player.Logger; |
||||||
import net.sourceforge.subsonic.domain.MediaFile; |
import org.libresonic.player.domain.MediaFile; |
||||||
import net.sourceforge.subsonic.service.MediaFileService; |
import org.libresonic.player.service.MediaFileService; |
||||||
import net.sourceforge.subsonic.service.metadata.MetaData; |
import org.libresonic.player.service.metadata.MetaData; |
||||||
import net.sourceforge.subsonic.service.metadata.MetaDataParser; |
import org.libresonic.player.service.metadata.MetaDataParser; |
||||||
import net.sourceforge.subsonic.service.metadata.MetaDataParserFactory; |
import org.libresonic.player.service.metadata.MetaDataParserFactory; |
||||||
|
|
||||||
/** |
/** |
||||||
* Provides AJAX-enabled services for editing tags in music files. |
* Provides AJAX-enabled services for editing tags in music files. |