@Override protected void afterAlways(final List<Throwable> errors) throws Throwable { final ObjectProcedure<CloseableResourceInfo> disposer = new ObjectProcedure<CloseableResourceInfo>() { public void apply(CloseableResourceInfo info) { try { info.getResource().close(); } catch (Throwable t) { ResourceDisposalError e = new ResourceDisposalError( "Resource in scope " + info.getScope().name() + " failed to close. Resource was" + " registered from thread " + info.getThreadName() + ", registration stack trace below.", t); e.setStackTrace(info.getAllocationStack()); errors.add(e); } } }; RandomizedContext.current().closeResources(disposer, scope); } };
@Override protected void afterAlways(final List<Throwable> errors) throws Throwable { final ObjectProcedure<CloseableResourceInfo> disposer = new ObjectProcedure<CloseableResourceInfo>() { public void apply(CloseableResourceInfo info) { try { info.getResource().close(); } catch (Throwable t) { ResourceDisposalError e = new ResourceDisposalError( "Resource in scope " + info.getScope().name() + " failed to close. Resource was" + " registered from thread " + info.getThreadName() + ", registration stack trace below.", t); e.setStackTrace(info.getAllocationStack()); errors.add(e); } } }; RandomizedContext.current().closeResources(disposer, scope); } };