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);
       }
     }
   }
 }