aboutsummaryrefslogtreecommitdiff
path: root/subsonic-main/src/main/java/net/sourceforge/subsonic/command
diff options
context:
space:
mode:
authorScott Jackson <daneren2005@gmail.com>2012-07-02 21:24:02 -0700
committerScott Jackson <daneren2005@gmail.com>2012-07-02 21:24:02 -0700
commita1a18f77a50804e0127dfa4b0f5240c49c541184 (patch)
tree19a38880afe505beddb5590379a8134d7730a277 /subsonic-main/src/main/java/net/sourceforge/subsonic/command
parentb61d787706979e7e20f4c3c4f93c1f129d92273f (diff)
downloaddsub-a1a18f77a50804e0127dfa4b0f5240c49c541184.tar.gz
dsub-a1a18f77a50804e0127dfa4b0f5240c49c541184.tar.bz2
dsub-a1a18f77a50804e0127dfa4b0f5240c49c541184.zip
Initial Commit
Diffstat (limited to 'subsonic-main/src/main/java/net/sourceforge/subsonic/command')
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/AdvancedSettingsCommand.java146
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/DonateCommand.java88
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/EnumHolder.java42
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/GeneralSettingsCommand.java184
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/MusicFolderSettingsCommand.java187
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/NetworkSettingsCommand.java92
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/PasswordSettingsCommand.java65
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/PersonalSettingsCommand.java215
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/PlayerSettingsCommand.java250
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/PodcastSettingsCommand.java66
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/SearchCommand.java135
-rw-r--r--subsonic-main/src/main/java/net/sourceforge/subsonic/command/UserSettingsCommand.java278
12 files changed, 1748 insertions, 0 deletions
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/AdvancedSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/AdvancedSettingsCommand.java
new file mode 100644
index 00000000..6c87df51
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/AdvancedSettingsCommand.java
@@ -0,0 +1,146 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.AdvancedSettingsController;
+
+/**
+ * Command used in {@link AdvancedSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class AdvancedSettingsCommand {
+ private String downsampleCommand;
+ private String coverArtLimit;
+ private String downloadLimit;
+ private String uploadLimit;
+ private String streamPort;
+ private boolean ldapEnabled;
+ private String ldapUrl;
+ private String ldapSearchFilter;
+ private String ldapManagerDn;
+ private String ldapManagerPassword;
+ private boolean ldapAutoShadowing;
+ private String brand;
+ private boolean isReloadNeeded;
+
+ public String getDownsampleCommand() {
+ return downsampleCommand;
+ }
+
+ public void setDownsampleCommand(String downsampleCommand) {
+ this.downsampleCommand = downsampleCommand;
+ }
+
+ public String getCoverArtLimit() {
+ return coverArtLimit;
+ }
+
+ public void setCoverArtLimit(String coverArtLimit) {
+ this.coverArtLimit = coverArtLimit;
+ }
+
+ public String getDownloadLimit() {
+ return downloadLimit;
+ }
+
+ public void setDownloadLimit(String downloadLimit) {
+ this.downloadLimit = downloadLimit;
+ }
+
+ public String getUploadLimit() {
+ return uploadLimit;
+ }
+
+ public String getStreamPort() {
+ return streamPort;
+ }
+
+ public void setStreamPort(String streamPort) {
+ this.streamPort = streamPort;
+ }
+
+ public void setUploadLimit(String uploadLimit) {
+ this.uploadLimit = uploadLimit;
+ }
+
+ public boolean isLdapEnabled() {
+ return ldapEnabled;
+ }
+
+ public void setLdapEnabled(boolean ldapEnabled) {
+ this.ldapEnabled = ldapEnabled;
+ }
+
+ public String getLdapUrl() {
+ return ldapUrl;
+ }
+
+ public void setLdapUrl(String ldapUrl) {
+ this.ldapUrl = ldapUrl;
+ }
+
+ public String getLdapSearchFilter() {
+ return ldapSearchFilter;
+ }
+
+ public void setLdapSearchFilter(String ldapSearchFilter) {
+ this.ldapSearchFilter = ldapSearchFilter;
+ }
+
+ public String getLdapManagerDn() {
+ return ldapManagerDn;
+ }
+
+ public void setLdapManagerDn(String ldapManagerDn) {
+ this.ldapManagerDn = ldapManagerDn;
+ }
+
+ public String getLdapManagerPassword() {
+ return ldapManagerPassword;
+ }
+
+ public void setLdapManagerPassword(String ldapManagerPassword) {
+ this.ldapManagerPassword = ldapManagerPassword;
+ }
+
+ public boolean isLdapAutoShadowing() {
+ return ldapAutoShadowing;
+ }
+
+ public void setLdapAutoShadowing(boolean ldapAutoShadowing) {
+ this.ldapAutoShadowing = ldapAutoShadowing;
+ }
+
+ public void setBrand(String brand) {
+ this.brand = brand;
+ }
+
+ public String getBrand() {
+ return brand;
+ }
+
+ public void setReloadNeeded(boolean reloadNeeded) {
+ isReloadNeeded = reloadNeeded;
+ }
+
+ public boolean isReloadNeeded() {
+ return isReloadNeeded;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/DonateCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/DonateCommand.java
new file mode 100644
index 00000000..04af0ff6
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/DonateCommand.java
@@ -0,0 +1,88 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.DonateController;
+
+import java.util.Date;
+
+import org.apache.commons.lang.StringUtils;
+
+/**
+ * Command used in {@link DonateController}.
+ *
+ * @author Sindre Mehus
+ */
+public class DonateCommand {
+
+ private String path;
+ private String emailAddress;
+ private String license;
+ private Date licenseDate;
+ private boolean licenseValid;
+ private String brand;
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ public String getEmailAddress() {
+ return emailAddress;
+ }
+
+ public void setEmailAddress(String emailAddress) {
+ this.emailAddress = StringUtils.trim(emailAddress);
+ }
+
+ public String getLicense() {
+ return license;
+ }
+
+ public void setLicense(String license) {
+ this.license = StringUtils.trim(license);
+ }
+
+ public Date getLicenseDate() {
+ return licenseDate;
+ }
+
+ public void setLicenseDate(Date licenseDate) {
+ this.licenseDate = licenseDate;
+ }
+
+ public boolean isLicenseValid() {
+ return licenseValid;
+ }
+
+ public void setLicenseValid(boolean licenseValid) {
+ this.licenseValid = licenseValid;
+ }
+
+ public String getBrand() {
+ return brand;
+ }
+
+ public void setBrand(String brand) {
+ this.brand = brand;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/EnumHolder.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/EnumHolder.java
new file mode 100644
index 00000000..bb1fc5ff
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/EnumHolder.java
@@ -0,0 +1,42 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+/**
+ * Holds the name and description of an enum value.
+ *
+ * @author Sindre Mehus
+ */
+public class EnumHolder {
+ private String name;
+ private String description;
+
+ public EnumHolder(String name, String description) {
+ this.name = name;
+ this.description = description;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/GeneralSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/GeneralSettingsCommand.java
new file mode 100644
index 00000000..2322a3bd
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/GeneralSettingsCommand.java
@@ -0,0 +1,184 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.GeneralSettingsController;
+import net.sourceforge.subsonic.domain.Theme;
+
+/**
+ * Command used in {@link GeneralSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class GeneralSettingsCommand {
+
+ private String musicFileTypes;
+ private String videoFileTypes;
+ private String coverArtFileTypes;
+ private String index;
+ private String ignoredArticles;
+ private String shortcuts;
+ private boolean sortAlbumsByYear;
+ private boolean gettingStartedEnabled;
+ private String welcomeTitle;
+ private String welcomeSubtitle;
+ private String welcomeMessage;
+ private String loginMessage;
+ private String localeIndex;
+ private String[] locales;
+ private String themeIndex;
+ private Theme[] themes;
+ private boolean isReloadNeeded;
+
+ public String getMusicFileTypes() {
+ return musicFileTypes;
+ }
+
+ public void setMusicFileTypes(String musicFileTypes) {
+ this.musicFileTypes = musicFileTypes;
+ }
+
+ public String getVideoFileTypes() {
+ return videoFileTypes;
+ }
+
+ public void setVideoFileTypes(String videoFileTypes) {
+ this.videoFileTypes = videoFileTypes;
+ }
+
+ public String getCoverArtFileTypes() {
+ return coverArtFileTypes;
+ }
+
+ public void setCoverArtFileTypes(String coverArtFileTypes) {
+ this.coverArtFileTypes = coverArtFileTypes;
+ }
+
+ public String getIndex() {
+ return index;
+ }
+
+ public void setIndex(String index) {
+ this.index = index;
+ }
+
+ public String getIgnoredArticles() {
+ return ignoredArticles;
+ }
+
+ public void setIgnoredArticles(String ignoredArticles) {
+ this.ignoredArticles = ignoredArticles;
+ }
+
+ public String getShortcuts() {
+ return shortcuts;
+ }
+
+ public void setShortcuts(String shortcuts) {
+ this.shortcuts = shortcuts;
+ }
+
+ public String getWelcomeTitle() {
+ return welcomeTitle;
+ }
+
+ public void setWelcomeTitle(String welcomeTitle) {
+ this.welcomeTitle = welcomeTitle;
+ }
+
+ public String getWelcomeSubtitle() {
+ return welcomeSubtitle;
+ }
+
+ public void setWelcomeSubtitle(String welcomeSubtitle) {
+ this.welcomeSubtitle = welcomeSubtitle;
+ }
+
+ public String getWelcomeMessage() {
+ return welcomeMessage;
+ }
+
+ public void setWelcomeMessage(String welcomeMessage) {
+ this.welcomeMessage = welcomeMessage;
+ }
+
+ public String getLoginMessage() {
+ return loginMessage;
+ }
+
+ public void setLoginMessage(String loginMessage) {
+ this.loginMessage = loginMessage;
+ }
+
+ public String getLocaleIndex() {
+ return localeIndex;
+ }
+
+ public void setLocaleIndex(String localeIndex) {
+ this.localeIndex = localeIndex;
+ }
+
+ public String[] getLocales() {
+ return locales;
+ }
+
+ public void setLocales(String[] locales) {
+ this.locales = locales;
+ }
+
+ public String getThemeIndex() {
+ return themeIndex;
+ }
+
+ public void setThemeIndex(String themeIndex) {
+ this.themeIndex = themeIndex;
+ }
+
+ public Theme[] getThemes() {
+ return themes;
+ }
+
+ public void setThemes(Theme[] themes) {
+ this.themes = themes;
+ }
+
+ public boolean isReloadNeeded() {
+ return isReloadNeeded;
+ }
+
+ public void setReloadNeeded(boolean reloadNeeded) {
+ isReloadNeeded = reloadNeeded;
+ }
+
+ public boolean isSortAlbumsByYear() {
+ return sortAlbumsByYear;
+ }
+
+ public void setSortAlbumsByYear(boolean sortAlbumsByYear) {
+ this.sortAlbumsByYear = sortAlbumsByYear;
+ }
+
+ public boolean isGettingStartedEnabled() {
+ return gettingStartedEnabled;
+ }
+
+ public void setGettingStartedEnabled(boolean gettingStartedEnabled) {
+ this.gettingStartedEnabled = gettingStartedEnabled;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/MusicFolderSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/MusicFolderSettingsCommand.java
new file mode 100644
index 00000000..8fcfa72c
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/MusicFolderSettingsCommand.java
@@ -0,0 +1,187 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import java.io.File;
+import java.util.Date;
+import java.util.List;
+
+import net.sourceforge.subsonic.controller.MusicFolderSettingsController;
+import net.sourceforge.subsonic.domain.MusicFolder;
+import org.apache.commons.lang.StringUtils;
+
+/**
+ * Command used in {@link MusicFolderSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class MusicFolderSettingsCommand {
+
+ private String interval;
+ private String hour;
+ private boolean scanning;
+ private boolean fastCache;
+ private boolean organizeByFolderStructure;
+ private List<MusicFolderInfo> musicFolders;
+ private MusicFolderInfo newMusicFolder;
+ private boolean reload;
+
+ public String getInterval() {
+ return interval;
+ }
+
+ public void setInterval(String interval) {
+ this.interval = interval;
+ }
+
+ public String getHour() {
+ return hour;
+ }
+
+ public void setHour(String hour) {
+ this.hour = hour;
+ }
+
+ public boolean isScanning() {
+ return scanning;
+ }
+
+ public void setScanning(boolean scanning) {
+ this.scanning = scanning;
+ }
+
+ public boolean isFastCache() {
+ return fastCache;
+ }
+
+ public List<MusicFolderInfo> getMusicFolders() {
+ return musicFolders;
+ }
+
+ public void setMusicFolders(List<MusicFolderInfo> musicFolders) {
+ this.musicFolders = musicFolders;
+ }
+
+ public void setFastCache(boolean fastCache) {
+ this.fastCache = fastCache;
+ }
+
+ public MusicFolderInfo getNewMusicFolder() {
+ return newMusicFolder;
+ }
+
+ public void setNewMusicFolder(MusicFolderInfo newMusicFolder) {
+ this.newMusicFolder = newMusicFolder;
+ }
+
+ public void setReload(boolean reload) {
+ this.reload = reload;
+ }
+
+ public boolean isReload() {
+ return reload;
+ }
+
+ public boolean isOrganizeByFolderStructure() {
+ return organizeByFolderStructure;
+ }
+
+ public void setOrganizeByFolderStructure(boolean organizeByFolderStructure) {
+ this.organizeByFolderStructure = organizeByFolderStructure;
+ }
+
+ public static class MusicFolderInfo {
+
+ private Integer id;
+ private String path;
+ private String name;
+ private boolean enabled;
+ private boolean delete;
+ private boolean existing;
+
+ public MusicFolderInfo(MusicFolder musicFolder) {
+ id = musicFolder.getId();
+ path = musicFolder.getPath().getPath();
+ name = musicFolder.getName();
+ enabled = musicFolder.isEnabled();
+ existing = musicFolder.getPath().exists() && musicFolder.getPath().isDirectory();
+ }
+
+ public MusicFolderInfo() {
+ enabled = true;
+ }
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getPath() {
+ return path;
+ }
+
+ public void setPath(String path) {
+ this.path = path;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public boolean isEnabled() {
+ return enabled;
+ }
+
+ public void setEnabled(boolean enabled) {
+ this.enabled = enabled;
+ }
+
+ public boolean isDelete() {
+ return delete;
+ }
+
+ public void setDelete(boolean delete) {
+ this.delete = delete;
+ }
+
+ public MusicFolder toMusicFolder() {
+ String path = StringUtils.trimToNull(this.path);
+ if (path == null) {
+ return null;
+ }
+ File file = new File(path);
+ String name = StringUtils.trimToNull(this.name);
+ if (name == null) {
+ name = file.getName();
+ }
+ return new MusicFolder(id, new File(path), name, enabled, new Date());
+ }
+
+ public boolean isExisting() {
+ return existing;
+ }
+ }
+} \ No newline at end of file
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/NetworkSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/NetworkSettingsCommand.java
new file mode 100644
index 00000000..d0ae2b07
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/NetworkSettingsCommand.java
@@ -0,0 +1,92 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import java.util.Date;
+
+/**
+ * @author Sindre Mehus
+ * @version $Id$
+ */
+public class NetworkSettingsCommand {
+
+ private boolean portForwardingEnabled;
+ private boolean urlRedirectionEnabled;
+ private String urlRedirectFrom;
+ private int port;
+ private boolean trial;
+ private Date trialExpires;
+ private boolean trialExpired;
+
+ public void setPortForwardingEnabled(boolean portForwardingEnabled) {
+ this.portForwardingEnabled = portForwardingEnabled;
+ }
+
+ public boolean isPortForwardingEnabled() {
+ return portForwardingEnabled;
+ }
+
+ public boolean isUrlRedirectionEnabled() {
+ return urlRedirectionEnabled;
+ }
+
+ public void setUrlRedirectionEnabled(boolean urlRedirectionEnabled) {
+ this.urlRedirectionEnabled = urlRedirectionEnabled;
+ }
+
+ public String getUrlRedirectFrom() {
+ return urlRedirectFrom;
+ }
+
+ public void setUrlRedirectFrom(String urlRedirectFrom) {
+ this.urlRedirectFrom = urlRedirectFrom;
+ }
+
+ public int getPort() {
+ return port;
+ }
+
+ public void setPort(int port) {
+ this.port = port;
+ }
+
+ public void setTrial(boolean trial) {
+ this.trial = trial;
+ }
+
+ public boolean isTrial() {
+ return trial;
+ }
+
+ public void setTrialExpires(Date trialExpires) {
+ this.trialExpires = trialExpires;
+ }
+
+ public Date getTrialExpires() {
+ return trialExpires;
+ }
+
+ public void setTrialExpired(boolean trialExpired) {
+ this.trialExpired = trialExpired;
+ }
+
+ public boolean isTrialExpired() {
+ return trialExpired;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PasswordSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PasswordSettingsCommand.java
new file mode 100644
index 00000000..b9e5383c
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PasswordSettingsCommand.java
@@ -0,0 +1,65 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.*;
+
+/**
+ * Command used in {@link PasswordSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class PasswordSettingsCommand {
+ private String username;
+ private String password;
+ private String confirmPassword;
+ private boolean ldapAuthenticated;
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public String getConfirmPassword() {
+ return confirmPassword;
+ }
+
+ public void setConfirmPassword(String confirmPassword) {
+ this.confirmPassword = confirmPassword;
+ }
+
+ public boolean isLdapAuthenticated() {
+ return ldapAuthenticated;
+ }
+
+ public void setLdapAuthenticated(boolean ldapAuthenticated) {
+ this.ldapAuthenticated = ldapAuthenticated;
+ }
+} \ No newline at end of file
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PersonalSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PersonalSettingsCommand.java
new file mode 100644
index 00000000..680d06e9
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PersonalSettingsCommand.java
@@ -0,0 +1,215 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.PersonalSettingsController;
+import net.sourceforge.subsonic.domain.Avatar;
+import net.sourceforge.subsonic.domain.Theme;
+import net.sourceforge.subsonic.domain.User;
+import net.sourceforge.subsonic.domain.UserSettings;
+
+import java.util.List;
+
+/**
+ * Command used in {@link PersonalSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class PersonalSettingsCommand {
+ private User user;
+ private String localeIndex;
+ private String[] locales;
+ private String themeIndex;
+ private Theme[] themes;
+ private int avatarId;
+ private List<Avatar> avatars;
+ private Avatar customAvatar;
+ private UserSettings.Visibility mainVisibility;
+ private UserSettings.Visibility playlistVisibility;
+ private boolean partyModeEnabled;
+ private boolean showNowPlayingEnabled;
+ private boolean showChatEnabled;
+ private boolean nowPlayingAllowed;
+ private boolean finalVersionNotificationEnabled;
+ private boolean betaVersionNotificationEnabled;
+ private boolean lastFmEnabled;
+ private String lastFmUsername;
+ private String lastFmPassword;
+ private boolean isReloadNeeded;
+
+ public User getUser() {
+ return user;
+ }
+
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ public String getLocaleIndex() {
+ return localeIndex;
+ }
+
+ public void setLocaleIndex(String localeIndex) {
+ this.localeIndex = localeIndex;
+ }
+
+ public String[] getLocales() {
+ return locales;
+ }
+
+ public void setLocales(String[] locales) {
+ this.locales = locales;
+ }
+
+ public String getThemeIndex() {
+ return themeIndex;
+ }
+
+ public void setThemeIndex(String themeIndex) {
+ this.themeIndex = themeIndex;
+ }
+
+ public Theme[] getThemes() {
+ return themes;
+ }
+
+ public void setThemes(Theme[] themes) {
+ this.themes = themes;
+ }
+
+ public int getAvatarId() {
+ return avatarId;
+ }
+
+ public void setAvatarId(int avatarId) {
+ this.avatarId = avatarId;
+ }
+
+ public List<Avatar> getAvatars() {
+ return avatars;
+ }
+
+ public void setAvatars(List<Avatar> avatars) {
+ this.avatars = avatars;
+ }
+
+ public Avatar getCustomAvatar() {
+ return customAvatar;
+ }
+
+ public void setCustomAvatar(Avatar customAvatar) {
+ this.customAvatar = customAvatar;
+ }
+
+ public UserSettings.Visibility getMainVisibility() {
+ return mainVisibility;
+ }
+
+ public void setMainVisibility(UserSettings.Visibility mainVisibility) {
+ this.mainVisibility = mainVisibility;
+ }
+
+ public UserSettings.Visibility getPlaylistVisibility() {
+ return playlistVisibility;
+ }
+
+ public void setPlaylistVisibility(UserSettings.Visibility playlistVisibility) {
+ this.playlistVisibility = playlistVisibility;
+ }
+
+ public boolean isPartyModeEnabled() {
+ return partyModeEnabled;
+ }
+
+ public void setPartyModeEnabled(boolean partyModeEnabled) {
+ this.partyModeEnabled = partyModeEnabled;
+ }
+
+ public boolean isShowNowPlayingEnabled() {
+ return showNowPlayingEnabled;
+ }
+
+ public void setShowNowPlayingEnabled(boolean showNowPlayingEnabled) {
+ this.showNowPlayingEnabled = showNowPlayingEnabled;
+ }
+
+ public boolean isShowChatEnabled() {
+ return showChatEnabled;
+ }
+
+ public void setShowChatEnabled(boolean showChatEnabled) {
+ this.showChatEnabled = showChatEnabled;
+ }
+
+ public boolean isNowPlayingAllowed() {
+ return nowPlayingAllowed;
+ }
+
+ public void setNowPlayingAllowed(boolean nowPlayingAllowed) {
+ this.nowPlayingAllowed = nowPlayingAllowed;
+ }
+
+ public boolean isFinalVersionNotificationEnabled() {
+ return finalVersionNotificationEnabled;
+ }
+
+ public void setFinalVersionNotificationEnabled(boolean finalVersionNotificationEnabled) {
+ this.finalVersionNotificationEnabled = finalVersionNotificationEnabled;
+ }
+
+ public boolean isBetaVersionNotificationEnabled() {
+ return betaVersionNotificationEnabled;
+ }
+
+ public void setBetaVersionNotificationEnabled(boolean betaVersionNotificationEnabled) {
+ this.betaVersionNotificationEnabled = betaVersionNotificationEnabled;
+ }
+
+ public boolean isLastFmEnabled() {
+ return lastFmEnabled;
+ }
+
+ public void setLastFmEnabled(boolean lastFmEnabled) {
+ this.lastFmEnabled = lastFmEnabled;
+ }
+
+ public String getLastFmUsername() {
+ return lastFmUsername;
+ }
+
+ public void setLastFmUsername(String lastFmUsername) {
+ this.lastFmUsername = lastFmUsername;
+ }
+
+ public String getLastFmPassword() {
+ return lastFmPassword;
+ }
+
+ public void setLastFmPassword(String lastFmPassword) {
+ this.lastFmPassword = lastFmPassword;
+ }
+
+ public boolean isReloadNeeded() {
+ return isReloadNeeded;
+ }
+
+ public void setReloadNeeded(boolean reloadNeeded) {
+ isReloadNeeded = reloadNeeded;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PlayerSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PlayerSettingsCommand.java
new file mode 100644
index 00000000..8331260d
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PlayerSettingsCommand.java
@@ -0,0 +1,250 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import java.util.Date;
+import java.util.List;
+
+import net.sourceforge.subsonic.controller.PlayerSettingsController;
+import net.sourceforge.subsonic.domain.CoverArtScheme;
+import net.sourceforge.subsonic.domain.Player;
+import net.sourceforge.subsonic.domain.PlayerTechnology;
+import net.sourceforge.subsonic.domain.TranscodeScheme;
+import net.sourceforge.subsonic.domain.Transcoding;
+
+/**
+ * Command used in {@link PlayerSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class PlayerSettingsCommand {
+ private String playerId;
+ private String name;
+ private String description;
+ private String type;
+ private Date lastSeen;
+ private boolean isDynamicIp;
+ private boolean isAutoControlEnabled;
+ private String coverArtSchemeName;
+ private String technologyName;
+ private String transcodeSchemeName;
+ private boolean transcodingSupported;
+ private String transcodeDirectory;
+ private List<Transcoding> allTranscodings;
+ private int[] activeTranscodingIds;
+ private EnumHolder[] technologyHolders;
+ private EnumHolder[] transcodeSchemeHolders;
+ private EnumHolder[] coverArtSchemeHolders;
+ private Player[] players;
+ private boolean isAdmin;
+ private boolean isReloadNeeded;
+
+ public String getPlayerId() {
+ return playerId;
+ }
+
+ public void setPlayerId(String playerId) {
+ this.playerId = playerId;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public String getType() {
+ return type;
+ }
+
+ public void setType(String type) {
+ this.type = type;
+ }
+
+ public Date getLastSeen() {
+ return lastSeen;
+ }
+
+ public void setLastSeen(Date lastSeen) {
+ this.lastSeen = lastSeen;
+ }
+
+ public boolean isDynamicIp() {
+ return isDynamicIp;
+ }
+
+ public void setDynamicIp(boolean dynamicIp) {
+ isDynamicIp = dynamicIp;
+ }
+
+ public boolean isAutoControlEnabled() {
+ return isAutoControlEnabled;
+ }
+
+ public void setAutoControlEnabled(boolean autoControlEnabled) {
+ isAutoControlEnabled = autoControlEnabled;
+ }
+
+ public String getCoverArtSchemeName() {
+ return coverArtSchemeName;
+ }
+
+ public void setCoverArtSchemeName(String coverArtSchemeName) {
+ this.coverArtSchemeName = coverArtSchemeName;
+ }
+
+ public String getTranscodeSchemeName() {
+ return transcodeSchemeName;
+ }
+
+ public void setTranscodeSchemeName(String transcodeSchemeName) {
+ this.transcodeSchemeName = transcodeSchemeName;
+ }
+
+ public boolean isTranscodingSupported() {
+ return transcodingSupported;
+ }
+
+ public void setTranscodingSupported(boolean transcodingSupported) {
+ this.transcodingSupported = transcodingSupported;
+ }
+
+ public String getTranscodeDirectory() {
+ return transcodeDirectory;
+ }
+
+ public void setTranscodeDirectory(String transcodeDirectory) {
+ this.transcodeDirectory = transcodeDirectory;
+ }
+
+ public List<Transcoding> getAllTranscodings() {
+ return allTranscodings;
+ }
+
+ public void setAllTranscodings(List<Transcoding> allTranscodings) {
+ this.allTranscodings = allTranscodings;
+ }
+
+ public int[] getActiveTranscodingIds() {
+ return activeTranscodingIds;
+ }
+
+ public void setActiveTranscodingIds(int[] activeTranscodingIds) {
+ this.activeTranscodingIds = activeTranscodingIds;
+ }
+
+ public EnumHolder[] getTechnologyHolders() {
+ return technologyHolders;
+ }
+
+ public void setTechnologies(PlayerTechnology[] technologies) {
+ technologyHolders = new EnumHolder[technologies.length];
+ for (int i = 0; i < technologies.length; i++) {
+ PlayerTechnology technology = technologies[i];
+ technologyHolders[i] = new EnumHolder(technology.name(), technology.toString());
+ }
+ }
+
+ public EnumHolder[] getTranscodeSchemeHolders() {
+ return transcodeSchemeHolders;
+ }
+
+ public void setTranscodeSchemes(TranscodeScheme[] transcodeSchemes) {
+ transcodeSchemeHolders = new EnumHolder[transcodeSchemes.length];
+ for (int i = 0; i < transcodeSchemes.length; i++) {
+ TranscodeScheme scheme = transcodeSchemes[i];
+ transcodeSchemeHolders[i] = new EnumHolder(scheme.name(), scheme.toString());
+ }
+ }
+
+ public EnumHolder[] getCoverArtSchemeHolders() {
+ return coverArtSchemeHolders;
+ }
+
+ public void setCoverArtSchemes(CoverArtScheme[] coverArtSchemes) {
+ coverArtSchemeHolders = new EnumHolder[coverArtSchemes.length];
+ for (int i = 0; i < coverArtSchemes.length; i++) {
+ CoverArtScheme scheme = coverArtSchemes[i];
+ coverArtSchemeHolders[i] = new EnumHolder(scheme.name(), scheme.toString());
+ }
+ }
+
+ public String getTechnologyName() {
+ return technologyName;
+ }
+
+ public void setTechnologyName(String technologyName) {
+ this.technologyName = technologyName;
+ }
+
+ public Player[] getPlayers() {
+ return players;
+ }
+
+ public void setPlayers(Player[] players) {
+ this.players = players;
+ }
+
+ public boolean isAdmin() {
+ return isAdmin;
+ }
+
+ public void setAdmin(boolean admin) {
+ isAdmin = admin;
+ }
+
+ public boolean isReloadNeeded() {
+ return isReloadNeeded;
+ }
+
+ public void setReloadNeeded(boolean reloadNeeded) {
+ isReloadNeeded = reloadNeeded;
+ }
+
+ /**
+ * Holds the transcoding and whether it is active for the given player.
+ */
+ public static class TranscodingHolder {
+ private Transcoding transcoding;
+ private boolean isActive;
+
+ public TranscodingHolder(Transcoding transcoding, boolean isActive) {
+ this.transcoding = transcoding;
+ this.isActive = isActive;
+ }
+
+ public Transcoding getTranscoding() {
+ return transcoding;
+ }
+
+ public boolean isActive() {
+ return isActive;
+ }
+ }
+} \ No newline at end of file
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PodcastSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PodcastSettingsCommand.java
new file mode 100644
index 00000000..e6917ff4
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/PodcastSettingsCommand.java
@@ -0,0 +1,66 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.controller.PodcastSettingsController;
+
+/**
+ * Command used in {@link PodcastSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class PodcastSettingsCommand {
+
+ private String interval;
+ private String folder;
+ private String episodeRetentionCount;
+ private String episodeDownloadCount;
+
+ public String getInterval() {
+ return interval;
+ }
+
+ public void setInterval(String interval) {
+ this.interval = interval;
+ }
+
+ public String getFolder() {
+ return folder;
+ }
+
+ public void setFolder(String folder) {
+ this.folder = folder;
+ }
+
+ public String getEpisodeRetentionCount() {
+ return episodeRetentionCount;
+ }
+
+ public void setEpisodeRetentionCount(String episodeRetentionCount) {
+ this.episodeRetentionCount = episodeRetentionCount;
+ }
+
+ public String getEpisodeDownloadCount() {
+ return episodeDownloadCount;
+ }
+
+ public void setEpisodeDownloadCount(String episodeDownloadCount) {
+ this.episodeDownloadCount = episodeDownloadCount;
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/SearchCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/SearchCommand.java
new file mode 100644
index 00000000..0dacfbd4
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/SearchCommand.java
@@ -0,0 +1,135 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import net.sourceforge.subsonic.domain.*;
+import net.sourceforge.subsonic.controller.*;
+
+import java.util.*;
+
+/**
+ * Command used in {@link SearchController}.
+ *
+ * @author Sindre Mehus
+ */
+public class SearchCommand {
+
+ private String query;
+ private List<MediaFile> artists;
+ private List<MediaFile> albums;
+ private List<MediaFile> songs;
+ private boolean isIndexBeingCreated;
+ private User user;
+ private boolean partyModeEnabled;
+ private Player player;
+
+ public String getQuery() {
+ return query;
+ }
+
+ public void setQuery(String query) {
+ this.query = query;
+ }
+
+ public boolean isIndexBeingCreated() {
+ return isIndexBeingCreated;
+ }
+
+ public void setIndexBeingCreated(boolean indexBeingCreated) {
+ isIndexBeingCreated = indexBeingCreated;
+ }
+
+ public List<MediaFile> getArtists() {
+ return artists;
+ }
+
+ public void setArtists(List<MediaFile> artists) {
+ this.artists = artists;
+ }
+
+ public List<MediaFile> getAlbums() {
+ return albums;
+ }
+
+ public void setAlbums(List<MediaFile> albums) {
+ this.albums = albums;
+ }
+
+ public List<MediaFile> getSongs() {
+ return songs;
+ }
+
+ public void setSongs(List<MediaFile> songs) {
+ this.songs = songs;
+ }
+
+ public User getUser() {
+ return user;
+ }
+
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+ public boolean isPartyModeEnabled() {
+ return partyModeEnabled;
+ }
+
+ public void setPartyModeEnabled(boolean partyModeEnabled) {
+ this.partyModeEnabled = partyModeEnabled;
+ }
+
+ public Player getPlayer() {
+ return player;
+ }
+
+ public void setPlayer(Player player) {
+ this.player = player;
+ }
+
+ public static class Match {
+ private MediaFile mediaFile;
+ private String title;
+ private String album;
+ private String artist;
+
+ public Match(MediaFile mediaFile, String title, String album, String artist) {
+ this.mediaFile = mediaFile;
+ this.title = title;
+ this.album = album;
+ this.artist = artist;
+ }
+
+ public MediaFile getMediaFile() {
+ return mediaFile;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public String getAlbum() {
+ return album;
+ }
+
+ public String getArtist() {
+ return artist;
+ }
+ }
+}
diff --git a/subsonic-main/src/main/java/net/sourceforge/subsonic/command/UserSettingsCommand.java b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/UserSettingsCommand.java
new file mode 100644
index 00000000..ce185f7b
--- /dev/null
+++ b/subsonic-main/src/main/java/net/sourceforge/subsonic/command/UserSettingsCommand.java
@@ -0,0 +1,278 @@
+/*
+ This file is part of Subsonic.
+
+ Subsonic is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ Subsonic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with Subsonic. If not, see <http://www.gnu.org/licenses/>.
+
+ Copyright 2009 (C) Sindre Mehus
+ */
+package net.sourceforge.subsonic.command;
+
+import java.util.List;
+
+import net.sourceforge.subsonic.controller.*;
+import net.sourceforge.subsonic.domain.*;
+
+/**
+ * Command used in {@link UserSettingsController}.
+ *
+ * @author Sindre Mehus
+ */
+public class UserSettingsCommand {
+ private String username;
+ private boolean isAdminRole;
+ private boolean isDownloadRole;
+ private boolean isUploadRole;
+ private boolean isCoverArtRole;
+ private boolean isCommentRole;
+ private boolean isPodcastRole;
+ private boolean isStreamRole;
+ private boolean isJukeboxRole;
+ private boolean isSettingsRole;
+ private boolean isShareRole;
+
+ private List<User> users;
+ private boolean isAdmin;
+ private boolean isPasswordChange;
+ private boolean isNew;
+ private boolean isDelete;
+ private String password;
+ private String confirmPassword;
+ private String email;
+ private boolean isLdapAuthenticated;
+ private boolean isLdapEnabled;
+
+ private String transcodeSchemeName;
+ private EnumHolder[] transcodeSchemeHolders;
+ private boolean transcodingSupported;
+ private String transcodeDirectory;
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void setUsername(String username) {
+ this.username = username;
+ }
+
+ public boolean isAdminRole() {
+ return isAdminRole;
+ }
+
+ public void setAdminRole(boolean adminRole) {
+ isAdminRole = adminRole;
+ }
+
+ public boolean isDownloadRole() {
+ return isDownloadRole;
+ }
+
+ public void setDownloadRole(boolean downloadRole) {
+ isDownloadRole = downloadRole;
+ }
+
+ public boolean isUploadRole() {
+ return isUploadRole;
+ }
+
+ public void setUploadRole(boolean uploadRole) {
+ isUploadRole = uploadRole;
+ }
+
+ public boolean isCoverArtRole() {
+ return isCoverArtRole;
+ }
+
+ public void setCoverArtRole(boolean coverArtRole) {
+ isCoverArtRole = coverArtRole;
+ }
+
+ public boolean isCommentRole() {
+ return isCommentRole;
+ }
+
+ public void setCommentRole(boolean commentRole) {
+ isCommentRole = commentRole;
+ }
+
+ public boolean isPodcastRole() {
+ return isPodcastRole;
+ }
+
+ public void setPodcastRole(boolean podcastRole) {
+ isPodcastRole = podcastRole;
+ }
+
+ public boolean isStreamRole() {
+ return isStreamRole;
+ }
+
+ public void setStreamRole(boolean streamRole) {
+ isStreamRole = streamRole;
+ }
+
+ public boolean isJukeboxRole() {
+ return isJukeboxRole;
+ }
+
+ public void setJukeboxRole(boolean jukeboxRole) {
+ isJukeboxRole = jukeboxRole;
+ }
+
+ public boolean isSettingsRole() {
+ return isSettingsRole;
+ }
+
+ public void setSettingsRole(boolean settingsRole) {
+ isSettingsRole = settingsRole;
+ }
+
+ public boolean isShareRole() {
+ return isShareRole;
+ }
+
+ public void setShareRole(boolean shareRole) {
+ isShareRole = shareRole;
+ }
+
+ public List<User> getUsers() {
+ return users;
+ }
+
+ public void setUsers(List<User> users) {
+ this.users = users;
+ }
+
+ public boolean isAdmin() {
+ return isAdmin;
+ }
+
+ public void setAdmin(boolean admin) {
+ isAdmin = admin;
+ }
+
+ public boolean isPasswordChange() {
+ return isPasswordChange;
+ }
+
+ public void setPasswordChange(boolean passwordChange) {
+ isPasswordChange = passwordChange;
+ }
+
+ public boolean isNew() {
+ return isNew;
+ }
+
+ public void setNew(boolean isNew) {
+ this.isNew = isNew;
+ }
+
+ public boolean isDelete() {
+ return isDelete;
+ }
+
+ public void setDelete(boolean delete) {
+ isDelete = delete;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public String getConfirmPassword() {
+ return confirmPassword;
+ }
+
+ public void setConfirmPassword(String confirmPassword) {
+ this.confirmPassword = confirmPassword;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public boolean isLdapAuthenticated() {
+ return isLdapAuthenticated;
+ }
+
+ public void setLdapAuthenticated(boolean ldapAuthenticated) {
+ isLdapAuthenticated = ldapAuthenticated;
+ }
+
+ public boolean isLdapEnabled() {
+ return isLdapEnabled;
+ }
+
+ public void setLdapEnabled(boolean ldapEnabled) {
+ isLdapEnabled = ldapEnabled;
+ }
+
+ public String getTranscodeSchemeName() {
+ return transcodeSchemeName;
+ }
+
+ public void setTranscodeSchemeName(String transcodeSchemeName) {
+ this.transcodeSchemeName = transcodeSchemeName;
+ }
+
+ public EnumHolder[] getTranscodeSchemeHolders() {
+ return transcodeSchemeHolders;
+ }
+
+ public void setTranscodeSchemes(TranscodeScheme[] transcodeSchemes) {
+ transcodeSchemeHolders = new EnumHolder[transcodeSchemes.length];
+ for (int i = 0; i < transcodeSchemes.length; i++) {
+ TranscodeScheme scheme = transcodeSchemes[i];
+ transcodeSchemeHolders[i] = new EnumHolder(scheme.name(), scheme.toString());
+ }
+ }
+
+ public boolean isTranscodingSupported() {
+ return transcodingSupported;
+ }
+
+ public void setTranscodingSupported(boolean transcodingSupported) {
+ this.transcodingSupported = transcodingSupported;
+ }
+
+ public String getTranscodeDirectory() {
+ return transcodeDirectory;
+ }
+
+ public void setTranscodeDirectory(String transcodeDirectory) {
+ this.transcodeDirectory = transcodeDirectory;
+ }
+
+ public void setUser(User user) {
+ username = user == null ? null : user.getUsername();
+ isAdminRole = user != null && user.isAdminRole();
+ isDownloadRole = user != null && user.isDownloadRole();
+ isUploadRole = user != null && user.isUploadRole();
+ isCoverArtRole = user != null && user.isCoverArtRole();
+ isCommentRole = user != null && user.isCommentRole();
+ isPodcastRole = user != null && user.isPodcastRole();
+ isStreamRole = user != null && user.isStreamRole();
+ isJukeboxRole = user != null && user.isJukeboxRole();
+ isSettingsRole = user != null && user.isSettingsRole();
+ isShareRole = user != null && user.isShareRole();
+ isLdapAuthenticated = user != null && user.isLdapAuthenticated();
+ }
+} \ No newline at end of file