code: public final void persistentRepresentationIsStable() throws SevereMessageStoreException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "persistentRepresentationIsStable");
  
          boolean notifyRequired = false;
          AbstractItem item = null;
          synchronized (this)
          {
              if (!_persistentRepresentationIsStable)
              {
                  // if we have become stable and were releasable, then
                  // notify cache.
                  notifyRequired = _itemIsDiscardableIfPersistentRepresentationStable;
                  // 274012
                  if (notifyRequired)
                  {
                      item = _getItemNoRestore();
  
                      // Defect 601995
                      _strongReferenceToItem = NULL_STRONG_REF;
                  }
                  _persistentRepresentationIsStable = true;
              }
          }
          if (notifyRequired)
          {
              _declareReleasable(item);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "persistentRepresentationIsStable");
      }
docs: Declare the receiver stable
  This is used to drive the softening/disposal of the
  indirect reference to the receivers item.
  The item can be discarded if the link is stable and
  available (always assuming the storage strategy allows).
  If the item becomes unstable or unavailable the link
  should not allow the item to be discarded.
  
  @throws SevereMessageStoreException