code: @Override
      public boolean hasLocal()
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(tc, "hasLocal");
  
          boolean hasLocal = false;
  
          // If this alias scopes the set of possible queue points then to qualify
          // as having a local one it must be in this set.
          if (_hasScopedMessagePoints)
          {
              if (_singleScopedQueuePointME != null)
              {
                  if (_singleScopedQueuePointME.equals(getMessageProcessor().getMessagingEngineUuid()))
                      hasLocal = true;
              }
              else if ((_scopedQueuePointMEs != null) && _scopedQueuePointMEs.contains(getMessageProcessor().getMessagingEngineUuid()))
                  hasLocal = true;
          }
  
          // Because we can't trust the scoped set being up-to-date with the
          // target destination (which could have removed an ME and hence queue point
          // since the alias was created) we still check that the target has
          // a local queue point.
          if (hasLocal || !_hasScopedMessagePoints)
              hasLocal = _targetDestinationHandler.hasLocal();
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "hasLocal", Boolean.valueOf(hasLocal));
  
          return hasLocal;
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.sib.processor.impl.interfaces.DestinationHandler#hasLocal()