Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/AppointmentDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/AppointmentDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/AppointmentDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/AppointmentDTO.java Fri Nov 6 06:18:44 2015 @@ -18,18 +18,29 @@ */ package org.apache.openmeetings.db.dto.calendar; +import java.io.Serializable; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; import java.util.TimeZone; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +import org.apache.openmeetings.db.dao.calendar.AppointmentDao; +import org.apache.openmeetings.db.dao.user.UserDao; import org.apache.openmeetings.db.dto.room.RoomDTO; import org.apache.openmeetings.db.dto.user.UserDTO; import org.apache.openmeetings.db.entity.calendar.Appointment; +import org.apache.openmeetings.db.entity.calendar.Appointment.Reminder; import org.apache.openmeetings.db.entity.calendar.MeetingMember; -public class AppointmentDTO { +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class AppointmentDTO implements Serializable { + private static final long serialVersionUID = 1L; private Long id; private String title; private String location; @@ -40,11 +51,12 @@ public class AppointmentDTO { private Date inserted; private Date updated; private boolean deleted; - private AppointmentReminderTypeDTO reminder; + private Reminder reminder; private RoomDTO room; private String icalId; - private List<MeetingMemberDTO> meetingMembers; + private List<MeetingMemberDTO> meetingMembers = new ArrayList<>(); private Long languageId; + private String password; private boolean passwordProtected; private boolean connectedEvent; private boolean reminderEmailSend; @@ -65,12 +77,13 @@ public class AppointmentDTO { inserted = a.getInserted(); updated = a.getUpdated(); deleted = a.isDeleted(); - reminder = new AppointmentReminderTypeDTO(a.getRemind()); + reminder = a.getReminder(); room = new RoomDTO(a.getRoom()); icalId = a.getIcalId(); - meetingMembers = new ArrayList<>(); - for(MeetingMember mm: a.getMeetingMembers()) { - meetingMembers.add(new MeetingMemberDTO(mm)); + if (a.getMeetingMembers() != null) { + for(MeetingMember mm : a.getMeetingMembers()) { + meetingMembers.add(new MeetingMemberDTO(mm)); + } } languageId = a.getLanguageId(); passwordProtected = a.isPasswordProtected(); @@ -78,6 +91,34 @@ public class AppointmentDTO { reminderEmailSend = a.isReminderEmailSend(); } + public Appointment get(UserDao userDao, AppointmentDao appointmentDao) { + Appointment a = id == null ? new Appointment() : appointmentDao.get(id); + a.setId(id); + a.setTitle(title); + a.setLocation(location); + a.setStart(start.getTime()); + a.setEnd(end.getTime()); + a.setDescription(description); + a.setOwner(owner.get(userDao)); + a.setInserted(inserted); + a.setUpdated(updated); + a.setDeleted(deleted); + a.setReminder(reminder); + a.setRoom(room.get()); + a.setIcalId(icalId); + a.setMeetingMembers(new ArrayList<MeetingMember>()); + for(MeetingMemberDTO mm : meetingMembers) { + MeetingMember m = mm.get(userDao); + m.setAppointment(a); + a.getMeetingMembers().add(m); + } + a.setLanguageId(languageId); + a.setPasswordProtected(passwordProtected); + a.setConnectedEvent(connectedEvent); + a.setReminderEmailSend(reminderEmailSend); + return a; + } + public Long getId() { return id; } @@ -158,11 +199,11 @@ public class AppointmentDTO { this.deleted = deleted; } - public AppointmentReminderTypeDTO getReminder() { + public Reminder getReminder() { return reminder; } - public void setReminder(AppointmentReminderTypeDTO reminder) { + public void setReminder(Reminder reminder) { this.reminder = reminder; } @@ -221,4 +262,20 @@ public class AppointmentDTO { public void setReminderEmailSend(boolean reminderEmailSend) { this.reminderEmailSend = reminderEmailSend; } + + public static List<AppointmentDTO> list(List<Appointment> list) { + List<AppointmentDTO> result = new ArrayList<>(list.size()); + for (Appointment a : list) { + result.add(new AppointmentDTO(a)); + } + return result; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } }
Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/MeetingMemberDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/MeetingMemberDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/MeetingMemberDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/calendar/MeetingMemberDTO.java Fri Nov 6 06:18:44 2015 @@ -18,10 +18,20 @@ */ package org.apache.openmeetings.db.dto.calendar; +import java.io.Serializable; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +import org.apache.openmeetings.db.dao.user.UserDao; import org.apache.openmeetings.db.dto.user.UserDTO; import org.apache.openmeetings.db.entity.calendar.MeetingMember; -public class MeetingMemberDTO { +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class MeetingMemberDTO implements Serializable { + private static final long serialVersionUID = 1L; private Long id; private UserDTO user; @@ -32,6 +42,13 @@ public class MeetingMemberDTO { this.user = new UserDTO(mm.getUser()); } + public MeetingMember get(UserDao userDao) { + MeetingMember mm = new MeetingMember(); + mm.setId(id); + mm.setUser(user.get(userDao)); + return mm; + } + public Long getId() { return id; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FileExplorerObject.java Fri Nov 6 06:18:44 2015 @@ -18,6 +18,8 @@ */ package org.apache.openmeetings.db.dto.file; +import java.util.List; + import org.apache.openmeetings.db.entity.file.FileExplorerItem; /** @@ -26,21 +28,23 @@ import org.apache.openmeetings.db.entity */ public class FileExplorerObject { - private FileExplorerItem[] userHome; - private FileExplorerItem[] roomHome; + private List<FileExplorerItem> userHome; + private List<FileExplorerItem> roomHome; private Long userHomeSize; private Long roomHomeSize; - public FileExplorerItem[] getUserHome() { + public FileExplorerObject() {} + + public List<FileExplorerItem> getUserHome() { return userHome; } - public void setUserHome(FileExplorerItem[] userHome) { + public void setUserHome(List<FileExplorerItem> userHome) { this.userHome = userHome; } - public FileExplorerItem[] getRoomHome() { + public List<FileExplorerItem> getRoomHome() { return roomHome; } - public void setRoomHome(FileExplorerItem[] roomHome) { + public void setRoomHome(List<FileExplorerItem> roomHome) { this.roomHome = roomHome; } public Long getUserHomeSize() { Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FilesObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FilesObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FilesObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FilesObject.java Fri Nov 6 06:18:44 2015 @@ -31,6 +31,9 @@ public class FilesObject { private String lastModified; private String fileBytes; private String isimage; + + public FilesObject() {} + public String getFileName() { return fileName; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FoldersObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FoldersObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FoldersObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/FoldersObject.java Fri Nov 6 06:18:44 2015 @@ -27,6 +27,8 @@ public class FoldersObject { private String folderName; private String lastModified; + public FoldersObject() {} + public String getFolderName() { return folderName; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LiberaryObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LiberaryObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LiberaryObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LiberaryObject.java Fri Nov 6 06:18:44 2015 @@ -33,6 +33,9 @@ public class LiberaryObject { private LinkedList<FoldersObject> foldersList; private PresentationObject presentationObject; private String error; + + public LiberaryObject() {} + public LinkedList<FilesObject> getFilesList() { return filesList; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresenationThumbs.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresenationThumbs.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresenationThumbs.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresenationThumbs.java Fri Nov 6 06:18:44 2015 @@ -22,6 +22,9 @@ public class LibraryPresenationThumbs { private String name = ""; private LibraryPresentationThumb[] thumbs = null; + + public LibraryPresenationThumbs() {} + public String getName() { return name; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentation.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentation.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentation.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentation.java Fri Nov 6 06:18:44 2015 @@ -25,6 +25,8 @@ public class LibraryPresentation { private LibraryPresentationFile swfDocument = null; private LibraryPresenationThumbs thumbs = null; + public LibraryPresentation() {} + public LibraryPresentationFile getOriginalDocument() { return originalDocument; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationFile.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationFile.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationFile.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationFile.java Fri Nov 6 06:18:44 2015 @@ -25,6 +25,8 @@ public class LibraryPresentationFile { private String lastmod = null; private Long size = null; + public LibraryPresentationFile() {} + public String getName() { return name; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationThumb.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationThumb.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationThumb.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/LibraryPresentationThumb.java Fri Nov 6 06:18:44 2015 @@ -25,6 +25,8 @@ public class LibraryPresentationThumb { private String lastmod = null; private Long size = null; + public LibraryPresentationThumb() {} + public String getName() { return name; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/file/PresentationObject.java Fri Nov 6 06:18:44 2015 @@ -31,6 +31,8 @@ public class PresentationObject { private FilesObject swfDocument; LinkedList<FilesObject> thumbs; + public PresentationObject() {} + public FilesObject getOriginalDocument() { return originalDocument; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/record/RecordingDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/record/RecordingDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/record/RecordingDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/record/RecordingDTO.java Fri Nov 6 06:18:44 2015 @@ -22,7 +22,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -import org.apache.openmeetings.db.entity.record.FlvRecording; +import org.apache.openmeetings.db.entity.record.Recording; public class RecordingDTO { private Long id; @@ -39,12 +39,12 @@ public class RecordingDTO { public RecordingDTO() {} - public RecordingDTO(FlvRecording r) { - this.id = r.getFlvRecordingId(); + public RecordingDTO(Recording r) { + this.id = r.getId(); this.name = r.getFileName(); this.flvName = r.getFileHash(); this.aviName = r.getAlternateDownload(); - this.roomId = r.getRoom_id(); + this.roomId = r.getRoomId(); this.status = r.getStatus().name(); this.interview = r.getIsInterview(); this.start = r.getRecordStart(); @@ -141,10 +141,10 @@ public class RecordingDTO { this.height = height; } - public static List<RecordingDTO> list(List<FlvRecording> l) { + public static List<RecordingDTO> list(List<Recording> l) { List<RecordingDTO> rList = new ArrayList<RecordingDTO>(); if (l != null) { - for (FlvRecording r : l) { + for (Recording r : l) { rList.add(new RecordingDTO(r)); } } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/BrowserStatus.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/BrowserStatus.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/BrowserStatus.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/BrowserStatus.java Fri Nov 6 06:18:44 2015 @@ -23,6 +23,8 @@ public class BrowserStatus { private boolean browserInited = false; private String currentURL = ""; + public BrowserStatus() {} + public boolean isBrowserInited() { return browserInited; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Cliparts.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Cliparts.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Cliparts.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/Cliparts.java Fri Nov 6 06:18:44 2015 @@ -26,6 +26,8 @@ public class Cliparts { private String[] generalList; private List<Cliparts> subCategories; + public Cliparts() {} + public String[] getGeneralList() { return generalList; } Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/InvitationDTO.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,210 @@ +/* + * 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.room; + +import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; + +import java.io.Serializable; +import java.security.NoSuchAlgorithmException; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Date; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +import org.apache.openmeetings.db.dao.room.RoomDao; +import org.apache.openmeetings.db.dao.user.UserDao; +import org.apache.openmeetings.db.entity.room.Invitation; +import org.apache.openmeetings.db.entity.room.Invitation.Valid; +import org.apache.openmeetings.db.entity.user.User.Type; +import org.apache.openmeetings.util.crypt.MD5; +import org.apache.openmeetings.util.crypt.ManageCryptStyle; +import org.red5.logging.Red5LoggerFactory; +import org.slf4j.Logger; + +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class InvitationDTO implements Serializable { + private static final long serialVersionUID = 1L; + private static final Logger log = Red5LoggerFactory.getLogger(InvitationDTO.class, webAppRootKey); + private static ThreadLocal<SimpleDateFormat> SDF = new ThreadLocal<SimpleDateFormat>() { + protected SimpleDateFormat initialValue() { + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + }; + }; + + private String email; + private String firstname; + private String lastname; + private String message; + private String subject; + private Long roomId; + private boolean passwordProtected; + private String password; + private Valid valid; + private String validFrom; + private String validTo; + private long languageId; + + public InvitationDTO() {} + + public String getEmail() { + return email; + } + public void setEmail(String email) { + this.email = email; + } + public String getFirstname() { + return firstname; + } + public void setFirstname(String firstname) { + this.firstname = firstname; + } + public String getLastname() { + return lastname; + } + public void setLastname(String lastname) { + this.lastname = lastname; + } + public String getMessage() { + return message; + } + public void setMessage(String message) { + this.message = message; + } + public String getSubject() { + return subject; + } + public void setSubject(String subject) { + this.subject = subject; + } + public Long getRoomId() { + return roomId; + } + public void setRoomId(Long roomId) { + this.roomId = roomId; + } + public boolean isPasswordProtected() { + return passwordProtected; + } + public void setPasswordProtected(boolean passwordProtected) { + this.passwordProtected = passwordProtected; + } + public String getPassword() { + return password; + } + public void setPassword(String password) { + this.password = password; + } + public Valid getValid() { + return valid; + } + public void setValid(Valid valid) { + this.valid = valid; + } + /** + * Method to get valid from date-time in format YYYY-MM-dd HH:mm:ss + * + * @return date-time in format YYYY-MM-dd HH:mm:ss + */ + public String getValidFrom() { + return validFrom; + } + /** + * Method to set valid from date-time in format YYYY-MM-dd HH:mm:ss + * + * @param validFrom date-time in format YYYY-MM-dd HH:mm:ss + */ + public void setValidFrom(String validFrom) { + this.validFrom = validFrom; + } + /** + * Method to get valid to date-time in format YYYY-MM-dd HH:mm:ss + * + * @return date-time in format YYYY-MM-dd HH:mm:ss + */ + public String getValidTo() { + return validTo; + } + /** + * Method to set valid to date-time in format YYYY-MM-dd HH:mm:ss + * + * @param validFrom date-time in format YYYY-MM-dd HH:mm:ss + */ + public void setValidTo(String validTo) { + this.validTo = validTo; + } + public long getLanguageId() { + return languageId; + } + public void setLanguageId(long languageId) { + this.languageId = languageId; + } + + public Invitation get(Long userId, UserDao userDao, RoomDao roomDao) { + Invitation i = new Invitation(); + String hashRaw = "HASH" + (System.currentTimeMillis()); + try { + i.setHash(MD5.do_checksum(hashRaw)); + } catch (NoSuchAlgorithmException e) { + //FIXME TODO need to throw other exception + log.error("Unexpected error while creating invitation", e); + throw new RuntimeException(e); + } + i.setPasswordProtected(passwordProtected); + if (passwordProtected) { + i.setPassword(ManageCryptStyle.getInstanceOfCrypt().createPassPhrase(password)); + } + + i.setUsed(false); + i.setValid(valid); + + try { + // valid period of Invitation + switch (valid) { + case Period: + i.setValidFrom(new Date(SDF.get().parse(validFrom).getTime() - (5 * 60 * 1000))); + i.setValidTo(SDF.get().parse(validTo)); + break; + case Endless: + case OneTime: + default: + break; + } + } catch (ParseException e) { + //FIXME TODO need to throw other exception + log.error("Unexpected error while creating invitation", e); + throw new RuntimeException(e); + } + + i.setDeleted(false); + + i.setInvitedBy(userDao.get(userId)); + i.setInvitee(userDao.getContact(email, firstname, lastname, userId)); + if (Type.contact == i.getInvitee().getType()) { + i.getInvitee().setLanguageId(languageId); + } + i.setRoom(roomDao.get(roomId)); + i.setInserted(new Date()); + i.setAppointment(null); + return i; + } +} Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomCountBean.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomCountBean.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomCountBean.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomCountBean.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,53 @@ +/* + * 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.room; + +public class RoomCountBean { + private long roomId; + private String roomName; + private Integer roomCount; + private Integer maxUser; + + public RoomCountBean() {} + + public long getRoomId() { + return roomId; + } + public void setRoomId(long roomId) { + this.roomId = roomId; + } + public String getRoomName() { + return roomName; + } + public void setRoomName(String roomName) { + this.roomName = roomName; + } + public Integer getRoomCount() { + return roomCount; + } + public void setRoomCount(Integer roomCount) { + this.roomCount = roomCount; + } + public Integer getMaxUser() { + return maxUser; + } + public void setMaxUser(Integer maxUser) { + this.maxUser = maxUser; + } +} Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomDTO.java Fri Nov 6 06:18:44 2015 @@ -18,17 +18,24 @@ */ package org.apache.openmeetings.db.dto.room; +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.room.Room; -import org.apache.openmeetings.db.entity.room.RoomType; -public class RoomDTO { +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class RoomDTO implements Serializable { + private static final long serialVersionUID = 1L; private Long id; private String name; private String comment; - private RoomType roomtype; + private Room.Type type; private Long numberOfPartizipants = new Long(4); private boolean appointment; private String confno; @@ -36,8 +43,13 @@ public class RoomDTO { private boolean demo; private boolean closed; private Integer demoTime; + private Long externalId; + private String externalType; + private String redirectUrl; private boolean moderated; private boolean allowUserQuestions; + private boolean allowRecording; + private boolean waitForRecording; private boolean audioOnly; private boolean topBarHidden; private boolean chatHidden; @@ -50,29 +62,64 @@ public class RoomDTO { public RoomDTO() {} public RoomDTO(Room r) { - id = r.getRooms_id(); + id = r.getId(); name = r.getName(); comment = r.getComment(); - roomtype = r.getRoomtype(); + type = r.getType(); numberOfPartizipants = r.getNumberOfPartizipants(); - appointment = r.getAppointment(); + appointment = r.isAppointment(); confno = r.getConfno(); - isPublic = Boolean.TRUE.equals(r.getIspublic()); - demo = Boolean.TRUE.equals(r.getIsDemoRoom()); - closed = r.getIsClosed(); + isPublic = r.getIspublic(); + demo = r.getIsDemoRoom(); + closed = r.isClosed(); demoTime = r.getDemoTime(); - moderated = Boolean.TRUE.equals(r.getIsModeratedRoom()); - allowUserQuestions = Boolean.TRUE.equals(r.getAllowUserQuestions()); - audioOnly = Boolean.TRUE.equals(r.getIsAudioOnly()); - topBarHidden = Boolean.TRUE.equals(r.getHideTopBar()); - chatHidden = Boolean.TRUE.equals(r.getHideChat()); - activitiesHidden = Boolean.TRUE.equals(r.getHideActivitiesAndActions()); - filesExplorerHidden = Boolean.TRUE.equals(r.getHideFilesExplorer()); - actionsMenuHidden = Boolean.TRUE.equals(r.getHideActionsMenu()); - screenSharingHidden = Boolean.TRUE.equals(r.getHideScreenSharing()); - whiteboardHidden = Boolean.TRUE.equals(r.getHideWhiteboard()); + externalId = r.getExternalId(); + externalType = r.getExternalType(); + redirectUrl = r.getRedirectURL(); + moderated = r.isModerated(); + allowUserQuestions = r.getAllowUserQuestions(); + allowRecording = r.isAllowRecording(); + waitForRecording = r.getWaitForRecording(); + audioOnly = r.isAudioOnly(); + topBarHidden = r.getHideTopBar(); + chatHidden = r.isChatHidden(); + activitiesHidden = r.isActivitiesHidden(); + filesExplorerHidden = r.getHideFilesExplorer(); + actionsMenuHidden = r.getHideActionsMenu(); + screenSharingHidden = r.getHideScreenSharing(); + whiteboardHidden = r.getHideWhiteboard(); + } + + public Room get() { + Room r = new Room(); + r.setId(id); + r.setName(name); + r.setComment(comment); + r.setType(type); + r.setNumberOfPartizipants(numberOfPartizipants); + r.setAppointment(appointment); + r.setConfno(confno); + r.setIspublic(isPublic); + r.setIsDemoRoom(demo); + r.setDemoTime(demoTime); + r.setExternalId(externalId); + r.setExternalType(externalType); + r.setRedirectURL(redirectUrl); + r.setModerated(moderated); + r.setAllowUserQuestions(allowUserQuestions); + r.setAllowRecording(allowRecording); + r.setWaitForRecording(waitForRecording); + r.setAudioOnly(audioOnly); + r.setHideTopBar(topBarHidden); + r.setChatHidden(chatHidden); + r.setActivitiesHidden(activitiesHidden); + r.setHideFilesExplorer(filesExplorerHidden); + r.setHideActionsMenu(actionsMenuHidden); + r.setHideScreenSharing(screenSharingHidden); + r.setHideWhiteboard(whiteboardHidden); + return r; } - + public Long getId() { return id; } @@ -97,12 +144,12 @@ public class RoomDTO { this.comment = comment; } - public RoomType getRoomtype() { - return roomtype; + public Room.Type getType() { + return type; } - public void setRoomtype(RoomType roomtype) { - this.roomtype = roomtype; + public void setType(Room.Type type) { + this.type = type; } public Long getNumberOfPartizipants() { @@ -161,6 +208,22 @@ public class RoomDTO { this.allowUserQuestions = allowUserQuestions; } + public boolean isAllowRecording() { + return allowRecording; + } + + public void setAllowRecording(boolean allowRecording) { + this.allowRecording = allowRecording; + } + + public boolean isWaitForRecording() { + return waitForRecording; + } + + public void setWaitForRecording(boolean waitForRecording) { + this.waitForRecording = waitForRecording; + } + public boolean isAudioOnly() { return audioOnly; } @@ -233,6 +296,30 @@ public class RoomDTO { this.isPublic = isPublic; } + public Long getExternalId() { + return externalId; + } + + public void setExternalId(Long externalId) { + this.externalId = externalId; + } + + public String getExternalType() { + return externalType; + } + + public void setExternalType(String externalType) { + this.externalType = externalType; + } + + public String getRedirectUrl() { + return redirectUrl; + } + + public void setRedirectUrl(String redirectUrl) { + this.redirectUrl = redirectUrl; + } + public boolean isClosed() { return closed; } Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomOptionsDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomOptionsDTO.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomOptionsDTO.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomOptionsDTO.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,83 @@ +/* + * 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.room; + +import java.io.Serializable; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class RoomOptionsDTO implements Serializable { + private static final long serialVersionUID = 1L; + private Long roomId; + private Long recordingId; + private boolean moderator; + private boolean showAudioVideoTest; + private boolean showNickNameDialog; + private boolean allowSameURLMultipleTimes; + private boolean allowRecording; + + public RoomOptionsDTO() {} + + public Long getRoomId() { + return roomId; + } + public void setRoomId(Long roomId) { + this.roomId = roomId; + } + public Long getRecordingId() { + return recordingId; + } + public void setRecordingId(Long recordingId) { + this.recordingId = recordingId; + } + public boolean isModerator() { + return moderator; + } + public void setModerator(boolean moderator) { + this.moderator = moderator; + } + public boolean isShowAudioVideoTest() { + return showAudioVideoTest; + } + public void setShowAudioVideoTest(boolean showAudioVideoTest) { + this.showAudioVideoTest = showAudioVideoTest; + } + public boolean isShowNickNameDialog() { + return showNickNameDialog; + } + public void setShowNickNameDialog(boolean showNickNameDialog) { + this.showNickNameDialog = showNickNameDialog; + } + public boolean isAllowSameURLMultipleTimes() { + return allowSameURLMultipleTimes; + } + public void setAllowSameURLMultipleTimes(boolean allowSameURLMultipleTimes) { + this.allowSameURLMultipleTimes = allowSameURLMultipleTimes; + } + public boolean isAllowRecording() { + return allowRecording; + } + public void setAllowRecording(boolean allowRecording) { + this.allowRecording = allowRecording; + } +} Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomReturn.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomReturn.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomReturn.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomReturn.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,73 @@ +/* + * 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.room; + +import java.util.Date; + +public class RoomReturn { + + private Long roomId; + private String name; + private String creator; + private Date created; + private RoomUser[] roomUser; + + public RoomReturn() {} + + public Long getRoomId() { + return roomId; + } + + public void setRoomId(Long roomId) { + this.roomId = roomId; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getCreator() { + return creator; + } + + public void setCreator(String creator) { + this.creator = creator; + } + + public Date getCreated() { + return created; + } + + public void setCreated(Date created) { + this.created = created; + } + + public RoomUser[] getRoomUser() { + return roomUser; + } + + public void setRoomUser(RoomUser[] roomUser) { + this.roomUser = roomUser; + } + +} Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomSearchResult.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomSearchResult.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomSearchResult.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomSearchResult.java Fri Nov 6 06:18:44 2015 @@ -30,14 +30,18 @@ public class RoomSearchResult { private List<RoomDTO> result; private Long errorId; + public RoomSearchResult() {} + public RoomSearchResult(SearchResult<Room> copy) { - this.objectName = copy.getObjectName(); - this.records = copy.getRecords(); - this.result = new ArrayList<RoomDTO>(copy.getResult().size()); - for (Room r : copy.getResult()) { - result.add(new RoomDTO(r)); + if (copy != null) { + this.objectName = copy.getObjectName(); + this.records = copy.getRecords(); + this.result = new ArrayList<RoomDTO>(copy.getResult().size()); + for (Room r : copy.getResult()) { + result.add(new RoomDTO(r)); + } + this.errorId = copy.getErrorId(); } - this.errorId = copy.getErrorId(); } public String getObjectName() { Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomStatus.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomStatus.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomStatus.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomStatus.java Fri Nov 6 06:18:44 2015 @@ -28,6 +28,8 @@ public class RoomStatus { BrowserStatus browserStatus; Boolean roomFull = false; + public RoomStatus() {} + public List<Client> getClientList() { return clientList; } Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomUser.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomUser.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomUser.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/RoomUser.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,69 @@ +/* + * 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.room; + +public class RoomUser { + + private String firstname; + private String lastname; + private String publicSID; + private long broadcastId; + private Boolean isBroadCasting; + private String avsettings; + + public RoomUser() {} + + public String getFirstname() { + return firstname; + } + public void setFirstname(String firstname) { + this.firstname = firstname; + } + public String getLastname() { + return lastname; + } + public void setLastname(String lastname) { + this.lastname = lastname; + } + public Boolean getIsBroadCasting() { + return isBroadCasting; + } + public void setIsBroadCasting(Boolean isBroadCasting) { + this.isBroadCasting = isBroadCasting; + } + public String getAvsettings() { + return avsettings; + } + public void setAvsettings(String avsettings) { + this.avsettings = avsettings; + } + public String getPublicSID() { + return publicSID; + } + public void setPublicSID(String publicSID) { + this.publicSID = publicSID; + } + public long getBroadcastId() { + return broadcastId; + } + public void setBroadcastId(long broadcastId) { + this.broadcastId = broadcastId; + } + +} Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObject.java Fri Nov 6 06:18:44 2015 @@ -34,6 +34,8 @@ public class WhiteboardObject { private Map<String, List> roomItems = new HashMap<String, List>(); private Date created = new Date(); + public WhiteboardObject() {} + public Long getWhiteBoardId() { return whiteBoardId; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObjectList.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObjectList.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObjectList.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardObjectList.java Fri Nov 6 06:18:44 2015 @@ -26,6 +26,8 @@ public class WhiteboardObjectList { private Long room_id; private Map<Long,WhiteboardObject> whiteboardObjects = new HashMap<Long,WhiteboardObject>(); + public WhiteboardObjectList() {} + public Long getRoom_id() { return room_id; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardSyncLockObject.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardSyncLockObject.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardSyncLockObject.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/room/WhiteboardSyncLockObject.java Fri Nov 6 06:18:44 2015 @@ -29,6 +29,8 @@ public class WhiteboardSyncLockObject { private Date addtime; private Date starttime; + public WhiteboardSyncLockObject() {} + public String getPublicSID() { return publicSID; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/server/ServerDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/server/ServerDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/server/ServerDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/server/ServerDTO.java Fri Nov 6 06:18:44 2015 @@ -18,6 +18,14 @@ */ package org.apache.openmeetings.db.dto.server; +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.server.Server; /** @@ -28,25 +36,54 @@ import org.apache.openmeetings.db.entity * @author sebawagner * */ -public class ServerDTO { - +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class ServerDTO implements Serializable { + private static final long serialVersionUID = 1L; private Long id; + private String name; private String address; private int port; - private String protocol; + private String user; + private String password; private String webapp; + private String protocol; + private boolean active; + private String comment; - public ServerDTO(Server server) { - if (server == null) { + public ServerDTO() {} + + public ServerDTO(Server s) { + if (s == null) { return; } - id = server.getId(); - address = server.getAddress(); - port = server.getPort(); - protocol = server.getProtocol(); - webapp = server.getWebapp(); + id = s.getId(); + name = s.getName(); + address = s.getAddress(); + port = s.getPort(); + user = s.getUser(); + password = s.getPass(); + webapp = s.getWebapp(); + protocol = s.getProtocol(); + active = s.isActive(); + comment = s.getComment(); + } + + public Server get() { + Server s = new Server(); + s.setId(id); + s.setName(name); + s.setAddress(address); + s.setPort(port); + s.setUser(user); + s.setPass(password); + s.setWebapp(webapp); + s.setProtocol(protocol); + s.setActive(active); + s.setComment(comment); + return s; } - + public Long getId() { return id; } @@ -86,10 +123,59 @@ public class ServerDTO { public void setWebapp(String webapp) { this.webapp = webapp; } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getUser() { + return user; + } + + public void setUser(String user) { + this.user = user; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public boolean isActive() { + return active; + } + + public void setActive(boolean active) { + this.active = active; + } + + public String getComment() { + return comment; + } + + public void setComment(String comment) { + this.comment = comment; + } @Override public String toString() { return "id "+id+" address "+address+" port "+port+" protocol "+protocol; } + public static List<ServerDTO> list(List<Server> l) { + List<ServerDTO> list = new ArrayList<>(); + if (l != null) { + for (Server s : l) { + list.add(new ServerDTO(s)); + } + } + return list; + } } Added: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/ExternalUserDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/ExternalUserDTO.java?rev=1712911&view=auto ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/ExternalUserDTO.java (added) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/ExternalUserDTO.java Fri Nov 6 06:18:44 2015 @@ -0,0 +1,83 @@ +/* + * 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.user; + +import java.io.Serializable; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement +@XmlAccessorType(XmlAccessType.FIELD) +public class ExternalUserDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String login; + private String firstname; + private String lastname; + private String profilePictureUrl; + private String email; + private String externalId; + private String externalType; + + public ExternalUserDTO() {} + + public String getLogin() { + return login; + } + public void setLogin(String login) { + this.login = login; + } + public String getFirstname() { + return firstname; + } + public void setFirstname(String firstname) { + this.firstname = firstname; + } + public String getLastname() { + return lastname; + } + public void setLastname(String lastname) { + this.lastname = lastname; + } + public String getProfilePictureUrl() { + return profilePictureUrl; + } + public void setProfilePictureUrl(String profilePictureUrl) { + this.profilePictureUrl = profilePictureUrl; + } + public String getEmail() { + return email; + } + public void setEmail(String email) { + this.email = email; + } + 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; + } +} Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/UserDTO.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/UserDTO.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/UserDTO.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/dto/user/UserDTO.java Fri Nov 6 06:18:44 2015 @@ -18,40 +18,61 @@ */ package org.apache.openmeetings.db.dto.user; -import java.util.ArrayList; -import java.util.List; +import java.io.Serializable; +import java.util.Set; +import javax.xml.bind.annotation.XmlRootElement; + +import org.apache.openmeetings.db.dao.user.UserDao; import org.apache.openmeetings.db.entity.user.Address; import org.apache.openmeetings.db.entity.user.User; import org.apache.openmeetings.db.entity.user.User.Right; import org.apache.openmeetings.db.entity.user.User.Type; -public class UserDTO { +@XmlRootElement +public class UserDTO implements Serializable { + private static final long serialVersionUID = 1L; private Long id; + private String login; + private String password; private String firstname; private String lastname; - private List<String> rights; - private String login; - private Long language_id; - private Address adresses; + private Set<Right> rights; + private Long languageId; + private Address address; private String timeZoneId; + private String externalId; + private String externalType; private Type type = Type.user; public UserDTO() {} public UserDTO(User u) { - id = u.getUser_id(); + id = u.getId(); firstname = u.getFirstname(); lastname = u.getLastname(); - rights = new ArrayList<>(); - for (Right r : u.getRights()) { - rights.add(r.name()); - } + rights = u.getRights(); login = u.getLogin(); - language_id = u.getLanguage_id(); - adresses = u.getAdresses(); + languageId = u.getLanguageId(); + address = u.getAddress(); timeZoneId = u.getTimeZoneId(); type = u.getType(); + externalId = u.getExternalId(); + externalType = u.getExternalType(); + } + + public User get(UserDao userDao) { + User u = id == null ? new User() : userDao.get(id); + u.setFirstname(firstname); + u.setLastname(lastname); + u.setRights(rights); + u.setLanguageId(languageId); + u.setAddress(address); + u.setTimeZoneId(timeZoneId); + u.setExternalId(externalId); + u.setExternalType(externalType); + u.setType(type); + return u; } public Long getId() { @@ -78,11 +99,11 @@ public class UserDTO { this.lastname = lastname; } - public List<String> getRights() { + public Set<Right> getRights() { return rights; } - public void setRights(List<String> rights) { + public void setRights(Set<Right> rights) { this.rights = rights; } @@ -94,20 +115,20 @@ public class UserDTO { this.login = login; } - public Long getLanguage_id() { - return language_id; + public Long getLanguageId() { + return languageId; } - public void setLanguage_id(Long language_id) { - this.language_id = language_id; + public void setLanguageId(Long languageId) { + this.languageId = languageId; } - public Address getAdresses() { - return adresses; + public Address getAddress() { + return address; } - public void setAdresses(Address adresses) { - this.adresses = adresses; + public void setAddress(Address address) { + this.address = address; } public String getTimeZoneId() { @@ -125,4 +146,28 @@ public class UserDTO { public void setType(Type type) { this.type = type; } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + 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; + } } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/IDataProviderEntity.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/IDataProviderEntity.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/IDataProviderEntity.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/IDataProviderEntity.java Fri Nov 6 06:18:44 2015 @@ -18,6 +18,10 @@ */ package org.apache.openmeetings.db.entity; -public interface IDataProviderEntity { +import java.io.Serializable; +public interface IDataProviderEntity extends Serializable { + Long getId(); + + void setId(Long id); } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ChatMessage.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ChatMessage.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ChatMessage.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ChatMessage.java Fri Nov 6 06:18:44 2015 @@ -18,7 +18,6 @@ */ package org.apache.openmeetings.db.entity.basic; -import java.io.Serializable; import java.util.Date; import javax.persistence.Column; @@ -43,18 +42,25 @@ import org.simpleframework.xml.Root; @Entity @NamedQueries({ @NamedQuery(name = "getChatMessageById", query = "SELECT c FROM ChatMessage c WHERE c.id = :id") - , @NamedQuery(name = "getChatMessagesByUser", query = "SELECT DISTINCT c FROM ChatMessage c WHERE c.fromUser.user_id = :userId OR c.toUser.user_id = :userId ORDER BY c.sent DESC") - , @NamedQuery(name = "getGlobalChatMessages", query = "SELECT DISTINCT c FROM ChatMessage c WHERE c.toUser IS NULL ORDER BY c.sent DESC") -})@Table(name = "chat") + , @NamedQuery(name = "getChatMessages", query = "SELECT c FROM ChatMessage c ORDER BY c.id") + , @NamedQuery(name = "getGlobalChatMessages", query = "SELECT c FROM ChatMessage c WHERE c.toUser IS NULL AND c.toRoom IS NULL ORDER BY c.sent DESC") + , @NamedQuery(name = "getChatMessagesByRoom", query = "SELECT c FROM ChatMessage c WHERE c.toUser.id IS NULL AND c.toRoom.id = :roomId" + + " AND (true = :all OR (false = :all AND c.needModeration = false)) ORDER BY c.sent DESC") + , @NamedQuery(name = "getChatMessagesByUser", query = "SELECT c FROM ChatMessage c WHERE c.toUser IS NOT NULL AND c.toRoom IS NULL AND " + + "(c.fromUser.id = :userId OR c.toUser.id = :userId) ORDER BY c.sent DESC") + , @NamedQuery(name = "getChatMessagesByUserTime", query = "SELECT c FROM ChatMessage c WHERE c.toUser IS NOT NULL AND c.toRoom IS NULL AND " + + "(c.fromUser.id = :userId OR c.toUser.id = :userId) AND c.sent > :date ORDER BY c.sent DESC") +}) +@Table(name = "chat") @Root(name = "ChatMessage") -public class ChatMessage implements Serializable, IDataProviderEntity { - private static final long serialVersionUID = 4248081997318897605L; +public class ChatMessage implements IDataProviderEntity { + private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") @Element(name = "id", data = true) - private long id; + private Long id; @ManyToOne @JoinColumn(name = "from_user_id") @@ -83,11 +89,15 @@ public class ChatMessage implements Seri @Element(name = "sent", data = true, required = false) private Date sent; - public long getId() { + @Column(name = "need_moderation", nullable = false) + @Element(name = "needModeration", data = true, required = false) + private boolean needModeration; + + public Long getId() { return id; } - public void setId(long id) { + public void setId(Long id) { this.id = id; } @@ -130,4 +140,12 @@ public class ChatMessage implements Seri public void setSent(Date sent) { this.sent = sent; } + + public boolean isNeedModeration() { + return needModeration; + } + + public void setNeedModeration(boolean needModeration) { + this.needModeration = needModeration; + } } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Configuration.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Configuration.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Configuration.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/Configuration.java Fri Nov 6 06:18:44 2015 @@ -18,7 +18,6 @@ */ package org.apache.openmeetings.db.entity.basic; -import java.io.Serializable; import java.util.Date; import javax.persistence.Column; @@ -55,8 +54,8 @@ import org.simpleframework.xml.Root; }) @Table(name = "configuration") @Root(name = "config") -public class Configuration implements Serializable, IDataProviderEntity { - private static final long serialVersionUID = -6129473946508963339L; +public class Configuration implements IDataProviderEntity { + private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") @@ -118,11 +117,11 @@ public class Configuration implements Se this.conf_value = conf_value; } - public Long getConfiguration_id() { + public Long getId() { return configuration_id; } - public void setConfiguration_id(Long configuration_id) { + public void setId(Long configuration_id) { this.configuration_id = configuration_id; } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ErrorValue.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ErrorValue.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ErrorValue.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/ErrorValue.java Fri Nov 6 06:18:44 2015 @@ -18,68 +18,77 @@ */ package org.apache.openmeetings.db.entity.basic; -import java.io.Serializable; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.EnumType; +import javax.persistence.Enumerated; import javax.persistence.Id; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; +import org.apache.openmeetings.db.entity.IDataProviderEntity; + @Entity @NamedQueries({ - @NamedQuery(name = "getErrorValueById", query = "SELECT e FROM ErrorValue e WHERE e.errorvalues_id = :id AND e.deleted = false") + @NamedQuery(name = "getErrorValueById", query = "SELECT e FROM ErrorValue e WHERE e.id = :id AND e.deleted = false") }) @Table(name = "errorvalue") -public class ErrorValue implements Serializable { - private static final long serialVersionUID = -1892810463706968018L; - +public class ErrorValue implements IDataProviderEntity { + private static final long serialVersionUID = 1L; + + public enum Type { + error + , info + } + @Id @Column(name = "id") - private Long errorvalues_id; - - @Column(name = "errortype_id") - private Long errortype_id; + private Long id; + + @Column(name = "type") + @Enumerated(EnumType.STRING) + private Type type; - @Column(name = "fieldvalues_id") - private Long fieldvalues_id; + @Column(name = "label_id") + private Long labelId; - @Column(name = "starttime") - private Date starttime; + @Column(name = "inserted") + private Date inserted; - @Column(name = "updatetime") - private Date updatetime; + @Column(name = "updated") + private Date updated; @Column(name = "deleted") private boolean deleted; - public Long getErrorvalues_id() { - return errorvalues_id; + public Long getId() { + return id; } - public void setErrorvalues_id(Long errorvalues_id) { - this.errorvalues_id = errorvalues_id; + public void setId(Long id) { + this.id = id; } - public Date getStarttime() { - return starttime; + public Date getInserted() { + return inserted; } - public void setStarttime(Date starttime) { - this.starttime = starttime; + public void setInserted(Date inserted) { + this.inserted = inserted; } - public Date getUpdatetime() { - return updatetime; + public Date getUpdated() { + return updated; } - public void setUpdatetime(Date updatetime) { - this.updatetime = updatetime; + public void setUpdated(Date updated) { + this.updated = updated; } - public boolean getDeleted() { + public boolean isDeleted() { return deleted; } @@ -87,20 +96,19 @@ public class ErrorValue implements Seria this.deleted = deleted; } - public Long getFieldvalues_id() { - return fieldvalues_id; + public Long getLabelId() { + return labelId; } - public void setFieldvalues_id(Long fieldvalues_id) { - this.fieldvalues_id = fieldvalues_id; + public void setLabelId(Long labelId) { + this.labelId = labelId; } - public Long getErrortype_id() { - //return errorType.getErrortype_id(); - return errortype_id; + public Type getType() { + return type; } - public void setErrortype_id(Long errortype_id) { - this.errortype_id = errortype_id; + public void setType(Type type) { + this.type = type; } } Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/MailMessage.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/MailMessage.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/MailMessage.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/basic/MailMessage.java Fri Nov 6 06:18:44 2015 @@ -43,6 +43,8 @@ import org.apache.openmeetings.db.entity }) @Table(name = "email_queue") public class MailMessage implements IDataProviderEntity { + private static final long serialVersionUID = 1L; + public enum Status { NONE , SENDING Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/calendar/Appointment.java Fri Nov 6 06:18:44 2015 @@ -18,7 +18,6 @@ */ package org.apache.openmeetings.db.entity.calendar; -import java.io.Serializable; import java.util.Calendar; import java.util.Date; import java.util.List; @@ -27,6 +26,8 @@ import java.util.TimeZone; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; +import javax.persistence.EnumType; +import javax.persistence.Enumerated; import javax.persistence.FetchType; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; @@ -40,13 +41,14 @@ import javax.persistence.OneToMany; import javax.persistence.Table; import org.apache.openjpa.persistence.jdbc.ForeignKey; +import org.apache.openmeetings.db.entity.IDataProviderEntity; import org.apache.openmeetings.db.entity.room.Room; import org.apache.openmeetings.db.entity.user.User; import org.simpleframework.xml.Element; import org.simpleframework.xml.Root; @Entity -@Table(name = "appointments") +@Table(name = "appointment") @NamedQueries({ @NamedQuery(name="getAppointmentById", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.id = :id") , @NamedQuery(name="getAppointmentByIdAny", query="SELECT a FROM Appointment a WHERE a.id = :id") @@ -55,9 +57,9 @@ import org.simpleframework.xml.Root; query="SELECT a FROM Appointment a " + "WHERE a.deleted = false " + " AND ( " - + " (a.start BETWEEN :starttime AND :endtime) " - + " OR (a.end BETWEEN :starttime AND :endtime) " - + " OR (a.start < :starttime AND a.end > :endtime) " + + " (a.start BETWEEN :start AND :end) " + + " OR (a.end BETWEEN :start AND :end) " + + " OR (a.start < :start AND a.end > :end) " + " )" + " AND a.owner.user_id = :userId" ) @@ -67,49 +69,93 @@ import org.simpleframework.xml.Root; + " AND a.id NOT IN (SELECT a.id FROM Appointment a WHERE a.owner.user_id = :userId)" + " AND mm.connectedEvent = false " //TODO review: isConnectedEvent is set for the MeetingMember if event is created from "Private Messages", it is weird + " AND ( " - + " (a.start BETWEEN :starttime AND :endtime) " - + " OR (a.end BETWEEN :starttime AND :endtime) " - + " OR (a.start < :starttime AND a.end > :endtime) " + + " (a.start BETWEEN :start AND :end) " + + " OR (a.end BETWEEN :start AND :end) " + + " OR (a.start < :start AND a.end > :end) " + " )" ) , @NamedQuery(name="appointmentsInRangeRemind", query="SELECT a FROM Appointment a " //only ReminderType simple mail is concerned! + "WHERE a.deleted = false AND a.reminderEmailSend = false" - + " AND (a.remind.typId = 2 OR a.remind.typId = 3) " + + " AND (a.reminder <> :none) " + " AND ( " - + " (a.start BETWEEN :starttime AND :endtime) " - + " OR (a.end BETWEEN :starttime AND :endtime) " - + " OR (a.start < :starttime AND a.end > :endtime) " + + " (a.start BETWEEN :start AND :end) " + + " OR (a.end BETWEEN :start AND :end) " + + " OR (a.start < :start AND a.end > :end) " + " )" ) , @NamedQuery(name="getAppointmentByRoomId", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.room.rooms_id = :room_id") + , @NamedQuery(name="getAppointmentByOwnerRoomId", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.owner.id = :userId AND a.room.id = :roomId") //TODO this query returns duplicates if the user books an appointment with //his own user as second meeting-member, swagner 19.02.2012 , @NamedQuery(name="appointmentsInRangeByUser", query="SELECT a FROM MeetingMember mm, IN(mm.appointment) a " + "WHERE mm.deleted = false AND mm.user.user_id <> a.owner.user_id AND mm.user.user_id = :userId " + " AND ( " - + " (a.start BETWEEN :starttime AND :endtime) " - + " OR (a.end BETWEEN :starttime AND :endtime) " - + " OR (a.start < :starttime AND a.end > :endtime) " + + " (a.start BETWEEN :start AND :end) " + + " OR (a.end BETWEEN :start AND :end) " + + " OR (a.start < :start AND a.end > :end) " + " )" ) , @NamedQuery(name="appointedRoomsInRangeByUser", query="SELECT a.room FROM MeetingMember mm, IN(mm.appointment) a " + "WHERE mm.deleted = false AND mm.user.user_id <> a.owner.user_id AND mm.user.user_id = :userId " + " AND ( " - + " (a.start BETWEEN :starttime AND :endtime) " - + " OR (a.end BETWEEN :starttime AND :endtime) " - + " OR (a.start < :starttime AND a.end > :endtime) " + + " (a.start BETWEEN :start AND :end) " + + " OR (a.end BETWEEN :start AND :end) " + + " OR (a.start < :start AND a.end > :end) " + " )" ) , @NamedQuery(name="getNextAppointment", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.start > :start AND a.owner.user_id = :userId") , @NamedQuery(name="getAppointmentsByTitle", query="SELECT a FROM Appointment a WHERE a.deleted = false AND a.title LIKE :title AND a.owner.user_id = :userId") }) @Root(name="appointment") -public class Appointment implements Serializable { - private static final long serialVersionUID = 2016808778885761525L; +public class Appointment implements IDataProviderEntity { + private static final long serialVersionUID = 1L; + public static final int REMINDER_NONE_ID = 1; + public static final int REMINDER_EMAIL_ID = 2; + public static final int REMINDER_ICAL_ID = 3; + public enum Reminder { + none(REMINDER_NONE_ID) + , email(REMINDER_EMAIL_ID) + , ical(REMINDER_ICAL_ID); + + private int id; + + Reminder() {} //default; + Reminder(int id) { + this.id = id; + } + + public int getId() { + return id; + } + + public static Reminder get(Long type) { + return get(type == null ? 1 : type.intValue()); + } + + public static Reminder get(Integer type) { + return get(type == null ? 1 : type.intValue()); + } + + public static Reminder get(int type) { + Reminder r = Reminder.none; + switch (type) { + case REMINDER_EMAIL_ID: + r = Reminder.email; + break; + case REMINDER_ICAL_ID: + r = Reminder.ical; + break; + default: + //no-op + } + return r; + } + } + @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") @@ -124,11 +170,11 @@ public class Appointment implements Seri @Element(name="appointmentLocation", data=true, required=false) private String location; - @Column(name = "appointment_starttime") + @Column(name = "start") @Element(name="appointmentStarttime", data=true) private Date start; - @Column(name = "appointment_endtime") + @Column(name = "end") @Element(name="appointmentEndtime", data=true) private Date end; @@ -138,22 +184,16 @@ public class Appointment implements Seri private String description; @ManyToOne(fetch = FetchType.EAGER) - @JoinColumn(name = "category_id", nullable = true) - @ForeignKey(enabled = true) - @Element(name="categoryId", data=true, required=false) - private AppointmentCategory category; - - @ManyToOne(fetch = FetchType.EAGER) @JoinColumn(name = "user_id", nullable = true) @ForeignKey(enabled = true) @Element(name="users_id", data=true, required=false) private User owner; - @Column(name = "starttime") + @Column(name = "inserted") @Element(name="inserted", data=true, required=false) private Date inserted; - @Column(name = "updatetime") + @Column(name = "updated") @Element(name="updated", data=true, required=false) private Date updated; @@ -161,11 +201,10 @@ public class Appointment implements Seri @Element(data=true) private boolean deleted; - @ManyToOne(fetch = FetchType.EAGER) - @JoinColumn(name = "remind_id", nullable = true) - @ForeignKey(enabled = true) + @Column(name = "reminder") + @Enumerated(EnumType.STRING) @Element(name="typId", data=true, required=false) - private AppointmentReminderTyps remind; + private Reminder reminder = Reminder.none; @Column(name = "isdaily") @Element(data=true, required = false) @@ -283,20 +322,12 @@ public class Appointment implements Seri this.description = description; } - public AppointmentCategory getCategory() { - return category; - } - - public void setCategory(AppointmentCategory category) { - this.category = category; - } - - public AppointmentReminderTyps getRemind() { - return remind; + public Reminder getReminder() { + return reminder; } - public void setRemind(AppointmentReminderTyps remind) { - this.remind = remind; + public void setReminder(Reminder reminder) { + this.reminder = reminder; } public Date getInserted() { Modified: openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java URL: http://svn.apache.org/viewvc/openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java?rev=1712911&r1=1712910&r2=1712911&view=diff ============================================================================== --- openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java (original) +++ openmeetings/branches/3.1.x/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/file/FileExplorerItem.java Fri Nov 6 06:18:44 2015 @@ -18,9 +18,6 @@ */ package org.apache.openmeetings.db.entity.file; -import java.io.Serializable; -import java.util.Date; - import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; @@ -35,267 +32,82 @@ import org.simpleframework.xml.Root; @Entity @NamedQueries({ - @NamedQuery(name="getAllFiles", query="SELECT c FROM FileExplorerItem c ORDER BY c.fileExplorerItemId") - , @NamedQuery(name="getById", query="SELECT c FROM FileExplorerItem c WHERE c.fileExplorerItemId = :fileExplorerItemId") - , @NamedQuery(name="getByHash", query="SELECT c FROM FileExplorerItem c WHERE c.fileHash = :fileHash") + @NamedQuery(name = "getAllFiles", query = "SELECT c FROM FileExplorerItem c ORDER BY c.id") + , @NamedQuery(name = "getFileById", query = "SELECT c FROM FileExplorerItem c WHERE c.id = :id") + , @NamedQuery(name = "getFileByHash", query = "SELECT c FROM FileExplorerItem c WHERE c.fileHash = :fileHash") + , @NamedQuery(name = "getFilesByRoomAndOwner", query = "SELECT c FROM FileExplorerItem c WHERE c.deleted = false " + + " AND c.roomId = :roomId AND c.ownerId = :ownerId ORDER BY c.type ASC, c.fileName ") + , @NamedQuery(name = "getFilesByRoom", query = "SELECT c FROM FileExplorerItem c WHERE c.deleted = false AND c.roomId = :roomId " + + "AND c.ownerId IS NULL AND c.parentItemId IS NULL ORDER BY c.type ASC, c.fileName ") + , @NamedQuery(name = "getFilesByOwner", query = "SELECT c FROM FileExplorerItem c WHERE c.deleted = false AND c.ownerId = :ownerId " + + "AND c.parentItemId IS NULL ORDER BY c.type ASC, c.fileName ") + , @NamedQuery(name = "getFilesByParent", query = "SELECT c FROM FileExplorerItem c WHERE c.deleted = false " + + "AND c.parentItemId = :parentItemId ORDER BY c.type ASC, c.fileName ") + , @NamedQuery(name = "getFileExternal", query = "SELECT c FROM FileExplorerItem c WHERE c.externalFileId = :externalFileId " + + "AND c.externalType LIKE :externalType") }) @Table(name = "fileexploreritem") @Root -public class FileExplorerItem implements Serializable { - private static final long serialVersionUID = 242843782142620566L; +public class FileExplorerItem extends FileItem { + private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.IDENTITY) - @Column(name="id") - @Element(data=true) - private long fileExplorerItemId; - - @Column(name="filename") - @Element(data=true, required = false) - private String fileName; - - @Column(name="filehash") - @Element(data=true, required = false) - private String fileHash; - - @Column(name="parent_fileexploreritem_id") - @Element(data=true) - private Long parentFileExplorerItemId; - - @Column(name="room_id") - @Element(data=true, required=false) - private Long room_id; - - @Column(name="owner_id") - @Element(data=true, required=false) - private Long ownerId;//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="is_folder") - @Element(data=true) - private Boolean isFolder; - - @Column(name="is_image") - @Element(data=true) - private Boolean isImage; - - @Column(name="is_presentation") - @Element(data=true) - private Boolean isPresentation; - - @Column(name="is_video") - @Element(data=true, required=false) - private Boolean isVideo; - - @Column(name="inserted_by") - @Element(data=true) - private Long insertedBy; - - @Column(name="inserted") - @Element(data=true) - private Date inserted; - - @Column(name="updated") - @Element(data=true) - private Date updated; - - @Column(name="deleted") - @Element(data=true) - private boolean deleted; - - @Column(name="filesize") - @Element(data=true, required=false) + @Column(name = "id") + @Element(data = true, name = "fileExplorerItemId") + private Long id; + + @Column(name = "filesize") + @Element(data = true, required = false) private Long fileSize; - - @Column(name="flv_width") - @Element(data=true, required=false) - private Integer flvWidth; - - @Column(name="flv_height") - @Element(data=true, required=false) - private Integer flvHeight; - - @Column(name="preview_image") - @Element(data=true, required = false) - private String previewImage; - - @Column(name="wml_file_path") - @Element(data=true, required = false) + + @Column(name = "wml_file_path") + @Element(data = true, required = false) private String wmlFilePath; - - @Column(name="is_stored_wml_file") - @Element(data=true, required = false) - private Boolean isStoredWmlFile; - - @Column(name="is_chart") - @Element(data=true, required = false) - private Boolean isChart; - - @Column(name="external_file_id") - private Long externalFileId; - - @Column(name="external_type") - private String externalType; - - - public long getFileExplorerItemId() { - return fileExplorerItemId; - } - public void setFileExplorerItemId(long fileExplorerItemId) { - this.fileExplorerItemId = fileExplorerItemId; - } - - public String getFileName() { - return fileName; - } - public void setFileName(String fileName) { - this.fileName = fileName; - } - - public String getFileHash() { - return fileHash; - } - public void setFileHash(String fileHash) { - this.fileHash = fileHash; - } - - public Long getParentFileExplorerItemId() { - return parentFileExplorerItemId; - } - public void setParentFileExplorerItemId(Long parentFileExplorerItemId) { - this.parentFileExplorerItemId = parentFileExplorerItemId; - } - - public Long getOwnerId() { - return ownerId; - } - public void setOwnerId(Long ownerId) { - this.ownerId = ownerId; - } - - public Long getRoom_id() { - return room_id; - } - public void setRoom_id(Long room_id) { - this.room_id = room_id; - } - - public Boolean getIsFolder() { - return isFolder; - } - public void setIsFolder(Boolean isFolder) { - this.isFolder = isFolder; - } - - public Boolean getIsImage() { - return isImage; - } - public void setIsImage(Boolean isImage) { - this.isImage = isImage; - } - - public Boolean getIsVideo() { - return isVideo; - } - public void setIsVideo(Boolean isVideo) { - this.isVideo = isVideo; - } - - public Boolean getIsPresentation() { - return isPresentation; - } - public void setIsPresentation(Boolean isPresentation) { - this.isPresentation = isPresentation; - } - - 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 boolean getDeleted() { - return deleted; - } - public void setDeleted(boolean deleted) { - this.deleted = deleted; - } - - public Date getUpdated() { - return updated; + @Column(name = "external_file_id") + private Long externalId; + + @Column(name = "external_type") + private String externalType; + + public Long getId() { + return id; } - public void setUpdated(Date updated) { - this.updated = updated; + + public void setId(Long id) { + this.id = id; } - + public Long getFileSize() { return fileSize; } + public void setFileSize(Long fileSize) { this.fileSize = fileSize; } - - public Integer getFlvWidth() { - return flvWidth; - } - public void setFlvWidth(Integer flvWidth) { - this.flvWidth = flvWidth; - } - public Integer getFlvHeight() { - return flvHeight; - } - public void setFlvHeight(Integer flvHeight) { - this.flvHeight = flvHeight; - } - - public String getPreviewImage() { - return previewImage; - } - public void setPreviewImage(String previewImage) { - this.previewImage = previewImage; - } - public String getWmlFilePath() { return wmlFilePath; } + public void setWmlFilePath(String wmlFilePath) { this.wmlFilePath = wmlFilePath; } - - public Boolean getIsStoredWmlFile() { - return isStoredWmlFile; - } - public void setIsStoredWmlFile(Boolean isStoredWmlFile) { - this.isStoredWmlFile = isStoredWmlFile; - } - public Boolean getIsChart() { - return isChart; - } - public void setIsChart(Boolean isChart) { - this.isChart = isChart; - } - - public Long getExternalFileId() { - return externalFileId; + public Long getExternalId() { + return externalId; } - public void setExternalFileId(Long externalFileId) { - this.externalFileId = externalFileId; + + public void setExternalId(Long externalId) { + this.externalId = externalId; } - + public String getExternalType() { return externalType; } + public void setExternalType(String externalType) { this.externalType = externalType; } - + }
