You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/03/14 03:59:50 UTC

svn commit: r1786840 [3/3] - in /openmeetings/application: branches/3.2.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ branches/3.2.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/ branches/3.2.x/openmeeti...

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java?rev=1786840&r1=1786839&r2=1786840&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java Tue Mar 14 03:59:48 2017
@@ -25,7 +25,6 @@ import static org.apache.openmeetings.we
 import org.apache.openmeetings.db.dao.record.RecordingDao;
 import org.apache.openmeetings.db.dto.record.RecordingContainerData;
 import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.common.AddFolderDialog;
 import org.apache.openmeetings.web.common.UserPanel;
@@ -62,8 +61,8 @@ public class RecordingsPanel extends Use
 
 			@Override
 			protected void update(AjaxRequestTarget target, FileItem f) {
-				video.update(target, (Recording)f);
-				info.update(target, (Recording)f);
+				video.update(target, f);
+				info.update(target, f);
 			}
 		});
 		add(video, info, addFolder);

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java?rev=1786840&r1=1786839&r2=1786840&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java Tue Mar 14 03:59:48 2017
@@ -32,6 +32,7 @@ import org.apache.openmeetings.core.conv
 import org.apache.openmeetings.core.converter.RecordingConverter;
 import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao;
 import org.apache.openmeetings.db.dao.room.RoomDao;
+import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.db.entity.record.Recording;
 import org.apache.openmeetings.db.entity.record.Recording.Status;
 import org.apache.openmeetings.db.entity.record.RecordingMetaData;
@@ -111,38 +112,41 @@ public class VideoInfo extends Panel {
 		update(null, r);
 	}
 
-	public VideoInfo update(AjaxRequestTarget target, Recording _r) {
-		Recording r = _r == null ? new Recording() : _r;
-		rm.setObject(r);
-		try {
-			String name = null;
-			if (r.getRoomId() != null) {
-				Room room = getBean(RoomDao.class).get(r.getRoomId());
-				if (room != null) {
-					name = room.getName();
-					isInterview = Room.Type.interview == room.getType();
+	public VideoInfo update(AjaxRequestTarget target, FileItem _r) {
+		boolean reConvEnabled = false;
+		boolean exists = false;
+		if (_r instanceof Recording) {
+			Recording r = _r == null ? new Recording() : (Recording)_r;
+			rm.setObject(r);
+			exists = r.exists();
+			try {
+				String name = null;
+				if (r.getRoomId() != null) {
+					Room room = getBean(RoomDao.class).get(r.getRoomId());
+					if (room != null) {
+						name = room.getName();
+						isInterview = Room.Type.interview == room.getType();
+					}
 				}
+				roomName.setObject(name);
+			} catch (Exception e) {
+				//no-op
 			}
-			roomName.setObject(name);
-		} catch (Exception e) {
-			//no-op
-		}
 
-		boolean reConvEnabled = false;
-		if (r.getOwnerId() != null && r.getOwnerId().equals(getUserId()) && r.getStatus() != Status.RECORDING && r.getStatus() != Status.CONVERTING) {
-			List<RecordingMetaData> metas = getBean(RecordingMetaDataDao.class).getByRecording(r.getId());
-			reconvLabel:
-			if (!metas.isEmpty()) {
-				for (RecordingMetaData meta : metas) {
-					if (r.getRoomId() == null || !getRecordingMetaData(r.getRoomId(), meta.getStreamName()).exists()) {
-						break reconvLabel;
+			if (r.getOwnerId() != null && r.getOwnerId().equals(getUserId()) && r.getStatus() != Status.RECORDING && r.getStatus() != Status.CONVERTING) {
+				List<RecordingMetaData> metas = getBean(RecordingMetaDataDao.class).getByRecording(r.getId());
+				reconvLabel:
+				if (!metas.isEmpty()) {
+					for (RecordingMetaData meta : metas) {
+						if (r.getRoomId() == null || !getRecordingMetaData(r.getRoomId(), meta.getStreamName()).exists()) {
+							break reconvLabel;
+						}
 					}
+					reConvEnabled = true;
 				}
-				reConvEnabled = true;
 			}
 		}
 		reConvert.setEnabled(reConvEnabled);
-		boolean exists = r.exists();
 		downloadBtn.setEnabled(exists);
 		share.setEnabled(exists);
 		if (target != null) {

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java?rev=1786840&r1=1786839&r2=1786840&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java Tue Mar 14 03:59:48 2017
@@ -20,76 +20,74 @@ package org.apache.openmeetings.web.user
 
 import static org.apache.openmeetings.util.OmFileHelper.MP4_MIME_TYPE;
 
+import org.apache.openmeetings.db.entity.file.FileItem;
 import org.apache.openmeetings.db.entity.record.Recording;
+import org.apache.openmeetings.web.common.MainPanel;
+import org.apache.openmeetings.web.room.RoomResourceReference;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.media.Source;
 import org.apache.wicket.markup.html.media.video.Video;
 import org.apache.wicket.markup.html.panel.Panel;
-import org.apache.wicket.request.Url;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.request.resource.ResourceReference;
-import org.apache.wicket.request.resource.UrlResourceReference;
 
 public class VideoPlayer extends Panel {
 	private static final long serialVersionUID = 1L;
 	private final WebMarkupContainer wait = new WebMarkupContainer("wait"); //FIXME not used
 	private final WebMarkupContainer container = new WebMarkupContainer("container");
-	private final Mp4RecordingResourceReference mp4res = new Mp4RecordingResourceReference();
-	private final OmVideo player = new OmVideo("player", null);
-	private final Source mp4 = new Source("mp4", mp4res);
+	private final Mp4RecordingResourceReference mp4RecRes = new Mp4RecordingResourceReference();
+	private final JpgRecordingResourceReference posterRecRes = new JpgRecordingResourceReference();
+	private final RoomResourceReference mp4FileRes = new RoomResourceReference();
+	private final RoomResourceReference posterFileRes = new RoomResourceReference();
+	private final Video player = new Video("player") {
+		private static final long serialVersionUID = 1L;
+
+		@Override
+		public boolean isAutoplay() {
+			return false;
+		}
+
+		@Override
+		public boolean hasControls() {
+			return true;
+		}
+	};
+	private final Source mp4Rec = new Source("mp4", mp4RecRes);
+	private final Source mp4File = new Source("mp4", mp4FileRes);
 
 	public VideoPlayer(String id) {
-		this(id, null);
-	}
-	
-	public VideoPlayer(String id, Recording r) {
 		super(id);
 		add(container.setOutputMarkupPlaceholderTag(true));
-		mp4.setDisplayType(true);
-		mp4.setType(MP4_MIME_TYPE);
-		player.add(mp4);
+		mp4Rec.setDisplayType(true);
+		mp4Rec.setType(MP4_MIME_TYPE);
+		mp4File.setDisplayType(true);
+		mp4File.setType(MP4_MIME_TYPE);
+		player.add(mp4Rec);
 		container.add(wait.setVisible(false), player);
-		update(null, r);
+		update(null, null);
 	}
-	
-	public VideoPlayer update(AjaxRequestTarget target, Recording r) {
+
+	public VideoPlayer update(AjaxRequestTarget target, FileItem r) {
 		boolean videoExists = r != null && r.exists();
 		if (videoExists) {
-			PageParameters pp = new PageParameters().add("id", r.getId());
-			mp4.setPageParameters(pp);
-			player.recId = r.getId();
+			PageParameters pp = new PageParameters();
+			if (r instanceof Recording) {
+				pp.add("id", r.getId());
+				mp4Rec.setPageParameters(pp);
+				player.replace(mp4Rec);
+				player.setPoster(posterRecRes, pp);
+			} else {
+				pp.add("id", r.getId()).add("uid", findParent(MainPanel.class).getClient().getUid());
+				mp4File.setPageParameters(pp);
+				player.replace(mp4File);
+				player.setPoster(posterFileRes, new PageParameters(pp).add("preview", true));
+			}
 		}
 		container.setVisible(videoExists);
 		if (target != null) {
 			target.add(container);
 		}
-		
+
 		return this;
 	}
-	
-	private static class OmVideo extends Video {
-		private static final long serialVersionUID = 1L;
-		Long recId = null;
-		
-		OmVideo(String id, Long recId) {
-			super(id);
-			this.recId = recId;
-		}
-		
-		@Override
-		public boolean isAutoplay() {
-			return false;
-		}
-		
-		@Override
-		public boolean hasControls() {
-			return true;
-		}
-		
-		@Override
-		public ResourceReference getPoster() {
-			return recId == null ? null : new UrlResourceReference(Url.parse("recordings/jpg/" + recId)).setContextRelative(true);
-		}
-	}
 }