From 9749f2a609a9e777f0db5e7209f5bbbed48bf3ce Mon Sep 17 00:00:00 2001 From: Yanhui Zhao Date: Thu, 26 Apr 2018 14:27:21 -0700 Subject: [PATCH] MNEMONIC-389: ParameterHolder should contain reclaim context --- .../org/apache/mnemonic/ParameterHolder.java | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/mnemonic-core/src/main/java/org/apache/mnemonic/ParameterHolder.java b/mnemonic-core/src/main/java/org/apache/mnemonic/ParameterHolder.java index efc3baf2..5ffff35b 100644 --- a/mnemonic-core/src/main/java/org/apache/mnemonic/ParameterHolder.java +++ b/mnemonic-core/src/main/java/org/apache/mnemonic/ParameterHolder.java @@ -18,6 +18,7 @@ package org.apache.mnemonic; import org.apache.commons.lang3.tuple.MutablePair; +import org.flowcomputing.commons.resgc.ReclaimContext; public class ParameterHolder> { @@ -25,6 +26,7 @@ public class ParameterHolder> { private boolean autoReclaim; private long handler; private MutablePair dpt; + private ReclaimContext rctx; public ParameterHolder() { @@ -32,6 +34,7 @@ public ParameterHolder() { this.autoReclaim = true; this.handler = 0; this.dpt = new MutablePair(new DurableType[]{}, null); + this.rctx = null; } public ParameterHolder(A n) { @@ -39,6 +42,7 @@ public ParameterHolder(A n) { this.autoReclaim = true; this.handler = 0; this.dpt = new MutablePair(new DurableType[]{}, null); + this.rctx = null; } public ParameterHolder(A n, DurableType[] d) { @@ -46,6 +50,7 @@ public ParameterHolder(A n, DurableType[] d) { this.autoReclaim = true; this.handler = 0; this.dpt = new MutablePair(d, null); + this.rctx = null; } public ParameterHolder(A n, DurableType[] d, EntityFactoryProxy[] e) { @@ -53,6 +58,7 @@ public ParameterHolder(A n, DurableType[] d, EntityFactoryProxy[] e) { this.autoReclaim = true; this.handler = 0; this.dpt = new MutablePair(d, e); + this.rctx = null; } public ParameterHolder(A n, DurableType[] d, EntityFactoryProxy[] e, boolean b, long h) { @@ -60,6 +66,15 @@ public ParameterHolder(A n, DurableType[] d, EntityFactoryProxy[] e, boolean b, this.autoReclaim = b; this.handler = h; this.dpt = new MutablePair(d, e); + this.rctx = null; + } + + public ParameterHolder(A n, DurableType[] d, EntityFactoryProxy[] e, boolean b, long h, ReclaimContext rctx) { + this.allocator = n; + this.autoReclaim = b; + this.handler = h; + this.dpt = new MutablePair(d, e); + this.rctx = rctx; } public void setAllocator(A n) { @@ -110,4 +125,12 @@ public void setGenericTypeAndEntityFactoryProxyPair(DurableType[] d, EntityFacto public MutablePair getGenericTypeAndEntityFactoryProxyPair() { return dpt; } + + public void setReclaimContext(ReclaimContext r) { + rctx = r; + } + + public ReclaimContext getReclaimContext() { + return rctx; + } }