public synchronized void close() { if (future != null) { try { future.cancel(false); } finally { future = null; } } if (repository != null) { try { repository.close(); } finally { repository = null; } } }