You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
250 lines
6.6 KiB
250 lines
6.6 KiB
/*
|
|
This file is part of Airsonic.
|
|
|
|
Airsonic 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.
|
|
|
|
Airsonic 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 Airsonic. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
Copyright 2016 (C) Airsonic Authors
|
|
Based upon Subsonic, Copyright 2009 (C) Sindre Mehus
|
|
*/
|
|
package org.airsonic.player.command;
|
|
|
|
import org.airsonic.player.controller.PlayerSettingsController;
|
|
import org.airsonic.player.domain.Player;
|
|
import org.airsonic.player.domain.PlayerTechnology;
|
|
import org.airsonic.player.domain.TranscodeScheme;
|
|
import org.airsonic.player.domain.Transcoding;
|
|
|
|
import java.util.Date;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* Command used in {@link PlayerSettingsController}.
|
|
*
|
|
* @author Sindre Mehus
|
|
*/
|
|
public class PlayerSettingsCommand {
|
|
private Integer playerId;
|
|
private String name;
|
|
private String description;
|
|
private String type;
|
|
private Date lastSeen;
|
|
private boolean isDynamicIp;
|
|
private boolean isAutoControlEnabled;
|
|
private boolean isM3uBomEnabled;
|
|
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 Player[] players;
|
|
private boolean isAdmin;
|
|
private String javaJukeboxMixer;
|
|
private String[] javaJukeboxMixers;
|
|
|
|
public Integer getPlayerId() {
|
|
return playerId;
|
|
}
|
|
|
|
public void setPlayerId(Integer 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 boolean isM3uBomEnabled() {
|
|
return isM3uBomEnabled;
|
|
}
|
|
|
|
public void setM3uBomEnabled(boolean m3uBomEnabled) {
|
|
isM3uBomEnabled = m3uBomEnabled;
|
|
}
|
|
|
|
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 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 void setReloadNeeded(boolean reloadNeeded) {
|
|
}
|
|
|
|
public String getJavaJukeboxMixer() {
|
|
return javaJukeboxMixer;
|
|
}
|
|
|
|
public void setJavaJukeboxMixer(String javaJukeboxMixer) {
|
|
this.javaJukeboxMixer = javaJukeboxMixer;
|
|
}
|
|
|
|
public String[] getJavaJukeboxMixers() {
|
|
return javaJukeboxMixers;
|
|
}
|
|
|
|
public void setJavaJukeboxMixers(String[] javaJukeboxMixers) {
|
|
this.javaJukeboxMixers = javaJukeboxMixers;
|
|
}
|
|
|
|
/**
|
|
* 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;
|
|
}
|
|
}
|
|
}
|
|
|