diff options
| author | geronimo <geronimo013@gmx.de> | 2012-07-26 16:32:37 +0200 |
|---|---|---|
| committer | geronimo <geronimo013@gmx.de> | 2012-07-26 16:32:37 +0200 |
| commit | 55a02203e1d5fcdf8cbc0093af5c14d41d6d8dd7 (patch) | |
| tree | 564507b5f40bcd65d7b6cb2d5041202c8250927f /cmpcj/src/de/schwarzrot/cmpc/domain | |
| parent | 2d0b837e6c885383ae807ca793cbe91aa32de995 (diff) | |
| download | cmp-55a02203e1d5fcdf8cbc0093af5c14d41d6d8dd7.tar.gz cmp-55a02203e1d5fcdf8cbc0093af5c14d41d6d8dd7.tar.bz2 | |
worked out little java client that serves to start other mediaplayers
Diffstat (limited to 'cmpcj/src/de/schwarzrot/cmpc/domain')
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/Config.java | 73 | ||||
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/Media.java | 82 | ||||
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/MediaServer.java | 51 | ||||
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/MediaType.java | 51 | ||||
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/PlayList.java | 65 | ||||
| -rw-r--r-- | cmpcj/src/de/schwarzrot/cmpc/domain/PlayerDefinition.java | 65 |
6 files changed, 387 insertions, 0 deletions
diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/Config.java b/cmpcj/src/de/schwarzrot/cmpc/domain/Config.java new file mode 100644 index 0000000..f803811 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/Config.java @@ -0,0 +1,73 @@ +/** + * ======================== legal notice ====================== + * + * File: Config.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + + +public class Config { + public Config() { + knownServers = new ArrayList<MediaServer>(); + playerMap = new HashMap<Media.SupportedMediaType, PlayerDefinition>(); + } + + + public void addServer(MediaServer ms) { + knownServers.add(ms); + } + + + public List<MediaServer> getKnownServers() { + return knownServers; + } + + + public Map<Media.SupportedMediaType, PlayerDefinition> getPlayerMap() { + return playerMap; + } + + + public void putPlayer(Media.SupportedMediaType type, PlayerDefinition pd) { + playerMap.put(type, pd); + } + + + public void setKnownServers(List<MediaServer> knownServers) { + this.knownServers = knownServers; + } + + + public void setPlayerMap(Map<Media.SupportedMediaType, PlayerDefinition> playerMap) { + this.playerMap = playerMap; + } + + private List<MediaServer> knownServers; + private Map<Media.SupportedMediaType, PlayerDefinition> playerMap; +} diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/Media.java b/cmpcj/src/de/schwarzrot/cmpc/domain/Media.java new file mode 100644 index 0000000..e784924 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/Media.java @@ -0,0 +1,82 @@ +/** + * ======================== legal notice ====================== + * + * File: Media.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; + + +public class Media { + public enum SupportedMediaType { + Invalid, Audio, Movie, DVDImage, LegacyVdrRecording, VdrRecording, Picture, Unknown + }; + + + public String getName() { + return name; + } + + + public String getPath() { + return path; + } + + + public String getSearch() { + return search; + } + + + public int getType() { + return type; + } + + + public void setName(String name) { + this.name = name; + } + + + public void setPath(String path) { + this.path = path; + try { + search = URLDecoder.decode(path, "utf8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + } + + + public void setType(int type) { + this.type = type; + } + + private String name; + private int type; + private String path; + private String search; +} diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/MediaServer.java b/cmpcj/src/de/schwarzrot/cmpc/domain/MediaServer.java new file mode 100644 index 0000000..e6f2683 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/MediaServer.java @@ -0,0 +1,51 @@ +/** + * ======================== legal notice ====================== + * + * File: MediaServer.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +public class MediaServer { + public String getHostName() { + return hostName; + } + + + public int getPort() { + return port; + } + + + public void setHostName(String hostName) { + this.hostName = hostName; + } + + + public void setPort(int port) { + this.port = port; + } + + private String hostName; + private int port; +} diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/MediaType.java b/cmpcj/src/de/schwarzrot/cmpc/domain/MediaType.java new file mode 100644 index 0000000..c336329 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/MediaType.java @@ -0,0 +1,51 @@ +/** + * ======================== legal notice ====================== + * + * File: MediaType.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +public class MediaType { + public String getName() { + return name; + } + + + public int getStart() { + return start; + } + + + public void setName(String name) { + this.name = name; + } + + + public void setStart(int start) { + this.start = start; + } + + private String name; + private int start; +} diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/PlayList.java b/cmpcj/src/de/schwarzrot/cmpc/domain/PlayList.java new file mode 100644 index 0000000..e1aa7d2 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/PlayList.java @@ -0,0 +1,65 @@ +/** + * ======================== legal notice ====================== + * + * File: PlayList.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +import java.util.List; + + +public class PlayList { + public List<Media> getResults() { + return results; + } + + + public long getTotal() { + return total; + } + + + public List<MediaType> getTypes() { + return types; + } + + + public void setResults(List<Media> results) { + this.results = results; + } + + + public void setTotal(long total) { + this.total = total; + } + + + public void setTypes(List<MediaType> types) { + this.types = types; + } + + private long total; + private List<Media> results; + private List<MediaType> types; +} diff --git a/cmpcj/src/de/schwarzrot/cmpc/domain/PlayerDefinition.java b/cmpcj/src/de/schwarzrot/cmpc/domain/PlayerDefinition.java new file mode 100644 index 0000000..5bc4df0 --- /dev/null +++ b/cmpcj/src/de/schwarzrot/cmpc/domain/PlayerDefinition.java @@ -0,0 +1,65 @@ +/** + * ======================== legal notice ====================== + * + * File: PlayerDefinition.java + * Created: + * Author: <a href="mailto:geronimo013@gmx.de">Geronimo</a> + * Project: cmpc - a java frontend (client) part of compound media player + * uses external players to play the media + * + * CMP - compound media player + * + * is a client/server mediaplayer intended to play any media from any workstation + * without the need to export or mount shares. cmps is an easy to use backend + * with a (ready to use) HTML-interface. Additionally the backend supports + * authentication via HTTP-digest authorization. + * cmpc is a client with vdr-like osd-menues. + * + * Copyright (c) 2012 Reinhard Mantey, some rights reserved! + * published under Creative Commons by-sa + * For details see http://creativecommons.org/licenses/by-sa/3.0/ + * + * The cmp project's homepage is at http://projects.vdr-developer.org/projects/cmp + * + * -------------------------------------------------------------- + */ +package de.schwarzrot.cmpc.domain; + + +import java.util.ArrayList; +import java.util.List; + + +public class PlayerDefinition { + public PlayerDefinition() { + parameters = new ArrayList<String>(); + } + + + public void addParameter(String parameter) { + parameters.add(parameter); + } + + + public String getExecutable() { + return executable; + } + + + public List<String> getParameters() { + return parameters; + } + + + public void setExecutable(String executable) { + this.executable = executable; + } + + + public void setParameters(List<String> parameters) { + this.parameters = parameters; + } + + private String executable; + private List<String> parameters; +} |
