Author: solomax Date: Thu Dec 25 09:52:33 2014 New Revision: 1647886 URL: http://svn.apache.org/r1647886 Log: Issues found by CoverityScan are partially fixed
Modified: openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/StringComparer.java openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java Modified: openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/StringComparer.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/StringComparer.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/StringComparer.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/StringComparer.java Thu Dec 25 09:52:33 2014 @@ -19,7 +19,6 @@ package org.apache.openmeetings.util.stringhandlers; public class StringComparer { - private static StringComparer instance = null; private StringComparer() {} @@ -32,22 +31,20 @@ public class StringComparer { } public String compareForRealPaths(String inputString) throws Exception{ - - String t = ""; - for (int i=0;i<inputString.length();i++){ + StringBuilder t = new StringBuilder(); + for (int i = 0; i < inputString.length(); ++i) { char c = inputString.charAt(i); if (compareChars(c)) { - t += c; + t.append(c); } else { - t += "_"; + t.append('_'); } - - } - return t; + + } + return t.toString(); } private boolean compareChars(char inputChar){ return Character.isLetterOrDigit(inputChar); } - } Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/LangPanel.java Thu Dec 25 09:52:33 2014 @@ -214,7 +214,7 @@ public class LangPanel extends AdminPane Document doc = createDocument(flvList, getBean(FieldLanguagesValuesDao.class).getUntranslatedFieldValuesList(language.getId())); sw = new StringWriter(); LangExport.serializetoXML(sw, "UTF-8", doc); - is = new ByteArrayInputStream(sw.toString().getBytes()); + is = new ByteArrayInputStream(sw.toString().getBytes("UTF-8")); return is; } catch (Exception e) { throw new ResourceStreamNotFoundException(e); Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.java Thu Dec 25 09:52:33 2014 @@ -83,6 +83,7 @@ import org.apache.wicket.settings.PageSe import org.apache.wicket.util.collections.ConcurrentHashSet; import org.apache.wicket.util.tester.WicketTester; import org.slf4j.Logger; +import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.support.XmlWebApplicationContext; import org.wicketstuff.select2.ApplicationSettings; @@ -302,7 +303,8 @@ public class Application extends Authent //TODO need more safe way FIXME public <T> T _getBean(Class<T> clazz) { - return getWebApplicationContext(getServletContext()).getBean(clazz); + WebApplicationContext wac = getWebApplicationContext(getServletContext()); + return wac == null ? null : wac.getBean(clazz); } public static boolean isInstalled() { Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/WebSession.java Thu Dec 25 09:52:33 2014 @@ -140,9 +140,12 @@ public class WebSession extends Abstract if (!secureHash.isEmpty() || !invitationHash.isEmpty()) { PageParameters pp = new PageParameters(); for (String p : params.getParameterNames()) { - for (StringValue sv : params.getParameterValues(p)) { - if (!sv.isEmpty()) { - pp.add(p, sv.toString()); + List<StringValue> vals = params.getParameterValues(p); + if (vals != null) { + for (StringValue sv : vals) { + if (!sv.isEmpty()) { + pp.add(p, sv.toString()); + } } } } Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/ActivitiesPanel.java Thu Dec 25 09:52:33 2014 @@ -86,7 +86,7 @@ public class ActivitiesPanel extends Bas Activity a = get(uid); if (a != null) { if (action == Action.close && (a.getType() == Type.roomEnter || a.getType() == Type.roomExit)) { - activities.remove(uid); + activities.remove(a); } else if (isModerator(getUserId(), roomId)) { switch (a.getType()) { case askModeration: Modified: openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/RecordingResourceReference.java Thu Dec 25 09:52:33 2014 @@ -157,16 +157,18 @@ public abstract class RecordingResourceR @Override public void writeData(Attributes attributes) throws IOException { IResourceStream rStream = getResourceStream(); - try { - writeStream(attributes, rStream.getInputStream()); - } catch (ResourceStreamNotFoundException e1) { - } catch (ResponseIOException e) { - // in case of range operations we expecting such exceptions - if (!isRange) { - log.error("Error while playing the stream", e); + if (rStream != null) { + try { + writeStream(attributes, rStream.getInputStream()); + } catch (ResourceStreamNotFoundException e1) { + } catch (ResponseIOException e) { + // in case of range operations we expecting such exceptions + if (!isRange) { + log.error("Error while playing the stream", e); + } + } finally { + rStream.close(); } - } finally { - rStream.close(); } } }); Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/CalendarWebService.java Thu Dec 25 09:52:33 2014 @@ -502,20 +502,17 @@ public class CalendarWebService { */ public Appointment getAppointmentByRoomId(String SID, Long room_id) { try { - Long users_id = sessiondataDao.checkSession(SID); if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) { - - Appointment appointment = new Appointment(); - Appointment appStored = appointmentDao.getAppointmentByOwnerRoom(users_id, room_id); - - appointment.setStart(appStored.getStart()); - appointment.setEnd(appStored.getEnd()); - - return appointment; + if (appStored != null) { + Appointment appointment = new Appointment(); + appointment.setStart(appStored.getStart()); + appointment.setEnd(appStored.getEnd()); + + return appointment; + } } - } catch (Exception err) { log.error("[getAppointmentByRoomId]", err); } Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/JabberWebService.java Thu Dec 25 09:52:33 2014 @@ -21,6 +21,7 @@ package org.apache.openmeetings.webservi import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey; import java.util.ArrayList; +import java.util.Date; import java.util.List; import javax.jws.WebService; @@ -148,10 +149,9 @@ public class JabberWebService { if (AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) { User invitee = userDao.getContact(username, username, username, users_id); - Invitation invitation = invitationManager.getInvitation(invitee, roomDao.get(room_id), - false, "", Valid.OneTime, userDao.get(users_id), 1L, null, null, null); + Invitation invitation = invitationManager.getInvitation(invitee, roomDao.get(room_id), false, "", Valid.OneTime, userDao.get(users_id), 1L, new Date(), new Date(), null); - return ((invitation == null) ? null : invitation.getHash()); + return invitation == null ? null : invitation.getHash(); } else { return "Need Admin Privileges to perfom the Action"; } Modified: openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java?rev=1647886&r1=1647885&r2=1647886&view=diff ============================================================================== --- openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java (original) +++ openmeetings/trunk/singlewebapp/openmeetings-webservice/src/main/java/org/apache/openmeetings/webservice/RoomWebService.java Thu Dec 25 09:52:33 2014 @@ -1433,8 +1433,8 @@ public class RoomWebService { if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) { - Date dFrom = null; - Date dTo = null; + Date dFrom = new Date(); + Date dTo = new Date(); if (valid == 2) { Integer validFromHour = Integer.valueOf(validFromTime.substring(0, 2)); @@ -1555,8 +1555,8 @@ public class RoomWebService { if (AuthLevelUtil.hasWebServiceLevel(userDao.getRights(users_id))) { - Date dFrom = null; - Date dTo = null; + Date dFrom = new Date(); + Date dTo = new Date(); if (valid == 2) { Integer validFromHour = Integer.valueOf(validFromTime.substring(0, 2)); @@ -1588,12 +1588,8 @@ public class RoomWebService { dFrom = calFrom.getTime(); dTo = calTo.getTime(); - log.info("validFromDate: " - + CalendarPatterns - .getDateWithTimeByMiliSeconds(dFrom)); - log.info("validToDate: " - + CalendarPatterns - .getDateWithTimeByMiliSeconds(dTo)); + log.info("validFromDate: " + CalendarPatterns.getDateWithTimeByMiliSeconds(dFrom)); + log.info("validToDate: " + CalendarPatterns.getDateWithTimeByMiliSeconds(dTo)); } User invitee = userDao.getContact(email, users_id); @@ -1732,45 +1728,39 @@ public class RoomWebService { * @return - RoomReturn Objects with information of the current users * @throws ServiceException */ - public List<RoomReturn> getRoomsWithCurrentUsersByList(String SID, - int start, int max, String orderby, boolean asc) throws ServiceException { + public List<RoomReturn> getRoomsWithCurrentUsersByList(String SID, int start, int max, String orderby, boolean asc) throws ServiceException { try { - List<Room> rooms = conferenceService - .getRoomsWithCurrentUsersByList(SID, start, max, orderby, - asc); + List<Room> rooms = conferenceService.getRoomsWithCurrentUsersByList(SID, start, max, orderby, asc); List<RoomReturn> returnObjList = new LinkedList<RoomReturn>(); - - for (Room room : rooms) { - - RoomReturn roomReturn = new RoomReturn(); - - roomReturn.setRoom_id(room.getId()); - roomReturn.setName(room.getName()); - - roomReturn.setCreator("SOAP"); - roomReturn.setCreated(room.getStarttime()); - - RoomUser[] rUser = new RoomUser[room.getCurrentusers().size()]; - - int i = 0; - for (Client rcl : room.getCurrentusers()) { - - RoomUser ru = new RoomUser(); - ru.setFirstname(rcl.getFirstname()); - ru.setLastname(rcl.getLastname()); - - rUser[i] = ru; - - i++; + if (rooms != null) { + for (Room room : rooms) { + RoomReturn roomReturn = new RoomReturn(); + + roomReturn.setRoom_id(room.getId()); + roomReturn.setName(room.getName()); + + roomReturn.setCreator("SOAP"); + roomReturn.setCreated(room.getStarttime()); + + RoomUser[] rUser = new RoomUser[room.getCurrentusers().size()]; + + int i = 0; + for (Client rcl : room.getCurrentusers()) { + + RoomUser ru = new RoomUser(); + ru.setFirstname(rcl.getFirstname()); + ru.setLastname(rcl.getLastname()); + + rUser[i] = ru; + + i++; + } + + roomReturn.setRoomUser(rUser); + returnObjList.add(roomReturn); } - - roomReturn.setRoomUser(rUser); - - returnObjList.add(roomReturn); - } - return returnObjList; } catch (Exception err) { log.error("setUserObjectWithExternalUser", err); @@ -1802,42 +1792,36 @@ public class RoomWebService { int start, int max, String orderby, boolean asc, String externalRoomType) throws ServiceException { try { - List<Room> rooms = conferenceService - .getRoomsWithCurrentUsersByListAndType(SID, start, max, - orderby, asc, externalRoomType); + List<Room> rooms = conferenceService.getRoomsWithCurrentUsersByListAndType(SID, start, max, orderby, asc, externalRoomType); List<RoomReturn> returnObjList = new LinkedList<RoomReturn>(); - - for (Room room : rooms) { - - RoomReturn roomReturn = new RoomReturn(); - - roomReturn.setRoom_id(room.getId()); - roomReturn.setName(room.getName()); - - roomReturn.setCreator("SOAP"); - roomReturn.setCreated(room.getStarttime()); - - RoomUser[] rUser = new RoomUser[room.getCurrentusers().size()]; - - int i = 0; - for (Client rcl : room.getCurrentusers()) { - - RoomUser ru = new RoomUser(); - ru.setFirstname(rcl.getFirstname()); - ru.setLastname(rcl.getLastname()); - - rUser[i] = ru; - - i++; + if (rooms != null) { + for (Room room : rooms) { + RoomReturn roomReturn = new RoomReturn(); + + roomReturn.setRoom_id(room.getId()); + roomReturn.setName(room.getName()); + + roomReturn.setCreator("SOAP"); + roomReturn.setCreated(room.getStarttime()); + + RoomUser[] rUser = new RoomUser[room.getCurrentusers().size()]; + + int i = 0; + for (Client rcl : room.getCurrentusers()) { + RoomUser ru = new RoomUser(); + ru.setFirstname(rcl.getFirstname()); + ru.setLastname(rcl.getLastname()); + + rUser[i] = ru; + + i++; + } + + roomReturn.setRoomUser(rUser); + returnObjList.add(roomReturn); } - - roomReturn.setRoomUser(rUser); - - returnObjList.add(roomReturn); - } - return returnObjList; } catch (Exception err) { log.error("setUserObjectWithExternalUser", err); @@ -1921,6 +1905,9 @@ public class RoomWebService { Date fromDate = CalendarPatterns.parseDateBySeparator(validFromDate); // dd.MM.yyyy Date toDate = CalendarPatterns.parseDateBySeparator(validToDate); // dd.MM.yyyy + if (fromDate == null || toDate == null) { + throw new ServiceException("Invalid dates are passed"); + } Calendar calFrom = Calendar.getInstance(); calFrom.setTime(fromDate); calFrom.set(calFrom.get(Calendar.YEAR), @@ -2138,7 +2125,9 @@ public class RoomWebService { Class<?> valueClass = rw.getPropertyType(paramName); Object val = null; //don't like this code - if (valueClass.isAssignableFrom(String.class)) { + if (valueClass == null) { + //do nothing + } else if (valueClass.isAssignableFrom(String.class)) { val = paramValue; } else if (valueClass.isAssignableFrom(Boolean.class)) { val = Boolean.parseBoolean(paramValue);