code: public void join(Address logicalAddress, T physicalAddress)
     {
        if (trace)
           log.tracef("JOIN(%s, %s)", logicalAddress, physicalAddress);
  
        if (!nodes.containsKey(logicalAddress))
        {
           nodes.put(logicalAddress, physicalAddress);
  
           DistributedWorkManager dwm = workManagerCoordinator.resolveDistributedWorkManager(logicalAddress);
  
           if (dwm != null)
           {
              Collection<NotificationListener> copy =
                 new ArrayList<NotificationListener>(dwm.getNotificationListeners());
              for (NotificationListener nl : copy)
              {
                 nl.join(logicalAddress);
              }
           }
           else
           {
              WorkManagerEventQueue wmeq = WorkManagerEventQueue.getInstance();
              wmeq.addEvent(new WorkManagerEvent(WorkManagerEvent.TYPE_JOIN, logicalAddress));
           }
        }
     }
docs: join
  @param logicalAddress the logical address
  @param physicalAddress the physical address