docs: public void restore(ObjectInputStream ois, int dataVersion)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(
          tc, "restore", new Object[] { ois, Integer.valueOf(dataVersion) });
      
      checkPersistentVersionId(dataVersion);  
  
      try
      {
        HashMap hm = (HashMap)ois.readObject();
        
        restorePersistentDestinationData(hm);
        restorePersistentLinkData(hm);
        
        // Restore mqLinkUuid
        _mqLinkUuid = new SIBUuid8((byte[])hm.get("mqlinkuuid"));  
        // Restore the mqLinkName
        _mqLinkName = (String)hm.get("mqlinkname");
        
        // Restore the MessageStore id of the MQLinkStateItemStream
        _mqLinkStateItemStreamId = ((Long)hm.get("mqlinkstateid")).longValue();
       
     }
      catch (Exception e) 
      {
        FFDCFilter.processException(
          e,
          "com.ibm.ws.sib.processor.impl.MQLinkHandler.restore",
          "1:536:1.71",
          this);
  
        SibTr.exception(tc, e);
        SibTr.error(tc, "INTERNAL_MESSAGING_ERROR_CWSIP0002",
          new Object[] {
            "com.ibm.ws.sib.processor.impl.MQLinkHandler",
            "1:543:1.71",
            e });
            
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) 
          SibTr.exit(tc, "restore", "SIErrorException");
        throw new SIErrorException(
          nls.getFormattedMessage(
            "INTERNAL_MESSAGING_ERROR_CWSIP0002",
            new Object[] {
              "com.ibm.ws.sib.processor.impl.MQLinkHandler",
              "1:553:1.71",
              e },
            null),
          e);
      }
      
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "restore");
    }