From 97d20be229576472ba2d1a7564f5005c29576ab2 Mon Sep 17 00:00:00 2001
From: srosse <none@none>
Date: Fri, 21 Aug 2015 15:05:32 +0200
Subject: [PATCH] OO-1616: use buffer size of Tomcat, remove Tracing.create in
 methods and use class instance instead

---
 .../InstitutionPortletRunController.java      |  9 ++++---
 .../de/bps/webservices/WebServiceModule.java  |  2 +-
 .../onyxreporter/OnyxReporterConnector.java   |  2 +-
 .../org/olat/commons/servlets/RSSServlet.java | 26 ++-----------------
 .../org/olat/core/gui/media/ServletUtil.java  |  5 ++--
 .../course/nodes/ProjectBrokerCourseNode.java |  2 +-
 src/main/java/org/olat/modules/wiki/Wiki.java |  1 -
 src/main/webapp-tomcat/WEB-INF/web.xml        | 11 --------
 src/main/webapp-wildfly/WEB-INF/web.xml       | 11 --------
 9 files changed, 14 insertions(+), 55 deletions(-)

diff --git a/src/main/java/de/bps/olat/portal/institution/InstitutionPortletRunController.java b/src/main/java/de/bps/olat/portal/institution/InstitutionPortletRunController.java
index 6c2d196923b..36c8072c1b1 100644
--- a/src/main/java/de/bps/olat/portal/institution/InstitutionPortletRunController.java
+++ b/src/main/java/de/bps/olat/portal/institution/InstitutionPortletRunController.java
@@ -35,6 +35,7 @@ import org.olat.core.gui.control.WindowControl;
 import org.olat.core.gui.control.controller.BasicController;
 import org.olat.core.id.UserConstants;
 import org.olat.core.id.context.BusinessControlFactory;
+import org.olat.core.logging.OLog;
 import org.olat.core.logging.Tracing;
 import org.olat.core.util.StringHelper;
 import org.olat.repository.RepositoryEntry;
@@ -42,6 +43,8 @@ import org.olat.repository.RepositoryManager;
 
 public class InstitutionPortletRunController extends BasicController {
 	
+	private static final OLog log = Tracing.createLoggerFor(InstitutionPortletRunController.class);
+	
 	private VelocityContainer portletVC;
 	private List<String> polyLinks;
 	private Map<Link, PolymorphLink> mapLinks;
@@ -153,13 +156,13 @@ public class InstitutionPortletRunController extends BasicController {
 				try {
 					resultIDForUser = Long.parseLong(resultIDForUserS);
 				} catch (NumberFormatException e) {
-					Tracing.createLoggerFor(InstitutionPortletRunController.class).error(e.getMessage());
+					log.error(e.getMessage());
 				}
 			}
 			try {
 				defaultID = Long.parseLong(polyLink.getDefaultLink());
 			} catch (NumberFormatException e) {
-				Tracing.createLoggerFor(InstitutionPortletRunController.class).error(e.getMessage());
+				log.error(e.getMessage());
 			}
 
 			if (polyLink.getLinkType().equals(InstitutionPortlet.TYPE_COURSE)) {
@@ -188,7 +191,7 @@ public class InstitutionPortletRunController extends BasicController {
 					String businessPath = "[CatalogEntry:" + ceKey + "]";
 					NewControllerFactory.getInstance().launch(businessPath, ureq, getWindowControl());
 				} catch (Exception e) {
-					Tracing.createLoggerFor(InstitutionPortletRunController.class).error(e.getMessage());
+					log.error(e.getMessage());
 					getWindowControl().setWarning(translate("warn.cantlaunch"));
 				}
 			}
diff --git a/src/main/java/de/bps/webservices/WebServiceModule.java b/src/main/java/de/bps/webservices/WebServiceModule.java
index bfd32012651..d41483d9edf 100644
--- a/src/main/java/de/bps/webservices/WebServiceModule.java
+++ b/src/main/java/de/bps/webservices/WebServiceModule.java
@@ -81,7 +81,7 @@ public class WebServiceModule implements Initializable {
 						String address = services.get(serviceName).get(1);
 						mapIdToInstName.put(id, instName);
 						mapInstNameToAddress.put(instName, address);
-						Tracing.createLoggerFor(getClass()).audit(serviceName + " # " + id + " # " + instName + " # " + address);
+						log.audit(serviceName + " # " + id + " # " + instName + " # " + address);
 					Service service = new Service(serviceName, mapIdToInstName, mapInstNameToAddress);
 					configuration.put(service.getName(), service);
 				}
diff --git a/src/main/java/de/bps/webservices/clients/onyxreporter/OnyxReporterConnector.java b/src/main/java/de/bps/webservices/clients/onyxreporter/OnyxReporterConnector.java
index 84d4456f925..64ff6669cdc 100644
--- a/src/main/java/de/bps/webservices/clients/onyxreporter/OnyxReporterConnector.java
+++ b/src/main/java/de/bps/webservices/clients/onyxreporter/OnyxReporterConnector.java
@@ -600,7 +600,7 @@ public class OnyxReporterConnector {
 				}
 			}
 		} catch (Exception e) {
-			Tracing.createLoggerFor(getClass()).error("Error while trying to connect to webservice: " + target, e);
+			log.error("Error while trying to connect to webservice: " + target, e);
 		}
 		return false;
 	}
diff --git a/src/main/java/org/olat/commons/servlets/RSSServlet.java b/src/main/java/org/olat/commons/servlets/RSSServlet.java
index 5b874f0efac..a402786bed0 100644
--- a/src/main/java/org/olat/commons/servlets/RSSServlet.java
+++ b/src/main/java/org/olat/commons/servlets/RSSServlet.java
@@ -28,8 +28,6 @@ package org.olat.commons.servlets;
 import java.io.Writer;
 import java.util.Date;
 
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -63,32 +61,12 @@ public class RSSServlet extends HttpServlet {
 	private static final long serialVersionUID = -674630331334472714L;
 	private static final OLog log = Tracing.createLoggerFor(RSSServlet.class);
 	public static final String DEFAULT_ENCODING = "UTF-8";
-	private static int outputBufferSize = 2048;
-	private static int inputBufferSize = 2048;
-
-
-	/**
-	 * @see javax.servlet.Servlet#init(javax.servlet.ServletConfig)
-	 */
-	public void init(ServletConfig servletConfig) throws ServletException {
-		super.init(servletConfig);
-		log.info("init statics servlet");
-		try {
-			String bufSize = servletConfig.getInitParameter("input");
-			inputBufferSize = Integer.parseInt(bufSize);
-			bufSize = servletConfig.getInitParameter("output");
-			outputBufferSize = Integer.parseInt(bufSize);
-		} catch (Exception e) {
-			log.warn("problem with config parameters for rss servlets:", e);
-		}
-		log.info("input buffer size: " + inputBufferSize);
-		log.info("output buffer size: " + outputBufferSize);
-	}
 
 	/**
 	 * @see javax.servlet.http.HttpServlet#service(javax.servlet.http.HttpServletRequest,
 	 *      javax.servlet.http.HttpServletResponse)
 	 */
+	@Override
 	protected void service(HttpServletRequest req, HttpServletResponse resp) {
 		Tracing.setUreq(req);
 		I18nManager.attachI18nInfoToThread(req);
@@ -138,7 +116,7 @@ public class RSSServlet extends HttpServlet {
 			// on the client-side which remains unnoticed (network partitioning)
 			DBFactory.getInstance().intermediateCommit();
 			
-			response.setBufferSize(outputBufferSize);
+			response.setBufferSize(response.getBufferSize());
 
 			String encoding = feed.getEncoding();
 			if (encoding == null) {
diff --git a/src/main/java/org/olat/core/gui/media/ServletUtil.java b/src/main/java/org/olat/core/gui/media/ServletUtil.java
index 68fbf52b684..45fd4d6d695 100644
--- a/src/main/java/org/olat/core/gui/media/ServletUtil.java
+++ b/src/main/java/org/olat/core/gui/media/ServletUtil.java
@@ -201,9 +201,10 @@ public class ServletUtil {
 					if (size != null) {
 						httpResp.setContentLength(size.intValue());
 					}
+					int bufferSize = httpResp.getBufferSize();
 					// buffer input stream
-					bis = new BufferedInputStream(in);
-					IOUtils.copy(bis, out);
+					bis = new BufferedInputStream(in, bufferSize);
+					IOUtils.copyLarge(bis, out, new byte[bufferSize]);
 				}
 				
 				if (debug) {
diff --git a/src/main/java/org/olat/course/nodes/ProjectBrokerCourseNode.java b/src/main/java/org/olat/course/nodes/ProjectBrokerCourseNode.java
index 62edaaebc93..1c93e6cd3e2 100644
--- a/src/main/java/org/olat/course/nodes/ProjectBrokerCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/ProjectBrokerCourseNode.java
@@ -224,7 +224,7 @@ public class ProjectBrokerCourseNode extends GenericCourseNode implements Assess
 					wControl = bcf.createBusinessWindowControl(businessControl, wControl);
 				} catch (NumberFormatException e) {
 					// ups, nodecmd is not a message, what the heck is it then?
-					Tracing.createLoggerFor(this.getClass()).warn("Could not create message ID from given nodemcd::" + nodecmd, e);
+					log.warn("Could not create message ID from given nodemcd::" + nodecmd, e);
 				}
 			}
 			controller = ProjectBrokerControllerFactory.createRunController(ureq, wControl,userCourseEnv, this);
diff --git a/src/main/java/org/olat/modules/wiki/Wiki.java b/src/main/java/org/olat/modules/wiki/Wiki.java
index 1b07893747f..10b632b2730 100644
--- a/src/main/java/org/olat/modules/wiki/Wiki.java
+++ b/src/main/java/org/olat/modules/wiki/Wiki.java
@@ -229,7 +229,6 @@ public class Wiki implements WikiContainer, Serializable {
 		}
 		String pageName = p.getProperty(WikiManager.PAGENAME);
 		if(pageName == null){
-			OLog log = Tracing.createLoggerFor(Wiki.class);
 			log.warn("wiki properties page is persent but without content. Name:"+leaf.getName());
 			return null;
 		}
diff --git a/src/main/webapp-tomcat/WEB-INF/web.xml b/src/main/webapp-tomcat/WEB-INF/web.xml
index 3c2e1eded83..32c49a68469 100644
--- a/src/main/webapp-tomcat/WEB-INF/web.xml
+++ b/src/main/webapp-tomcat/WEB-INF/web.xml
@@ -195,17 +195,6 @@
 	<servlet>
 		<servlet-name>rss</servlet-name>
 		<servlet-class>org.olat.commons.servlets.RSSServlet</servlet-class>
-
-		<init-param>
-			<param-name>input</param-name>
-			<param-value>32768</param-value>
-		</init-param>
-
-		<init-param>
-			<param-name>output</param-name>
-			<param-value>32768</param-value>
-		</init-param>
-
 		<load-on-startup>3</load-on-startup>
 	</servlet>	
 
diff --git a/src/main/webapp-wildfly/WEB-INF/web.xml b/src/main/webapp-wildfly/WEB-INF/web.xml
index ce84ffcce0e..70058c0b36d 100644
--- a/src/main/webapp-wildfly/WEB-INF/web.xml
+++ b/src/main/webapp-wildfly/WEB-INF/web.xml
@@ -142,17 +142,6 @@
 	<servlet>
 		<servlet-name>rss</servlet-name>
 		<servlet-class>org.olat.commons.servlets.RSSServlet</servlet-class>
-
-		<init-param>
-			<param-name>input</param-name>
-			<param-value>32768</param-value>
-		</init-param>
-
-		<init-param>
-			<param-name>output</param-name>
-			<param-value>32768</param-value>
-		</init-param>
-
 		<load-on-startup>3</load-on-startup>
 	</servlet>	
 
-- 
GitLab