Repository: openmeetings
Updated Branches:
  refs/heads/master cfb231e5b -> dee23b391


[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/dee23b39
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/dee23b39
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/dee23b39

Branch: refs/heads/master
Commit: dee23b391132987a6769923fcb1e986b3d3f79c8
Parents: cfb231e
Author: Maxim Solodovnik <[email protected]>
Authored: Wed Sep 13 17:14:41 2017 +0700
Committer: Maxim Solodovnik <[email protected]>
Committed: Fri Sep 15 15:51:22 2017 +0700

----------------------------------------------------------------------
 .../openmeetings/db/dao/room/RoomDao.java       |  4 +-
 .../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      |  1 +
 .../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/dee23b39/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 9acfabc..2dd2fc6 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
@@ -84,7 +84,7 @@ public class RoomDao implements 
IGroupAdminDataProviderDao<Room> {
                                q.setParameter("id", id);
                                @SuppressWarnings("unchecked")
                                OpenJPAQuery<Room> kq = 
OpenJPAPersistence.cast(q);
-                               
kq.getFetchPlan().addFetchGroups("roomModerators", "groups");
+                               
kq.getFetchPlan().addFetchGroups("roomModerators", "groups", "roomFiles");
                                List<Room> l = kq.getResultList();
                                r = l.isEmpty() ? r : l.get(0);
                        } finally {
@@ -104,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", 
"groups");
+                       kq.getFetchPlan().addFetchGroups("roomModerators", 
"groups", "roomFiles");
                        return kq.getResultList();
                } finally {
                        oem.getFetchPlan().setQueryResultCacheEnabled(qrce);

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/dee23b39/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 dac699e..7ac81b1 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 
= "groups") })
+       , @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> groups = 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/dee23b39/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/dee23b39/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 7f71cbd..de6a58a 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
@@ -45,6 +45,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.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/dee23b39/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 604e9a9..40a6c43 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
@@ -45,6 +45,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.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/dee23b39/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 e69bdc3..80de13d 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,6 +45,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.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/dee23b39/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 dc5ef55..faaaaa8 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
@@ -45,6 +45,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.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/dee23b39/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 b746538..33acf1b 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
@@ -45,6 +45,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.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/dee23b39/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 f5facf3..11bcb0f 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
@@ -45,6 +45,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.user.Address</class>
                
<class>org.apache.openmeetings.db.entity.user.PrivateMessage</class>
                
<class>org.apache.openmeetings.db.entity.user.PrivateMessageFolder</class>

Reply via email to