code: public final void persistentRepresentationIsUnstable() throws SevereMessageStoreException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "persistentRepresentationIsUnstable");
  
          boolean notifyRequired = false;
          synchronized (this)
          {
              // we are going to need the item in memory, so we make sure that
              // we pin it with a hard reference
              if (_strongReferenceToItem == NULL_STRONG_REF && null != _softReferenceToItem)
              {
                  // Someone else may still have a reference to the item,
                  // so we can save some trouble by recovering the item
                  // from the weak reference. If the weak reference has been
                  // cleared then the item will still be null, and the calling
                  // code will just need to cope with it.
                  _strongReferenceToItem = (AbstractItem) _softReferenceToItem.get();
  
                  // Defect 601995
                  // Set the reference to the named class if still null
                  // after the call to the soft reference.
                  if (_strongReferenceToItem == null)
                  {
                      _strongReferenceToItem = NULL_STRONG_REF;
                  }
              }
  
              if (_persistentRepresentationIsStable)
              {
                  // if we have become unstable, and we were releasable
                  // then we need to notify cache
                  notifyRequired = _itemIsDiscardableIfPersistentRepresentationStable;
                  _persistentRepresentationIsStable = false;
              }
  
              if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                  SibTr.debug(this, tc, "stable=false available=" + _itemIsDiscardableIfPersistentRepresentationStable);
          }
  
          if (notifyRequired)
          {
              _declareNotReleasable();
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "persistentRepresentationIsUnstable");
      }
docs: Declare the receiver stable
  This is used to drive the softening/disposal of the
  indirect reference tothe 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