summaryrefslogtreecommitdiff
path: root/src/YalpClients/SwtClient/Model.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/YalpClients/SwtClient/Model.java')
-rwxr-xr-xsrc/YalpClients/SwtClient/Model.java70
1 files changed, 41 insertions, 29 deletions
diff --git a/src/YalpClients/SwtClient/Model.java b/src/YalpClients/SwtClient/Model.java
index 3c48615..912a3bb 100755
--- a/src/YalpClients/SwtClient/Model.java
+++ b/src/YalpClients/SwtClient/Model.java
@@ -48,13 +48,13 @@ public class Model {
public ServerControlInterface srvCon;
private Process vlcPlayer;
- private Output actualStream;
- private Output streamInfo;
- private ArrayList<Media> findMedia;
- private ArrayList<Media> editMedia;
- private ArrayList<Media> toPlaylist;
- private ArrayList<Media> playList;
- private ArrayList<YalpUser> userList;
+ private Output actualStream = new Output();
+ private Output streamInfo = new Output();
+ private ArrayList<Media> findMedia = new ArrayList<Media>();
+ private ArrayList<Media> editMedia = new ArrayList<Media>();
+ private ArrayList<Media> toPlaylist = new ArrayList<Media>();
+ private ArrayList<Media> playList = new ArrayList<Media>();
+ private ArrayList<YalpUser> userList = new ArrayList<YalpUser>();
private ClientConfiguration settings;
private String clientIP;
private String curPasswd;
@@ -62,7 +62,7 @@ public class Model {
private String userName;
private Boolean playback = false;
private Boolean logoff= false;
- private Session session;
+ private Session session = new Session();
/*
* Instances srvConnection to Registry, DbConnection, ServerControl
* and VlcStreamer. Also instances Class variables
@@ -350,9 +350,9 @@ public class Model {
*/
public Output createOutput(){
/* t.b.d. former createStream */
- this.streamInfo.outputAction = Action.CREATE;
+ streamInfo.outputAction = Action.CREATE;
Media[] a = {};
- this.streamInfo.playlist = this.playList.toArray(a);
+ streamInfo.playlist = this.playList.toArray(a);
return this.streamInfo;
}
@@ -374,15 +374,16 @@ public class Model {
if (kind == 1){
srvCon.search(request, types.toArray(a), result, err);
for(int i = 0; i < result.value.length; i++)
- this.findMedia.add(result.value[i]);
- return this.findMedia.size();
+ findMedia.add(result.value[i]);
+ return findMedia.size();
} else {
srvCon.search(request, types.toArray(a), result, err);
for(int i = 0; i < result.value.length; i++)
- this.editMedia.add(result.value[i]);
- return this.editMedia.size();
+ editMedia.add(result.value[i]);
+ return editMedia.size();
}
} catch(Exception e){
+ e.printStackTrace();
System.out.println("Exceoption in Model search "+ e);
return 0;
}
@@ -489,7 +490,7 @@ public class Model {
* stream to srvControl via play, pause, etc
*/
public void setActualStream(Output aStream){
- this.actualStream = aStream;
+ actualStream = aStream;
}
/*
@@ -514,7 +515,7 @@ public class Model {
"client.Model.startVLC: playback this type is not supported" );
}
*/
- vlcCmd += this.actualStream.info.params;
+ vlcCmd += actualStream.info.params;
System.out.println(vlcCmd);
try {
@@ -531,8 +532,9 @@ public class Model {
*
*/
private void stopVLC(){
- this.playback = false;
- this.vlcPlayer.destroy();
+ playback = false;
+ if(vlcPlayer != null)
+ vlcPlayer.destroy();
}
/*
@@ -542,22 +544,32 @@ public class Model {
*/
public boolean play(){
- this.playback = true;
+ playback = true;
+
+ actualStream.outputAction = Action.CREATE;
+ actualStream.info = new AccessInfo( "bam",
+ "bam",
+ "vlc",
+ "params",
+ AccessType.STREAM );
- this.actualStream = this.createOutput();
- this.actualStream.destIp = this.clientIP;
+ Media[] a = new Media[playList.size()];
+ actualStream.playlist = playList.toArray(a);
+ actualStream.destIp = clientIP;
YalpErrorHolder err = new YalpErrorHolder();
- OutputHolder tmp = new OutputHolder(this.actualStream);
- this.srvCon.control(tmp, err);
- this.actualStream = tmp.value;
+ OutputHolder tmp = new OutputHolder();
+ tmp.value = actualStream;
+
+ srvCon.control(tmp, err);
+ actualStream = tmp.value;
- this.actualStream.outputAction = Action.START;
- OutputHolder tmp2 = new OutputHolder(this.actualStream);
- this.srvCon.control(tmp2, err);
- this.actualStream = tmp2.value;
- this.startVLC();
+ actualStream.outputAction = Action.START;
+ OutputHolder tmp2 = new OutputHolder(actualStream);
+ srvCon.control(tmp2, err);
+ actualStream = tmp2.value;
+ startVLC();
return true;
}