docs: public final ItemReference removeFirstMatching(final Filter filter, final Transaction transaction)
                      throws MessageStoreException
      {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "removeFirstMatching", new Object[] { filter, transaction });
  
          ReferenceCollection ic = ((ReferenceCollection) _getMembership());
          ItemReference item = null;
          if (ic != null)
          {
              item = (ItemReference) ic.removeFirstMatching(filter, transaction);
          }
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "removeFirstMatching", item);
          return item;
      }