You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ra...@apache.org on 2015/10/02 18:01:33 UTC
svn commit: r1706439 -
/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java
Author: radu
Date: Fri Oct 2 16:01:32 2015
New Revision: 1706439
URL: http://svn.apache.org/viewvc?rev=1706439&view=rev
Log:
SLING-5087 - The ResourceResolverImpl should provide a stack trace when CRUD operations are performed with a closed resolver
* added stack trace logging in checkClosed()
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java?rev=1706439&r1=1706438&r2=1706439&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverImpl.java Fri Oct 2 16:01:32 2015
@@ -100,6 +100,8 @@ public class ResourceResolverImpl extend
/** Resource resolver context. */
private final ResourceResolverContext context;
+ private Exception closedResolverException;
+
/**
* The resource resolver context.
*/
@@ -150,6 +152,7 @@ public class ResourceResolverImpl extend
*/
@Override
public void close() {
+ closedResolverException = new Exception("Stack Trace");
if ( this.isClosed.compareAndSet(false, true)) {
this.factory.unregister(this, this.context);
}
@@ -163,6 +166,9 @@ public class ResourceResolverImpl extend
*/
private void checkClosed() {
if (this.isClosed.get()) {
+ if (closedResolverException != null) {
+ logger.error("The ResourceResolver has already been closed.", closedResolverException);
+ }
throw new IllegalStateException("Resource resolver is already closed.");
}
if (!this.factory.isLive()) {