code: public void restore(ObjectInputStream din, int dataVersion)
    {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.entry(
          tc, "restore", new Object[] { din, Integer.valueOf(dataVersion) });
      
      checkPersistentVersionId(dataVersion);
  
      try
      {
        remoteMEId = new SIBUuid8(din.readUTF());
        streamId = new SIBUuid12(din.readUTF()); 
        if (dataVersion > 1)
        {
          String id = din.readUTF();
          if (!id.equals(NULL))
            gatheringTargetDestUuid = new SIBUuid12(id);
        }
      }
      catch (Exception e)
      {
        // No FFDC code needed
        SIErrorException e2 = new SIErrorException(e);
  
        if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
          SibTr.exit(tc, "restore", e2);
  
        throw e2;
      }
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
        SibTr.exit(tc, "restore");
    }
docs: /* (non-Javadoc)
  @see com.ibm.ws.sib.processor.impl.store.itemstreams.SIMPItemStream#restore(java.io.ObjectInputStream, int)