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/09/18 05:25:40 UTC
[01/18] openmeetings git commit: [OPENMEETINGS-1671] initial commit
on room files
Repository: openmeetings
Updated Branches:
refs/heads/3.3.x 0d43610b6 -> 1b23071ff
[OPENMEETINGS-1671] initial commit on room files
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/da7a4ff0
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/da7a4ff0
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/da7a4ff0
Branch: refs/heads/3.3.x
Commit: da7a4ff04922a4db313f23e879a0b3bdd41ce71d
Parents: 4943f46
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Wed Sep 13 17:14:41 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Wed Sep 13 17:14:41 2017 +0700
----------------------------------------------------------------------
.../openmeetings/db/dao/room/RoomDao.java | 2 +-
.../openmeetings/db/entity/room/Room.java | 6 +++
.../openmeetings/db/entity/room/RoomFile.java | 51 ++++++++++++++++++++
.../classes/META-INF/db2_persistence.xml | 1 +
.../classes/META-INF/derby_persistence.xml | 1 +
.../classes/META-INF/mssql_persistence.xml | 3 +-
.../classes/META-INF/mysql_persistence.xml | 1 +
.../classes/META-INF/oracle_persistence.xml | 1 +
.../classes/META-INF/postgresql_persistence.xml | 1 +
9 files changed, 65 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 0ea7a43..6dd79a8 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -83,7 +83,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
q.setParameter("id", id);
@SuppressWarnings("unchecked")
OpenJPAQuery<Room> kq = OpenJPAPersistence.cast(q);
- kq.getFetchPlan().addFetchGroups("roomModerators", "roomGroups");
+ kq.getFetchPlan().addFetchGroups("roomModerators", "roomGroups", "roomFiles");
List<Room> l = kq.getResultList();
r = l.isEmpty() ? r : l.get(0);
} finally {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index b09ae13..6f76946 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -61,6 +61,7 @@ import org.simpleframework.xml.Root;
@FetchGroups({
@FetchGroup(name = "roomModerators", attributes = { @FetchAttribute(name = "moderators") })
, @FetchGroup(name = "roomGroups", attributes = { @FetchAttribute(name = "roomGroups") })
+ , @FetchGroup(name = "roomFiles", attributes = { @FetchAttribute(name = "roomFiles") })
})
@NamedQueries({
@NamedQuery(name = "getNondeletedRooms", query = "SELECT r FROM Room r WHERE r.deleted = false"),
@@ -301,6 +302,11 @@ public class Room implements IDataProviderEntity {
@org.simpleframework.xml.Transient
private List<RoomGroup> roomGroups = new ArrayList<>();
+ @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
+ @JoinColumn(name = "room_id", insertable = true, updatable = true, nullable = false)
+ @ElementDependent
+ private List<RoomFile> roomfiles = new ArrayList<>();
+
@Transient
private List<StreamClient> currentusers;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
new file mode 100644
index 0000000..3098aa9
--- /dev/null
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
@@ -0,0 +1,51 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.db.entity.room;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.apache.openmeetings.db.entity.IDataProviderEntity;
+
+@Entity
+@Table(name = "room_file")
+public class RoomFile implements IDataProviderEntity {
+ private static final long serialVersionUID = 1L;
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ private Long id;
+
+ @Column(name = "room_id")
+ private Long roomId;
+
+ @Override
+ public Long getId() {
+ return id;
+ }
+
+ @Override
+ public void setId(Long id) {
+ this.id = id;
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
index 7268dbf..7f8cee6 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
@@ -46,6 +46,7 @@
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
<class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
index 1f1e117..1c7eee0 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
@@ -46,6 +46,7 @@
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
<class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
index 1406f21..453f180 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
@@ -45,9 +45,10 @@
<class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
index bd84f1c..d645324 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
@@ -46,6 +46,7 @@
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
<class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
index a5229c1..b6a6326 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
@@ -46,6 +46,7 @@
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
<class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/da7a4ff0/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
index 6d2c129..d7dbe26 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
@@ -46,6 +46,7 @@
<class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
<class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomFile</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
[17/18] openmeetings git commit: [OPENMEETINGS-1705] get appointment
by title api method is fixed
Posted by so...@apache.org.
[OPENMEETINGS-1705] get appointment by title api method is fixed
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/6f81604b
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/6f81604b
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/6f81604b
Branch: refs/heads/3.3.x
Commit: 6f81604bb0caae32a0d6163f8942e6182fd815a4
Parents: 6eec97d
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Sat Sep 16 00:47:30 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Sat Sep 16 00:47:30 2017 +0700
----------------------------------------------------------------------
.../db/dao/calendar/AppointmentDao.java | 2 +-
.../test/webservice/TestCalendarService.java | 42 ++++++++++++++++----
2 files changed, 36 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6f81604b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index 694784d..2d9709c 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -204,7 +204,7 @@ public class AppointmentDao {
}
public List<Appointment> searchAppointmentsByTitle(Long userId, String title) {
- return em.createNamedQuery("getNextAppointment", Appointment.class)
+ return em.createNamedQuery("getAppointmentsByTitle", Appointment.class)
.setParameter("title", title).setParameter("userId", userId).getResultList();
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6f81604b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
index 8af988b..6ceec81 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
@@ -90,9 +90,9 @@ public class TestCalendarService extends AbstractWebServiceTest {
actualTest(roomDao.get(5L)); //default public restricted room
}
- private static JSONObject createAppointment() {
+ private static JSONObject createAppointment(String title) {
return new JSONObject()
- .put("title", "test")
+ .put("title", title)
.put("start", "2025-01-20T20:30:03+0300")
.put("end", "2025-01-20T21:30:03+0300")
.put("description", "Русский Тест")
@@ -136,9 +136,8 @@ public class TestCalendarService extends AbstractWebServiceTest {
return sr.getMessage();
}
- @Test
- public void testCreate() throws Exception {
- JSONObject o = createAppointment();
+ private String createApp(String title) throws Exception {
+ JSONObject o = createAppointment(title);
String sid = loginNewUser();
@@ -152,6 +151,13 @@ public class TestCalendarService extends AbstractWebServiceTest {
AppointmentDTO dto = resp.readEntity(AppointmentDTO.class);
assertNotNull("Valid DTO should be returned", dto);
assertNotNull("DTO id should be valid", dto.getId());
+
+ return sid;
+ }
+
+ @Test
+ public void testCreate() throws Exception {
+ createApp("test");
}
@Test
@@ -167,7 +173,7 @@ public class TestCalendarService extends AbstractWebServiceTest {
@Test
public void testCreateWithOmMm() throws Exception {
- JSONObject o = createAppointment()
+ JSONObject o = createAppointment("test")
.put("meetingMembers", new JSONArray()
.put(new JSONObject().put("user", new JSONObject()
.put("id", 1))));
@@ -191,7 +197,7 @@ public class TestCalendarService extends AbstractWebServiceTest {
}
private static AppointmentDTO createEventWithGuests(String sid) throws Exception {
- JSONObject o = createAppointment()
+ JSONObject o = createAppointment("test")
.put("meetingMembers", new JSONArray()
.put(new JSONObject().put("user", new JSONObject()
.put("firstname", "John 1")
@@ -277,4 +283,26 @@ public class TestCalendarService extends AbstractWebServiceTest {
assertNotNull("Meeting member user should not be deleted", uc);
assertFalse("Meeting member user should not be deleted", uc.isDeleted());
}
+
+ @Test
+ public void testGetByTitle() throws Exception {
+ String title = "title" + UUID.randomUUID().toString();
+ String sid = createApp(title);
+ @SuppressWarnings("unchecked")
+ List<AppointmentDTO> list = (List<AppointmentDTO>)getClient(CALENDAR_SERVICE_URL)
+ .path(String.format("/title/%s", title))
+ .query("sid", sid)
+ .getCollection(AppointmentDTO.class);
+
+ assertEquals("List of one item should be returned", 1, list.size());
+ assertEquals("Title should match", title, list.get(0).getTitle());
+
+ title = UUID.randomUUID().toString();
+ @SuppressWarnings("unchecked")
+ List<AppointmentDTO> list1 = (List<AppointmentDTO>)getClient(CALENDAR_SERVICE_URL)
+ .path(String.format("/title/%s", title))
+ .query("sid", sid)
+ .getCollection(AppointmentDTO.class);
+ assertEquals("None items should be returned", 0, list1.size());
+ }
}
[10/18] openmeetings git commit: [OPENMEETINGS-1671] minor fixes
Posted by so...@apache.org.
[OPENMEETINGS-1671] minor fixes
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/c17eb7c4
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/c17eb7c4
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/c17eb7c4
Branch: refs/heads/3.3.x
Commit: c17eb7c402dfed144815fc9336893d52c478edf2
Parents: d09f559
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 13:44:32 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 13:44:32 2017 +0700
----------------------------------------------------------------------
.../java/org/apache/openmeetings/db/dao/file/FileItemDao.java | 4 ++--
.../org/apache/openmeetings/db/entity/file/BaseFileItem.java | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c17eb7c4/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
index fc7f1c3..f8010f3 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
@@ -290,7 +290,7 @@ public class FileItemDao {
return em.createNamedQuery("getAllFileItemsForRoom", BaseFileItem.class)
.setParameter("folder", Type.Folder)
.setParameter("roomId", roomId)
- .setParameter("groups", groups.stream().map(Group::getId).collect(Collectors.toList()))
+ .setParameter("groups", groups.parallelStream().map(Group::getId).collect(Collectors.toList()))
.setParameter("name", String.format("%%%s%%", search == null ? "" : search))
.setFirstResult(start)
.setMaxResults(count)
@@ -299,7 +299,7 @@ public class FileItemDao {
public List<BaseFileItem> get(Collection<String> ids) {
return em.createNamedQuery("getFileItemsByIds", BaseFileItem.class)
- .setParameter("ids", ids.stream().map(Long::valueOf).collect(Collectors.toList()))
+ .setParameter("ids", ids.parallelStream().map(Long::valueOf).collect(Collectors.toList()))
.getResultList();
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c17eb7c4/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
index 763e636..c83869d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
@@ -54,7 +54,7 @@ import org.simpleframework.xml.Element;
+ " WHERE f.deleted = false AND f.type <> :folder"
+ " AND (f.roomId IS NULL OR f.roomId = :roomId)"
+ " AND (f.groupId IS NULL OR f.groupId IN :groups)"
- //+ " AND (f.ownerId IS NULL OR f.ownerId = :ownerId)"
+ + " AND f.ownerId IS NULL" // not loading personal files
+ " AND f.name LIKE :name"
+ " ORDER BY f.name")
, @NamedQuery(name = "getFileItemsByIds", query = "SELECT f FROM BaseFileItem f"
[18/18] openmeetings git commit: no jira: dev version bumped
Posted by so...@apache.org.
no jira: dev version bumped
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/1b23071f
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/1b23071f
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/1b23071f
Branch: refs/heads/3.3.x
Commit: 1b23071ff9361df3f6ca6896217f04738d5c7fc7
Parents: 6f81604
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Mon Sep 18 12:24:55 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Mon Sep 18 12:24:55 2017 +0700
----------------------------------------------------------------------
openmeetings-core/pom.xml | 2 +-
openmeetings-db/pom.xml | 2 +-
openmeetings-flash/pom.xml | 2 +-
openmeetings-install/pom.xml | 2 +-
openmeetings-screenshare/pom.xml | 2 +-
openmeetings-server/pom.xml | 2 +-
openmeetings-service/pom.xml | 2 +-
openmeetings-util/pom.xml | 2 +-
openmeetings-web/pom.xml | 2 +-
openmeetings-webservice/pom.xml | 2 +-
pom.xml | 2 +-
11 files changed, 11 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-core/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-core/pom.xml b/openmeetings-core/pom.xml
index e5b3a50..a488a99 100644
--- a/openmeetings-core/pom.xml
+++ b/openmeetings-core/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-core</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-db/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-db/pom.xml b/openmeetings-db/pom.xml
index 683a972..0016119 100644
--- a/openmeetings-db/pom.xml
+++ b/openmeetings-db/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-db</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-flash/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-flash/pom.xml b/openmeetings-flash/pom.xml
index 929373f..af590e5 100644
--- a/openmeetings-flash/pom.xml
+++ b/openmeetings-flash/pom.xml
@@ -21,7 +21,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-flash</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-install/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-install/pom.xml b/openmeetings-install/pom.xml
index 843e424..63d7e6f 100644
--- a/openmeetings-install/pom.xml
+++ b/openmeetings-install/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-install</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-screenshare/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/pom.xml b/openmeetings-screenshare/pom.xml
index b137fa7..9241a64 100644
--- a/openmeetings-screenshare/pom.xml
+++ b/openmeetings-screenshare/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-screenshare</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-server/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/pom.xml b/openmeetings-server/pom.xml
index b7e6d16..e60b388 100644
--- a/openmeetings-server/pom.xml
+++ b/openmeetings-server/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-server</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-service/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-service/pom.xml b/openmeetings-service/pom.xml
index e5a116a..76bb6b3 100644
--- a/openmeetings-service/pom.xml
+++ b/openmeetings-service/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-service</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-util/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-util/pom.xml b/openmeetings-util/pom.xml
index b5ed0d9..6e5b918 100644
--- a/openmeetings-util/pom.xml
+++ b/openmeetings-util/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-util</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-web/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/pom.xml b/openmeetings-web/pom.xml
index 996d0fc..9cfb889 100644
--- a/openmeetings-web/pom.xml
+++ b/openmeetings-web/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-web</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/openmeetings-webservice/pom.xml
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/pom.xml b/openmeetings-webservice/pom.xml
index c928059..7fa3d61 100644
--- a/openmeetings-webservice/pom.xml
+++ b/openmeetings-webservice/pom.xml
@@ -22,7 +22,7 @@
<parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>openmeetings-webservice</artifactId>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1b23071f/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index f569183..25e0239 100644
--- a/pom.xml
+++ b/pom.xml
@@ -26,7 +26,7 @@
</parent>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-parent</artifactId>
- <version>3.3.2-SNAPSHOT</version>
+ <version>3.3.3-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Openmeetings</name>
<description>Parent project for all OpenMeetings Maven modules. Required to hold general settings</description>
[09/18] openmeetings git commit: Revert "Room parameter
NumberOfPartizipants is renamed to Capacity"
Posted by so...@apache.org.
Revert "Room parameter NumberOfPartizipants is renamed to Capacity"
This reverts commit f10ba389af252d2e27bdb8db12dc676b9a98eca9.
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/d09f559d
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/d09f559d
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/d09f559d
Branch: refs/heads/3.3.x
Commit: d09f559db034850c8df8a9e1857e96d9c98afd6d
Parents: 43792d1
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 13:10:46 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 13:10:46 2017 +0700
----------------------------------------------------------------------
.../openmeetings/core/remote/MobileService.java | 2 +-
.../db/dao/calendar/AppointmentDao.java | 2 +-
.../apache/openmeetings/db/dao/room/RoomDao.java | 2 +-
.../apache/openmeetings/db/dto/room/RoomDTO.java | 16 ++++++++--------
.../apache/openmeetings/db/entity/room/Room.java | 16 ++++++++--------
.../openmeetings/installation/ImportInitvalues.java | 2 +-
.../openmeetings/web/admin/rooms/RoomForm.java | 2 +-
.../openmeetings/web/admin/rooms/RoomsPanel.html | 2 +-
.../org/apache/openmeetings/web/room/RoomPanel.java | 2 +-
.../apache/openmeetings/web/user/MessageDialog.java | 2 +-
.../openmeetings/web/user/rooms/RoomListPanel.java | 2 +-
.../test/webservice/TestCalendarService.java | 2 +-
.../test/webservice/TestRoomService.java | 2 +-
.../openmeetings/webservice/RoomWebService.java | 2 +-
14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
index eb19689..1e953da 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
@@ -288,7 +288,7 @@ public class MobileService {
}
room.put("first", first);
room.put("users", sessionManager.listByRoom(r.getId()).size());
- room.put("total", r.getCapacity());
+ room.put("total", r.getNumberOfPartizipants());
room.put("audioOnly", r.isAudioOnly());
result.add(room);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index 8f66079..694784d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -107,7 +107,7 @@ public class AppointmentDao {
Room r = a.getRoom();
if (r.getId() == null) {
r.setName(a.getTitle());
- r.setCapacity(cfgDao.getConfValue("calendar.conference.rooms.default.size", Long.class, "50"));
+ r.setNumberOfPartizipants(cfgDao.getConfValue("calendar.conference.rooms.default.size", Long.class, "50"));
}
roomDao.update(r, userId);
if (sendmails) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index d3b307b..6dd79a8 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -260,7 +260,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
room.setName(name);
room.setType(type);
room.setComment("My Rooms of ownerId " + ownerId);
- room.setCapacity(Room.Type.conference == type ? 25L : 120L);
+ room.setNumberOfPartizipants(Room.Type.conference == type ? 25L : 120L);
room.setAllowUserQuestions(true);
room.setOwnerId(ownerId);
room.setAllowRecording(true);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
index de7cea4..4206cd6 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
@@ -46,7 +46,7 @@ public class RoomDTO implements Serializable {
private String name;
private String comment;
private Room.Type type;
- private Long capacity = new Long(4);
+ private Long numberOfPartizipants = new Long(4);
private boolean appointment;
private String confno;
private boolean isPublic;
@@ -70,7 +70,7 @@ public class RoomDTO implements Serializable {
name = r.getName();
comment = r.getComment();
type = r.getType();
- capacity = r.getCapacity();
+ numberOfPartizipants = r.getNumberOfPartizipants();
appointment = r.isAppointment();
confno = r.getConfno();
isPublic = r.getIspublic();
@@ -94,7 +94,7 @@ public class RoomDTO implements Serializable {
r.setName(name);
r.setComment(comment);
r.setType(type);
- r.setCapacity(capacity);
+ r.setNumberOfPartizipants(numberOfPartizipants);
r.setAppointment(appointment);
r.setConfno(confno);
r.setIspublic(isPublic);
@@ -144,12 +144,12 @@ public class RoomDTO implements Serializable {
this.type = type;
}
- public Long getCapacity() {
- return capacity;
+ public Long getNumberOfPartizipants() {
+ return numberOfPartizipants;
}
- public void setCapacity(Long capacity) {
- this.capacity = capacity;
+ public void setNumberOfPartizipants(Long numberOfPartizipants) {
+ this.numberOfPartizipants = numberOfPartizipants;
}
public boolean isAppointment() {
@@ -295,7 +295,7 @@ public class RoomDTO implements Serializable {
r.name = o.optString("name");
r.comment = o.optString("comment");
r.type = optEnum(Room.Type.class, o, "type");
- r.capacity = o.optLong("capacity", 4);
+ r.numberOfPartizipants = o.optLong("numberOfPartizipants", 4);
r.appointment = o.optBoolean("appointment", false);
r.confno = o.optString("confno");
r.isPublic = o.optBoolean("isPublic", false);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index 524068b..84ed8e6 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -78,7 +78,7 @@ import org.simpleframework.xml.Root;
@NamedQuery(name = "getSipRoomIdsByIds", query = "SELECT r.id FROM Room r WHERE r.deleted = false AND r.sipEnabled = true AND r.id IN :ids"),
@NamedQuery(name = "countRooms", query = "SELECT COUNT(r) FROM Room r WHERE r.deleted = false"),
@NamedQuery(name = "getBackupRooms", query = "SELECT r FROM Room r ORDER BY r.id"),
- @NamedQuery(name = "getRoomsCapacityByIds", query = "SELECT SUM(r.capacity) FROM Room r WHERE r.deleted = false AND r.id IN :ids")
+ @NamedQuery(name = "getRoomsCapacityByIds", query = "SELECT SUM(r.numberOfPartizipants) FROM Room r WHERE r.deleted = false AND r.id IN :ids")
, @NamedQuery(name = "getGroupRooms", query = "SELECT DISTINCT r.room FROM RoomGroup r LEFT JOIN FETCH r.room "
+ "WHERE r.group.id = :groupId AND r.deleted = false AND r.room.deleted = false AND r.room.appointment = false "
+ "AND r.group.deleted = false ORDER BY r.room.name ASC")
@@ -192,9 +192,9 @@ public class Room implements IDataProviderEntity {
@Element(name = "ispublic", data = true, required = false)
private boolean ispublic;
- @Column(name = "capacity")
- @Element(name = "numberOfPartizipants", data = true, required = false)
- private long capacity = 4L;
+ @Column(name = "numberOfPartizipants")
+ @Element(data = true, required = false)
+ private long numberOfPartizipants = 4L;
@Column(name = "appointment", nullable = false)
@Element(data = true, required = false)
@@ -384,12 +384,12 @@ public class Room implements IDataProviderEntity {
this.currentusers = currentusers;
}
- public long getCapacity() {
- return capacity;
+ public long getNumberOfPartizipants() {
+ return numberOfPartizipants;
}
- public void setCapacity(long capacity) {
- this.capacity = capacity;
+ public void setNumberOfPartizipants(long numberOfPartizipants) {
+ this.numberOfPartizipants = numberOfPartizipants;
}
public boolean isAppointment() {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
index 7082b8a..8530d70 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
@@ -318,7 +318,7 @@ public class ImportInitvalues {
r.setName(name);
r.setComment("");
r.setInserted(new Date());
- r.setCapacity(capacity);
+ r.setNumberOfPartizipants(capacity);
r.setType(type);
r.setIspublic(isPublic);
r.setAllowUserQuestions(true);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index 9a291ae..06cda04 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -124,7 +124,7 @@ public class RoomForm extends AdminBaseForm<Room> {
name.setLabel(new Model<>(Application.getString(193)));
add(name);
- add(new DropDownChoice<>("capacity", //
+ add(new DropDownChoice<>("numberOfPartizipants", //
DROPDOWN_NUMBER_OF_PARTICIPANTS, //
new ChoiceRenderer<Long>() {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
index c43451b..aec520a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
@@ -55,7 +55,7 @@
<label wicket:for="name"><wicket:message key="193" /></label><input type="text" wicket:id="name" />
</div>
<div class="formelement">
- <label wicket:for="capacity"><wicket:message key="482" /></label><select wicket:id="capacity"/>
+ <label wicket:for="numberOfPartizipants"><wicket:message key="482" /></label><select wicket:id="numberOfPartizipants"/>
</div>
<div class="formelement">
<label wicket:for="type"><wicket:message key="194" /></label><select wicket:id="type"/>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 1143b51..5689ba3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -209,7 +209,7 @@ public class RoomPanel extends BasePanel {
add(roomClosed = new RedirectMessageDialog("room-closed", "1098", r.isClosed(), r.getRedirectURL()));
if (r.isClosed()) {
room.setVisible(false);
- } else if (getRoomClients(r.getId()).size() >= r.getCapacity()) {
+ } else if (getRoomClients(r.getId()).size() >= r.getNumberOfPartizipants()) {
accessDenied = new ExpiredMessageDialog(ACCESS_DENIED_ID, getString("99"), menu);
room.setVisible(false);
} else if (r.getId().equals(WebSession.get().getRoomId())) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
index 729234f..7b6141f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
@@ -193,7 +193,7 @@ public class MessageDialog extends AbstractFormDialog<PrivateMessage> {
Room r = m.getRoom();
r.setName(m.getSubject());
r.setComment("");
- r.setCapacity(100L);
+ r.setNumberOfPartizipants(100L);
r.setAppointment(true);
r.setAllowUserQuestions(true);
r = getBean(RoomDao.class).update(r, getUserId());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
index f1aa056..454300f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
@@ -69,7 +69,7 @@ public class RoomListPanel extends UserPanel {
.add(AttributeModifier.append("title", getString(String.format("room.type.%s.desc", r.getType().name())))));
final Label curUsers = new Label("curUsers", new Model<>(Application.getRoomClients(r.getId()).size()));
roomContainer.add(curUsers.setOutputMarkupId(true));
- roomContainer.add(new Label("totalUsers", r.getCapacity()));
+ roomContainer.add(new Label("totalUsers", r.getNumberOfPartizipants()));
item.add(new Button("btn").add(new Label("label", label)).add(new RoomEnterBehavior(r.getId()) {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
index 366b7a1..8af988b 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
@@ -101,7 +101,7 @@ public class TestCalendarService extends AbstractWebServiceTest {
.put("name", "test24")
.put("comment", "appointment test room")
.put("type", "conference")
- .put("capacity", 15)
+ .put("numberOfPartizipants", 15)
.put("appointment", true)
.put("isPublic", false)
.put("demo", false)
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
index 0998ceb..7d91c09 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
@@ -43,7 +43,7 @@ public class TestRoomService extends AbstractWebServiceTest {
r.setType(type);
r.setName(name);
r.setComment(comment);
- r.setCapacity(num);
+ r.setNumberOfPartizipants(num);
RoomDTO room = getClient(ROOM_SERVICE_URL).path(String.format("/%s/%s/%s", type, UNIT_TEST_EXT_TYPE, extId))
.query("sid", sr.getMessage())
.query("room", r.toString())
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/d09f559d/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
index 63b2b65..ee17762 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
@@ -422,7 +422,7 @@ public class RoomWebService extends BaseWebService {
RoomCountDTO rCountBean = new RoomCountDTO();
rCountBean.setRoomId(room.getId());
rCountBean.setRoomName(room.getName());
- rCountBean.setMaxUser(room.getCapacity());
+ rCountBean.setMaxUser(room.getNumberOfPartizipants());
rCountBean.setRoomCount(app.getOmRoomClients(room.getId()).size());
roomBeans.add(rCountBean);
[12/18] openmeetings git commit: [OPENMEETINGS-1671] add id filtering
Posted by so...@apache.org.
[OPENMEETINGS-1671] add id filtering
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/db36ff2e
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/db36ff2e
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/db36ff2e
Branch: refs/heads/3.3.x
Commit: db36ff2e9e41ac82d846f084ce5364db0f82fc47
Parents: 8bfe1c0
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 17:00:53 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 17:00:53 2017 +0700
----------------------------------------------------------------------
.../apache/openmeetings/web/admin/rooms/RoomForm.java | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/db36ff2e/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index 06cda04..8c9d147 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -29,6 +29,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
+import java.util.stream.Collectors;
import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
@@ -170,16 +171,19 @@ public class RoomForm extends AdminBaseForm<Room> {
@Override
public void query(String term, int page, Response<RoomGroup> response) {
- for (RoomGroup or : orgRooms) {
- if (Strings.isEmpty(term) || or.getGroup().getName().contains(term)) {
- response.add(or);
- }
- }
+ response.addAll(orgRooms.stream()
+ .filter(rg -> Strings.isEmpty(term) || rg.getGroup().getName().contains(term))
+ .collect(Collectors.toList())
+ );
}
@Override
public RoomGroup fromId(String _id) {
Long id = Long.valueOf(_id);
+
+ if (!orgList.stream().filter(g -> g.getId().equals(id)).findFirst().isPresent()) {
+ return null; // seems to be hacked
+ }
Group g = getBean(GroupDao.class).get(id);
return new RoomGroup(g, RoomForm.this.getModelObject());
}
[13/18] openmeetings git commit: Merge branch '3.3.x' into
OPENMEETINGS-1671-room-files
Posted by so...@apache.org.
Merge branch '3.3.x' into OPENMEETINGS-1671-room-files
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/6a8fef06
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/6a8fef06
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/6a8fef06
Branch: refs/heads/3.3.x
Commit: 6a8fef0646a4047cdb3961a111cf399197d3e26e
Parents: db36ff2 0d43610
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 21:16:07 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 21:16:07 2017 +0700
----------------------------------------------------------------------
CHANGELOG | 15 ++++++++
README | 14 ++++++++
.../src/site/xdoc/NewsArchive.xml | 24 +++++++++++++
openmeetings-server/src/site/xdoc/downloads.xml | 36 ++++++++++----------
openmeetings-server/src/site/xdoc/index.xml | 21 ++++++------
pom.xml | 4 +--
6 files changed, 83 insertions(+), 31 deletions(-)
----------------------------------------------------------------------
[07/18] openmeetings git commit: Room parameter NumberOfPartizipants
is renamed to Capacity
Posted by so...@apache.org.
Room parameter NumberOfPartizipants is renamed to Capacity
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/f10ba389
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/f10ba389
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/f10ba389
Branch: refs/heads/3.3.x
Commit: f10ba389af252d2e27bdb8db12dc676b9a98eca9
Parents: 0a058f6
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 12:05:06 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 12:05:06 2017 +0700
----------------------------------------------------------------------
.../openmeetings/core/remote/MobileService.java | 2 +-
.../db/dao/calendar/AppointmentDao.java | 2 +-
.../apache/openmeetings/db/dao/room/RoomDao.java | 2 +-
.../apache/openmeetings/db/dto/room/RoomDTO.java | 16 ++++++++--------
.../apache/openmeetings/db/entity/room/Room.java | 16 ++++++++--------
.../openmeetings/installation/ImportInitvalues.java | 2 +-
.../openmeetings/web/admin/rooms/RoomForm.java | 2 +-
.../openmeetings/web/admin/rooms/RoomsPanel.html | 2 +-
.../org/apache/openmeetings/web/room/RoomPanel.java | 2 +-
.../apache/openmeetings/web/user/MessageDialog.java | 2 +-
.../openmeetings/web/user/rooms/RoomListPanel.java | 2 +-
.../test/webservice/TestCalendarService.java | 2 +-
.../test/webservice/TestRoomService.java | 2 +-
.../openmeetings/webservice/RoomWebService.java | 2 +-
14 files changed, 28 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
index 1e953da..eb19689 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/MobileService.java
@@ -288,7 +288,7 @@ public class MobileService {
}
room.put("first", first);
room.put("users", sessionManager.listByRoom(r.getId()).size());
- room.put("total", r.getNumberOfPartizipants());
+ room.put("total", r.getCapacity());
room.put("audioOnly", r.isAudioOnly());
result.add(room);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
index 694784d..8f66079 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/calendar/AppointmentDao.java
@@ -107,7 +107,7 @@ public class AppointmentDao {
Room r = a.getRoom();
if (r.getId() == null) {
r.setName(a.getTitle());
- r.setNumberOfPartizipants(cfgDao.getConfValue("calendar.conference.rooms.default.size", Long.class, "50"));
+ r.setCapacity(cfgDao.getConfValue("calendar.conference.rooms.default.size", Long.class, "50"));
}
roomDao.update(r, userId);
if (sendmails) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 6dd79a8..d3b307b 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -260,7 +260,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
room.setName(name);
room.setType(type);
room.setComment("My Rooms of ownerId " + ownerId);
- room.setNumberOfPartizipants(Room.Type.conference == type ? 25L : 120L);
+ room.setCapacity(Room.Type.conference == type ? 25L : 120L);
room.setAllowUserQuestions(true);
room.setOwnerId(ownerId);
room.setAllowRecording(true);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
index 4206cd6..de7cea4 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java
@@ -46,7 +46,7 @@ public class RoomDTO implements Serializable {
private String name;
private String comment;
private Room.Type type;
- private Long numberOfPartizipants = new Long(4);
+ private Long capacity = new Long(4);
private boolean appointment;
private String confno;
private boolean isPublic;
@@ -70,7 +70,7 @@ public class RoomDTO implements Serializable {
name = r.getName();
comment = r.getComment();
type = r.getType();
- numberOfPartizipants = r.getNumberOfPartizipants();
+ capacity = r.getCapacity();
appointment = r.isAppointment();
confno = r.getConfno();
isPublic = r.getIspublic();
@@ -94,7 +94,7 @@ public class RoomDTO implements Serializable {
r.setName(name);
r.setComment(comment);
r.setType(type);
- r.setNumberOfPartizipants(numberOfPartizipants);
+ r.setCapacity(capacity);
r.setAppointment(appointment);
r.setConfno(confno);
r.setIspublic(isPublic);
@@ -144,12 +144,12 @@ public class RoomDTO implements Serializable {
this.type = type;
}
- public Long getNumberOfPartizipants() {
- return numberOfPartizipants;
+ public Long getCapacity() {
+ return capacity;
}
- public void setNumberOfPartizipants(Long numberOfPartizipants) {
- this.numberOfPartizipants = numberOfPartizipants;
+ public void setCapacity(Long capacity) {
+ this.capacity = capacity;
}
public boolean isAppointment() {
@@ -295,7 +295,7 @@ public class RoomDTO implements Serializable {
r.name = o.optString("name");
r.comment = o.optString("comment");
r.type = optEnum(Room.Type.class, o, "type");
- r.numberOfPartizipants = o.optLong("numberOfPartizipants", 4);
+ r.capacity = o.optLong("capacity", 4);
r.appointment = o.optBoolean("appointment", false);
r.confno = o.optString("confno");
r.isPublic = o.optBoolean("isPublic", false);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index 84ed8e6..524068b 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -78,7 +78,7 @@ import org.simpleframework.xml.Root;
@NamedQuery(name = "getSipRoomIdsByIds", query = "SELECT r.id FROM Room r WHERE r.deleted = false AND r.sipEnabled = true AND r.id IN :ids"),
@NamedQuery(name = "countRooms", query = "SELECT COUNT(r) FROM Room r WHERE r.deleted = false"),
@NamedQuery(name = "getBackupRooms", query = "SELECT r FROM Room r ORDER BY r.id"),
- @NamedQuery(name = "getRoomsCapacityByIds", query = "SELECT SUM(r.numberOfPartizipants) FROM Room r WHERE r.deleted = false AND r.id IN :ids")
+ @NamedQuery(name = "getRoomsCapacityByIds", query = "SELECT SUM(r.capacity) FROM Room r WHERE r.deleted = false AND r.id IN :ids")
, @NamedQuery(name = "getGroupRooms", query = "SELECT DISTINCT r.room FROM RoomGroup r LEFT JOIN FETCH r.room "
+ "WHERE r.group.id = :groupId AND r.deleted = false AND r.room.deleted = false AND r.room.appointment = false "
+ "AND r.group.deleted = false ORDER BY r.room.name ASC")
@@ -192,9 +192,9 @@ public class Room implements IDataProviderEntity {
@Element(name = "ispublic", data = true, required = false)
private boolean ispublic;
- @Column(name = "numberOfPartizipants")
- @Element(data = true, required = false)
- private long numberOfPartizipants = 4L;
+ @Column(name = "capacity")
+ @Element(name = "numberOfPartizipants", data = true, required = false)
+ private long capacity = 4L;
@Column(name = "appointment", nullable = false)
@Element(data = true, required = false)
@@ -384,12 +384,12 @@ public class Room implements IDataProviderEntity {
this.currentusers = currentusers;
}
- public long getNumberOfPartizipants() {
- return numberOfPartizipants;
+ public long getCapacity() {
+ return capacity;
}
- public void setNumberOfPartizipants(long numberOfPartizipants) {
- this.numberOfPartizipants = numberOfPartizipants;
+ public void setCapacity(long capacity) {
+ this.capacity = capacity;
}
public boolean isAppointment() {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
index 8530d70..7082b8a 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/installation/ImportInitvalues.java
@@ -318,7 +318,7 @@ public class ImportInitvalues {
r.setName(name);
r.setComment("");
r.setInserted(new Date());
- r.setNumberOfPartizipants(capacity);
+ r.setCapacity(capacity);
r.setType(type);
r.setIspublic(isPublic);
r.setAllowUserQuestions(true);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index 156b2df..42e5b64 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -119,7 +119,7 @@ public class RoomForm extends AdminBaseForm<Room> {
name.setLabel(new Model<>(Application.getString(193)));
add(name);
- add(new DropDownChoice<>("numberOfPartizipants", //
+ add(new DropDownChoice<>("capacity", //
DROPDOWN_NUMBER_OF_PARTICIPANTS, //
new ChoiceRenderer<Long>() {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
index a424408..8631b38 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
@@ -55,7 +55,7 @@
<label wicket:for="name"><wicket:message key="193" /></label><input type="text" wicket:id="name" />
</div>
<div class="formelement">
- <label wicket:for="numberOfPartizipants"><wicket:message key="482" /></label><select wicket:id="numberOfPartizipants"/>
+ <label wicket:for="capacity"><wicket:message key="482" /></label><select wicket:id="capacity"/>
</div>
<div class="formelement">
<label wicket:for="type"><wicket:message key="194" /></label><select wicket:id="type"/>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 5689ba3..1143b51 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -209,7 +209,7 @@ public class RoomPanel extends BasePanel {
add(roomClosed = new RedirectMessageDialog("room-closed", "1098", r.isClosed(), r.getRedirectURL()));
if (r.isClosed()) {
room.setVisible(false);
- } else if (getRoomClients(r.getId()).size() >= r.getNumberOfPartizipants()) {
+ } else if (getRoomClients(r.getId()).size() >= r.getCapacity()) {
accessDenied = new ExpiredMessageDialog(ACCESS_DENIED_ID, getString("99"), menu);
room.setVisible(false);
} else if (r.getId().equals(WebSession.get().getRoomId())) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
index 7b6141f..729234f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
@@ -193,7 +193,7 @@ public class MessageDialog extends AbstractFormDialog<PrivateMessage> {
Room r = m.getRoom();
r.setName(m.getSubject());
r.setComment("");
- r.setNumberOfPartizipants(100L);
+ r.setCapacity(100L);
r.setAppointment(true);
r.setAllowUserQuestions(true);
r = getBean(RoomDao.class).update(r, getUserId());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
index 454300f..f1aa056 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/rooms/RoomListPanel.java
@@ -69,7 +69,7 @@ public class RoomListPanel extends UserPanel {
.add(AttributeModifier.append("title", getString(String.format("room.type.%s.desc", r.getType().name())))));
final Label curUsers = new Label("curUsers", new Model<>(Application.getRoomClients(r.getId()).size()));
roomContainer.add(curUsers.setOutputMarkupId(true));
- roomContainer.add(new Label("totalUsers", r.getNumberOfPartizipants()));
+ roomContainer.add(new Label("totalUsers", r.getCapacity()));
item.add(new Button("btn").add(new Label("label", label)).add(new RoomEnterBehavior(r.getId()) {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
index 8af988b..366b7a1 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestCalendarService.java
@@ -101,7 +101,7 @@ public class TestCalendarService extends AbstractWebServiceTest {
.put("name", "test24")
.put("comment", "appointment test room")
.put("type", "conference")
- .put("numberOfPartizipants", 15)
+ .put("capacity", 15)
.put("appointment", true)
.put("isPublic", false)
.put("demo", false)
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
index 7d91c09..0998ceb 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestRoomService.java
@@ -43,7 +43,7 @@ public class TestRoomService extends AbstractWebServiceTest {
r.setType(type);
r.setName(name);
r.setComment(comment);
- r.setNumberOfPartizipants(num);
+ r.setCapacity(num);
RoomDTO room = getClient(ROOM_SERVICE_URL).path(String.format("/%s/%s/%s", type, UNIT_TEST_EXT_TYPE, extId))
.query("sid", sr.getMessage())
.query("room", r.toString())
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/f10ba389/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
index ee17762..63b2b65 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java
@@ -422,7 +422,7 @@ public class RoomWebService extends BaseWebService {
RoomCountDTO rCountBean = new RoomCountDTO();
rCountBean.setRoomId(room.getId());
rCountBean.setRoomName(room.getName());
- rCountBean.setMaxUser(room.getNumberOfPartizipants());
+ rCountBean.setMaxUser(room.getCapacity());
rCountBean.setRoomCount(app.getOmRoomClients(room.getId()).size());
roomBeans.add(rCountBean);
[14/18] openmeetings git commit: [OPENMEETINGS-1671] room file are
saved/loaded
Posted by so...@apache.org.
[OPENMEETINGS-1671] room file are saved/loaded
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/ffacf2ec
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/ffacf2ec
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/ffacf2ec
Branch: refs/heads/3.3.x
Commit: ffacf2ece0b4d23490c7954e0a07fd43876d1d9b
Parents: 6a8fef0
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Fri Sep 15 00:13:41 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Fri Sep 15 00:13:41 2017 +0700
----------------------------------------------------------------------
.../db/entity/file/BaseFileItem.java | 2 +-
.../openmeetings/db/entity/room/Room.java | 12 +-
.../openmeetings/db/entity/room/RoomFile.java | 8 ++
.../openmeetings/web/admin/rooms/RoomForm.java | 110 +++++++++++++++----
.../web/admin/rooms/RoomsPanel.html | 27 +++++
5 files changed, 137 insertions(+), 22 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/ffacf2ec/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
index c83869d..b290eaf 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
@@ -58,7 +58,7 @@ import org.simpleframework.xml.Element;
+ " AND f.name LIKE :name"
+ " ORDER BY f.name")
, @NamedQuery(name = "getFileItemsByIds", query = "SELECT f FROM BaseFileItem f"
- + " WHERE f.deleted = false AND f.id IN :ids)")
+ + " WHERE f.deleted = false AND f.id IN :ids")
})
@Table(name = "file")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/ffacf2ec/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index 84ed8e6..087a446 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -61,7 +61,7 @@ import org.simpleframework.xml.Root;
@FetchGroups({
@FetchGroup(name = "roomModerators", attributes = { @FetchAttribute(name = "moderators") })
, @FetchGroup(name = "roomGroups", attributes = { @FetchAttribute(name = "roomGroups") })
- , @FetchGroup(name = "roomFiles", attributes = { @FetchAttribute(name = "roomFiles") })
+ , @FetchGroup(name = "roomFiles", attributes = { @FetchAttribute(name = "files") })
})
@NamedQueries({
@NamedQuery(name = "getNondeletedRooms", query = "SELECT r FROM Room r WHERE r.deleted = false"),
@@ -305,7 +305,7 @@ public class Room implements IDataProviderEntity {
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "room_id", insertable = true, updatable = true, nullable = false)
@ElementDependent
- private List<RoomFile> roomFiles = new ArrayList<>();
+ private List<RoomFile> files = new ArrayList<>();
@Transient
private List<StreamClient> currentusers;
@@ -589,6 +589,14 @@ public class Room implements IDataProviderEntity {
this.pin = pin;
}
+ public List<RoomFile> getFiles() {
+ return files;
+ }
+
+ public void setFiles(List<RoomFile> files) {
+ this.files = files;
+ }
+
@Override
public String toString() {
return "Room [id=" + id + ", name=" + name + ", type=" + type + "]";
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/ffacf2ec/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
index 329697c..e8bef4f 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
@@ -55,6 +55,14 @@ public class RoomFile implements IDataProviderEntity {
@Column(name = "wb_idx", nullable = false)
private long wbIdx = 0;
+ public RoomFile() {}
+
+ public RoomFile(Long roomId, BaseFileItem file, long wbIdx) {
+ this.roomId = roomId;
+ this.file = file;
+ this.wbIdx = wbIdx;
+ }
+
@Override
public Long getId() {
return id;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/ffacf2ec/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index 8c9d147..f879e49 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -28,6 +28,7 @@ import static org.apache.openmeetings.web.app.WebSession.getUserId;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
+import java.util.Iterator;
import java.util.List;
import java.util.stream.Collectors;
@@ -40,6 +41,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.RoomElement;
+import org.apache.openmeetings.db.entity.room.RoomFile;
import org.apache.openmeetings.db.entity.room.RoomGroup;
import org.apache.openmeetings.db.entity.room.RoomModerator;
import org.apache.openmeetings.db.entity.room.StreamClient;
@@ -80,6 +82,9 @@ import org.wicketstuff.select2.Response;
import org.wicketstuff.select2.Select2Choice;
import org.wicketstuff.select2.Select2MultiChoice;
+import com.googlecode.wicket.jquery.ui.JQueryIcon;
+import com.googlecode.wicket.jquery.ui.form.button.AjaxButton;
+
public class RoomForm extends AdminBaseForm<Room> {
private static final long serialVersionUID = 1L;
private final static List<Long> DROPDOWN_NUMBER_OF_PARTICIPANTS = Arrays.asList(2L, 4L, 6L, 8L, 10L, 12L, 14L, 16L, 20L, 25L, 32L, 50L,
@@ -87,6 +92,7 @@ public class RoomForm extends AdminBaseForm<Room> {
private final WebMarkupContainer roomList;
private final TextField<String> pin = new TextField<>("pin");
private final WebMarkupContainer moderatorContainer = new WebMarkupContainer("moderatorContainer");
+ private final WebMarkupContainer filesContainer = new WebMarkupContainer("filesContainer");
private final WebMarkupContainer clientsContainer = new WebMarkupContainer("clientsContainer");
private final ListView<StreamClient> clients = new ListView<StreamClient>("clients", new ArrayList<>()) {
private static final long serialVersionUID = 1L;
@@ -111,6 +117,7 @@ public class RoomForm extends AdminBaseForm<Room> {
};
private IModel<User> moderator2add = Model.of((User)null);
private IModel<Collection<BaseFileItem>> files2add = new CollectionModel<>(new ArrayList<BaseFileItem>());
+ private IModel<Long> wbIdx = Model.of(0L);
public RoomForm(String id, WebMarkupContainer roomList, final Room room) {
super(id, new CompoundPropertyModel<>(room));
@@ -311,30 +318,83 @@ public class RoomForm extends AdminBaseForm<Room> {
add(new CheckBox("moderated"));
// Files
- add(new Select2MultiChoice<>("files2add", files2add, new ChoiceProvider<BaseFileItem>() {
- private static final long serialVersionUID = 1L;
+ Form<Void> filesForm = new Form<>("files");
+ add(filesForm.add(new Select2MultiChoice<>("files2add", files2add, new ChoiceProvider<BaseFileItem>() {
+ private static final long serialVersionUID = 1L;
- @Override
- public String getDisplayValue(BaseFileItem f) {
- return f.getName();
- }
+ @Override
+ public String getDisplayValue(BaseFileItem f) {
+ return f.getName();
+ }
- @Override
- public String getIdValue(BaseFileItem f) {
- return "" + f.getId();
- }
+ @Override
+ public String getIdValue(BaseFileItem f) {
+ return "" + f.getId();
+ }
- @Override
- public void query(String term, int page, Response<BaseFileItem> response) {
- response.addAll(getBean(FileItemDao.class).getAllRoomFiles(term, page * PAGE_SIZE, PAGE_SIZE, RoomForm.this.getModelObject().getId(), orgList));
- response.setHasMore(PAGE_SIZE == response.getResults().size());
- }
+ @Override
+ public void query(String term, int page, Response<BaseFileItem> response) {
+ response.addAll(getBean(FileItemDao.class).getAllRoomFiles(term, page * PAGE_SIZE, PAGE_SIZE, RoomForm.this.getModelObject().getId(), orgList));
+ response.setHasMore(PAGE_SIZE == response.getResults().size());
+ }
+
+ @Override
+ public Collection<BaseFileItem> toChoices(Collection<String> ids) {
+ return getBean(FileItemDao.class).get(ids);
+ }
+ }).setLabel(Model.of(getString("245"))))
+ .add(new TextField<Long>("wbidx", wbIdx) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected String[] getInputTypes() {
+ return new String[] {"number"};
+ }
+ })
+ .add(new AjaxButton("addFiles") {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ Room r = RoomForm.this.getModelObject();
+ for (BaseFileItem f : files2add.getObject()) {
+ r.getFiles().add(new RoomFile(r.getId(), f, wbIdx.getObject()));
+ }
+ target.add(filesContainer, filesForm);
+ }
+
+ @Override
+ protected String getIcon() {
+ return JQueryIcon.PLUSTHICK;
+ }
+ }).setOutputMarkupId(true)
+ );
+ add(filesContainer.add(new ListView<RoomFile>("files") {
+ private static final long serialVersionUID = 1L;
@Override
- public Collection<BaseFileItem> toChoices(Collection<String> ids) {
- return getBean(FileItemDao.class).get(ids);
+ protected void populateItem(final ListItem<RoomFile> item) {
+ final RoomFile rf = item.getModelObject();
+ item.add(new Label("name", new PropertyModel<>(rf.getFile(), "name")))
+ .add(new Label("wbIdx", new PropertyModel<>(rf, "wbIdx")))
+ .add(new ConfirmableAjaxBorder("delete", getString("80"), getString("833")) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ Room r = RoomForm.this.getModelObject();
+ for (Iterator<RoomFile> iter = r.getFiles().iterator(); iter.hasNext();) {
+ RoomFile _rf = iter.next();
+ if (_rf.getFile().getId().equals(rf.getFile().getId())) {
+ iter.remove();
+ break;
+ }
+ }
+ target.add(filesContainer);
+ }
+ });
}
- }).setLabel(Model.of(getString("245"))));
+ }).setOutputMarkupId(true));
// Users in this Room
add(clientsContainer.add(clients.setOutputMarkupId(true)).setOutputMarkupId(true));
@@ -373,6 +433,9 @@ public class RoomForm extends AdminBaseForm<Room> {
for (RoomModerator rm : r.getModerators()) {
rm.setRoomId(r.getId());
}
+ for (RoomFile rf : r.getFiles()) {
+ rf.setRoomId(r.getId());
+ }
// FIXME double update
getBean(RoomDao.class).update(getModelObject(), getUserId());
}
@@ -427,9 +490,16 @@ public class RoomForm extends AdminBaseForm<Room> {
}
public void updateView(AjaxRequestTarget target) {
+ moderator2add.setObject(null);
+ files2add.getObject().clear();
+ wbIdx.setObject(0L);
+ Room r = getModelObject();
+ if (r.getFiles() == null) {
+ r.setFiles(new ArrayList<>());
+ }
target.add(this);
target.add(roomList);
- target.add(pin.setEnabled(getModelObject().isSipEnabled()));
+ target.add(pin.setEnabled(r.isSipEnabled()));
updateClients(target);
target.appendJavaScript("adminPanelInit();");
}
@@ -437,6 +507,8 @@ public class RoomForm extends AdminBaseForm<Room> {
@Override
protected void onDetach() {
moderator2add.detach();
+ files2add.detach();
+ wbIdx.detach();
super.onDetach();
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/ffacf2ec/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
index aec520a..2d82f4f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
@@ -143,10 +143,37 @@
<!-- Room files -->
<fieldset class="ui-widget-content">
<legend class="ui-widget-header"><wicket:message key="245" /></legend>
+ <form wicket:id="files">
<div class="formelement">
<label wicket:for="files2add"><wicket:message key="245" /></label>
<div class="om-select2"><select class="input" wicket:id="files2add"></select></div>
</div>
+ <div class="formelement">
+ <label wicket:for="wbidx"><wicket:message key="615" /></label>
+ <input type="number" class="input" wicket:id="wbidx"/>
+ </div>
+ <button type="button" wicket:id="addFiles"><wicket:message key="175"/></button>
+ </form>
+ <table class="adminListTable">
+ <thead>
+ <tr>
+ <th class="ui-widget-header" style="width: 380px"><wicket:message key="165" /></th>
+ <th class="ui-widget-header" style="width: 80px"><wicket:message key="615" /></th>
+ <th class="ui-widget-header" style="width: 50px"><wicket:message key="590" /></th>
+ </tr>
+ </thead>
+ </table>
+ <div class="tableWrapperSmall" id="adminTableSmall">
+ <table class="adminListTable">
+ <tbody wicket:id="filesContainer">
+ <tr wicket:id="files">
+ <td style="width: 380px"><div class="three_column_layout_divcolumn1" style="width: auto"><span wicket:id="name"></span></div></td>
+ <td style="width: 80px"><span wicket:id="wbIdx"></span></td>
+ <td style="width: 50px"><div class="formCancelButton" wicket:id="delete" wicket:message="title:604"></div></td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
</fieldset>
<!-- Users in this Room -->
[02/18] openmeetings git commit: [OPENMEETINGS-1671] DB related part
of work seems to be done
Posted by so...@apache.org.
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
index 453f180..71d030e 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mssql_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
index d645324..74cc32b 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/mysql_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
index b6a6326..589f407 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/oracle_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
index d7dbe26..062d941 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/postgresql_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
index 12e412e..8438397 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/applicationContext.xml
@@ -166,7 +166,7 @@
<bean id="conferenceLogDao" class="org.apache.openmeetings.db.dao.log.ConferenceLogDao" />
<bean id="emailManagement" class="org.apache.openmeetings.service.mail.EmailManager" />
<bean id="fileItemLogDao" class="org.apache.openmeetings.db.dao.file.FileItemLogDao" />
- <bean id="fileExplorerItemDao" class="org.apache.openmeetings.db.dao.file.FileExplorerItemDao" />
+ <bean id="fileItemDao" class="org.apache.openmeetings.db.dao.file.FileItemDao" />
<bean id="recordingDao" class="org.apache.openmeetings.db.dao.record.RecordingDao" />
<bean id="recordingMetaDataDao" class="org.apache.openmeetings.db.dao.record.RecordingMetaDataDao" />
<bean id="recordingMetaDeltaDao" class="org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestFileService.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestFileService.java b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestFileService.java
index 4816c9c..70065ce 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestFileService.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/test/webservice/TestFileService.java
@@ -36,8 +36,8 @@ import javax.ws.rs.core.MediaType;
import org.apache.cxf.jaxrs.ext.multipart.Attachment;
import org.apache.openmeetings.db.dto.basic.ServiceResult;
-import org.apache.openmeetings.db.dto.file.FileExplorerItemDTO;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.dto.file.FileItemDTO;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.util.NonJenkinsTests;
import org.junit.Test;
import org.junit.experimental.categories.Category;
@@ -60,20 +60,20 @@ public class TestFileService extends AbstractWebServiceTest {
g.drawString("Hello World!!!", 10, 20);
ImageIO.write(image, "jpg", img);
try (InputStream is = new FileInputStream(img)) {
- FileExplorerItemDTO file = new FileExplorerItemDTO();
+ FileItemDTO file = new FileItemDTO();
file.setName("test.txt");
file.setHash(UUID.randomUUID().toString());
- file.setType(FileItem.Type.Presentation);
+ file.setType(BaseFileItem.Type.Presentation);
List<Attachment> atts = new ArrayList<>();
atts.add(new Attachment("file", MediaType.APPLICATION_JSON, file));
atts.add(new Attachment("stream", MediaType.APPLICATION_OCTET_STREAM, is));
- FileExplorerItemDTO f1 = getClient(FILE_SERVICE_URL)
+ FileItemDTO f1 = getClient(FILE_SERVICE_URL)
.path("/")
.query("sid", r.getMessage())
- .type(MediaType.MULTIPART_FORM_DATA_TYPE).postCollection(atts, Attachment.class, FileExplorerItemDTO.class);
+ .type(MediaType.MULTIPART_FORM_DATA_TYPE).postCollection(atts, Attachment.class, FileItemDTO.class);
assertNotNull("Valid FileItem should be returned", f1);
assertNotNull("Valid FileItem should be returned", f1.getId());
- assertEquals("Type should be Image", FileItem.Type.Image, f1.getType());
+ assertEquals("Type should be Image", BaseFileItem.Type.Image, f1.getType());
assertEquals("Width should be determined", width, f1.getWidth());
assertEquals("Height should be Image", height, f1.getHeight());
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
----------------------------------------------------------------------
diff --git a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
index bcadbff..d627690 100644
--- a/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
+++ b/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/FileWebService.java
@@ -43,12 +43,12 @@ import javax.ws.rs.core.MediaType;
import org.apache.cxf.feature.Features;
import org.apache.cxf.jaxrs.ext.multipart.Multipart;
import org.apache.openmeetings.core.data.file.FileProcessor;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dto.basic.ServiceResult;
import org.apache.openmeetings.db.dto.basic.ServiceResult.Type;
-import org.apache.openmeetings.db.dto.file.FileExplorerItemDTO;
import org.apache.openmeetings.db.dto.file.FileExplorerObject;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.dto.file.FileItemDTO;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.apache.openmeetings.db.entity.user.User.Right;
import org.apache.openmeetings.db.util.AuthLevelUtil;
@@ -72,8 +72,8 @@ import org.slf4j.Logger;
public class FileWebService extends BaseWebService {
private static final Logger log = Red5LoggerFactory.getLogger(FileWebService.class, webAppRootKey);
- private static FileExplorerItemDao getDao() {
- return getBean(FileExplorerItemDao.class);
+ private static FileItemDao getDao() {
+ return getBean(FileItemDao.class);
}
/**
@@ -92,8 +92,8 @@ public class FileWebService extends BaseWebService {
try {
Sessiondata sd = check(sid);
- FileExplorerItemDao dao = getDao();
- FileExplorerItem f = dao.get(id);
+ FileItemDao dao = getDao();
+ FileItem f = dao.get(id);
if (f == null) {
return new ServiceResult(-1L, "Bad id", Type.ERROR);
}
@@ -135,19 +135,19 @@ public class FileWebService extends BaseWebService {
{
try {
if (AuthLevelUtil.hasWebServiceLevel(getRights(sid))) {
- FileExplorerItemDao dao = getDao();
- FileExplorerItem f = dao.get(externalId, externalType);
+ FileItemDao dao = getDao();
+ FileItem f = dao.get(externalId, externalType);
dao.delete(f);
return new ServiceResult(f.getId(), "Deleted", Type.SUCCESS);
}
} catch (Exception err) {
- log.error("[deleteFileOrFolderByExternalIdAndType]", err);
+ log.error("[deleteExternal]", err);
}
return null;
}
/**
- * to add a folder to the private drive, set parentFileExplorerItemId = 0 and isOwner to 1/true and
+ * to add a folder to the private drive, set parentId = 0 and isOwner to 1/true and
* externalUserId/externalUserType to a valid user
*
* @param sid
@@ -163,8 +163,8 @@ public class FileWebService extends BaseWebService {
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
@Path("/")
- public FileExplorerItemDTO add(@WebParam(name="sid") @QueryParam("sid") String sid
- , @Multipart(value = "file", type = MediaType.APPLICATION_JSON) @WebParam(name="file") FileExplorerItemDTO file
+ public FileItemDTO add(@WebParam(name="sid") @QueryParam("sid") String sid
+ , @Multipart(value = "file", type = MediaType.APPLICATION_JSON) @WebParam(name="file") FileItemDTO file
, @Multipart(value = "stream", type = MediaType.APPLICATION_OCTET_STREAM, required = false) @WebParam(name="stream") InputStream stream
) throws ServiceException
{
@@ -172,7 +172,7 @@ public class FileWebService extends BaseWebService {
Sessiondata sd = check(sid);
Long userId = sd.getUserId();
- FileExplorerItem f = file == null ? null : file.get();
+ FileItem f = file == null ? null : file.get();
if (f == null || f.getId() != null) {
throw new ServiceException("Bad id");//TODO err code -1 ????
}
@@ -193,7 +193,7 @@ public class FileWebService extends BaseWebService {
} else {
f = getDao().update(f);
}
- return new FileExplorerItemDTO(f);
+ return new FileItemDTO(f);
} else {
throw new ServiceException("Insufficient permissions"); //TODO code -26
}
@@ -229,15 +229,15 @@ public class FileWebService extends BaseWebService {
if (AuthLevelUtil.hasUserLevel(getRights(userId))) {
log.debug("roomId " + roomId);
- FileExplorerItemDao dao = getDao();
+ FileItemDao dao = getDao();
FileExplorerObject fileExplorerObject = new FileExplorerObject();
// Home File List
- List<FileExplorerItem> fList = dao.getByOwner(userId);
+ List<FileItem> fList = dao.getByOwner(userId);
fileExplorerObject.setUser(fList, dao.getSize(fList));
// Public File List
- List<FileExplorerItem> rList = dao.getByRoom(roomId);
+ List<FileItem> rList = dao.getByRoom(roomId);
fileExplorerObject.setRoom(rList, dao.getSize(rList));
return fileExplorerObject;
@@ -254,7 +254,7 @@ public class FileWebService extends BaseWebService {
/**
*
- * Get list of {@link FileExplorerItemDTO} by parent
+ * Get list of {@link FileItemDTO} by parent
*
* @param sid
* SID The SID of the User. This SID must be marked as logged in
@@ -268,7 +268,7 @@ public class FileWebService extends BaseWebService {
@WebMethod
@GET
@Path("/room/{id}/{parent}")
- public List<FileExplorerItemDTO> getRoomByParent(@WebParam(name="sid") @QueryParam("sid") String sid
+ public List<FileItemDTO> getRoomByParent(@WebParam(name="sid") @QueryParam("sid") String sid
, @WebParam(name="id") @PathParam("id") long roomId
, @WebParam(name="parent") @PathParam("parent") long parentId
) throws ServiceException
@@ -280,8 +280,8 @@ public class FileWebService extends BaseWebService {
if (AuthLevelUtil.hasUserLevel(getRights(userId))) {
log.debug("getRoomByParent " + parentId);
- FileExplorerItemDao dao = getDao();
- List<FileExplorerItem> list = new ArrayList<>();
+ FileItemDao dao = getDao();
+ List<FileItem> list = new ArrayList<>();
if (parentId < 0) {
if (parentId == -1) {
list = dao.getByOwner(userId);
@@ -291,7 +291,7 @@ public class FileWebService extends BaseWebService {
} else {
list = dao.getByParent(parentId);
}
- return FileExplorerItemDTO.list(list);
+ return FileItemDTO.list(list);
} else {
throw new ServiceException("Insufficient permissions"); //TODO code -26
}
@@ -319,7 +319,7 @@ public class FileWebService extends BaseWebService {
@WebMethod
@POST
@Path("/rename/{id}/{name}")
- public FileExplorerItemDTO rename(@WebParam(name="sid") @QueryParam("sid") String sid
+ public FileItemDTO rename(@WebParam(name="sid") @QueryParam("sid") String sid
, @WebParam(name="id") @PathParam("id") long id
, @WebParam(name="name") @PathParam("name") String name) throws ServiceException
{
@@ -328,8 +328,8 @@ public class FileWebService extends BaseWebService {
// FIXME TODO: check if this user is allowed to change this file
log.debug("rename " + id);
- FileExplorerItem f = getDao().rename(id, name);
- return f == null ? null : new FileExplorerItemDTO(f);
+ FileItem f = getDao().rename(id, name);
+ return f == null ? null : new FileItemDTO(f);
} else {
throw new ServiceException("Insufficient permissions"); //TODO code -26
}
@@ -356,7 +356,7 @@ public class FileWebService extends BaseWebService {
@WebMethod
@POST
@Path("/move/{roomid}/{id}/{parentid}")
- public FileExplorerItemDTO move(@WebParam(name="sid") @QueryParam("sid") String sid
+ public FileItemDTO move(@WebParam(name="sid") @QueryParam("sid") String sid
, @WebParam(name="id") @PathParam("id") long id
, @WebParam(name="roomid") @PathParam("roomid") long roomId
, @WebParam(name="parentid") @PathParam("parentid") long parentId) throws ServiceException
@@ -367,8 +367,8 @@ public class FileWebService extends BaseWebService {
if (AuthLevelUtil.hasUserLevel(getRights(userId))) {
// FIXME TODO A test is required that checks if the user is allowed to move the file
log.debug("move " + id);
- FileExplorerItem f = getDao().move(id, parentId, userId, roomId);
- return f == null ? null : new FileExplorerItemDTO(f);
+ FileItem f = getDao().move(id, parentId, userId, roomId);
+ return f == null ? null : new FileItemDTO(f);
} else {
throw new ServiceException("Insufficient permissions"); //TODO code -26
}
[03/18] openmeetings git commit: [OPENMEETINGS-1671] DB related part
of work seems to be done
Posted by so...@apache.org.
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index 6f76946..84ed8e6 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -305,7 +305,7 @@ public class Room implements IDataProviderEntity {
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "room_id", insertable = true, updatable = true, nullable = false)
@ElementDependent
- private List<RoomFile> roomfiles = new ArrayList<>();
+ private List<RoomFile> roomFiles = new ArrayList<>();
@Transient
private List<StreamClient> currentusers;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
index 3098aa9..329697c 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
@@ -20,12 +20,17 @@ package org.apache.openmeetings.db.entity.room;
import javax.persistence.Column;
import javax.persistence.Entity;
+import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
import javax.persistence.Table;
+import org.apache.openjpa.persistence.jdbc.ForeignKey;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
@Entity
@Table(name = "room_file")
@@ -36,9 +41,20 @@ public class RoomFile implements IDataProviderEntity {
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
- @Column(name = "room_id")
+ @Column(name = "room_id", nullable = false)
private Long roomId;
+ @ManyToOne(fetch = FetchType.EAGER, optional = false)
+ @JoinColumn(name = "file_id", insertable = true, updatable = true, nullable = false)
+ @ForeignKey(enabled = true)
+ private BaseFileItem file;
+
+ /*
+ * Index of whiteboard for this file, zero based
+ */
+ @Column(name = "wb_idx", nullable = false)
+ private long wbIdx = 0;
+
@Override
public Long getId() {
return id;
@@ -48,4 +64,28 @@ public class RoomFile implements IDataProviderEntity {
public void setId(Long id) {
this.id = id;
}
+
+ public Long getRoomId() {
+ return roomId;
+ }
+
+ public void setRoomId(Long roomId) {
+ this.roomId = roomId;
+ }
+
+ public BaseFileItem getFile() {
+ return file;
+ }
+
+ public void setFile(BaseFileItem file) {
+ this.file = file;
+ }
+
+ public long getWbIdx() {
+ return wbIdx;
+ }
+
+ public void setWbIdx(long wbIdx) {
+ this.wbIdx = wbIdx;
+ }
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-flash/src/main/swf/modules/conference/whiteboard/dynamicFileName.lzx
----------------------------------------------------------------------
diff --git a/openmeetings-flash/src/main/swf/modules/conference/whiteboard/dynamicFileName.lzx b/openmeetings-flash/src/main/swf/modules/conference/whiteboard/dynamicFileName.lzx
index 9ea2d5f..4976bec 100644
--- a/openmeetings-flash/src/main/swf/modules/conference/whiteboard/dynamicFileName.lzx
+++ b/openmeetings-flash/src/main/swf/modules/conference/whiteboard/dynamicFileName.lzx
@@ -68,7 +68,7 @@
<method name="createFileComplete" args="event">
var o = JSON.parse(event.target.data);
- var f = o.fileExplorerItemDTO;
+ var f = o.fileItemDTO;
if ($debug) Debug.info("addFolderComplete ", event, o);
this.refObj.setAttribute("fileName", f.name);
this.refObj.setAttribute("fileId", f.id);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
index 17bf2e7..ae6c809 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
@@ -42,7 +42,7 @@ import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
import org.apache.openmeetings.db.dao.calendar.MeetingMemberDao;
import org.apache.openmeetings.db.dao.calendar.OmCalendarDao;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.room.PollDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
@@ -58,7 +58,7 @@ import org.apache.openmeetings.db.entity.basic.ChatMessage;
import org.apache.openmeetings.db.entity.basic.Configuration;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.OmCalendar;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.RoomPoll;
@@ -99,7 +99,7 @@ public class BackupExport {
@Autowired
private OmCalendarDao calendarDao;
@Autowired
- private FileExplorerItemDao fileExplorerItemDao;
+ private FileItemDao fileItemDao;
@Autowired
private RecordingDao recordingDao;
@Autowired
@@ -296,7 +296,7 @@ public class BackupExport {
* ##################### File-Explorer
*/
{
- List<FileExplorerItem> list = fileExplorerItemDao.get();
+ List<FileItem> list = fileItemDao.get();
Registry registry = new Registry();
Strategy strategy = new RegistryStrategy(registry);
Serializer serializer = new Persister(strategy);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
index fad26ab..b1262f2 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
@@ -74,7 +74,7 @@ import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
import org.apache.openmeetings.db.dao.calendar.MeetingMemberDao;
import org.apache.openmeetings.db.dao.calendar.OmCalendarDao;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.room.PollDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
@@ -91,8 +91,8 @@ import org.apache.openmeetings.db.entity.basic.Configuration;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.apache.openmeetings.db.entity.calendar.OmCalendar;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.record.RecordingMetaData;
import org.apache.openmeetings.db.entity.room.Room;
@@ -158,7 +158,7 @@ public class BackupImport {
@Autowired
private LdapConfigDao ldapConfigDao;
@Autowired
- private FileExplorerItemDao fileExplorerItemDao;
+ private FileItemDao fileItemDao;
@Autowired
private UserContactDao userContactDao;
@Autowired
@@ -645,8 +645,8 @@ public class BackupImport {
* ##################### Import File-Explorer Items
*/
{
- List<FileExplorerItem> list = readFileExplorerItemList(f, "fileExplorerItems.xml", "fileExplorerItems");
- for (FileExplorerItem file : list) {
+ List<FileItem> list = readFileItemList(f, "fileExplorerItems.xml", "fileExplorerItems");
+ for (FileItem file : list) {
// We need to reset this as openJPA reject to store them otherwise
file.setId(null);
Long roomId = file.getRoomId();
@@ -660,7 +660,7 @@ public class BackupImport {
if (Strings.isEmpty(file.getHash())) {
file.setHash(UUID.randomUUID().toString());
}
- fileExplorerItemDao.update(file);
+ fileItemDao.update(file);
}
}
@@ -755,8 +755,8 @@ public class BackupImport {
}
//FIXME (need to be removed in later versions) HACK to fix old properties
- public List<FileExplorerItem> readFileExplorerItemList(File baseDir, String fileName, String listNodeName) throws Exception {
- List<FileExplorerItem> list = new ArrayList<>();
+ public List<FileItem> readFileItemList(File baseDir, String fileName, String listNodeName) throws Exception {
+ List<FileItem> list = new ArrayList<>();
File xml = new File(baseDir, fileName);
if (xml.exists()) {
Registry registry = new Registry();
@@ -777,37 +777,37 @@ public class BackupImport {
InputNode item = listNode.getNext();
InputNode item1 = listNode1.getNext(); //HACK to handle old isFolder, isImage, isVideo, isRecording, isPresentation, isStoredWmlFile, isChart
while (item != null) {
- FileExplorerItem f = ser.read(FileExplorerItem.class, item, false);
+ FileItem f = ser.read(FileItem.class, item, false);
//HACK to handle old isFolder, isImage, isVideo, isRecording, isPresentation, isStoredWmlFile, isChart, wmlFilePath
do {
String name = item1.getName();
String val = item1.getValue();
if ("wmlFilePath".equals(name) && !Strings.isEmpty(val)) {
- f.setType(FileItem.Type.WmlFile);
+ f.setType(BaseFileItem.Type.WmlFile);
f.setHash(val);
}
if ("isChart".equals(name) && "true".equals(val)) {
- f.setType(FileItem.Type.PollChart);
+ f.setType(BaseFileItem.Type.PollChart);
}
if ("isImage".equals(name) && "true".equals(val)) {
- f.setType(FileItem.Type.Image);
+ f.setType(BaseFileItem.Type.Image);
}
if ("isVideo".equals(name) && "true".equals(val)) {
- f.setType(FileItem.Type.Video);
+ f.setType(BaseFileItem.Type.Video);
}
if ("isRecording".equals(name) && "true".equals(val)) {
log.warn("Recording is stored in FileExplorer Items");
- f.setType(FileItem.Type.Video);
+ f.setType(BaseFileItem.Type.Video);
}
if ("isPresentation".equals(name) && "true".equals(val)) {
- f.setType(FileItem.Type.Presentation);
+ f.setType(BaseFileItem.Type.Presentation);
}
if ("isStoredWmlFile".equals(name) && "true".equals(val)) {
- f.setType(FileItem.Type.WmlFile);
+ f.setType(BaseFileItem.Type.WmlFile);
}
if (("folder".equals(name) || "isFolder".equals(name)) && "true".equals(val)) {
- f.setType(FileItem.Type.Folder);
+ f.setType(BaseFileItem.Type.Folder);
}
item1 = listNode1.getNext(); //HACK to handle old isFolder, isImage, isVideo, isRecording, isPresentation, isStoredWmlFile, isChart, wmlFilePath
} while (item1 != null && !"fileExplorerItem".equals(item1.getName()));
@@ -816,7 +816,7 @@ public class BackupImport {
int idx = f.getHash() == null ? -1 : f.getHash().indexOf('.');
if (idx > -1) {
String hash = f.getHash().substring(0, idx);
- if (FileItem.Type.Image == f.getType()) {
+ if (BaseFileItem.Type.Image == f.getType()) {
fileMap.put(f.getHash(), String.format("%s/%s", hash, f.getHash()));
}
f.setHash(hash);
@@ -868,7 +868,7 @@ public class BackupImport {
} while (item1 != null && !"flvrecording".equals(item1.getName()));
if (r.getType() == null) {
- r.setType(isFolder ? FileItem.Type.Folder : FileItem.Type.Recording);
+ r.setType(isFolder ? BaseFileItem.Type.Folder : BaseFileItem.Type.Recording);
}
list.add(r);
item = listNode.getNext();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
index 1308d63..b88e26d 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
@@ -51,7 +51,7 @@ import org.apache.openmeetings.backup.ProgressHolder;
import org.apache.openmeetings.core.ldap.LdapLoginManagement;
import org.apache.openmeetings.core.util.StrongPasswordValidator;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
@@ -347,7 +347,7 @@ public class Admin {
back.cleanup();
}
//Files
- FileExplorerItemDao fileDao = ctx.getBean(FileExplorerItemDao.class);
+ FileItemDao fileDao = ctx.getBean(FileItemDao.class);
CleanupEntityUnit files = CleanupHelper.getFileUnit(fileDao);
restSize -= files.getSizeTotal();
report.append("\t\tfiles: ").append(files.getHumanTotal()).append("\n");
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
index e30df24..4897bb7 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/CleanupHelper.java
@@ -27,10 +27,10 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.commons.io.FileUtils;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.util.OmFileHelper;
@@ -71,13 +71,13 @@ public class CleanupHelper {
return new CleanupUnit(OmFileHelper.getUploadBackupDir());
}
- public static CleanupEntityUnit getFileUnit(final FileExplorerItemDao fileDao) {
+ public static CleanupEntityUnit getFileUnit(final FileItemDao fileDao) {
File parent = OmFileHelper.getUploadFilesDir();
List<File> invalid = new ArrayList<>();
List<File> deleted = new ArrayList<>();
int missing = 0;
for (File f : list(parent, null)) {
- FileExplorerItem item = fileDao.getByHash(f.getName()); // TODO probable extension should be stripped
+ FileItem item = fileDao.getByHash(f.getName()); // TODO probable extension should be stripped
if (item == null) {
invalid.add(f);
} else if (item.isDeleted()) {
@@ -85,7 +85,7 @@ public class CleanupHelper {
}
}
//TODO WML_DIR should also be checked
- for (FileExplorerItem item : fileDao.get()) {
+ for (FileItem item : fileDao.get()) {
if (!item.isDeleted() && item.getHash() != null && !new File(parent, item.getHash()).exists()) {
missing++;
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.html
index f98fa41..c05f498 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.html
@@ -19,18 +19,6 @@
-->
<html xmlns:wicket="http://wicket.apache.org">
-<wicket:head>
- <script type="text/javascript">
- function adminPanelInit() {
- if (typeof extAdminPanelInit === 'function') {
- extAdminPanelInit();
- }
- var h = $(window).height() - 5;
- $('#adminForm').height(h - $('#adminForm').position().top);
- $('#adminTable').height(h - $('#adminTable').position().top);
- }
- </script>
-</wicket:head>
<wicket:panel>
<div class="adminPanel">
<wicket:child/>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java
index 5686bd9..264af05 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminPanel.java
@@ -21,10 +21,16 @@ package org.apache.openmeetings.web.admin;
import org.apache.openmeetings.web.common.BasePanel;
import org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
+import org.apache.wicket.markup.head.IHeaderResponse;
+import org.apache.wicket.markup.head.JavaScriptHeaderItem;
+import org.apache.wicket.markup.head.PriorityHeaderItem;
+import org.apache.wicket.request.resource.JavaScriptResourceReference;
@AuthorizeInstantiation("Admin")
public abstract class AdminPanel extends BasePanel {
private static final long serialVersionUID = 1L;
+ private static final JavaScriptResourceReference ADMIN_SCRIPT = new JavaScriptResourceReference(AdminPanel.class, "admin.js");
+
protected final static String BASE_ROW_CLASS = "ui-widget-content";
protected final static String ROW_CLASS = BASE_ROW_CLASS + " clickable";
@@ -33,6 +39,12 @@ public abstract class AdminPanel extends BasePanel {
}
@Override
+ public void renderHead(IHeaderResponse response) {
+ super.renderHead(response);
+ response.render(new PriorityHeaderItem(JavaScriptHeaderItem.forReference(ADMIN_SCRIPT)));
+ }
+
+ @Override
public BasePanel onMenuPanelLoad(IPartialPageRequestHandler handler) {
super.onMenuPanelLoad(handler);
handler.appendJavaScript("adminPanelInit();");
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index f87cf91..156b2df 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -246,6 +246,7 @@ public class RoomForm extends AdminBaseForm<Room> {
return String.format("\"%s %s\" <%s>", choice.getFirstname(), choice.getLastname(), a == null ? "" : a.getEmail());
}
});
+ moderatorChoice.getSettings().setCloseOnSelect(true);
add(moderatorChoice.add(new AjaxFormComponentUpdatingBehavior("change") {
private static final long serialVersionUID = 1L;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
index d8d1473..a424408 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
@@ -140,6 +140,15 @@
</div>
</fieldset>
+ <!-- Room files -->
+ <fieldset class="ui-widget-content">
+ <legend class="ui-widget-header"><wicket:message key="245" /></legend>
+ <div class="formelement">
+ <label ><wicket:message key="245" /></label>
+ <div class="om-select2"><select class="input" ></select></div>
+ </div>
+ </fieldset>
+
<!-- Users in this Room -->
<fieldset class="ui-widget-content">
<legend class="ui-widget-header"><wicket:message key="587" /></legend>
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
index a0a2ec0..362d8e9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
@@ -24,7 +24,7 @@ import java.util.ArrayList;
import java.util.List;
import org.apache.openmeetings.db.dao.file.FileItemLogDao;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.file.FileItemLog;
import org.apache.openmeetings.web.app.Application;
import org.apache.wicket.AttributeModifier;
@@ -39,7 +39,7 @@ import org.apache.wicket.model.Model;
import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-public class ConvertingErrorsDialog extends AbstractDialog<FileItem> {
+public class ConvertingErrorsDialog extends AbstractDialog<BaseFileItem> {
private static final long serialVersionUID = 1L;
private final WebMarkupContainer container = new WebMarkupContainer("container");
private final Label message = new Label("message", Model.of((String)null));
@@ -72,22 +72,22 @@ public class ConvertingErrorsDialog extends AbstractDialog<FileItem> {
return true;
}
- public ConvertingErrorsDialog(String id, IModel<FileItem> model) {
+ public ConvertingErrorsDialog(String id, IModel<BaseFileItem> model) {
super(id, Application.getString(887), model);
add(container.add(message.setVisible(false), logView.setVisible(false)).setOutputMarkupId(true));
}
@Override
protected void onOpen(IPartialPageRequestHandler handler) {
- FileItem f = getModelObject();
- setTitle(handler, Model.of(getString(f.getType() == FileItem.Type.Recording ? "887" : "convert.errors.file")));
+ BaseFileItem f = getModelObject();
+ setTitle(handler, Model.of(getString(f.getType() == BaseFileItem.Type.Recording ? "887" : "convert.errors.file")));
List<FileItemLog> logs = getBean(FileItemLogDao.class).get(f);
if (f.getHash() == null) {
message.setVisible(true);
message.setDefaultModelObject(Application.getString(888));
} else if (!f.exists()) {
message.setVisible(true);
- message.setDefaultModelObject(getString(f.getType() == FileItem.Type.Recording ? "1595" : "convert.errors.file.missing"));
+ message.setDefaultModelObject(getString(f.getType() == BaseFileItem.Type.Recording ? "1595" : "convert.errors.file.missing"));
} else {
message.setVisible(false);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/DownloadMenuItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/DownloadMenuItem.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/DownloadMenuItem.java
index 7c1f33b..d431c8c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/DownloadMenuItem.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/DownloadMenuItem.java
@@ -27,8 +27,8 @@ import java.io.FileFilter;
import java.util.HashSet;
import java.util.Set;
-import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.util.OmFileHelper;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -57,7 +57,7 @@ public class DownloadMenuItem extends MenuItem {
@Override
public void onClick(AjaxRequestTarget target) {
- FileItem fi = tree.getLastSelected();
+ BaseFileItem fi = tree.getLastSelected();
File f = fi.getFile(ext);
if (f != null && f.exists()) {
if (ext == null && (Type.Image == fi.getType() || Type.Presentation == fi.getType())) {
@@ -72,10 +72,10 @@ public class DownloadMenuItem extends MenuItem {
}
private static class OriginalFilter implements FileFilter {
- final FileItem fi;
+ final BaseFileItem fi;
Set<String> exclusions = new HashSet<>();
- OriginalFilter(FileItem fi) {
+ OriginalFilter(BaseFileItem fi) {
this.fi = fi;
exclusions.add(EXTENSION_JPG);
if (Type.Presentation == fi.getType()) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
index e018f90..1db38f4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemPanel.java
@@ -21,7 +21,7 @@ package org.apache.openmeetings.web.common.tree;
import static org.apache.openmeetings.web.app.Application.getBean;
import org.apache.openmeetings.db.dao.file.FileItemLogDao;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.record.Recording.Status;
import org.apache.wicket.ajax.AjaxEventBehavior;
@@ -33,12 +33,12 @@ public class FileItemPanel extends FolderPanel {
private static final long serialVersionUID = 1L;
private final WebMarkupContainer errors = new WebMarkupContainer("errors");
- public FileItemPanel(String id, final IModel<? extends FileItem> model, final FileTreePanel fileTreePanel) {
+ public FileItemPanel(String id, final IModel<? extends BaseFileItem> model, final FileTreePanel fileTreePanel) {
super(id, model, fileTreePanel);
- FileItem f = model.getObject();
+ BaseFileItem f = model.getObject();
long errorCount = getBean(FileItemLogDao.class).countErrors(f);
boolean visible = errorCount != 0;
- if (FileItem.Type.Recording == f.getType()) {
+ if (BaseFileItem.Type.Recording == f.getType()) {
Recording r = (Recording)f;
visible |= (Status.RECORDING != r.getStatus() && Status.CONVERTING != r.getStatus() && !f.exists());
} else {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemTree.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemTree.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemTree.java
index f416316..c927df4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemTree.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileItemTree.java
@@ -20,8 +20,8 @@ package org.apache.openmeetings.web.common.tree;
import java.util.Optional;
-import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.record.Recording.Status;
import org.apache.wicket.Component;
@@ -39,7 +39,7 @@ import org.apache.wicket.util.string.Strings;
import com.github.openjson.JSONObject;
-public class FileItemTree extends DefaultNestedTree<FileItem> {
+public class FileItemTree extends DefaultNestedTree<BaseFileItem> {
private static final long serialVersionUID = 1L;
private final static String CSS_CLASS_FILE = "file ";
private final static String PARAM_MOD = "mod";
@@ -47,13 +47,13 @@ public class FileItemTree extends DefaultNestedTree<FileItem> {
private final static String PARAM_CTRL = "c";
final FileTreePanel treePanel;
- public FileItemTree(String id, FileTreePanel treePanel, ITreeProvider<FileItem> tp) {
+ public FileItemTree(String id, FileTreePanel treePanel, ITreeProvider<BaseFileItem> tp) {
super(id, tp);
this.treePanel = treePanel;
setItemReuseStrategy(new ReuseIfModelsEqualStrategy());
}
- private void onClick(AjaxRequestTarget target, FileItem f) {
+ private void onClick(AjaxRequestTarget target, BaseFileItem f) {
String mod = getRequest().getRequestParameters().getParameterValue(PARAM_MOD).toOptionalString();
boolean shift = false, ctrl = false;
if (!Strings.isEmpty(mod)) {
@@ -83,17 +83,17 @@ public class FileItemTree extends DefaultNestedTree<FileItem> {
getModelObject().clear();
modelChanged();
getProvider().refreshRoots(all);
- replace(newSubtree("subtree", Model.of((FileItem)null)));
+ replace(newSubtree("subtree", Model.of((BaseFileItem)null)));
}
@Override
- protected Component newContentComponent(String id, IModel<FileItem> node) {
- return new Folder<FileItem>(id, this, node) {
+ protected Component newContentComponent(String id, IModel<BaseFileItem> node) {
+ return new Folder<BaseFileItem>(id, this, node) {
private static final long serialVersionUID = 1L;
@Override
- protected Component newLabelComponent(String id, final IModel<FileItem> lm) {
- FileItem r = lm.getObject();
+ protected Component newLabelComponent(String id, final IModel<BaseFileItem> lm) {
+ BaseFileItem r = lm.getObject();
return Type.Folder == r.getType() || r.getId() == null
? new FolderPanel(id, lm, treePanel)
: new FileItemPanel(id, lm, treePanel);
@@ -115,8 +115,8 @@ public class FileItemTree extends DefaultNestedTree<FileItem> {
}
@Override
- protected MarkupContainer newLinkComponent(String id, IModel<FileItem> model) {
- final FileItem f = getModelObject();
+ protected MarkupContainer newLinkComponent(String id, IModel<BaseFileItem> model) {
+ final BaseFileItem f = getModelObject();
return new AjaxLink<Void>(id) {
private static final long serialVersionUID = 1L;
@@ -141,7 +141,7 @@ public class FileItemTree extends DefaultNestedTree<FileItem> {
}
@Override
- protected String getOtherStyleClass(FileItem r) {
+ protected String getOtherStyleClass(BaseFileItem r) {
return getItemStyle(r, false);
}
@@ -161,13 +161,13 @@ public class FileItemTree extends DefaultNestedTree<FileItem> {
}
@Override
- protected IModel<String> newLabelModel(IModel<FileItem> model) {
+ protected IModel<String> newLabelModel(IModel<BaseFileItem> model) {
return Model.of(model.getObject().getName());
}
};
}
- private static String getItemStyle(FileItem f, boolean open) {
+ private static String getItemStyle(BaseFileItem f, boolean open) {
StringBuilder style = new StringBuilder("big om-icon ");
if (f.getId() == null) {
style.append(CSS_CLASS_FILE).append(f.getHash().indexOf("my") > -1 ? "my" : "public");
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
index 60ed81d..b145d77 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FileTreePanel.java
@@ -35,11 +35,11 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.UUID;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.web.common.ConfirmableAjaxBorder;
import org.apache.openmeetings.web.common.ConfirmableAjaxBorder.ConfirmableBorderDialog;
@@ -80,8 +80,8 @@ public abstract class FileTreePanel extends Panel {
private final static String DISABLED_CLASS = " disabled";
final WebMarkupContainer trees = new WebMarkupContainer("tree-container");
private final WebMarkupContainer sizes = new WebMarkupContainer("sizes");
- private FileItem lastSelected = null;
- private Map<String, FileItem> selected = new HashMap<>();
+ private BaseFileItem lastSelected = null;
+ private Map<String, BaseFileItem> selected = new HashMap<>();
File dwnldFile;
final AjaxDownload downloader = new AjaxDownload(new IResource() {
private static final long serialVersionUID = 1L;
@@ -144,7 +144,7 @@ public abstract class FileTreePanel extends Panel {
protected void onInitialize() {
super.onInitialize();
download.setDefaultModelObject(newDownloadMenuList());
- Droppable<FileItem> trashToolbar = new Droppable<FileItem>("trash-toolbar") {
+ Droppable<BaseFileItem> trashToolbar = new Droppable<BaseFileItem>("trash-toolbar") {
private static final long serialVersionUID = 1L;
@Override
@@ -188,8 +188,8 @@ public abstract class FileTreePanel extends Panel {
@Override
public void onDrop(AjaxRequestTarget target, Component component) {
Object o = component.getDefaultModelObject();
- if (o instanceof FileItem) {
- FileItem f = (FileItem)o;
+ if (o instanceof BaseFileItem) {
+ BaseFileItem f = (BaseFileItem)o;
if (isSelected(f)) {
deleteAll(target);
} else {
@@ -244,8 +244,8 @@ public abstract class FileTreePanel extends Panel {
}
private void deleteAll(AjaxRequestTarget target) {
- for (Entry<String, FileItem> e : selected.entrySet()) {
- FileItem f = e.getValue();
+ for (Entry<String, BaseFileItem> e : selected.entrySet()) {
+ BaseFileItem f = e.getValue();
if (!f.isReadOnly()) {
delete(f, target);
}
@@ -254,13 +254,13 @@ public abstract class FileTreePanel extends Panel {
selected.clear();
}
- void delete(FileItem f, IPartialPageRequestHandler handler) {
+ void delete(BaseFileItem f, IPartialPageRequestHandler handler) {
Long id = f.getId();
if (id != null) {
if (f instanceof Recording) {
getBean(RecordingDao.class).delete((Recording)f);
} else {
- getBean(FileExplorerItemDao.class).delete((FileExplorerItem)f);
+ getBean(FileItemDao.class).delete((FileItem)f);
}
}
update(handler);
@@ -286,12 +286,12 @@ public abstract class FileTreePanel extends Panel {
return readOnly;
}
- protected abstract void update(AjaxRequestTarget target, FileItem f);
+ protected abstract void update(AjaxRequestTarget target, BaseFileItem f);
public void createFolder(AjaxRequestTarget target, String name) {
- FileItem p = lastSelected;
+ BaseFileItem p = lastSelected;
boolean isRecording = p instanceof Recording;
- FileItem f = isRecording ? new Recording() : new FileExplorerItem();
+ BaseFileItem f = isRecording ? new Recording() : new FileItem();
f.setName(name);
f.setHash(UUID.randomUUID().toString());
f.setInsertedBy(getUserId());
@@ -305,22 +305,22 @@ public abstract class FileTreePanel extends Panel {
if (isRecording) {
getBean(RecordingDao.class).update((Recording)f);
} else {
- getBean(FileExplorerItemDao.class).update((FileExplorerItem)f);
+ getBean(FileItemDao.class).update((FileItem)f);
}
update(target);
}
public abstract void updateSizes();
- public boolean isSelected(FileItem f) {
+ public boolean isSelected(BaseFileItem f) {
return selected.containsKey(f.getHash());
}
- public Map<String, FileItem> getSelected() {
+ public Map<String, BaseFileItem> getSelected() {
return selected;
}
- public FileItem getLastSelected() {
+ public BaseFileItem getLastSelected() {
return lastSelected;
}
@@ -330,12 +330,12 @@ public abstract class FileTreePanel extends Panel {
}
private void updateSelected(AjaxRequestTarget target) {
- for (Entry<String, FileItem> e : selected.entrySet()) {
+ for (Entry<String, BaseFileItem> e : selected.entrySet()) {
updateNode(target, e.getValue());
}
}
- void updateNode(AjaxRequestTarget target, FileItem fi) {
+ void updateNode(AjaxRequestTarget target, BaseFileItem fi) {
if (fi != null && target != null) {
if (Type.Folder == fi.getType()) {
tree.updateBranch(fi, target);
@@ -345,8 +345,8 @@ public abstract class FileTreePanel extends Panel {
}
}
- private static boolean sameParent(Long roomId, FileItem f1, FileItem f2) {
- if (f1 instanceof Recording && f2 instanceof FileExplorerItem) {
+ private static boolean sameParent(Long roomId, BaseFileItem f1, BaseFileItem f2) {
+ if (f1 instanceof Recording && f2 instanceof FileItem) {
return false;
}
if (f1.getParentId() != null && f1.getParentId().equals(f2.getParentId())) {
@@ -359,18 +359,18 @@ public abstract class FileTreePanel extends Panel {
if (f1.getRoomId() != null && f1.getRoomId().equals(f2.getRoomId())) {
return true;
}
- if (f2 instanceof FileExplorerItem && roomId != null && f1.getRoomId() == null && f2.getRoomId() == null && f1.getOwnerId() == null && f2.getOwnerId() == null) {
+ if (f2 instanceof FileItem && roomId != null && f1.getRoomId() == null && f2.getRoomId() == null && f1.getOwnerId() == null && f2.getOwnerId() == null) {
return true;
}
}
return false;
}
- private static boolean isDownloadable(FileItem f) {
+ private static boolean isDownloadable(BaseFileItem f) {
return !f.isReadOnly() && (f.getType() == Type.Presentation || f.getType() == Type.Image);
}
- public void select(FileItem fi, AjaxRequestTarget target, boolean shift, boolean ctrl) {
+ public void select(BaseFileItem fi, AjaxRequestTarget target, boolean shift, boolean ctrl) {
updateSelected(target); //all previously selected are in update list
if (ctrl) {
if (isSelected(fi)) {
@@ -382,7 +382,7 @@ public abstract class FileTreePanel extends Panel {
} else if (shift && lastSelected != null && !lastSelected.getHash().equals(fi.getHash()) && sameParent(roomId, fi, lastSelected)) {
selected.clear();
String lastHash = null;
- for (FileItem f : tree.getProvider().getByParent(fi, fi.getParentId())) {
+ for (BaseFileItem f : tree.getProvider().getByParent(fi, fi.getParentId())) {
if (lastHash == null) {
if (f.getHash().equals(lastSelected.getHash())) {
lastHash = fi.getHash();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
index 3ee055d..afc7bab 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/FolderPanel.java
@@ -22,11 +22,11 @@ import static org.apache.openmeetings.web.app.Application.getBean;
import java.util.Map.Entry;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.Component;
@@ -49,11 +49,11 @@ public class FolderPanel extends Panel {
protected final MarkupContainer drop;
protected final MarkupContainer drag;
- public FolderPanel(String id, final IModel<? extends FileItem> model, final FileTreePanel treePanel) {
+ public FolderPanel(String id, final IModel<? extends BaseFileItem> model, final FileTreePanel treePanel) {
super(id, model);
- FileItem r = model.getObject();
+ BaseFileItem r = model.getObject();
boolean editable = !treePanel.isReadOnly() && !r.isReadOnly();
- drop = r.getType() == Type.Folder && editable ? new Droppable<FileItem>("drop", Model.of(r)) {
+ drop = r.getType() == Type.Folder && editable ? new Droppable<BaseFileItem>("drop", Model.of(r)) {
private static final long serialVersionUID = 1L;
@Override
@@ -66,9 +66,9 @@ public class FolderPanel extends Panel {
@Override
public void onDrop(AjaxRequestTarget target, Component component) {
Object o = component.getDefaultModelObject();
- if (o instanceof FileItem) {
- FileItem p = (FileItem)drop.getDefaultModelObject();
- FileItem f = (FileItem)o;
+ if (o instanceof BaseFileItem) {
+ BaseFileItem p = (BaseFileItem)drop.getDefaultModelObject();
+ BaseFileItem f = (BaseFileItem)o;
if (treePanel.isSelected(f)) {
moveAll(treePanel, target, p);
} else {
@@ -82,7 +82,7 @@ public class FolderPanel extends Panel {
if (r.getId() == null || treePanel.isReadOnly()) {
drag = new WebMarkupContainer("drag");
} else {
- drag = new Draggable<FileItem>("drag", Model.of(r)) {
+ drag = new Draggable<BaseFileItem>("drag", Model.of(r)) {
private static final long serialVersionUID = 1L;
@Override
@@ -108,12 +108,12 @@ public class FolderPanel extends Panel {
@Override
protected void onSubmit(AjaxRequestTarget target) {
super.onSubmit(target);
- FileItem fi = model.getObject();
+ BaseFileItem fi = model.getObject();
fi.setName(getEditor().getModelObject());
if (fi instanceof Recording) {
getBean(RecordingDao.class).update((Recording)fi);
} else {
- getBean(FileExplorerItemDao.class).update((FileExplorerItem)fi);
+ getBean(FileItemDao.class).update((FileItem)fi);
}
}
};
@@ -122,13 +122,13 @@ public class FolderPanel extends Panel {
add(AttributeModifier.append("title", r.getName()));
}
- private static void moveAll(final FileTreePanel treePanel, AjaxRequestTarget target, FileItem p) {
- for (Entry<String, FileItem> e : treePanel.getSelected().entrySet()) {
+ private static void moveAll(final FileTreePanel treePanel, AjaxRequestTarget target, BaseFileItem p) {
+ for (Entry<String, BaseFileItem> e : treePanel.getSelected().entrySet()) {
move(treePanel, target, p, e.getValue());
}
}
- private static void move(final FileTreePanel treePanel, AjaxRequestTarget target, FileItem p, FileItem f) {
+ private static void move(final FileTreePanel treePanel, AjaxRequestTarget target, BaseFileItem p, BaseFileItem f) {
Long pid = p.getId();
//FIXME parent should not be moved to child !!!!!!!
if (pid != null && pid.equals(f.getId())) {
@@ -141,7 +141,7 @@ public class FolderPanel extends Panel {
if (f instanceof Recording) {
getBean(RecordingDao.class).update((Recording)f);
} else {
- getBean(FileExplorerItemDao.class).update((FileExplorerItem)f);
+ getBean(FileItemDao.class).update((FileItem)f);
}
treePanel.updateNode(target, f);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
index 4fe46e0..5082694 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/OmTreeProvider.java
@@ -28,12 +28,12 @@ import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.user.Group;
import org.apache.openmeetings.db.entity.user.GroupUser;
@@ -42,7 +42,7 @@ import org.apache.wicket.extensions.markup.html.repeater.tree.ITreeProvider;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
-public class OmTreeProvider implements ITreeProvider<FileItem> {
+public class OmTreeProvider implements ITreeProvider<BaseFileItem> {
private static final long serialVersionUID = 1L;
private static final List<Type> VIDEO_TYPES = Arrays.asList(Type.Folder, Type.Video);
public static String RECORDINGS_MY = "recordings-my";
@@ -52,7 +52,7 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
public static String FILES_ROOM = "files-room";
public static String FILES_GROUP = "files-group-%s";
private final Long roomId;
- private final List<FileItem> roots = new ArrayList<>();
+ private final List<BaseFileItem> roots = new ArrayList<>();
private final String PUBLIC, GROUP_FILE, GROUP_REC;
public OmTreeProvider(Long roomId) {
@@ -64,27 +64,27 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
}
public void refreshRoots(boolean all) {
- List<FileItem> fRoot = new ArrayList<>(), rRoot = new ArrayList<>();
+ List<BaseFileItem> fRoot = new ArrayList<>(), rRoot = new ArrayList<>();
if (all) {
if (roomId != null) {
- FileItem r = createRoot(Application.getString(706), FILES_MY, false);
+ BaseFileItem r = createRoot(Application.getString(706), FILES_MY, false);
r.setOwnerId(getUserId());
fRoot.add(r);
}
}
if (roomId != null) {
- FileItem r = createRoot(Application.getString(707), FILES_ROOM, false);
+ BaseFileItem r = createRoot(Application.getString(707), FILES_ROOM, false);
r.setRoomId(roomId);
fRoot.add(r);
}
if (all) {
{
- FileItem r = createRoot(Application.getString(860), RECORDINGS_MY, true);
+ BaseFileItem r = createRoot(Application.getString(860), RECORDINGS_MY, true);
r.setOwnerId(getUserId());
rRoot.add(r);
}
{
- FileItem r = createRoot(PUBLIC, RECORDINGS_PUBLIC, true);
+ BaseFileItem r = createRoot(PUBLIC, RECORDINGS_PUBLIC, true);
rRoot.add(r);
}
}
@@ -92,12 +92,12 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
Group g = gu.getGroup();
boolean readOnly = g.isRestricted() && !hasAdminLevel(getRights()) && !gu.isModerator();
if (all) {
- FileItem r = createRoot(String.format("%s (%s)", GROUP_REC, g.getName()), String.format(RECORDINGS_GROUP, g.getId()), true);
+ BaseFileItem r = createRoot(String.format("%s (%s)", GROUP_REC, g.getName()), String.format(RECORDINGS_GROUP, g.getId()), true);
r.setReadOnly(readOnly);
r.setGroupId(g.getId());
rRoot.add(r);
}
- FileItem r = createRoot(String.format("%s (%s)", GROUP_FILE, g.getName()), String.format(FILES_GROUP, g.getId()), false);
+ BaseFileItem r = createRoot(String.format("%s (%s)", GROUP_FILE, g.getName()), String.format(FILES_GROUP, g.getId()), false);
r.setGroupId(g.getId());
//group videos are read-only in recordings tree
r.setReadOnly(roomId == null || readOnly);
@@ -113,25 +113,25 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
}
}
- static FileItem createRoot(String name, String hash, boolean rec) {
- FileItem f = rec ? new Recording() : new FileExplorerItem();
+ static BaseFileItem createRoot(String name, String hash, boolean rec) {
+ BaseFileItem f = rec ? new Recording() : new FileItem();
f.setType(Type.Folder);
f.setName(name);
f.setHash(hash);
return f;
}
- public FileItem getRoot() {
+ public BaseFileItem getRoot() {
return roots.get(0);
}
@Override
- public Iterator<FileItem> getRoots() {
+ public Iterator<BaseFileItem> getRoots() {
return roots.iterator();
}
- public List<FileItem> getByParent(FileItem node, Long id) {
- List<FileItem> list = new ArrayList<>();
+ public List<BaseFileItem> getByParent(BaseFileItem node, Long id) {
+ List<BaseFileItem> list = new ArrayList<>();
if (node instanceof Recording) {
Recording rec = (Recording)node;
RecordingDao dao = getBean(RecordingDao.class);
@@ -147,8 +147,8 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
}
list.addAll(_list);
} else {
- FileExplorerItemDao dao = getBean(FileExplorerItemDao.class);
- List<FileExplorerItem> _list;
+ FileItemDao dao = getBean(FileItemDao.class);
+ List<FileItem> _list;
if (id == null) {
if (node.getRoomId() != null) {
_list = dao.getByRoom(node.getRoomId());
@@ -163,7 +163,7 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
list.addAll(_list);
}
if (node.isReadOnly()) {
- for (FileItem f : list) {
+ for (BaseFileItem f : list) {
f.setReadOnly(true);
}
}
@@ -171,17 +171,17 @@ public class OmTreeProvider implements ITreeProvider<FileItem> {
}
@Override
- public Iterator<FileItem> getChildren(FileItem node) {
+ public Iterator<BaseFileItem> getChildren(BaseFileItem node) {
return getByParent(node, node.getId()).iterator();
}
@Override
- public boolean hasChildren(FileItem node) {
+ public boolean hasChildren(BaseFileItem node) {
return node.getId() == null || Type.Folder == node.getType();
}
@Override
- public IModel<FileItem> model(FileItem object) {
+ public IModel<BaseFileItem> model(BaseFileItem object) {
// TODO LDM should be used
return Model.of(object);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomFileResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomFileResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomFileResourceReference.java
index 2d6831f..65a0169 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomFileResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomFileResourceReference.java
@@ -22,7 +22,7 @@ import static org.apache.openmeetings.util.OmFileHelper.getFileExt;
import java.io.File;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.wicket.request.resource.IResource.Attributes;
public class RoomFileResourceReference extends RoomResourceReference {
@@ -33,17 +33,17 @@ public class RoomFileResourceReference extends RoomResourceReference {
}
@Override
- protected String getMimeType(FileExplorerItem r) {
+ protected String getMimeType(FileItem r) {
return "application/octet-stream";
}
@Override
- protected String getFileName(FileExplorerItem r) {
+ protected String getFileName(FileItem r) {
return r.getName();
}
@Override
- protected File getFile(FileExplorerItem r, Attributes attr) {
+ protected File getFile(FileItem r, Attributes attr) {
return getFile(r, getFileExt(r.getName()));
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 83bb862..5689ba3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -47,7 +47,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.basic.Client;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Right;
@@ -177,7 +177,7 @@ public class RoomPanel extends BasePanel {
room.add(menu = new RoomMenuPanel("menu", this));
room.add(AttributeModifier.append("data-room-id", r.getId()));
- Droppable<FileItem> wbArea = new Droppable<FileItem>("wb-area") {
+ Droppable<BaseFileItem> wbArea = new Droppable<BaseFileItem>("wb-area") {
private static final long serialVersionUID = 1L;
@Override
@@ -190,10 +190,10 @@ public class RoomPanel extends BasePanel {
@Override
public void onDrop(AjaxRequestTarget target, Component component) {
Object o = component.getDefaultModelObject();
- if (activeWbId > -1 && o instanceof FileItem) {
- FileItem f = (FileItem)o;
+ if (activeWbId > -1 && o instanceof BaseFileItem) {
+ BaseFileItem f = (BaseFileItem)o;
if (sidebar.getFilesPanel().isSelected(f)) {
- for (Entry<String, FileItem> e : sidebar.getFilesPanel().getSelected().entrySet()) {
+ for (Entry<String, BaseFileItem> e : sidebar.getFilesPanel().getSelected().entrySet()) {
sendFileToWb(e.getValue(), false);
}
} else {
@@ -646,9 +646,9 @@ public class RoomPanel extends BasePanel {
return publishingUser;
}
- public void sendFileToWb(FileItem fi, boolean clean) {
- if (activeWbId > -1 && fi.getId() != null && FileItem.Type.Folder != fi.getType()) {
- if (FileItem.Type.WmlFile == fi.getType()) {
+ public void sendFileToWb(BaseFileItem fi, boolean clean) {
+ if (activeWbId > -1 && fi.getId() != null && BaseFileItem.Type.Folder != fi.getType()) {
+ if (BaseFileItem.Type.WmlFile == fi.getType()) {
getBean(ConferenceLibrary.class).sendToWhiteboard(getClient().getUid(), activeWbId, fi);
} else {
String url = null;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPdfResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPdfResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPdfResourceReference.java
index 36fba0f..705ed08 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPdfResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPdfResourceReference.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.room;
import java.io.File;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.wicket.request.resource.IResource.Attributes;
public class RoomPdfResourceReference extends RoomResourceReference {
@@ -31,17 +31,17 @@ public class RoomPdfResourceReference extends RoomResourceReference {
}
@Override
- protected String getMimeType(FileExplorerItem r) {
+ protected String getMimeType(FileItem r) {
return "application/pdf";
}
@Override
- protected String getFileName(FileExplorerItem r) {
+ protected String getFileName(FileItem r) {
return r.getName();
}
@Override
- protected File getFile(FileExplorerItem r, Attributes attr) {
+ protected File getFile(FileItem r, Attributes attr) {
return getFile(r, "pdf");
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
index 4df920d..057fce4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomResourceReference.java
@@ -32,21 +32,21 @@ import java.util.Map.Entry;
import org.apache.directory.api.util.Strings;
import org.apache.openmeetings.core.data.whiteboard.WhiteboardCache;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.user.GroupUserDao;
import org.apache.openmeetings.db.dto.room.Whiteboard;
import org.apache.openmeetings.db.dto.room.Whiteboards;
import org.apache.openmeetings.db.entity.basic.Client;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.util.FileItemResourceReference;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.request.resource.IResource.Attributes;
import org.apache.wicket.util.string.StringValue;
-public class RoomResourceReference extends FileItemResourceReference<FileExplorerItem> {
+public class RoomResourceReference extends FileItemResourceReference<FileItem> {
private static final long serialVersionUID = 1L;
public static final String DEFAULT_NAME = "wb-room-file";
private boolean preview = false;
@@ -60,7 +60,7 @@ public class RoomResourceReference extends FileItemResourceReference<FileExplore
}
@Override
- protected String getMimeType(FileExplorerItem r) {
+ protected String getMimeType(FileItem r) {
String mime = null;
switch (r.getType()) {
case WmlFile:
@@ -82,7 +82,7 @@ public class RoomResourceReference extends FileItemResourceReference<FileExplore
}
@Override
- protected FileExplorerItem getFileItem(Attributes attributes) {
+ protected FileItem getFileItem(Attributes attributes) {
PageParameters params = attributes.getParameters();
StringValue _id = params.get("id");
StringValue _preview = params.get("preview");
@@ -99,7 +99,7 @@ public class RoomResourceReference extends FileItemResourceReference<FileExplore
if (id == null || !ws.isSignedIn() || c == null) {
return null;
}
- FileExplorerItem f = getBean(FileExplorerItemDao.class).get(id);
+ FileItem f = getBean(FileItemDao.class).get(id);
String ruid = params.get("ruid").toString();
Whiteboards wbs = getBean(WhiteboardCache.class).get(c.getRoomId());
if (!Strings.isEmpty(ruid) && ruid.equals(wbs.getUid())) {
@@ -115,22 +115,22 @@ public class RoomResourceReference extends FileItemResourceReference<FileExplore
return null;
}
- protected File getFile(FileExplorerItem f, String ext) {
+ protected File getFile(FileItem f, String ext) {
File file = f.getFile(ext);
if (file == null || !file.exists()) {
file = new File(new File(getOmHome(), "default"), String.format("deleted.%s"
- , FileItem.Type.Image == f.getType() ? EXTENSION_JPG : EXTENSION_SWF));
+ , BaseFileItem.Type.Image == f.getType() ? EXTENSION_JPG : EXTENSION_SWF));
}
return file;
}
@Override
- protected File getFile(FileExplorerItem f, Attributes attr) {
+ protected File getFile(FileItem f, Attributes attr) {
return getFile(f, Type.Video == f.getType() && preview ? EXTENSION_JPG : null);
}
@Override
- protected String getFileName(FileExplorerItem f) {
+ protected String getFileName(FileItem f) {
return f.getFileName(preview ? EXTENSION_JPG : null);
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
index d215d71..33c5af0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomFilePanel.java
@@ -22,10 +22,10 @@ import static org.apache.openmeetings.util.OmFileHelper.getHumanSize;
import static org.apache.openmeetings.web.app.Application.getBean;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
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.file.BaseFileItem;
import org.apache.openmeetings.web.common.NameDialog;
import org.apache.openmeetings.web.common.ConfirmableAjaxBorder.ConfirmableBorderDialog;
import org.apache.openmeetings.web.common.tree.FileTreePanel;
@@ -45,7 +45,7 @@ public class RoomFilePanel extends FileTreePanel {
@Override
public void updateSizes() {
- FileExplorerItemDao dao = getBean(FileExplorerItemDao.class);
+ FileItemDao dao = getBean(FileItemDao.class);
RecordingContainerData sizeData = getBean(RecordingDao.class).getContainerData(getUserId());
long userSize = dao.getOwnSize(getUserId());
long roomSize = dao.getRoomSize(room.getRoom().getId());
@@ -58,7 +58,7 @@ public class RoomFilePanel extends FileTreePanel {
}
@Override
- protected void update(AjaxRequestTarget target, FileItem f) {
+ protected void update(AjaxRequestTarget target, BaseFileItem f) {
}
@Override
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
index 67d00d6..d911d8a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
@@ -29,7 +29,7 @@ import java.util.Map.Entry;
import org.apache.openmeetings.core.data.file.FileProcessor;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.dao.file.FileItemLogDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.util.StoredFile;
import org.apache.openmeetings.util.process.ConverterProcessResult;
@@ -183,18 +183,18 @@ public class UploadDialog extends AbstractFormDialog<String> {
if (ful != null) {
boolean clean = cleanWb.getModelObject();
for (FileUpload fu : ful) {
- FileExplorerItem f = new FileExplorerItem();
+ FileItem f = new FileItem();
f.setSize(fu.getSize());
f.setName(fu.getClientFileName());
- FileItem parent = roomFiles.getLastSelected();
- if (parent == null || !(parent instanceof FileExplorerItem)) {
+ BaseFileItem parent = roomFiles.getLastSelected();
+ if (parent == null || !(parent instanceof FileItem)) {
f.setOwnerId(getUserId());
} else {
f.setRoomId(parent.getRoomId());
f.setOwnerId(parent.getOwnerId());
f.setGroupId(parent.getGroupId());
if (parent.getId() != null) {
- f.setParentId(FileItem.Type.Folder == parent.getType() ? parent.getId() : parent.getParentId());
+ f.setParentId(BaseFileItem.Type.Folder == parent.getType() ? parent.getId() : parent.getParentId());
}
}
f.setInsertedBy(getUserId());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
index 4ebeed8..c79ac0b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
@@ -30,7 +30,7 @@ import static org.apache.openmeetings.web.app.Application.getBean;
import org.apache.openmeetings.cli.CleanupEntityUnit;
import org.apache.openmeetings.cli.CleanupUnit;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -111,7 +111,7 @@ public class AdminCleanupInfoDialog extends AbstractDialog<String> {
profile.setDefaultModelObject(getProfileUnit(getBean(UserDao.class)));
imp.setDefaultModelObject(getImportUnit());
backup.setDefaultModelObject(getBackupUnit());
- files.setDefaultModelObject(getFileUnit(getBean(FileExplorerItemDao.class)));
+ files.setDefaultModelObject(getFileUnit(getBean(FileItemDao.class)));
streamsSize.setDefaultModelObject(getHumanSize(getStreamsDir()));
fin.setDefaultModelObject(getRecUnit(getBean(RecordingDao.class)));
target.add(container);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingResourceReference.java
index 763d705..1dab584 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingResourceReference.java
@@ -36,7 +36,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.dto.room.Whiteboard;
import org.apache.openmeetings.db.dto.room.Whiteboards;
import org.apache.openmeetings.db.entity.basic.Client;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.web.app.WebSession;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
index 4026398..3a351b9 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/RecordingsPanel.java
@@ -24,7 +24,7 @@ import static org.apache.openmeetings.web.app.WebSession.getUserId;
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.file.BaseFileItem;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.common.NameDialog;
import org.apache.openmeetings.web.common.UserPanel;
@@ -60,7 +60,7 @@ public class RecordingsPanel extends UserPanel {
}
@Override
- protected void update(AjaxRequestTarget target, FileItem f) {
+ protected void update(AjaxRequestTarget target, BaseFileItem f) {
video.update(target, f);
info.update(target, f);
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
index 76fd174..387f11d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoInfo.java
@@ -34,7 +34,7 @@ import org.apache.openmeetings.core.converter.InterviewConverter;
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.file.BaseFileItem;
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;
@@ -132,7 +132,7 @@ public class VideoInfo extends Panel {
update(null, r);
}
- public VideoInfo update(AjaxRequestTarget target, FileItem _r) {
+ public VideoInfo update(AjaxRequestTarget target, BaseFileItem _r) {
boolean reConvEnabled = false;
boolean exists = false;
if (_r instanceof Recording) {
@@ -198,7 +198,7 @@ public class VideoInfo extends Panel {
@Override
public boolean isEnabled() {
- FileItem r = rm.getObject();
+ BaseFileItem r = rm.getObject();
return r != null && r.exists(EXTENSION_MP4) && !r.isReadOnly();
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
index 5708ef5..6c3538d 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
@@ -20,7 +20,7 @@ package org.apache.openmeetings.web.user.record;
import static org.apache.openmeetings.util.OmFileHelper.MP4_MIME_TYPE;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.web.common.MainPanel;
import org.apache.openmeetings.web.room.RoomResourceReference;
@@ -67,7 +67,7 @@ public class VideoPlayer extends Panel {
update(null, null);
}
- public VideoPlayer update(AjaxRequestTarget target, FileItem r) {
+ public VideoPlayer update(AjaxRequestTarget target, BaseFileItem r) {
boolean videoExists = r != null && r.exists();
if (videoExists) {
PageParameters pp = new PageParameters();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
index 680159d..19a061f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/FileItemResourceReference.java
@@ -26,14 +26,14 @@ import java.io.IOException;
import javax.servlet.http.HttpServletResponse;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.wicket.request.resource.IResource;
import org.apache.wicket.request.resource.IResource.Attributes;
import org.apache.wicket.resource.FileSystemResource;
import org.apache.wicket.resource.FileSystemResourceReference;
import org.slf4j.Logger;
-public abstract class FileItemResourceReference<T extends FileItem> extends FileSystemResourceReference {
+public abstract class FileItemResourceReference<T extends BaseFileItem> extends FileSystemResourceReference {
private static final long serialVersionUID = 1L;
private static final Logger log = getLogger(FileItemResourceReference.class, webAppRootKey);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
index 7f8cee6..7fa7321 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/db2_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
index 1c7eee0..20a4fc3 100644
--- a/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
+++ b/openmeetings-web/src/main/webapp/WEB-INF/classes/META-INF/derby_persistence.xml
@@ -24,42 +24,42 @@
version="2.0">
<persistence-unit name="openmeetings" transaction-type="RESOURCE_LOCAL">
<provider>org.apache.openjpa.persistence.PersistenceProviderImpl</provider>
+ <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
<class>org.apache.openmeetings.db.entity.basic.Configuration</class>
<class>org.apache.openmeetings.db.entity.basic.ErrorValue</class>
- <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
<class>org.apache.openmeetings.db.entity.basic.MailMessage</class>
- <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
- <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.calendar.Appointment</class>
<class>org.apache.openmeetings.db.entity.calendar.MeetingMember</class>
<class>org.apache.openmeetings.db.entity.calendar.OmCalendar</class>
- <class>org.apache.openmeetings.db.entity.basic.ChatMessage</class>
- <class>org.apache.openmeetings.db.entity.user.Group</class>
- <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
+ <class>org.apache.openmeetings.db.entity.file.BaseFileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItem</class>
+ <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
+ <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
<class>org.apache.openmeetings.db.entity.record.Recording</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaData</class>
<class>org.apache.openmeetings.db.entity.record.RecordingMetaDelta</class>
<class>org.apache.openmeetings.db.entity.room.Invitation</class>
- <class>org.apache.openmeetings.db.entity.log.ConferenceLog</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
- <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
- <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
<class>org.apache.openmeetings.db.entity.room.Room</class>
- <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
<class>org.apache.openmeetings.db.entity.room.RoomFile</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomGroup</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomModerator</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPoll</class>
+ <class>org.apache.openmeetings.db.entity.room.RoomPollAnswer</class>
<class>org.apache.openmeetings.db.entity.room.Whiteboard</class>
<class>org.apache.openmeetings.db.entity.room.WhiteboardItem</class>
+ <class>org.apache.openmeetings.db.entity.server.LdapConfig</class>
+ <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
+ <class>org.apache.openmeetings.db.entity.server.Sessiondata</class>
+ <class>org.apache.openmeetings.db.entity.server.SOAPLogin</class>
<class>org.apache.openmeetings.db.entity.user.Address</class>
+ <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
+ <class>org.apache.openmeetings.db.entity.user.Group</class>
+ <class>org.apache.openmeetings.db.entity.user.GroupUser</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>
+ <class>org.apache.openmeetings.db.entity.user.User</class>
<class>org.apache.openmeetings.db.entity.user.UserContact</class>
<class>org.apache.openmeetings.db.entity.user.Userdata</class>
- <class>org.apache.openmeetings.db.entity.user.User</class>
- <class>org.apache.openmeetings.db.entity.file.FileItem</class>
- <class>org.apache.openmeetings.db.entity.file.FileItemLog</class>
- <class>org.apache.openmeetings.db.entity.file.FileExplorerItem</class>
- <class>org.apache.openmeetings.db.entity.user.AsteriskSipUser</class>
- <class>org.apache.openmeetings.db.entity.server.OAuthServer</class>
<exclude-unlisted-classes>false</exclude-unlisted-classes>
<properties>
<property name="openjpa.RuntimeUnenhancedClasses" value="unsupported" />
[04/18] openmeetings git commit: [OPENMEETINGS-1671] DB related part
of work seems to be done
Posted by so...@apache.org.
[OPENMEETINGS-1671] DB related part of work seems to be done
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/7b5cd392
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/7b5cd392
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/7b5cd392
Branch: refs/heads/3.3.x
Commit: 7b5cd392ae57443d898cb00bb134e6acfbd6bdc5
Parents: da7a4ff
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 00:16:12 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 00:16:12 2017 +0700
----------------------------------------------------------------------
.../core/converter/DocumentConverter.java | 4 +-
.../core/converter/FlvExplorerConverter.java | 10 +-
.../core/converter/ImageConverter.java | 4 +-
.../core/data/file/FileProcessor.java | 11 +-
.../LoadLibraryPresentationToObject.java | 12 +-
.../core/remote/ConferenceLibrary.java | 12 +-
.../core/remote/RecordingService.java | 2 +-
.../core/remote/ScopeApplicationAdapter.java | 12 +-
.../db/dao/file/FileExplorerItemDao.java | 337 -----------------
.../openmeetings/db/dao/file/FileItemDao.java | 338 ++++++++++++++++++
.../db/dao/file/FileItemLogDao.java | 10 +-
.../db/dto/file/FileExplorerItemDTO.java | 205 -----------
.../db/dto/file/FileExplorerObject.java | 22 +-
.../openmeetings/db/dto/file/FileItemDTO.java | 205 +++++++++++
.../db/dto/file/PresentationObject.java | 24 +-
.../db/entity/file/BaseFileItem.java | 357 +++++++++++++++++++
.../db/entity/file/FileExplorerItem.java | 108 ------
.../openmeetings/db/entity/file/FileItem.java | 343 +++---------------
.../db/entity/file/FileItemLog.java | 2 +-
.../db/entity/record/Recording.java | 35 +-
.../openmeetings/db/entity/room/Room.java | 2 +-
.../openmeetings/db/entity/room/RoomFile.java | 42 ++-
.../conference/whiteboard/dynamicFileName.lzx | 2 +-
.../openmeetings/backup/BackupExport.java | 8 +-
.../openmeetings/backup/BackupImport.java | 38 +-
.../java/org/apache/openmeetings/cli/Admin.java | 4 +-
.../apache/openmeetings/cli/CleanupHelper.java | 10 +-
.../openmeetings/web/admin/AdminPanel.html | 12 -
.../openmeetings/web/admin/AdminPanel.java | 12 +
.../openmeetings/web/admin/rooms/RoomForm.java | 1 +
.../web/admin/rooms/RoomsPanel.html | 9 +
.../web/common/tree/ConvertingErrorsDialog.java | 12 +-
.../web/common/tree/DownloadMenuItem.java | 10 +-
.../web/common/tree/FileItemPanel.java | 8 +-
.../web/common/tree/FileItemTree.java | 30 +-
.../web/common/tree/FileTreePanel.java | 54 +--
.../web/common/tree/FolderPanel.java | 32 +-
.../web/common/tree/OmTreeProvider.java | 48 +--
.../web/room/RoomFileResourceReference.java | 8 +-
.../apache/openmeetings/web/room/RoomPanel.java | 16 +-
.../web/room/RoomPdfResourceReference.java | 8 +-
.../web/room/RoomResourceReference.java | 22 +-
.../web/room/sidebar/RoomFilePanel.java | 8 +-
.../web/room/sidebar/UploadDialog.java | 10 +-
.../dashboard/admin/AdminCleanupInfoDialog.java | 4 +-
.../user/record/RecordingResourceReference.java | 2 +-
.../web/user/record/RecordingsPanel.java | 4 +-
.../openmeetings/web/user/record/VideoInfo.java | 6 +-
.../web/user/record/VideoPlayer.java | 4 +-
.../web/util/FileItemResourceReference.java | 4 +-
.../classes/META-INF/db2_persistence.xml | 34 +-
.../classes/META-INF/derby_persistence.xml | 34 +-
.../classes/META-INF/mssql_persistence.xml | 34 +-
.../classes/META-INF/mysql_persistence.xml | 34 +-
.../classes/META-INF/oracle_persistence.xml | 34 +-
.../classes/META-INF/postgresql_persistence.xml | 34 +-
.../WEB-INF/classes/applicationContext.xml | 2 +-
.../test/webservice/TestFileService.java | 14 +-
.../openmeetings/webservice/FileWebService.java | 58 +--
59 files changed, 1409 insertions(+), 1352 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
index 499d69b..e790b6d 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/DocumentConverter.java
@@ -26,7 +26,7 @@ import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.io.File;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.util.StoredFile;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.apache.openmeetings.util.process.ConverterProcessResultList;
@@ -49,7 +49,7 @@ public class DocumentConverter {
@Autowired
private ImageConverter imageConverter;
- public ConverterProcessResultList convertPDF(FileExplorerItem f, StoredFile sf) throws Exception {
+ public ConverterProcessResultList convertPDF(FileItem f, StoredFile sf) throws Exception {
ConverterProcessResultList result = new ConverterProcessResultList();
boolean fullProcessing = !sf.isPdf();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
index 60ae550..2079be9 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
@@ -29,9 +29,9 @@ import java.nio.file.Path;
import java.util.ArrayList;
import java.util.List;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
+import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.apache.openmeetings.util.process.ProcessHelper;
import org.red5.logging.Red5LoggerFactory;
@@ -43,9 +43,9 @@ public class FlvExplorerConverter extends BaseConverter {
// Spring loaded Beans
@Autowired
- private FileExplorerItemDao fileDao;
+ private FileItemDao fileDao;
- public List<ConverterProcessResult> convertToMP4(FileExplorerItem f, String ext) {
+ public List<ConverterProcessResult> convertToMP4(FileItem f, String ext) {
List<ConverterProcessResult> logs = new ArrayList<>();
try {
File mp4 = f.getFile(EXTENSION_MP4);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
index df62bb2..e9fe235 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/ImageConverter.java
@@ -31,7 +31,7 @@ import java.io.IOException;
import org.apache.commons.io.FileUtils;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.util.OmFileHelper;
import org.apache.openmeetings.util.StoredFile;
@@ -48,7 +48,7 @@ public class ImageConverter extends BaseConverter {
@Autowired
private UserDao userDao;
- public ConverterProcessResultList convertImage(FileItem f, StoredFile sf) throws IOException {
+ public ConverterProcessResultList convertImage(BaseFileItem f, StoredFile sf) throws IOException {
ConverterProcessResultList returnMap = new ConverterProcessResultList();
File jpg = f.getFile(EXTENSION_JPG);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
index 8c4b620..170dbbc 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/data/file/FileProcessor.java
@@ -31,9 +31,9 @@ import java.util.UUID;
import org.apache.openmeetings.core.converter.DocumentConverter;
import org.apache.openmeetings.core.converter.FlvExplorerConverter;
import org.apache.openmeetings.core.converter.ImageConverter;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.util.StoredFile;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.apache.openmeetings.util.process.ConverterProcessResultList;
@@ -48,14 +48,14 @@ public class FileProcessor {
@Autowired
private FlvExplorerConverter flvExplorerConverter;
@Autowired
- private FileExplorerItemDao fileDao;
+ private FileItemDao fileDao;
@Autowired
private ImageConverter imageConverter;
@Autowired
private DocumentConverter generatePDF;
//FIXME TODO this method need to be refactored to throw exceptions
- public ConverterProcessResultList processFile(FileExplorerItem f, InputStream is) throws Exception {
+ public ConverterProcessResultList processFile(FileItem f, InputStream is) throws Exception {
ConverterProcessResultList result = new ConverterProcessResultList();
// Generate a random string to prevent any problems with
// foreign characters and duplicates
@@ -136,6 +136,7 @@ public class FileProcessor {
result.setCompleteName(file.getName());
result.setFileItemId(f.getId());
} catch (Exception e) {
+ log.debug("Error while processing the file", e);
result.addItem("exception", new ConverterProcessResult("Unexpected exception: " + e.getMessage()));
throw e;
} finally {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LoadLibraryPresentationToObject.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LoadLibraryPresentationToObject.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LoadLibraryPresentationToObject.java
index 581d333..89ec1c5 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LoadLibraryPresentationToObject.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/documents/LoadLibraryPresentationToObject.java
@@ -21,7 +21,7 @@ package org.apache.openmeetings.core.documents;
import java.util.Iterator;
import java.util.LinkedList;
-import org.apache.openmeetings.db.dto.file.FileExplorerItemDTO;
+import org.apache.openmeetings.db.dto.file.FileItemDTO;
import org.apache.openmeetings.db.dto.file.PresentationObject;
import org.apache.openmeetings.util.OpenmeetingsVariables;
import org.dom4j.Document;
@@ -81,11 +81,11 @@ public class LoadLibraryPresentationToObject {
}
}
- public FileExplorerItemDTO createListObjectLibraryByFileDocument(Element fileElement){
+ public FileItemDTO createListObjectLibraryByFileDocument(Element fileElement){
try {
log.info("createListObjectLibraryByFileDocument"+fileElement);
- FileExplorerItemDTO fileObject = new FileExplorerItemDTO();
+ FileItemDTO fileObject = new FileItemDTO();
fileObject.setName(fileElement.getText());
//FIXME TODO fileObject.setLastModified(fileElement.attribute("lastmod").getText());
//FIXME TODO fileObject.setSize(fileElement.attribute("size").getText());
@@ -96,15 +96,15 @@ public class LoadLibraryPresentationToObject {
return null;
}
- public LinkedList<FileExplorerItemDTO> createListObjectLibraryByFileDocumentThumbs(Element fileElement){
+ public LinkedList<FileItemDTO> createListObjectLibraryByFileDocumentThumbs(Element fileElement){
try {
- LinkedList<FileExplorerItemDTO> thumbMap = new LinkedList<>();
+ LinkedList<FileItemDTO> thumbMap = new LinkedList<>();
for (Iterator<Element> i = fileElement.elementIterator(); i.hasNext(); ) {
Element thumbElement = i.next();
log.info("createListObjectLibraryByFileDocumentThumbs"+thumbElement);
- FileExplorerItemDTO singleThumb = new FileExplorerItemDTO();
+ FileItemDTO singleThumb = new FileItemDTO();
singleThumb.setName(thumbElement.getName());
//FIXME TODO singleThumb.setFileNamePure(thumbElement.getText());
//FIXME TODO singleThumb.setLastModified(thumbElement.attribute("lastmod").getText());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
index ca77ff9..da8c6c9 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
@@ -29,13 +29,13 @@ import org.apache.openmeetings.core.data.whiteboard.WhiteboardManager;
import org.apache.openmeetings.core.documents.LibraryChartLoader;
import org.apache.openmeetings.core.documents.LibraryDocumentConverter;
import org.apache.openmeetings.core.documents.LibraryWmlLoader;
-import org.apache.openmeetings.db.dao.file.FileExplorerItemDao;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.server.ISessionManager;
import org.apache.openmeetings.db.dao.server.SessiondataDao;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
import org.apache.openmeetings.db.entity.file.FileItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.room.StreamClient;
import org.apache.openmeetings.db.entity.server.Sessiondata;
import org.apache.openmeetings.db.util.AuthLevelUtil;
@@ -61,7 +61,7 @@ public class ConferenceLibrary implements IPendingServiceCallback {
@Autowired
private UserDao userDao;
@Autowired
- private FileExplorerItemDao fileDao;
+ private FileItemDao fileDao;
@Autowired
private WhiteboardManager whiteboardManager;
@Autowired
@@ -92,7 +92,7 @@ public class ConferenceLibrary implements IPendingServiceCallback {
log.debug("saveAsObject" + tObject.size());
- FileExplorerItem file = fileDao.add(fileName, null, null, roomId, sd.getUserId(), Type.WmlFile, "", "");
+ FileItem file = fileDao.add(fileName, null, null, roomId, sd.getUserId(), Type.WmlFile, "", "");
LibraryDocumentConverter.writeToLocalFolder(file.getHash(), tObject);
return file.getId();
@@ -111,7 +111,7 @@ public class ConferenceLibrary implements IPendingServiceCallback {
* @param wbId - id of whiteboard
* @param fi - FileItem of the Wml being loaded
*/
- public void sendToWhiteboard(String uid, Long wbId, FileItem fi) {
+ public void sendToWhiteboard(String uid, Long wbId, BaseFileItem fi) {
StreamClient client = sessionManager.get(uid);
if (client == null) {
log.warn("No client was found to send Wml:: {}", uid);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
index c6ebddc..a7d7985 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/RecordingService.java
@@ -36,7 +36,7 @@ import org.apache.openmeetings.db.dao.record.RecordingMetaDataDao;
import org.apache.openmeetings.db.dao.record.RecordingMetaDeltaDao;
import org.apache.openmeetings.db.dao.server.ISessionManager;
import org.apache.openmeetings.db.dao.user.UserDao;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.record.RecordingMetaData;
import org.apache.openmeetings.db.entity.record.RecordingMetaData.Status;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
----------------------------------------------------------------------
diff --git a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
index 47cc25e..8c28f6c 100644
--- a/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
+++ b/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ScopeApplicationAdapter.java
@@ -63,7 +63,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.dto.room.BrowserStatus;
import org.apache.openmeetings.db.dto.room.RoomStatus;
import org.apache.openmeetings.db.entity.basic.Client;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.RoomElement;
@@ -1125,7 +1125,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
}
}
- private static Point getSize(FileItem fi) {
+ private static Point getSize(BaseFileItem fi) {
Point result = new Point(0, 0);
if (fi.getWidth() != null && fi.getHeight() != null) {
result.x = fi.getWidth();
@@ -1134,7 +1134,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
return result;
}
- private static List<?> getWbObject(FileItem fi, String url) {
+ private static List<?> getWbObject(BaseFileItem fi, String url) {
Point size = getSize(fi);
String type = "n/a";
switch (fi.getType()) {
@@ -1178,7 +1178,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
);
}
- private static List<?> getMp4WbObject(FileItem fi, String url) {
+ private static List<?> getMp4WbObject(BaseFileItem fi, String url) {
Point size = getSize(fi);
return Arrays.asList(
"flv" // 0: 'flv'
@@ -1198,7 +1198,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
);
}
- private static void copyFileToRoom(Long roomId, FileItem f) {
+ private static void copyFileToRoom(Long roomId, BaseFileItem f) {
try {
if (roomId != null && f != null) {
File mp4 = f.getFile(EXTENSION_MP4);
@@ -1215,7 +1215,7 @@ public class ScopeApplicationAdapter extends MultiThreadedApplicationAdapter imp
}
}
- public void sendToWhiteboard(String uid, Long wbId, FileItem fi, String url, boolean clean) {
+ public void sendToWhiteboard(String uid, Long wbId, BaseFileItem fi, String url, boolean clean) {
StreamClient client = sessionManager.get(uid);
List<?> wbObject = new ArrayList<>();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
deleted file mode 100644
index de6c582..0000000
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileExplorerItemDao.java
+++ /dev/null
@@ -1,337 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.db.dao.file;
-
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
-import static org.apache.openmeetings.util.OmFileHelper.thumbImagePrefix;
-import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
-
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-import java.util.UUID;
-
-import javax.persistence.EntityManager;
-import javax.persistence.NoResultException;
-import javax.persistence.PersistenceContext;
-import javax.persistence.TypedQuery;
-
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
-import org.apache.openmeetings.util.OmFileHelper;
-import org.red5.logging.Red5LoggerFactory;
-import org.slf4j.Logger;
-import org.springframework.transaction.annotation.Transactional;
-
-/**
- * @author sebastianwagner
- *
- */
-@Transactional
-public class FileExplorerItemDao {
- private static final Logger log = Red5LoggerFactory.getLogger(FileExplorerItemDao.class, webAppRootKey);
- @PersistenceContext
- private EntityManager em;
-
- public FileExplorerItem add(String fileName, Long parentId, Long ownerId, Long roomId, Long insertedBy,
- Type type, String externalId, String externalType) {
- log.debug(".add(): adding file " + fileName + " roomID: " + roomId);
- try {
- FileExplorerItem fileItem = new FileExplorerItem();
- fileItem.setName(fileName);
- fileItem.setHash(UUID.randomUUID().toString());
- fileItem.setDeleted(false);
- fileItem.setParentId(parentId);
- fileItem.setOwnerId(ownerId);
- fileItem.setRoomId(roomId);
- fileItem.setInserted(new Date());
- fileItem.setInsertedBy(insertedBy);
- fileItem.setType(type);
- fileItem.setUpdated(new Date());
- fileItem.setExternalId(externalId);
- fileItem.setExternalType(externalType);
-
- fileItem = em.merge(fileItem);
-
- log.debug(".add(): file " + fileName + " added as " + fileItem.getId());
- return fileItem;
- } catch (Exception ex2) {
- log.error(".add(): ", ex2);
- }
- return null;
- }
-
- public List<FileExplorerItem> getFileExplorerItemsByRoomAndOwner(Long roomId, Long ownerId) {
- log.debug(".getFileExplorerItemsByRoomAndOwner() started");
- try {
- TypedQuery<FileExplorerItem> query = em.createNamedQuery("getFilesByRoomAndOwner", FileExplorerItem.class);
- query.setParameter("roomId", roomId);
- query.setParameter("ownerId", ownerId);
-
- List<FileExplorerItem> fileExplorerList = query.getResultList();
-
- return fileExplorerList;
- } catch (Exception ex2) {
- log.error("[getFileExplorerItemsByRoomAndOwner]: ", ex2);
- }
- return null;
- }
-
- public List<FileExplorerItem> getByRoom(Long roomId) {
- log.debug("getFileExplorerItemsByRoom roomId :: " + roomId);
- return em.createNamedQuery("getFilesByRoom", FileExplorerItem.class).setParameter("roomId", roomId).getResultList();
- }
-
- public List<FileExplorerItem> getByOwner(Long ownerId) {
- log.debug("getByOwner() started");
- TypedQuery<FileExplorerItem> query = em.createNamedQuery("getFilesByOwner", FileExplorerItem.class);
- query.setParameter("ownerId", ownerId);
-
- return query.getResultList();
- }
-
- public List<FileExplorerItem> getByGroup(Long groupId) {
- log.debug("getByGroup() started");
- return em.createNamedQuery("getFileByGroup", FileExplorerItem.class)
- .setParameter("groupId", groupId)
- .getResultList();
- }
-
- public List<FileExplorerItem> getByGroup(Long groupId, List<Type> filter) {
- if (filter == null) {
- return getByGroup(groupId);
- }
- log.debug("getByGroup() started");
- return em.createNamedQuery("getFileFilteredByGroup", FileExplorerItem.class)
- .setParameter("filter", filter)
- .setParameter("groupId", groupId)
- .getResultList();
- }
-
- public List<FileExplorerItem> getByParent(Long parentId) {
- log.debug("getByParent() started");
- return em.createNamedQuery("getFilesByParent", FileExplorerItem.class)
- .setParameter("parentId", parentId)
- .getResultList();
- }
-
- public List<FileExplorerItem> getByParent(Long parentId, List<Type> filter) {
- if (filter == null) {
- return getByParent(parentId);
- }
- log.debug("getByParent(filter) started");
- return em.createNamedQuery("getFilesFilteredByParent", FileExplorerItem.class)
- .setParameter("filter", filter)
- .setParameter("parentId", parentId)
- .getResultList();
- }
-
- public FileExplorerItem getByHash(String hash) {
- log.debug("getByHash() started");
- FileExplorerItem f = null;
- TypedQuery<FileExplorerItem> query = em.createNamedQuery("getFileByHash", FileExplorerItem.class);
- query.setParameter("hash", hash);
-
- try {
- f = query.getSingleResult();
- } catch (NoResultException ex) {
- //no-op
- }
- return f;
- }
-
- public FileExplorerItem get(Long id) {
- FileExplorerItem f = null;
- if (id != null && id > 0) {
- TypedQuery<FileExplorerItem> query = em.createNamedQuery("getFileById", FileExplorerItem.class)
- .setParameter("id", id);
-
- try {
- f = query.getSingleResult();
- } catch (NoResultException ex) {
- }
- } else {
- log.info("[get] " + "Info: No id given");
- }
- return f;
- }
-
- public FileExplorerItem get(String externalId, String externalType) {
- FileExplorerItem f = null;
- log.debug("get started");
-
- try {
- TypedQuery<FileExplorerItem> query = em.createNamedQuery("getFileExternal", FileExplorerItem.class)
- .setParameter("externalFileId", externalId).setParameter("externalType", externalType);
-
- try {
- f = query.getSingleResult();
- } catch (NoResultException ex) {
- }
-
- } catch (Exception ex2) {
- log.error("[get]: ", ex2);
- }
- return f;
- }
-
- public List<FileExplorerItem> get() {
- log.debug("get started");
-
- return em.createNamedQuery("getAllFiles", FileExplorerItem.class).getResultList();
- }
-
- public void delete(FileExplorerItem f) {
- f.setDeleted(true);
- f.setUpdated(new Date());
-
- update(f);
- }
-
- public void delete(String externalId, String externalType) {
- log.debug("delete started");
-
- delete(get(externalId, externalType));
- }
-
- /**
- * @param id
- * @param name
- */
- public FileExplorerItem rename(Long id, String name) {
- log.debug("rename started");
-
- FileExplorerItem f = get(id);
- if (f == null) {
- return null;
- }
- f.setName(name);
- return update(f);
- }
-
- public FileExplorerItem update(FileExplorerItem f) {
- if (f.getId() == null) {
- f.setInserted(new Date());
- em.persist(f);
- } else {
- f.setUpdated(new Date());
- f = em.merge(f);
- }
- return f;
- }
-
- private void updateChilds(FileExplorerItem f) {
- for (FileExplorerItem child : getByParent(f.getId())) {
- child.setOwnerId(f.getOwnerId());
- child.setRoomId(f.getRoomId());
- update(child);
- if (Type.Folder == f.getType()) {
- updateChilds(child);
- }
- }
- }
-
- /**
- * @param id
- * @param newParentFileExplorerItemId
- * @param isOwner
- */
- public FileExplorerItem move(long id, long parentId, long ownerId, long roomId) {
- log.debug(".move() started");
-
- FileExplorerItem f = get(id);
- if (f == null) {
- return null;
- }
-
- if (parentId < 0) {
- if (parentId == -1) {
- // move to personal Folder
- f.setOwnerId(ownerId);
- f.setRoomId(null);
- } else {
- // move to public room folder
- f.setOwnerId(null);
- f.setRoomId(roomId);
- }
- f.setParentId(null);
- } else {
- f.setParentId(parentId);
- f.setOwnerId(null);
- }
- if (Type.Folder == f.getType()) {
- updateChilds(f);
- }
- return update(f);
- }
-
- public long getOwnSize(Long userId) {
- return getSize(getByOwner(userId));
- }
-
- public long getRoomSize(Long roomId) {
- return getSize(getByRoom(roomId));
- }
-
- public long getSize(List<FileExplorerItem> list) {
- long size = 0;
- for (FileExplorerItem f : list) {
- size += getSize(f);
- }
- return size;
- }
-
- public long getSize(FileExplorerItem f) {
- long size = 0;
- try {
- if (f.exists()) {
- File base = OmFileHelper.getUploadFilesDir();
- if (Type.Image == f.getType()) {
- size += f.getFile().length();
- File thumbFile = new File(base, String.format("%s%s.%s", thumbImagePrefix, f.getHash(), EXTENSION_JPG));
- if (thumbFile.exists()) {
- size += thumbFile.length();
- }
- }
- if (Type.Presentation == f.getType()) {
- File tFolder = new File(base, f.getHash());
-
- if (tFolder.exists()) {
- size += OmFileHelper.getSize(tFolder);
- }
- }
- if (Type.Video == f.getType()) {
- size += f.getFile().length();
- File thumb = f.getFile(EXTENSION_JPG);
- if (thumb.exists()) {
- size += thumb.length();
- }
- }
- }
- if (Type.Folder == f.getType()) {
- for (FileExplorerItem child : getByParent(f.getId())) {
- size += getSize(child);
- }
- }
- } catch (Exception err) {
- log.error("[getSize] ", err);
- }
- return size;
- }
-}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
new file mode 100644
index 0000000..14c8ce9
--- /dev/null
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
@@ -0,0 +1,338 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.db.dao.file;
+
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
+import static org.apache.openmeetings.util.OmFileHelper.thumbImagePrefix;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+
+import java.io.File;
+import java.util.Date;
+import java.util.List;
+import java.util.UUID;
+
+import javax.persistence.EntityManager;
+import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import javax.persistence.TypedQuery;
+
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
+import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.util.OmFileHelper;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+ * @author sebastianwagner
+ *
+ */
+@Transactional
+public class FileItemDao {
+ private static final Logger log = Red5LoggerFactory.getLogger(FileItemDao.class, webAppRootKey);
+ @PersistenceContext
+ private EntityManager em;
+
+ public FileItem add(String fileName, Long parentId, Long ownerId, Long roomId, Long insertedBy,
+ Type type, String externalId, String externalType) {
+ log.debug(".add(): adding file " + fileName + " roomID: " + roomId);
+ try {
+ FileItem fileItem = new FileItem();
+ fileItem.setName(fileName);
+ fileItem.setHash(UUID.randomUUID().toString());
+ fileItem.setDeleted(false);
+ fileItem.setParentId(parentId);
+ fileItem.setOwnerId(ownerId);
+ fileItem.setRoomId(roomId);
+ fileItem.setInserted(new Date());
+ fileItem.setInsertedBy(insertedBy);
+ fileItem.setType(type);
+ fileItem.setUpdated(new Date());
+ fileItem.setExternalId(externalId);
+ fileItem.setExternalType(externalType);
+
+ fileItem = em.merge(fileItem);
+
+ log.debug(".add(): file " + fileName + " added as " + fileItem.getId());
+ return fileItem;
+ } catch (Exception ex2) {
+ log.error(".add(): ", ex2);
+ }
+ return null;
+ }
+
+ public List<FileItem> getByRoomAndOwner(Long roomId, Long ownerId) {
+ log.debug(".getByRoomAndOwner() started");
+ try {
+ TypedQuery<FileItem> query = em.createNamedQuery("getFilesByRoomAndOwner", FileItem.class);
+ query.setParameter("roomId", roomId);
+ query.setParameter("ownerId", ownerId);
+
+ List<FileItem> fileExplorerList = query.getResultList();
+
+ return fileExplorerList;
+ } catch (Exception ex2) {
+ log.error("[getByRoomAndOwner]: ", ex2);
+ }
+ return null;
+ }
+
+ public List<FileItem> getByRoom(Long roomId) {
+ log.debug("getByRoom roomId :: " + roomId);
+ return em.createNamedQuery("getFilesByRoom", FileItem.class).setParameter("roomId", roomId).getResultList();
+ }
+
+ public List<FileItem> getByOwner(Long ownerId) {
+ log.debug("getByOwner() started");
+ TypedQuery<FileItem> query = em.createNamedQuery("getFilesByOwner", FileItem.class);
+ query.setParameter("ownerId", ownerId);
+
+ return query.getResultList();
+ }
+
+ public List<FileItem> getByGroup(Long groupId) {
+ log.debug("getByGroup() started");
+ return em.createNamedQuery("getFileByGroup", FileItem.class)
+ .setParameter("groupId", groupId)
+ .getResultList();
+ }
+
+ public List<FileItem> getByGroup(Long groupId, List<Type> filter) {
+ if (filter == null) {
+ return getByGroup(groupId);
+ }
+ log.debug("getByGroup() started");
+ return em.createNamedQuery("getFileFilteredByGroup", FileItem.class)
+ .setParameter("filter", filter)
+ .setParameter("groupId", groupId)
+ .getResultList();
+ }
+
+ public List<FileItem> getByParent(Long parentId) {
+ log.debug("getByParent() started");
+ return em.createNamedQuery("getFilesByParent", FileItem.class)
+ .setParameter("parentId", parentId)
+ .getResultList();
+ }
+
+ public List<FileItem> getByParent(Long parentId, List<Type> filter) {
+ if (filter == null) {
+ return getByParent(parentId);
+ }
+ log.debug("getByParent(filter) started");
+ return em.createNamedQuery("getFilesFilteredByParent", FileItem.class)
+ .setParameter("filter", filter)
+ .setParameter("parentId", parentId)
+ .getResultList();
+ }
+
+ public FileItem getByHash(String hash) {
+ log.debug("getByHash() started");
+ FileItem f = null;
+ TypedQuery<FileItem> query = em.createNamedQuery("getFileByHash", FileItem.class);
+ query.setParameter("hash", hash);
+
+ try {
+ f = query.getSingleResult();
+ } catch (NoResultException ex) {
+ //no-op
+ }
+ return f;
+ }
+
+ public FileItem get(Long id) {
+ FileItem f = null;
+ if (id != null && id > 0) {
+ TypedQuery<FileItem> query = em.createNamedQuery("getFileById", FileItem.class)
+ .setParameter("id", id);
+
+ try {
+ f = query.getSingleResult();
+ } catch (NoResultException ex) {
+ }
+ } else {
+ log.info("[get] " + "Info: No id given");
+ }
+ return f;
+ }
+
+ public FileItem get(String externalId, String externalType) {
+ FileItem f = null;
+ log.debug("get started");
+
+ try {
+ TypedQuery<FileItem> query = em.createNamedQuery("getFileExternal", FileItem.class)
+ .setParameter("externalFileId", externalId).setParameter("externalType", externalType);
+
+ try {
+ f = query.getSingleResult();
+ } catch (NoResultException ex) {
+ }
+
+ } catch (Exception ex2) {
+ log.error("[get]: ", ex2);
+ }
+ return f;
+ }
+
+ public List<FileItem> get() {
+ log.debug("get started");
+
+ return em.createNamedQuery("getAllFiles", FileItem.class).getResultList();
+ }
+
+ public void delete(FileItem f) {
+ f.setDeleted(true);
+ f.setUpdated(new Date());
+
+ update(f);
+ }
+
+ public void delete(String externalId, String externalType) {
+ log.debug("delete started");
+
+ delete(get(externalId, externalType));
+ }
+
+ /**
+ * @param id
+ * @param name
+ */
+ public FileItem rename(Long id, String name) {
+ log.debug("rename started");
+
+ FileItem f = get(id);
+ if (f == null) {
+ return null;
+ }
+ f.setName(name);
+ return update(f);
+ }
+
+ public FileItem update(FileItem f) {
+ if (f.getId() == null) {
+ f.setInserted(new Date());
+ em.persist(f);
+ } else {
+ f.setUpdated(new Date());
+ f = em.merge(f);
+ }
+ return f;
+ }
+
+ private void updateChilds(FileItem f) {
+ for (FileItem child : getByParent(f.getId())) {
+ child.setOwnerId(f.getOwnerId());
+ child.setRoomId(f.getRoomId());
+ update(child);
+ if (Type.Folder == f.getType()) {
+ updateChilds(child);
+ }
+ }
+ }
+
+ /**
+ * @param id
+ * @param parentId
+ * @param isOwner
+ * @param roomId
+ */
+ public FileItem move(long id, long parentId, long ownerId, long roomId) {
+ log.debug(".move() started");
+
+ FileItem f = get(id);
+ if (f == null) {
+ return null;
+ }
+
+ if (parentId < 0) {
+ if (parentId == -1) {
+ // move to personal Folder
+ f.setOwnerId(ownerId);
+ f.setRoomId(null);
+ } else {
+ // move to public room folder
+ f.setOwnerId(null);
+ f.setRoomId(roomId);
+ }
+ f.setParentId(null);
+ } else {
+ f.setParentId(parentId);
+ f.setOwnerId(null);
+ }
+ if (Type.Folder == f.getType()) {
+ updateChilds(f);
+ }
+ return update(f);
+ }
+
+ public long getOwnSize(Long userId) {
+ return getSize(getByOwner(userId));
+ }
+
+ public long getRoomSize(Long roomId) {
+ return getSize(getByRoom(roomId));
+ }
+
+ public long getSize(List<FileItem> list) {
+ long size = 0;
+ for (FileItem f : list) {
+ size += getSize(f);
+ }
+ return size;
+ }
+
+ public long getSize(FileItem f) {
+ long size = 0;
+ try {
+ if (f.exists()) {
+ File base = OmFileHelper.getUploadFilesDir();
+ if (Type.Image == f.getType()) {
+ size += f.getFile().length();
+ File thumbFile = new File(base, String.format("%s%s.%s", thumbImagePrefix, f.getHash(), EXTENSION_JPG));
+ if (thumbFile.exists()) {
+ size += thumbFile.length();
+ }
+ }
+ if (Type.Presentation == f.getType()) {
+ File tFolder = new File(base, f.getHash());
+
+ if (tFolder.exists()) {
+ size += OmFileHelper.getSize(tFolder);
+ }
+ }
+ if (Type.Video == f.getType()) {
+ size += f.getFile().length();
+ File thumb = f.getFile(EXTENSION_JPG);
+ if (thumb.exists()) {
+ size += thumb.length();
+ }
+ }
+ }
+ if (Type.Folder == f.getType()) {
+ for (FileItem child : getByParent(f.getId())) {
+ size += getSize(child);
+ }
+ }
+ } catch (Exception err) {
+ log.error("[getSize] ", err);
+ }
+ return size;
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
index eb2b225..652e2a3 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemLogDao.java
@@ -26,7 +26,7 @@ import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.file.FileItemLog;
import org.apache.openmeetings.util.process.ConverterProcessResult;
import org.red5.logging.Red5LoggerFactory;
@@ -39,22 +39,22 @@ public class FileItemLogDao {
@PersistenceContext
private EntityManager em;
- public long countErrors(FileItem f) {
+ public long countErrors(BaseFileItem f) {
return em.createNamedQuery("countErrorFileLogsByFile", Long.class).setParameter("fileId", f.getId())
.setParameter("type", f.getType()).getSingleResult();
}
- public List<FileItemLog> get(FileItem f) {
+ public List<FileItemLog> get(BaseFileItem f) {
return em.createNamedQuery("getFileLogsByFile", FileItemLog.class).setParameter("fileId", f.getId())
.setParameter("type", f.getType()).getResultList();
}
- public void delete(FileItem f) {
+ public void delete(BaseFileItem f) {
em.createNamedQuery("deleteErrorFileLogsByFile").setParameter("fileId", f.getId())
.setParameter("type", f.getType()).executeUpdate();
}
- public FileItemLog add(String name, FileItem f, ConverterProcessResult returnMap) {
+ public FileItemLog add(String name, BaseFileItem f, ConverterProcessResult returnMap) {
log.trace("Adding log: {}, {}, {}", name, f, returnMap);
FileItemLog log = new FileItemLog();
log.setInserted(new Date());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
deleted file mode 100644
index 49f7b23..0000000
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerItemDTO.java
+++ /dev/null
@@ -1,205 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.db.dto.file;
-
-import java.io.Serializable;
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlRootElement;
-
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
-
-/**
- * This Object will represent a File on the File-System
- *
- * @author sebastianwagner
- *
- */
-@XmlRootElement
-@XmlAccessorType(XmlAccessType.FIELD)
-public class FileExplorerItemDTO implements Serializable {
- private static final long serialVersionUID = 1L;
- private Long id;
- private String name;
- private String hash;
- private Long parentId;
- private Long roomId;
- private Long groupId;
- private Long ownerId;
- private Long size;
- private String externalId;
- private String externalType;
- private Type type;
- private Integer width;
- private Integer height;
-
- public FileExplorerItemDTO() {}
-
- public FileExplorerItemDTO(FileExplorerItem f) {
- id = f.getId();
- name = f.getName();
- hash = f.getHash();
- parentId = f.getParentId();
- roomId = f.getRoomId();
- groupId = f.getGroupId();
- ownerId = f.getOwnerId();
- size = f.getSize();
- externalId = f.getExternalId();
- externalType = f.getExternalType();
- type = f.getType();
- width = f.getWidth();
- height = f.getHeight();
- }
-
- public FileExplorerItem get() {
- FileExplorerItem f = new FileExplorerItem();
- f.setId(id);
- f.setName(name);
- f.setHash(hash);
- f.setParentId(parentId != null && parentId > 0 ? parentId : null);
- f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
- f.setRoomId(groupId != null && groupId > 0 ? groupId : null);
- f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
- f.setSize(size);
- f.setExternalId(externalId);
- f.setExternalType(externalType);
- f.setType(type);
- f.setWidth(width);
- f.setHeight(height);
- return f;
- }
-
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getHash() {
- return hash;
- }
-
- public void setHash(String hash) {
- this.hash = hash;
- }
-
- public Long getParentId() {
- return parentId;
- }
-
- public void setParentId(Long parentId) {
- this.parentId = parentId;
- }
-
- public Long getRoomId() {
- return roomId;
- }
-
- public void setRoomId(Long roomId) {
- this.roomId = roomId;
- }
-
- public Long getGroupId() {
- return groupId;
- }
-
- public void setGroupId(Long groupId) {
- this.groupId = groupId;
- }
-
- public Long getOwnerId() {
- return ownerId;
- }
-
- public void setOwnerId(Long ownerId) {
- this.ownerId = ownerId;
- }
-
- public Long getSize() {
- return size;
- }
-
- public void setSize(Long size) {
- this.size = size;
- }
-
- public String getExternalId() {
- return externalId;
- }
-
- public void setExternalId(String externalId) {
- this.externalId = externalId;
- }
-
- public String getExternalType() {
- return externalType;
- }
-
- public void setExternalType(String externalType) {
- this.externalType = externalType;
- }
-
- public Type getType() {
- return type;
- }
-
- public void setType(Type type) {
- this.type = type;
- }
-
- public Integer getWidth() {
- return width;
- }
-
- public void setWidth(Integer width) {
- this.width = width;
- }
-
- public Integer getHeight() {
- return height;
- }
-
- public void setHeight(Integer height) {
- this.height = height;
- }
-
- public static List<FileExplorerItemDTO> list(List<FileExplorerItem> l) {
- List<FileExplorerItemDTO> list = new ArrayList<>();
- if (l != null) {
- for (FileExplorerItem f : l) {
- list.add(new FileExplorerItemDTO(f));
- }
- }
- return list;
- }
-}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java
index d461fd8..3501183 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java
@@ -25,7 +25,7 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
-import org.apache.openmeetings.db.entity.file.FileExplorerItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
/**
* @author sebastianwagner
@@ -36,36 +36,36 @@ import org.apache.openmeetings.db.entity.file.FileExplorerItem;
public class FileExplorerObject implements Serializable {
private static final long serialVersionUID = 1L;
- private List<FileExplorerItemDTO> userHome;
- private List<FileExplorerItemDTO> roomHome;
+ private List<FileItemDTO> userHome;
+ private List<FileItemDTO> roomHome;
private Long userHomeSize;
private Long roomHomeSize;
public FileExplorerObject() {}
- public List<FileExplorerItemDTO> getUserHome() {
+ public List<FileItemDTO> getUserHome() {
return userHome;
}
- public void setUserHome(List<FileExplorerItemDTO> userHome) {
+ public void setUserHome(List<FileItemDTO> userHome) {
this.userHome = userHome;
}
- public void setUser(List<FileExplorerItem> list, long size) {
- this.userHome = FileExplorerItemDTO.list(list);
+ public void setUser(List<FileItem> list, long size) {
+ this.userHome = FileItemDTO.list(list);
this.userHomeSize = size;
}
- public List<FileExplorerItemDTO> getRoomHome() {
+ public List<FileItemDTO> getRoomHome() {
return roomHome;
}
- public void setRoomHome(List<FileExplorerItemDTO> roomHome) {
+ public void setRoomHome(List<FileItemDTO> roomHome) {
this.roomHome = roomHome;
}
- public void setRoom(List<FileExplorerItem> list, long size) {
- this.roomHome = FileExplorerItemDTO.list(list);
+ public void setRoom(List<FileItem> list, long size) {
+ this.roomHome = FileItemDTO.list(list);
this.roomHomeSize = size;
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileItemDTO.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileItemDTO.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileItemDTO.java
new file mode 100644
index 0000000..563eafe
--- /dev/null
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileItemDTO.java
@@ -0,0 +1,205 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.db.dto.file;
+
+import java.io.Serializable;
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlRootElement;
+
+import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
+
+/**
+ * This Object will represent a File on the File-System
+ *
+ * @author sebastianwagner
+ *
+ */
+@XmlRootElement
+@XmlAccessorType(XmlAccessType.FIELD)
+public class FileItemDTO implements Serializable {
+ private static final long serialVersionUID = 1L;
+ private Long id;
+ private String name;
+ private String hash;
+ private Long parentId;
+ private Long roomId;
+ private Long groupId;
+ private Long ownerId;
+ private Long size;
+ private String externalId;
+ private String externalType;
+ private Type type;
+ private Integer width;
+ private Integer height;
+
+ public FileItemDTO() {}
+
+ public FileItemDTO(FileItem f) {
+ id = f.getId();
+ name = f.getName();
+ hash = f.getHash();
+ parentId = f.getParentId();
+ roomId = f.getRoomId();
+ groupId = f.getGroupId();
+ ownerId = f.getOwnerId();
+ size = f.getSize();
+ externalId = f.getExternalId();
+ externalType = f.getExternalType();
+ type = f.getType();
+ width = f.getWidth();
+ height = f.getHeight();
+ }
+
+ public FileItem get() {
+ FileItem f = new FileItem();
+ f.setId(id);
+ f.setName(name);
+ f.setHash(hash);
+ f.setParentId(parentId != null && parentId > 0 ? parentId : null);
+ f.setRoomId(roomId != null && roomId > 0 ? roomId : null);
+ f.setRoomId(groupId != null && groupId > 0 ? groupId : null);
+ f.setOwnerId(ownerId != null && ownerId > 0 ? ownerId : null);
+ f.setSize(size);
+ f.setExternalId(externalId);
+ f.setExternalType(externalType);
+ f.setType(type);
+ f.setWidth(width);
+ f.setHeight(height);
+ return f;
+ }
+
+ public Long getId() {
+ return id;
+ }
+
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getHash() {
+ return hash;
+ }
+
+ public void setHash(String hash) {
+ this.hash = hash;
+ }
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public Long getRoomId() {
+ return roomId;
+ }
+
+ public void setRoomId(Long roomId) {
+ this.roomId = roomId;
+ }
+
+ public Long getGroupId() {
+ return groupId;
+ }
+
+ public void setGroupId(Long groupId) {
+ this.groupId = groupId;
+ }
+
+ public Long getOwnerId() {
+ return ownerId;
+ }
+
+ public void setOwnerId(Long ownerId) {
+ this.ownerId = ownerId;
+ }
+
+ public Long getSize() {
+ return size;
+ }
+
+ public void setSize(Long size) {
+ this.size = size;
+ }
+
+ public String getExternalId() {
+ return externalId;
+ }
+
+ public void setExternalId(String externalId) {
+ this.externalId = externalId;
+ }
+
+ public String getExternalType() {
+ return externalType;
+ }
+
+ public void setExternalType(String externalType) {
+ this.externalType = externalType;
+ }
+
+ public Type getType() {
+ return type;
+ }
+
+ public void setType(Type type) {
+ this.type = type;
+ }
+
+ public Integer getWidth() {
+ return width;
+ }
+
+ public void setWidth(Integer width) {
+ this.width = width;
+ }
+
+ public Integer getHeight() {
+ return height;
+ }
+
+ public void setHeight(Integer height) {
+ this.height = height;
+ }
+
+ public static List<FileItemDTO> list(List<FileItem> l) {
+ List<FileItemDTO> list = new ArrayList<>();
+ if (l != null) {
+ for (FileItem f : l) {
+ list.add(new FileItemDTO(f));
+ }
+ }
+ return list;
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java
index 88e7ebb..23285d5 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java
@@ -26,35 +26,35 @@ import java.util.LinkedList;
*/
public class PresentationObject {
- private FileExplorerItemDTO originalDocument;
- private FileExplorerItemDTO pdfDocument;
- private FileExplorerItemDTO swfDocument;
- LinkedList<FileExplorerItemDTO> thumbs;
+ private FileItemDTO originalDocument;
+ private FileItemDTO pdfDocument;
+ private FileItemDTO swfDocument;
+ LinkedList<FileItemDTO> thumbs;
public PresentationObject() {}
- public FileExplorerItemDTO getOriginalDocument() {
+ public FileItemDTO getOriginalDocument() {
return originalDocument;
}
- public void setOriginalDocument(FileExplorerItemDTO originalDocument) {
+ public void setOriginalDocument(FileItemDTO originalDocument) {
this.originalDocument = originalDocument;
}
- public FileExplorerItemDTO getPdfDocument() {
+ public FileItemDTO getPdfDocument() {
return pdfDocument;
}
- public void setPdfDocument(FileExplorerItemDTO pdfDocument) {
+ public void setPdfDocument(FileItemDTO pdfDocument) {
this.pdfDocument = pdfDocument;
}
- public FileExplorerItemDTO getSwfDocument() {
+ public FileItemDTO getSwfDocument() {
return swfDocument;
}
- public void setSwfDocument(FileExplorerItemDTO swfDocument) {
+ public void setSwfDocument(FileItemDTO swfDocument) {
this.swfDocument = swfDocument;
}
- public LinkedList<FileExplorerItemDTO> getThumbs() {
+ public LinkedList<FileItemDTO> getThumbs() {
return thumbs;
}
- public void setThumbs(LinkedList<FileExplorerItemDTO> thumbs) {
+ public void setThumbs(LinkedList<FileItemDTO> thumbs) {
this.thumbs = thumbs;
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
new file mode 100644
index 0000000..c439664
--- /dev/null
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
@@ -0,0 +1,357 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.db.entity.file;
+
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_SWF;
+import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WML;
+import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
+import static org.apache.openmeetings.util.OmFileHelper.getUploadFilesDir;
+import static org.apache.openmeetings.util.OmFileHelper.getUploadWmlDir;
+
+import java.io.File;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.EnumType;
+import javax.persistence.Enumerated;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Inheritance;
+import javax.persistence.InheritanceType;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import javax.xml.bind.annotation.XmlType;
+
+import org.apache.openmeetings.db.entity.IDataProviderEntity;
+import org.simpleframework.xml.Element;
+
+@Entity
+@Table(name = "file")
+@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
+public abstract class BaseFileItem implements IDataProviderEntity {
+ private static final long serialVersionUID = 1L;
+
+ @Id
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Column(name = "id")
+ private Long id;
+
+ @XmlType(namespace = "org.apache.openmeetings.file")
+ public enum Type {
+ // Folder need to be alphabetically first, for correct sorting
+ Folder, Image, PollChart, Presentation, Recording, Video, WmlFile
+ }
+
+ @Column(name = "name")
+ @Element(name = "fileName", data = true, required = false)
+ private String name;
+
+ @Column(name = "hash")
+ @Element(name = "fileHash", data = true, required = false)
+ private String hash;
+
+ @Column(name = "parent_item_id")
+ @Element(data = true, name = "parentFileExplorerItemId", required = false)
+ private Long parentId;
+
+ @Column(name = "room_id")
+ @Element(data = true, required = false, name = "room_id")
+ private Long roomId;
+
+ // OwnerID => only set if its directly root in Owner Directory, other Folders and Files
+ // maybe are also in a Home directory but just because their parent is
+ @Column(name = "owner_id")
+ @Element(data = true, required = false)
+ private Long ownerId;
+
+ @Column(name = "inserted_by")
+ @Element(data = true, required = false)
+ private Long insertedBy;
+
+ @Column(name = "inserted")
+ @Element(data = true, required = false)
+ private Date inserted;
+
+ @Column(name = "updated")
+ @Element(data = true, required = false)
+ private Date updated;
+
+ @Column(name = "deleted", nullable = false)
+ @Element(data = true)
+ private boolean deleted;
+
+ @Column(name = "flv_width")
+ @Element(data = true, required = false)
+ private Integer width;
+
+ @Column(name = "flv_height")
+ @Element(data = true, required = false)
+ private Integer height;
+
+ @Column(name = "type")
+ @Element(data = true, required = false)
+ @Enumerated(EnumType.STRING)
+ private Type type;
+
+ @Column(name = "group_id")
+ @Element(data = true, required = false)
+ private Long groupId;
+
+ // Not Mapped
+ @Transient
+ private List<FileItemLog> log;
+
+ @Transient
+ private boolean readOnly;
+
+ @Override
+ public Long getId() {
+ return id;
+ }
+
+ @Override
+ public void setId(Long id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getHash() {
+ return hash;
+ }
+
+ public void setHash(String hash) {
+ this.hash = hash;
+ }
+
+ public Long getParentId() {
+ return parentId;
+ }
+
+ public void setParentId(Long parentId) {
+ this.parentId = parentId;
+ }
+
+ public Long getRoomId() {
+ return roomId;
+ }
+
+ public void setRoomId(Long roomId) {
+ this.roomId = roomId;
+ }
+
+ public Long getOwnerId() {
+ return ownerId;
+ }
+
+ public void setOwnerId(Long ownerId) {
+ this.ownerId = ownerId;
+ }
+
+ public Long getInsertedBy() {
+ return insertedBy;
+ }
+
+ public void setInsertedBy(Long insertedBy) {
+ this.insertedBy = insertedBy;
+ }
+
+ public Date getInserted() {
+ return inserted;
+ }
+
+ public void setInserted(Date inserted) {
+ this.inserted = inserted;
+ }
+
+ public Date getUpdated() {
+ return updated;
+ }
+
+ public void setUpdated(Date updated) {
+ this.updated = updated;
+ }
+
+ public boolean isDeleted() {
+ return deleted;
+ }
+
+ public void setDeleted(boolean deleted) {
+ this.deleted = deleted;
+ }
+
+ public Integer getWidth() {
+ return width;
+ }
+
+ public void setWidth(Integer flvWidth) {
+ this.width = flvWidth;
+ }
+
+ public Integer getHeight() {
+ return height;
+ }
+
+ public void setHeight(Integer flvHeight) {
+ this.height = flvHeight;
+ }
+
+ public Type getType() {
+ return type;
+ }
+
+ public void setType(Type type) {
+ this.type = type;
+ }
+
+ public List<FileItemLog> getLog() {
+ return log;
+ }
+
+ public void setLog(List<FileItemLog> log) {
+ this.log = log;
+ }
+
+ public String getFileName(String ext) {
+ return ext == null ? name : String.format("%s.%s", name, ext);
+ }
+
+ public File getFile() {
+ return getFile(null);
+ }
+
+ public Long getGroupId() {
+ return groupId;
+ }
+
+ public void setGroupId(Long groupId) {
+ this.groupId = groupId;
+ }
+
+ public boolean isReadOnly() {
+ return readOnly;
+ }
+
+ public void setReadOnly(boolean readOnly) {
+ this.readOnly = readOnly;
+ }
+
+ public final File getFile(String ext) {
+ File f = null;
+ if (getHash() != null) {
+ File d = new File(getUploadFilesDir(), getHash());
+ switch (getType()) {
+ case WmlFile:
+ f = new File(getUploadWmlDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_WML : ext));
+ break;
+ case Image:
+ f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_JPG : ext));
+ break;
+ case Recording:
+ f = new File(getStreamsHibernateDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
+ break;
+ case Video:
+ f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
+ break;
+ case Presentation:
+ f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_SWF : ext));
+ break;
+ case PollChart:
+ case Folder:
+ default:
+ }
+ }
+ return f;
+ }
+
+ public final boolean exists() {
+ return exists(null);
+ }
+
+ public final boolean exists(String ext) {
+ if (getId() != null && !isDeleted()) {
+ File f = getFile(ext);
+ return f != null && f.exists() && f.isFile();
+ }
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((hash == null) ? 0 : hash.hashCode());
+ result = prime * result + ((name == null) ? 0 : name.hashCode());
+ result = prime * result + ((ownerId == null) ? 0 : ownerId.hashCode());
+ result = prime * result + ((parentId == null) ? 0 : parentId.hashCode());
+ result = prime * result + ((roomId == null) ? 0 : roomId.hashCode());
+ result = prime * result + ((type == null) ? 0 : type.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ BaseFileItem other = (BaseFileItem) obj;
+ if (hash == null) {
+ if (other.hash != null)
+ return false;
+ } else if (!hash.equals(other.hash))
+ return false;
+ if (name == null) {
+ if (other.name != null)
+ return false;
+ } else if (!name.equals(other.name))
+ return false;
+ if (ownerId == null) {
+ if (other.ownerId != null)
+ return false;
+ } else if (!ownerId.equals(other.ownerId))
+ return false;
+ if (parentId == null) {
+ if (other.parentId != null)
+ return false;
+ } else if (!parentId.equals(other.parentId))
+ return false;
+ if (roomId == null) {
+ if (other.roomId != null)
+ return false;
+ } else if (!roomId.equals(other.roomId))
+ return false;
+ if (type != other.type)
+ return false;
+ return true;
+ }
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java
deleted file mode 100644
index 10dcf0d..0000000
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.openmeetings.db.entity.file;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.NamedQueries;
-import javax.persistence.NamedQuery;
-import javax.persistence.Table;
-
-import org.simpleframework.xml.Element;
-import org.simpleframework.xml.Root;
-
-@Entity
-@NamedQueries({
- @NamedQuery(name = "getAllFiles", query = "SELECT f FROM FileExplorerItem f ORDER BY f.id")
- , @NamedQuery(name = "getFileById", query = "SELECT f FROM FileExplorerItem f WHERE f.id = :id")
- , @NamedQuery(name = "getFileByHash", query = "SELECT f FROM FileExplorerItem f WHERE f.hash = :hash")
- , @NamedQuery(name = "getFilesByRoom", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false AND f.roomId = :roomId " +
- "AND f.ownerId IS NULL AND f.parentId IS NULL ORDER BY f.type ASC, f.name ")
- , @NamedQuery(name = "getFilesByOwner", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false AND f.ownerId = :ownerId "
- + "AND f.parentId IS NULL ORDER BY f.type ASC, f.name ")
- , @NamedQuery(name = "getFilesByParent", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false "
- + "AND f.parentId = :parentId ORDER BY f.type ASC, f.name ")
- , @NamedQuery(name = "getFilesFilteredByParent", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false "
- + "AND f.parentId = :parentId AND f.type IN :filter ORDER BY f.type ASC, f.name ")
- , @NamedQuery(name = "getFileExternal", query = "SELECT f FROM FileExplorerItem f WHERE f.externalId = :externalId AND f.externalType LIKE :externalType")
- , @NamedQuery(name = "getFileByGroup", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false AND f.ownerId IS NULL "
- + "AND f.groupId = :groupId AND f.parentId IS NULL "
- + "ORDER BY f.type ASC, f.name")
- , @NamedQuery(name = "getFileFilteredByGroup", query = "SELECT f FROM FileExplorerItem f WHERE f.deleted = false AND f.ownerId IS NULL "
- + "AND f.groupId = :groupId AND f.parentId IS NULL AND f.type IN :filter "
- + "ORDER BY f.type ASC, f.name")
-})
-@Table(name = "fileexploreritem")
-@Root
-public class FileExplorerItem extends FileItem {
- private static final long serialVersionUID = 1L;
-
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "id")
- @Element(data = true, name = "fileExplorerItemId")
- private Long id;
-
- @Column(name = "filesize")
- @Element(data = true, required = false)
- private Long size;
-
- @Column(name = "external_id")
- private String externalId;
-
- @Column(name = "external_type")
- private String externalType;
-
- @Override
- public Long getId() {
- return id;
- }
-
- @Override
- public void setId(Long id) {
- this.id = id;
- }
-
- public Long getSize() {
- return size;
- }
-
- public void setSize(Long fileSize) {
- this.size = fileSize;
- }
-
- public String getExternalId() {
- return externalId;
- }
-
- public void setExternalId(String externalId) {
- this.externalId = externalId;
- }
-
- public String getExternalType() {
- return externalType;
- }
-
- public void setExternalType(String externalType) {
- this.externalType = externalType;
- }
-}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java
index 04745e6..06e5d6e 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItem.java
@@ -18,317 +18,82 @@
*/
package org.apache.openmeetings.db.entity.file;
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_JPG;
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_MP4;
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_SWF;
-import static org.apache.openmeetings.util.OmFileHelper.EXTENSION_WML;
-import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
-import static org.apache.openmeetings.util.OmFileHelper.getUploadFilesDir;
-import static org.apache.openmeetings.util.OmFileHelper.getUploadWmlDir;
-
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-
import javax.persistence.Column;
-import javax.persistence.EnumType;
-import javax.persistence.Enumerated;
-import javax.persistence.MappedSuperclass;
-import javax.persistence.Transient;
-import javax.xml.bind.annotation.XmlType;
+import javax.persistence.Entity;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
-import org.apache.openmeetings.db.entity.IDataProviderEntity;
import org.simpleframework.xml.Element;
-
-@MappedSuperclass
-public abstract class FileItem implements IDataProviderEntity {
+import org.simpleframework.xml.Root;
+
+@Entity
+@NamedQueries({
+ @NamedQuery(name = "getAllFiles", query = "SELECT f FROM FileItem f ORDER BY f.id")
+ , @NamedQuery(name = "getFileById", query = "SELECT f FROM FileItem f WHERE f.id = :id")
+ , @NamedQuery(name = "getFileByHash", query = "SELECT f FROM FileItem f WHERE f.hash = :hash")
+ , @NamedQuery(name = "getFilesByRoom", query = "SELECT f FROM FileItem f WHERE f.deleted = false AND f.roomId = :roomId " +
+ "AND f.ownerId IS NULL AND f.parentId IS NULL ORDER BY f.type ASC, f.name ")
+ , @NamedQuery(name = "getFilesByOwner", query = "SELECT f FROM FileItem f WHERE f.deleted = false AND f.ownerId = :ownerId "
+ + "AND f.parentId IS NULL ORDER BY f.type ASC, f.name ")
+ , @NamedQuery(name = "getFilesByParent", query = "SELECT f FROM FileItem f WHERE f.deleted = false "
+ + "AND f.parentId = :parentId ORDER BY f.type ASC, f.name ")
+ , @NamedQuery(name = "getFilesFilteredByParent", query = "SELECT f FROM FileItem f WHERE f.deleted = false "
+ + "AND f.parentId = :parentId AND f.type IN :filter ORDER BY f.type ASC, f.name ")
+ , @NamedQuery(name = "getFileExternal", query = "SELECT f FROM FileItem f WHERE f.externalId = :externalId AND f.externalType LIKE :externalType")
+ , @NamedQuery(name = "getFileByGroup", query = "SELECT f FROM FileItem f WHERE f.deleted = false AND f.ownerId IS NULL "
+ + "AND f.groupId = :groupId AND f.parentId IS NULL "
+ + "ORDER BY f.type ASC, f.name")
+ , @NamedQuery(name = "getFileFilteredByGroup", query = "SELECT f FROM FileItem f WHERE f.deleted = false AND f.ownerId IS NULL "
+ + "AND f.groupId = :groupId AND f.parentId IS NULL AND f.type IN :filter "
+ + "ORDER BY f.type ASC, f.name")
+})
+@Root
+public class FileItem extends BaseFileItem {
private static final long serialVersionUID = 1L;
- @XmlType(namespace = "org.apache.openmeetings.file")
- public enum Type {
- // Folder need to be alphabetically first, for correct sorting
- Folder, Image, PollChart, Presentation, Recording, Video, WmlFile
- }
-
- @Column(name = "name")
- @Element(name = "fileName", data = true, required = false)
- private String name;
-
- @Column(name = "hash")
- @Element(name = "fileHash", data = true, required = false)
- private String hash;
-
- @Column(name = "parent_item_id")
- @Element(data = true, name = "parentFileExplorerItemId", required = false)
- private Long parentId;
-
- @Column(name = "room_id")
- @Element(data = true, required = false, name = "room_id")
- private Long roomId;
-
- // OwnerID => only set if its directly root in Owner Directory, other Folders and Files
- // maybe are also in a Home directory but just because their parent is
- @Column(name = "owner_id")
- @Element(data = true, required = false)
- private Long ownerId;
-
- @Column(name = "inserted_by")
- @Element(data = true, required = false)
- private Long insertedBy;
-
- @Column(name = "inserted")
- @Element(data = true, required = false)
- private Date inserted;
-
- @Column(name = "updated")
- @Element(data = true, required = false)
- private Date updated;
-
- @Column(name = "deleted", nullable = false)
- @Element(data = true)
- private boolean deleted;
-
- @Column(name = "flv_width")
- @Element(data = true, required = false)
- private Integer width;
-
- @Column(name = "flv_height")
- @Element(data = true, required = false)
- private Integer height;
-
- @Column(name = "type")
+ @Column(name = "filesize")
@Element(data = true, required = false)
- @Enumerated(EnumType.STRING)
- private Type type;
-
- @Column(name = "group_id")
- @Element(data = true, required = false)
- private Long groupId;
-
- // Not Mapped
- @Transient
- private List<FileItemLog> log;
-
- @Transient
- private boolean readOnly;
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getHash() {
- return hash;
- }
-
- public void setHash(String hash) {
- this.hash = hash;
- }
-
- public Long getParentId() {
- return parentId;
- }
-
- public void setParentId(Long parentId) {
- this.parentId = parentId;
- }
-
- public Long getRoomId() {
- return roomId;
- }
-
- public void setRoomId(Long roomId) {
- this.roomId = roomId;
- }
-
- public Long getOwnerId() {
- return ownerId;
- }
-
- public void setOwnerId(Long ownerId) {
- this.ownerId = ownerId;
- }
-
- public Long getInsertedBy() {
- return insertedBy;
- }
-
- public void setInsertedBy(Long insertedBy) {
- this.insertedBy = insertedBy;
- }
-
- public Date getInserted() {
- return inserted;
- }
-
- public void setInserted(Date inserted) {
- this.inserted = inserted;
- }
+ private Long size;
- public Date getUpdated() {
- return updated;
- }
-
- public void setUpdated(Date updated) {
- this.updated = updated;
- }
+ @Column(name = "external_id")
+ private String externalId;
- public boolean isDeleted() {
- return deleted;
- }
-
- public void setDeleted(boolean deleted) {
- this.deleted = deleted;
- }
+ @Column(name = "external_type")
+ private String externalType;
- public Integer getWidth() {
- return width;
- }
-
- public void setWidth(Integer flvWidth) {
- this.width = flvWidth;
- }
-
- public Integer getHeight() {
- return height;
- }
-
- public void setHeight(Integer flvHeight) {
- this.height = flvHeight;
- }
-
- public Type getType() {
- return type;
- }
-
- public void setType(Type type) {
- this.type = type;
- }
-
- public List<FileItemLog> getLog() {
- return log;
- }
-
- public void setLog(List<FileItemLog> log) {
- this.log = log;
- }
-
- public String getFileName(String ext) {
- return ext == null ? name : String.format("%s.%s", name, ext);
- }
-
- public File getFile() {
- return getFile(null);
- }
-
- public Long getGroupId() {
- return groupId;
- }
-
- public void setGroupId(Long groupId) {
- this.groupId = groupId;
+ @Override
+ @Element(data = true, name = "fileExplorerItemId")
+ public Long getId() {
+ return super.getId();
}
- public boolean isReadOnly() {
- return readOnly;
+ @Override
+ @Element(data = true, name = "fileExplorerItemId")
+ public void setId(Long id) {
+ super.setId(id);
}
- public void setReadOnly(boolean readOnly) {
- this.readOnly = readOnly;
+ public Long getSize() {
+ return size;
}
- public final File getFile(String ext) {
- File f = null;
- if (getHash() != null) {
- File d = new File(getUploadFilesDir(), getHash());
- switch (getType()) {
- case WmlFile:
- f = new File(getUploadWmlDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_WML : ext));
- break;
- case Image:
- f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_JPG : ext));
- break;
- case Recording:
- f = new File(getStreamsHibernateDir(), String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
- break;
- case Video:
- f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_MP4 : ext));
- break;
- case Presentation:
- f = new File(d, String.format("%s.%s", getHash(), ext == null ? EXTENSION_SWF : ext));
- break;
- case PollChart:
- case Folder:
- default:
- }
- }
- return f;
+ public void setSize(Long fileSize) {
+ this.size = fileSize;
}
- public final boolean exists() {
- return exists(null);
+ public String getExternalId() {
+ return externalId;
}
- public final boolean exists(String ext) {
- if (getId() != null && !isDeleted()) {
- File f = getFile(ext);
- return f != null && f.exists() && f.isFile();
- }
- return false;
+ public void setExternalId(String externalId) {
+ this.externalId = externalId;
}
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((hash == null) ? 0 : hash.hashCode());
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- result = prime * result + ((ownerId == null) ? 0 : ownerId.hashCode());
- result = prime * result + ((parentId == null) ? 0 : parentId.hashCode());
- result = prime * result + ((roomId == null) ? 0 : roomId.hashCode());
- result = prime * result + ((type == null) ? 0 : type.hashCode());
- return result;
+ public String getExternalType() {
+ return externalType;
}
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- FileItem other = (FileItem) obj;
- if (hash == null) {
- if (other.hash != null)
- return false;
- } else if (!hash.equals(other.hash))
- return false;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- if (ownerId == null) {
- if (other.ownerId != null)
- return false;
- } else if (!ownerId.equals(other.ownerId))
- return false;
- if (parentId == null) {
- if (other.parentId != null)
- return false;
- } else if (!parentId.equals(other.parentId))
- return false;
- if (roomId == null) {
- if (other.roomId != null)
- return false;
- } else if (!roomId.equals(other.roomId))
- return false;
- if (type != other.type)
- return false;
- return true;
+ public void setExternalType(String externalType) {
+ this.externalType = externalType;
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java
index 2e1a0aa..dc47fba 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileItemLog.java
@@ -36,7 +36,7 @@ import javax.persistence.NamedQuery;
import javax.persistence.Table;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
-import org.apache.openmeetings.db.entity.file.FileItem.Type;
+import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
@Entity
@NamedQueries({
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/7b5cd392/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/Recording.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/Recording.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/Recording.java
index c1e13dc..e188afd 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/Recording.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/record/Recording.java
@@ -30,20 +30,16 @@ import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
-import javax.persistence.Table;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlRootElement;
import javax.xml.bind.annotation.XmlType;
-import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.ElementList;
import org.simpleframework.xml.Root;
@@ -97,11 +93,10 @@ import org.simpleframework.xml.Root;
+ " OR rec.roomId IN (SELECT rg.room.id FROM RoomGroup rg WHERE rg.group.id = :groupId)"
+ " ) order by rec.inserted ASC")
})
-@Table(name = "recording")
@Root(name = "flvrecording")
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
-public class Recording extends FileItem {
+public class Recording extends BaseFileItem {
private static final long serialVersionUID = 1L;
@XmlType(namespace="org.apache.openmeetings.record")
@@ -113,12 +108,6 @@ public class Recording extends FileItem {
, ERROR
}
- @Id
- @GeneratedValue(strategy = GenerationType.IDENTITY)
- @Column(name = "id")
- @Element(data = true, name = "flvRecordingId")
- private Long id;
-
@Column(name = "comment")
@Element(data = true, required = false)
private String comment;
@@ -139,9 +128,9 @@ public class Recording extends FileItem {
@Element(data = true, required = false)
private String recorderStreamId;
- @Column(name = "is_interview", nullable = false)
+ @Column(name = "is_interview")
@Element(data = true, required = false)
- private boolean interview;
+ private Boolean interview = false;
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "recording_id")
@@ -153,18 +142,20 @@ public class Recording extends FileItem {
@Element(data = true, required = false)
private Status status = Status.NONE;
- @Column(name = "notified", nullable = false)
+ @Column(name = "notified")
@Element(data = true, required = false)
- private boolean notified = false;
+ private Boolean notified = false;
@Override
+ @Element(data = true, name = "flvRecordingId")
public Long getId() {
- return id;
+ return super.getId();
}
@Override
+ @Element(data = true, name = "flvRecordingId")
public void setId(Long id) {
- this.id = id;
+ super.setId(id);
}
public String getComment() {
@@ -216,7 +207,7 @@ public class Recording extends FileItem {
}
public boolean isInterview() {
- return interview;
+ return Boolean.TRUE.equals(interview);
}
public void setInterview(boolean interview) {
@@ -232,7 +223,7 @@ public class Recording extends FileItem {
}
public boolean isNotified() {
- return notified;
+ return Boolean.TRUE.equals(notified);
}
public void setNotified(boolean notified) {
@@ -241,6 +232,6 @@ public class Recording extends FileItem {
@Override
public String getFileName(String ext) {
- return String.format("%s%s.%s", recordingFileName, id, ext == null ? EXTENSION_MP4 : ext);
+ return String.format("%s%s.%s", recordingFileName, getId(), ext == null ? EXTENSION_MP4 : ext);
}
}
[11/18] openmeetings git commit: Merge branch '3.3.x' into
OPENMEETINGS-1671-room-files
Posted by so...@apache.org.
Merge branch '3.3.x' into OPENMEETINGS-1671-room-files
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/8bfe1c09
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/8bfe1c09
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/8bfe1c09
Branch: refs/heads/3.3.x
Commit: 8bfe1c09ee003f8f57fa6f947fc28afe1be87c6b
Parents: c17eb7c ccfeabb
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 14:06:26 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 14:06:26 2017 +0700
----------------------------------------------------------------------
openmeetings-server/src/site/site.xml | 1 +
.../src/site/xdoc/ExternalVideo.xml | 33 ++++++++++++++++++++
2 files changed, 34 insertions(+)
----------------------------------------------------------------------
[08/18] openmeetings git commit: [OPENMEETINGS-1671] file selector is
added to room admin
Posted by so...@apache.org.
[OPENMEETINGS-1671] file selector is added to room admin
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/43792d16
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/43792d16
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/43792d16
Branch: refs/heads/3.3.x
Commit: 43792d16b66b5fc97829e076f853a3953432ccac
Parents: f10ba38
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 13:10:22 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 13:10:22 2017 +0700
----------------------------------------------------------------------
.../openmeetings/db/dao/file/FileItemDao.java | 21 +++++++++++
.../db/entity/file/BaseFileItem.java | 13 +++++++
.../web/admin/AdminUserChoiceProvider.java | 2 +-
.../openmeetings/web/admin/rooms/RoomForm.java | 37 ++++++++++++++++++--
.../web/admin/rooms/RoomsPanel.html | 4 +--
5 files changed, 71 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/43792d16/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
index 14c8ce9..fc7f1c3 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/file/FileItemDao.java
@@ -23,17 +23,21 @@ import static org.apache.openmeetings.util.OmFileHelper.thumbImagePrefix;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.io.File;
+import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.UUID;
+import java.util.stream.Collectors;
import javax.persistence.EntityManager;
import javax.persistence.NoResultException;
import javax.persistence.PersistenceContext;
import javax.persistence.TypedQuery;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.file.BaseFileItem.Type;
import org.apache.openmeetings.db.entity.file.FileItem;
+import org.apache.openmeetings.db.entity.user.Group;
import org.apache.openmeetings.util.OmFileHelper;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
@@ -282,6 +286,23 @@ public class FileItemDao {
return update(f);
}
+ public List<BaseFileItem> getAllRoomFiles(String search, int start, int count, Long roomId/*, Long ownerId*/, List<Group> groups) {
+ return em.createNamedQuery("getAllFileItemsForRoom", BaseFileItem.class)
+ .setParameter("folder", Type.Folder)
+ .setParameter("roomId", roomId)
+ .setParameter("groups", groups.stream().map(Group::getId).collect(Collectors.toList()))
+ .setParameter("name", String.format("%%%s%%", search == null ? "" : search))
+ .setFirstResult(start)
+ .setMaxResults(count)
+ .getResultList();
+ }
+
+ public List<BaseFileItem> get(Collection<String> ids) {
+ return em.createNamedQuery("getFileItemsByIds", BaseFileItem.class)
+ .setParameter("ids", ids.stream().map(Long::valueOf).collect(Collectors.toList()))
+ .getResultList();
+ }
+
public long getOwnSize(Long userId) {
return getSize(getByOwner(userId));
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/43792d16/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
index c439664..763e636 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/BaseFileItem.java
@@ -39,6 +39,8 @@ import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Inheritance;
import javax.persistence.InheritanceType;
+import javax.persistence.NamedQueries;
+import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Transient;
import javax.xml.bind.annotation.XmlType;
@@ -47,6 +49,17 @@ import org.apache.openmeetings.db.entity.IDataProviderEntity;
import org.simpleframework.xml.Element;
@Entity
+@NamedQueries({
+ @NamedQuery(name = "getAllFileItemsForRoom", query = "SELECT f FROM BaseFileItem f"
+ + " WHERE f.deleted = false AND f.type <> :folder"
+ + " AND (f.roomId IS NULL OR f.roomId = :roomId)"
+ + " AND (f.groupId IS NULL OR f.groupId IN :groups)"
+ //+ " AND (f.ownerId IS NULL OR f.ownerId = :ownerId)"
+ + " AND f.name LIKE :name"
+ + " ORDER BY f.name")
+ , @NamedQuery(name = "getFileItemsByIds", query = "SELECT f FROM BaseFileItem f"
+ + " WHERE f.deleted = false AND f.id IN :ids)")
+})
@Table(name = "file")
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
public abstract class BaseFileItem implements IDataProviderEntity {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/43792d16/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminUserChoiceProvider.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminUserChoiceProvider.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminUserChoiceProvider.java
index c29febf..6993bd5 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminUserChoiceProvider.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/AdminUserChoiceProvider.java
@@ -31,7 +31,7 @@ import org.wicketstuff.select2.Response;
public abstract class AdminUserChoiceProvider extends ChoiceProvider<User> {
private static final long serialVersionUID = 1L;
- protected static int PAGE_SIZE = 20;
+ public static int PAGE_SIZE = 20;
@Override
public String getIdValue(User choice) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/43792d16/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index 42e5b64..9a291ae 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -19,6 +19,7 @@
package org.apache.openmeetings.web.admin.rooms;
import static org.apache.openmeetings.db.util.AuthLevelUtil.hasGroupAdminLevel;
+import static org.apache.openmeetings.web.admin.AdminUserChoiceProvider.PAGE_SIZE;
import static org.apache.openmeetings.web.app.Application.getBean;
import static org.apache.openmeetings.web.app.WebSession.getRights;
import static org.apache.openmeetings.web.app.WebSession.getSid;
@@ -29,11 +30,13 @@ import java.util.Arrays;
import java.util.Collection;
import java.util.List;
+import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.server.ISessionManager;
import org.apache.openmeetings.db.dao.user.GroupDao;
import org.apache.openmeetings.db.dao.user.IUserManager;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.RoomElement;
import org.apache.openmeetings.db.entity.room.RoomGroup;
@@ -68,6 +71,7 @@ import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
import org.apache.wicket.model.PropertyModel;
+import org.apache.wicket.model.util.CollectionModel;
import org.apache.wicket.util.string.Strings;
import org.apache.wicket.util.time.Duration;
import org.wicketstuff.select2.ChoiceProvider;
@@ -105,6 +109,7 @@ public class RoomForm extends AdminBaseForm<Room> {
}
};
private IModel<User> moderator2add = Model.of((User)null);
+ private IModel<Collection<BaseFileItem>> files2add = new CollectionModel<>(new ArrayList<BaseFileItem>());
public RoomForm(String id, WebMarkupContainer roomList, final Room room) {
super(id, new CompoundPropertyModel<>(room));
@@ -227,9 +232,6 @@ public class RoomForm extends AdminBaseForm<Room> {
add(new CheckBox("filesOpened"));
add(new CheckBox("autoVideoSelect"));
- // Users in this Room
- add(clientsContainer.add(clients.setOutputMarkupId(true)).setOutputMarkupId(true));
-
// Moderators
final Select2Choice<User> moderatorChoice = new Select2Choice<>("moderator2add", moderator2add, new AdminUserChoiceProvider() {
private static final long serialVersionUID = 1L;
@@ -304,6 +306,35 @@ public class RoomForm extends AdminBaseForm<Room> {
add(new CheckBox("moderated"));
+ // Files
+ add(new Select2MultiChoice<>("files2add", files2add, new ChoiceProvider<BaseFileItem>() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public String getDisplayValue(BaseFileItem f) {
+ return f.getName();
+ }
+
+ @Override
+ public String getIdValue(BaseFileItem f) {
+ return "" + f.getId();
+ }
+
+ @Override
+ public void query(String term, int page, Response<BaseFileItem> response) {
+ response.addAll(getBean(FileItemDao.class).getAllRoomFiles(term, page * PAGE_SIZE, PAGE_SIZE, RoomForm.this.getModelObject().getId(), orgList));
+ response.setHasMore(PAGE_SIZE == response.getResults().size());
+ }
+
+ @Override
+ public Collection<BaseFileItem> toChoices(Collection<String> ids) {
+ return getBean(FileItemDao.class).get(ids);
+ }
+ }).setLabel(Model.of(getString("245"))));
+
+ // Users in this Room
+ add(clientsContainer.add(clients.setOutputMarkupId(true)).setOutputMarkupId(true));
+
add(new TextField<String>("confno").setEnabled(false));
add(pin);
pin.setEnabled(getModelObject().isSipEnabled());
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/43792d16/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
index 8631b38..c43451b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomsPanel.html
@@ -144,8 +144,8 @@
<fieldset class="ui-widget-content">
<legend class="ui-widget-header"><wicket:message key="245" /></legend>
<div class="formelement">
- <label ><wicket:message key="245" /></label>
- <div class="om-select2"><select class="input" ></select></div>
+ <label wicket:for="files2add"><wicket:message key="245" /></label>
+ <div class="om-select2"><select class="input" wicket:id="files2add"></select></div>
</div>
</fieldset>
[05/18] openmeetings git commit: [OPENMEETINGS-1671] header size is
reduced
Posted by so...@apache.org.
[OPENMEETINGS-1671] header size is reduced
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/c452a462
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/c452a462
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/c452a462
Branch: refs/heads/3.3.x
Commit: c452a462e704c7617f5520b74335ed8f17a82c55
Parents: 7b5cd39
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 10:50:46 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 10:50:46 2017 +0700
----------------------------------------------------------------------
.../org/apache/openmeetings/web/admin/admin.js | 10 +++++++
.../org/apache/openmeetings/web/common/main.js | 19 +-----------
.../org/apache/openmeetings/web/pages/om-ga.js | 19 +-----------
.../web/room/activities/activities.js | 19 +-----------
.../org/apache/openmeetings/web/room/room.js | 19 +-----------
.../openmeetings/web/room/sidebar/upload.js | 19 +-----------
.../openmeetings/web/room/swf-functions.js | 19 +-----------
.../web/user/calendar/calendar-functions.js | 22 +-------------
.../apache/openmeetings/web/user/chat/chat.js | 19 +-----------
.../openmeetings/web/util/user-multi-choice.js | 20 +------------
.../main/webapp/js/openmeetings_functions.js | 31 +-------------------
11 files changed, 20 insertions(+), 196 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/admin.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/admin.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/admin.js
new file mode 100644
index 0000000..85a4f8b
--- /dev/null
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/admin.js
@@ -0,0 +1,10 @@
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
+function adminPanelInit() {
+ if (typeof extAdminPanelInit === 'function') {
+ extAdminPanelInit();
+ }
+ let f = $('#adminForm'), t = $('#adminTable')
+ , h = $(window).height() - 5;
+ f.height(h - f.position().top);
+ t.height(h - t.position().top);
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/main.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/main.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/main.js
index 9c87baf..1e20c77 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/main.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/main.js
@@ -1,21 +1,4 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
Wicket.BrowserInfo.collectExtraInfo = function(info) {
var l = window.location;
info.codebase = l.origin + l.pathname;
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/om-ga.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/om-ga.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/om-ga.js
index a3226af..43b33e3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/om-ga.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/om-ga.js
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
(function(i,s,o,g,r,a,m){
i['GoogleAnalyticsObject']=r;
i[r]=i[r]||function(){
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
index fd8162d..7bf6281 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
@@ -1,21 +1,4 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
var Activities = function() {
var closedHeight = "20px", openedHeight = "345px";
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
index aa81d89..8b4c25a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
@@ -1,21 +1,4 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
function setRoomSizes() {
var sb = $(".room.sidebar.left")
, w = $(window).width() - sb.width() - 8
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/upload.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/upload.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/upload.js
index 8c3688b..e6bd354 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/upload.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/upload.js
@@ -1,21 +1,4 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
function bindUpload(markupId, hiddenId) {
var fi = $('#' + markupId + ' .fileinput');
if (!fi.eventAdded) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/swf-functions.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/swf-functions.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/swf-functions.js
index 90f952e..bf30645 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/swf-functions.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/swf-functions.js
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
var labels
function initSwf(_options) {
var options = $.extend({
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
index 86ec265..825f4c7 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/calendar-functions.js
@@ -1,24 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-/**
- * @author Sebastien Briquet
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
function getCalendarHeight() {
return $(window).height() - $('#${markupId}').position().top - 20;
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/chat.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/chat.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/chat.js
index 0c0c417..61404a4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/chat.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/chat.js
@@ -1,21 +1,4 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
var Chat = function() {
var chatTabs
, tabTemplate = "<li><a href='#{href}'>#{label}</a></li>"
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/user-multi-choice.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/user-multi-choice.js b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/user-multi-choice.js
index de43cb3..3c7cee6 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/user-multi-choice.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/user-multi-choice.js
@@ -1,25 +1,7 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
function formatOmUser(user) {
return "<span class='user " + (user.contact ? "external" : "internal") + "' >" + user.text + "</span>";
}
-
function escapeOmUserMarkup(m) {
return m;
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/c452a462/openmeetings-web/src/main/webapp/js/openmeetings_functions.js
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/webapp/js/openmeetings_functions.js b/openmeetings-web/src/main/webapp/js/openmeetings_functions.js
index 09b3fc5..0fc5a70 100644
--- a/openmeetings-web/src/main/webapp/js/openmeetings_functions.js
+++ b/openmeetings-web/src/main/webapp/js/openmeetings_functions.js
@@ -1,52 +1,24 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
-*/
-/*
- * Functions to be included in the HTML wrapper,
- * see the templates dir (*.vm) for the include statements
- *
- */
-
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
function getBrowserInfo() {
//alert(navigator.userAgent);
document.getElementById("lzapp").getBrowserInfoCallback(navigator.userAgent);
}
-
function getBrowserLang() {
//alert(navigator.userAgent);
document.getElementById("lzapp").getBrowserLangCallback(navigator.language);
}
-
function redirectToUrl(url) {
//alert(navigator.userAgent);
window.location = url;
document.getElementById("lzapp").redirectToUrlCallback("ok");
}
-
function loadingComplete() {
document.getElementById("swfloading").style.display = 'none';
var lzApp = document.getElementById("lzappContainer");
lzApp.style.width = '100%';
lzApp.style.height = '100%';
}
-
function getTimeZoneOffsetMinutes() {
var rightNow = new Date(), std_time_offset = -rightNow.getTimezoneOffset();
for (var i = 0; i < 12; ++i) {
@@ -58,7 +30,6 @@ function getTimeZoneOffsetMinutes() {
}
return std_time_offset;
}
-
function getTimeZoneOffset() {
document.getElementById("lzapp").getTimeZoneOffsetCallback(getTimeZoneOffsetMinutes()/60);
}
[06/18] openmeetings git commit: Merge branch '3.3.x' into
OPENMEETINGS-1671-room-files
Posted by so...@apache.org.
Merge branch '3.3.x' into OPENMEETINGS-1671-room-files
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/0a058f6b
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/0a058f6b
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/0a058f6b
Branch: refs/heads/3.3.x
Commit: 0a058f6ba3eb0643bebad32cb039037a1843688d
Parents: c452a46 78078ea
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Thu Sep 14 11:26:52 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Thu Sep 14 11:26:52 2017 +0700
----------------------------------------------------------------------
.../org/apache/openmeetings/web/room/SwfPanel.html | 16 ----------------
.../java/org/apache/openmeetings/web/room/room.js | 4 ++++
2 files changed, 4 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/0a058f6b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
----------------------------------------------------------------------
diff --cc openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
index 8b4c25a,4f89d2f..75275db
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/room.js
@@@ -1,4 -1,22 +1,5 @@@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License") + you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+/* Licensed under the Apache License, Version 2.0 (the "License") http://www.apache.org/licenses/LICENSE-2.0 */
+ var HtmlOverflow;
function setRoomSizes() {
var sb = $(".room.sidebar.left")
, w = $(window).width() - sb.width() - 8
[16/18] openmeetings git commit: [OPENMEETINGS-1671] import/export
seems to work
Posted by so...@apache.org.
[OPENMEETINGS-1671] import/export seems to work
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/6eec97dc
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/6eec97dc
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/6eec97dc
Branch: refs/heads/3.3.x
Commit: 6eec97dced3a938e9c216b3068f106fb7d8656b9
Parents: 541bb1d
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Fri Sep 15 23:00:21 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Fri Sep 15 23:00:21 2017 +0700
----------------------------------------------------------------------
.../apache/openmeetings/backup/AppointmentConverter.java | 10 +++++-----
.../org/apache/openmeetings/backup/BackupImport.java | 11 +++++++++--
.../openmeetings/backup/BaseFileItemConverter.java | 4 ++--
.../org/apache/openmeetings/backup/DateConverter.java | 2 +-
.../org/apache/openmeetings/backup/GroupConverter.java | 10 +++++-----
.../apache/openmeetings/backup/PollTypeConverter.java | 4 ++--
.../org/apache/openmeetings/backup/RoomConverter.java | 8 ++++----
.../apache/openmeetings/backup/RoomTypeConverter.java | 4 ++--
.../apache/openmeetings/backup/SalutationConverter.java | 2 +-
.../org/apache/openmeetings/backup/UserConverter.java | 10 +++++-----
10 files changed, 36 insertions(+), 29 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/AppointmentConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/AppointmentConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/AppointmentConverter.java
index 79ee837..c219331 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/AppointmentConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/AppointmentConverter.java
@@ -28,21 +28,21 @@ import org.simpleframework.xml.stream.OutputNode;
public class AppointmentConverter extends OmConverter<Appointment> {
private AppointmentDao appointmentDao;
private Map<Long, Long> idMap;
-
+
public AppointmentConverter() {
//default constructor is for export
}
-
+
public AppointmentConverter(AppointmentDao appointmentDao, Map<Long, Long> idMap) {
this.appointmentDao = appointmentDao;
this.idMap = idMap;
}
-
+
@Override
public Appointment read(InputNode node) throws Exception {
long oldId = getLong(node);
Long newId = idMap.containsKey(oldId) ? idMap.get(oldId) : oldId;
-
+
Appointment a = appointmentDao.getAny(newId);
return a == null ? new Appointment() : a;
}
@@ -52,4 +52,4 @@ public class AppointmentConverter extends OmConverter<Appointment> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
index 14d60a5..414bb50 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
@@ -716,9 +716,16 @@ public class BackupImport {
registry.bind(BaseFileItem.class, new BaseFileItemConverter(fileItemDao, fileItemMap));
- List<RoomFile> list = readList(serializer, f, "roomFiles.xml", "RoomFiles", RoomFile.class);
+ List<RoomFile> list = readList(serializer, f, "roomFiles.xml", "RoomFiles", RoomFile.class, true);
for (RoomFile rf : list) {
- int i = 0;
+ Room r = roomDao.get(roomMap.get(rf.getRoomId()));
+ if (r.getFiles() == null) {
+ r.setFiles(new ArrayList<>());
+ }
+ rf.setId(null);
+ rf.setRoomId(r.getId());
+ r.getFiles().add(rf);
+ roomDao.update(r, null);
}
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
index 3e0cb41..def8fa5 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
@@ -51,7 +51,7 @@ public class BaseFileItemConverter extends OmConverter<BaseFileItem> {
@Override
public void write(OutputNode node, BaseFileItem value) throws Exception {
node.setData(true);
- node.setAttribute("type", Long.class.getCanonicalName());
+ node.getAttributes().forEach(name -> node.getAttributes().remove(name));
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/DateConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/DateConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/DateConverter.java
index 7f3967d..7066ce9 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/DateConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/DateConverter.java
@@ -38,4 +38,4 @@ public class DateConverter implements Converter<Date> {
node.setData(true);
node.setValue(value == null ? "0" : CalendarPatterns.getExportDate(value));
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/GroupConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/GroupConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/GroupConverter.java
index 67c363b..7a07fe8 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/GroupConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/GroupConverter.java
@@ -28,21 +28,21 @@ import org.simpleframework.xml.stream.OutputNode;
public class GroupConverter extends OmConverter<Group> {
private GroupDao groupDao;
private Map<Long, Long> idMap;
-
+
public GroupConverter() {
//default constructor is for export
}
-
+
public GroupConverter(GroupDao groupDao, Map<Long, Long> idMap) {
this.groupDao = groupDao;
this.idMap = idMap;
}
-
+
@Override
public Group read(InputNode node) throws Exception {
long oldId = getLong(node);
long newId = idMap.containsKey(oldId) ? idMap.get(oldId) : oldId;
-
+
Group o = groupDao.get(newId);
return o == null ? new Group() : o;
}
@@ -52,4 +52,4 @@ public class GroupConverter extends OmConverter<Group> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/PollTypeConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/PollTypeConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/PollTypeConverter.java
index 365904d..d627139 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/PollTypeConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/PollTypeConverter.java
@@ -24,7 +24,7 @@ import org.simpleframework.xml.stream.OutputNode;
public class PollTypeConverter extends OmConverter<RoomPoll.Type> {
public PollTypeConverter() {}
-
+
@Override
public RoomPoll.Type read(InputNode node) throws Exception {
return RoomPoll.Type.get(getLong(node));
@@ -35,4 +35,4 @@ public class PollTypeConverter extends OmConverter<RoomPoll.Type> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomConverter.java
index 20ccba1..a47c036 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomConverter.java
@@ -28,16 +28,16 @@ import org.simpleframework.xml.stream.OutputNode;
public class RoomConverter extends OmConverter<Room> {
private RoomDao roomDao;
private Map<Long, Long> idMap;
-
+
public RoomConverter() {
//default constructor is for export
}
-
+
public RoomConverter(RoomDao roomDao, Map<Long, Long> idMap) {
this.roomDao = roomDao;
this.idMap = idMap;
}
-
+
@Override
public Room read(InputNode node) throws Exception {
long oldId = getLong(node);
@@ -52,4 +52,4 @@ public class RoomConverter extends OmConverter<Room> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomTypeConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomTypeConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomTypeConverter.java
index a6f8f5b..b5f3543 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomTypeConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/RoomTypeConverter.java
@@ -24,7 +24,7 @@ import org.simpleframework.xml.stream.OutputNode;
public class RoomTypeConverter extends OmConverter<Type> {
public RoomTypeConverter() {}
-
+
@Override
public Type read(InputNode node) throws Exception {
return Type.get(getInt(node));
@@ -35,4 +35,4 @@ public class RoomTypeConverter extends OmConverter<Type> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/SalutationConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/SalutationConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/SalutationConverter.java
index 59e680a..7824802 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/SalutationConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/SalutationConverter.java
@@ -33,4 +33,4 @@ public class SalutationConverter extends OmConverter<Salutation> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/6eec97dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/UserConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/UserConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/UserConverter.java
index 696bd8c..4853efa 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/UserConverter.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/UserConverter.java
@@ -28,21 +28,21 @@ import org.simpleframework.xml.stream.OutputNode;
public class UserConverter extends OmConverter<User> {
private UserDao userDao;
private Map<Long, Long> idMap;
-
+
public UserConverter() {
//default constructor is for export
}
-
+
public UserConverter(UserDao userDao, Map<Long, Long> idMap) {
this.userDao = userDao;
this.idMap = idMap;
}
-
+
@Override
public User read(InputNode node) throws Exception {
long oldId = getLong(node);
Long newId = idMap.containsKey(oldId) ? idMap.get(oldId) : oldId;
-
+
User u = userDao.get(newId);
return u == null ? new User() : u;
}
@@ -52,4 +52,4 @@ public class UserConverter extends OmConverter<User> {
node.setData(true);
node.setValue(value == null ? "0" : "" + value.getId());
}
-}
\ No newline at end of file
+}
[15/18] openmeetings git commit: [OPENMEETINGS-1671] initial work on
export/import
Posted by so...@apache.org.
[OPENMEETINGS-1671] initial work on export/import
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/541bb1dc
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/541bb1dc
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/541bb1dc
Branch: refs/heads/3.3.x
Commit: 541bb1dc4f4ed73195409de2ba86d241823b4a3d
Parents: ffacf2e
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Fri Sep 15 18:45:34 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Fri Sep 15 18:45:34 2017 +0700
----------------------------------------------------------------------
.../openmeetings/db/dao/room/RoomDao.java | 8 ++-
.../openmeetings/db/entity/room/Room.java | 3 +-
.../openmeetings/db/entity/room/RoomFile.java | 6 +++
.../openmeetings/db/entity/room/RoomGroup.java | 10 ++--
.../openmeetings/backup/BackupExport.java | 15 ++++++
.../openmeetings/backup/BackupImport.java | 34 ++++++++++--
.../backup/BaseFileItemConverter.java | 57 ++++++++++++++++++++
.../openmeetings/web/admin/rooms/RoomForm.java | 9 ++--
8 files changed, 126 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
index 6dd79a8..5bf22a1 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/room/RoomDao.java
@@ -43,6 +43,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.log.ConferenceLog;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.Type;
+import org.apache.openmeetings.db.entity.room.RoomFile;
import org.apache.openmeetings.db.util.TimezoneUtil;
import org.apache.openmeetings.util.DaoHelper;
import org.red5.logging.Red5LoggerFactory;
@@ -103,7 +104,7 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
TypedQuery<Room> q = oem.createNamedQuery("getBackupRooms", Room.class);
@SuppressWarnings("unchecked")
OpenJPAQuery<Room> kq = OpenJPAPersistence.cast(q);
- kq.getFetchPlan().addFetchGroups("roomModerators", "roomGroups");
+ kq.getFetchPlan().addFetchGroups("roomModerators", "roomGroups", "roomFiles");
return kq.getResultList();
} finally {
oem.getFetchPlan().setQueryResultCacheEnabled(qrce);
@@ -312,4 +313,9 @@ public class RoomDao implements IGroupAdminDataProviderDao<Room> {
}
return result;
}
+
+ public List<RoomFile> getFiles() {
+ return em.createQuery("SELECT rf FROM RoomFile rf", RoomFile.class)
+ .getResultList();
+ }
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
index 087a446..9bc7134 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/Room.java
@@ -281,7 +281,7 @@ public class Room implements IDataProviderEntity {
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "roomId")
@ForeignKey(enabled = true)
- @ElementList(name = "room_moderators", required=false)
+ @ElementList(name = "room_moderators", required = false)
private List<RoomModerator> moderators = new ArrayList<>();
@Column(name = "sip_enabled", nullable = false)
@@ -305,6 +305,7 @@ public class Room implements IDataProviderEntity {
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "room_id", insertable = true, updatable = true, nullable = false)
@ElementDependent
+ @org.simpleframework.xml.Transient
private List<RoomFile> files = new ArrayList<>();
@Transient
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
index e8bef4f..528c300 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomFile.java
@@ -31,22 +31,28 @@ import javax.persistence.Table;
import org.apache.openjpa.persistence.jdbc.ForeignKey;
import org.apache.openmeetings.db.entity.IDataProviderEntity;
import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.simpleframework.xml.Element;
+import org.simpleframework.xml.Root;
@Entity
@Table(name = "room_file")
+@Root(name = "RoomFile")
public class RoomFile implements IDataProviderEntity {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
+ @Element(data = true, required = true)
private Long id;
@Column(name = "room_id", nullable = false)
+ @Element(data = true, required = true)
private Long roomId;
@ManyToOne(fetch = FetchType.EAGER, optional = false)
@JoinColumn(name = "file_id", insertable = true, updatable = true, nullable = false)
@ForeignKey(enabled = true)
+ @Element(data = true, required = true)
private BaseFileItem file;
/*
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java
----------------------------------------------------------------------
diff --git a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java
index 42bf899..9001a8d 100644
--- a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java
+++ b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/room/RoomGroup.java
@@ -72,15 +72,15 @@ public class RoomGroup implements IDataProviderEntity {
private Long id;
@ManyToOne(fetch = FetchType.EAGER)
- @JoinColumn(name="room_id", nullable=true)
+ @JoinColumn(name = "room_id", nullable = true)
@ForeignKey(enabled = true)
- @Element(name="rooms_id", data=true, required=false)
+ @Element(name="rooms_id", data = true, required = false)
private Room room;
@ManyToOne(fetch = FetchType.EAGER)
- @JoinColumn(name="group_id", nullable=true)
+ @JoinColumn(name = "group_id", nullable = true)
@ForeignKey(enabled = true)
- @Element(name="organisation_id", data=true, required=false)
+ @Element(name = "organisation_id", data = true, required = false)
private Group group;
@Column(name = "inserted")
@@ -90,7 +90,7 @@ public class RoomGroup implements IDataProviderEntity {
private Date updated;
@Column(name = "deleted", nullable = false)
- @Element(data=true)
+ @Element(data = true)
private boolean deleted;
public RoomGroup(Group org, Room room) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
index ae6c809..7b68d30 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupExport.java
@@ -179,6 +179,21 @@ public class BackupExport {
}
/*
+ * ##################### Backup Room Files
+ */
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(FileItem.class, BaseFileItemConverter.class);
+ registry.bind(Recording.class, BaseFileItemConverter.class);
+
+ writeList(serializer, zos, "roomFiles.xml", "RoomFiles", roomDao.getFiles());
+ progressHolder.setProgress(17);
+ }
+
+ /*
* ##################### Backup Calendars
*/
{
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
index b1262f2..14d60a5 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BackupImport.java
@@ -91,12 +91,13 @@ import org.apache.openmeetings.db.entity.basic.Configuration;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.MeetingMember;
import org.apache.openmeetings.db.entity.calendar.OmCalendar;
-import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.db.entity.record.RecordingMetaData;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.room.Room.RoomElement;
+import org.apache.openmeetings.db.entity.room.RoomFile;
import org.apache.openmeetings.db.entity.room.RoomGroup;
import org.apache.openmeetings.db.entity.room.RoomModerator;
import org.apache.openmeetings.db.entity.room.RoomPoll;
@@ -181,6 +182,7 @@ public class BackupImport {
private final Map<Long, Long> calendarMap = new HashMap<>();
private final Map<Long, Long> appointmentMap = new HashMap<>();
private final Map<Long, Long> roomMap = new HashMap<>();
+ private final Map<Long, Long> fileItemMap = new HashMap<>();
private final Map<Long, Long> messageFolderMap = new HashMap<>();
private final Map<Long, Long> userContactMap = new HashMap<>();
private final Map<String, String> fileMap = new HashMap<>();
@@ -522,6 +524,7 @@ public class BackupImport {
{
List<Recording> list = readRecordingList(f, "flvRecordings.xml", "flvrecordings");
for (Recording r : list) {
+ Long recId = r.getId();
r.setId(null);
if (r.getRoomId() != null) {
r.setRoomId(roomMap.get(r.getRoomId()));
@@ -544,7 +547,8 @@ public class BackupImport {
if (Strings.isEmpty(r.getHash())) {
r.setHash(UUID.randomUUID().toString());
}
- recordingDao.update(r);
+ r = recordingDao.update(r);
+ fileItemMap.put(recId, r.getId());
}
}
@@ -647,6 +651,7 @@ public class BackupImport {
{
List<FileItem> list = readFileItemList(f, "fileExplorerItems.xml", "fileExplorerItems");
for (FileItem file : list) {
+ Long fId = file.getId();
// We need to reset this as openJPA reject to store them otherwise
file.setId(null);
Long roomId = file.getRoomId();
@@ -660,7 +665,8 @@ public class BackupImport {
if (Strings.isEmpty(file.getHash())) {
file.setHash(UUID.randomUUID().toString());
}
- fileItemDao.update(file);
+ file = fileItemDao.update(file);
+ fileItemMap.put(fId, file.getId());
}
}
@@ -699,7 +705,24 @@ public class BackupImport {
}
}
- log.info("Poll import complete, starting copy of files and folders");
+ log.info("Poll import complete, starting room files import");
+ /*
+ * ##################### Import Room Files
+ */
+ {
+ Registry registry = new Registry();
+ Strategy strategy = new RegistryStrategy(registry);
+ Serializer serializer = new Persister(strategy);
+
+ registry.bind(BaseFileItem.class, new BaseFileItemConverter(fileItemDao, fileItemMap));
+
+ List<RoomFile> list = readList(serializer, f, "roomFiles.xml", "RoomFiles", RoomFile.class);
+ for (RoomFile rf : list) {
+ int i = 0;
+ }
+ }
+
+ log.info("Room files import complete, starting copy of files and folders");
/*
* ##################### Import real files and folders
*/
@@ -781,6 +804,9 @@ public class BackupImport {
//HACK to handle old isFolder, isImage, isVideo, isRecording, isPresentation, isStoredWmlFile, isChart, wmlFilePath
do {
+ if (item1 == null) {
+ break;
+ }
String name = item1.getName();
String val = item1.getValue();
if ("wmlFilePath".equals(name) && !Strings.isEmpty(val)) {
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
new file mode 100644
index 0000000..3e0cb41
--- /dev/null
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/backup/BaseFileItemConverter.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.backup;
+
+import java.util.Map;
+
+import org.apache.openmeetings.db.dao.file.FileItemDao;
+import org.apache.openmeetings.db.entity.file.BaseFileItem;
+import org.apache.openmeetings.db.entity.file.FileItem;
+import org.simpleframework.xml.stream.InputNode;
+import org.simpleframework.xml.stream.OutputNode;
+
+public class BaseFileItemConverter extends OmConverter<BaseFileItem> {
+ private FileItemDao fileDao;
+ private Map<Long, Long> idMap;
+
+ public BaseFileItemConverter() {
+ //default constructor is for export
+ }
+
+ public BaseFileItemConverter(FileItemDao fileDao, Map<Long, Long> idMap) {
+ this.fileDao = fileDao;
+ this.idMap = idMap;
+ }
+
+ @Override
+ public BaseFileItem read(InputNode node) throws Exception {
+ long oldId = getLong(node);
+ long newId = idMap.containsKey(oldId) ? idMap.get(oldId) : oldId;
+
+ BaseFileItem r = fileDao.get(newId);
+ return r == null ? new FileItem() : r;
+ }
+
+ @Override
+ public void write(OutputNode node, BaseFileItem value) throws Exception {
+ node.setData(true);
+ node.setAttribute("type", Long.class.getCanonicalName());
+ node.setValue(value == null ? "0" : "" + value.getId());
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/541bb1dc/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
index f879e49..7398418 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/rooms/RoomForm.java
@@ -357,6 +357,9 @@ public class RoomForm extends AdminBaseForm<Room> {
@Override
protected void onSubmit(AjaxRequestTarget target) {
Room r = RoomForm.this.getModelObject();
+ if (r.getFiles() == null) {
+ r.setFiles(new ArrayList<>());
+ }
for (BaseFileItem f : files2add.getObject()) {
r.getFiles().add(new RoomFile(r.getId(), f, wbIdx.getObject()));
}
@@ -493,13 +496,9 @@ public class RoomForm extends AdminBaseForm<Room> {
moderator2add.setObject(null);
files2add.getObject().clear();
wbIdx.setObject(0L);
- Room r = getModelObject();
- if (r.getFiles() == null) {
- r.setFiles(new ArrayList<>());
- }
target.add(this);
target.add(roomList);
- target.add(pin.setEnabled(r.isSipEnabled()));
+ target.add(pin.setEnabled(getModelObject().isSipEnabled()));
updateClients(target);
target.appendJavaScript("adminPanelInit();");
}