protected void registerCompletionListener() { if (!syncListenerRegistrations.isEmpty() && completionRegistrationId == null) { synchronized (completionRegistrationMutex) { if (completionRegistrationId == null) { final CacheService service = getService(); CacheEventListener entryListener = new CacheCompletionEventListener(); completionRegistrationId = service.registerListener(getDistributedObjectName(), entryListener); } } } }