code: private MQLinkHandler createMQLinkHandler(
                                                MQLinkDefinition mqld,
                                                VirtualLinkDefinition virtualLinkDefinition,
                                                LocalTransaction transaction) throws SIResourceException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(
                          tc,
                          "createMQLinkHandler",
                          new Object[] { mqld, virtualLinkDefinition, transaction });
  
          MQLinkHandler mqLinkHandler = null;
  
          // Create a new LinkHandler, which is created locked
          try
          {
              mqLinkHandler =
                              new MQLinkHandler(
                                              mqld,
                                              virtualLinkDefinition,
                                              messageProcessor,
                                              this,
                                              transaction,
                                              durableSubscriptions);
          } catch (OutOfCacheSpace e)
          {
              // No FFDC code needed
              SibTr.exception(tc, e);
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "createMQLinkHandler", "SIResourceException");
              throw new SIResourceException(e);
          } catch (MessageStoreException e)
          {
              // MessageStoreException shouldn't occur so FFDC.
              FFDCFilter.processException(
                                          e,
                                          "com.ibm.ws.sib.processor.impl.DestinationManager.createMQLinkHandler",
                                          "1:6948:1.508.1.7",
                                          this);
  
              SibTr.exception(tc, e);
              if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                  SibTr.exit(tc, "createMQLinkHandler", "SIResourceException");
              throw new SIResourceException(e);
          }
  
          mqLinkHandler.setLocal();
          LinkIndex.Type type = new LinkIndex.Type();
          type.local = Boolean.TRUE; //new Boolean(mqLinkHandler.hasLocal());
          type.mqLink = Boolean.TRUE;
          type.remote = Boolean.FALSE;
          type.state = State.ACTIVE;
          linkIndex.put(mqLinkHandler, type);
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(tc, "createMQLinkHandler", mqLinkHandler);
  
          return mqLinkHandler;
      }
docs: <p>This method is used to create a new MQLinkHandler and register it.</p>