Author: tv
Date: Wed Aug 15 16:23:11 2018
New Revision: 1838111
URL: http://svn.apache.org/viewvc?rev=1838111&view=rev
Log:
Make PipelineData auto-closable
Modified:
turbine/core/trunk/src/java/org/apache/turbine/pipeline/DefaultPipelineData.java
turbine/core/trunk/src/java/org/apache/turbine/pipeline/PipelineData.java
Modified:
turbine/core/trunk/src/java/org/apache/turbine/pipeline/DefaultPipelineData.java
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/src/java/org/apache/turbine/pipeline/DefaultPipelineData.java?rev=1838111&r1=1838110&r2=1838111&view=diff
==============================================================================
---
turbine/core/trunk/src/java/org/apache/turbine/pipeline/DefaultPipelineData.java
(original)
+++
turbine/core/trunk/src/java/org/apache/turbine/pipeline/DefaultPipelineData.java
Wed Aug 15 16:23:11 2018
@@ -3,6 +3,10 @@ package org.apache.turbine.pipeline;
import java.util.HashMap;
import java.util.Map;
+import org.apache.turbine.services.TurbineServices;
+import org.apache.turbine.services.rundata.RunDataService;
+import org.apache.turbine.util.RunData;
+
/*
* Licensed to the Apache Software Foundation (ASF) under one
@@ -84,4 +88,17 @@ public class DefaultPipelineData impleme
}
return (T) innerMap.get(innerKey);
}
+
+ /**
+ * Put object back into RunDataService for recycling
+ */
+ @Override
+ public void close() throws Exception
+ {
+ RunDataService rds = (RunDataService)
TurbineServices.getInstance().getService(RunDataService.SERVICE_NAME);
+ if (rds != null)
+ {
+ rds.putRunData((RunData) this);
+ }
+ }
}
Modified:
turbine/core/trunk/src/java/org/apache/turbine/pipeline/PipelineData.java
URL:
http://svn.apache.org/viewvc/turbine/core/trunk/src/java/org/apache/turbine/pipeline/PipelineData.java?rev=1838111&r1=1838110&r2=1838111&view=diff
==============================================================================
--- turbine/core/trunk/src/java/org/apache/turbine/pipeline/PipelineData.java
(original)
+++ turbine/core/trunk/src/java/org/apache/turbine/pipeline/PipelineData.java
Wed Aug 15 16:23:11 2018
@@ -36,7 +36,7 @@ import java.util.Map;
* @author <a href="mailto:[email protected]">Eric Pugh</a>
* @author <a href="mailto:[email protected]">Peter Courcoux</a>
*/
-public interface PipelineData
+public interface PipelineData extends AutoCloseable
{
/**
* Put a configured map of objects into the pipeline data object