code: @Override
      public void itemReferencesDroppedToZero()
      {
          super.itemReferencesDroppedToZero();
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "itemReferencesDroppedToZero");
  
          if (failedInitInRestore)
          {
              try
              {
                  initialiseNonPersistent(true);
              } catch (SevereMessageStoreException e)
              {
                  FFDCFilter.processException(
                                              e,
                                              "com.ibm.ws.sib.processor.impl.store.items.MessageItem.itemReferencesDroppedToZero",
                                              "1:1617:1.244.1.40",
                                              this);
  
                  //There was a problem getting hold of the itemstream when trying to initilise
                  //We wouldn't have registered any callbacks yet so we shouldn't carry on
  
                  SibTr.exception(tc, e);
  
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                      SibTr.exit(this, tc, "itemReferencesDroppedToZero", e);
  
                  throw new SIErrorException(e);
              }
          }
  
          if (REFERENCES_DROPPED_TO_ZERO != null)
          {
              try
              {
                  REFERENCES_DROPPED_TO_ZERO.messageEventOccurred(MessageEvents.REFERENCES_DROPPED_TO_ZERO, this, null);
              } catch (SIException e)
              {
                  // Exceptions after a commit are bad !
                  FFDCFilter.processException(
                                              e,
                                              "com.ibm.ws.sib.processor.impl.store.items.MessageItem.itemReferencesDroppedToZero",
                                              "1:1644:1.244.1.40",
                                              this);
  
                  SibTr.exception(tc, e);
  
                  if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
                      SibTr.exit(this, tc, "itemReferencesDroppedToZero", e);
  
                  throw new SIErrorException(e);
              }
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "itemReferencesDroppedToZero");
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.sib.store.Item#itemReferencesDroppedToZero()