Class RefCountMessage


  • public class RefCountMessage
    extends Object
    RefCountMessage is a base-class for any message intending to do reference counting. Currently it is used for large message removal. Additional validation on reference counting will be done If you set a system property named "ARTEMIS_REF_DEBUG" and enable logging on this class. Additional logging output will be written when reference counting is broken and these debug options are applied.
    • Constructor Detail

      • RefCountMessage

        public RefCountMessage()
    • Method Detail

      • isRefDebugEnabled

        public static boolean isRefDebugEnabled()
      • isRefTraceEnabled

        public static boolean isRefTraceEnabled()
      • registerDebug

        protected void registerDebug()
        Sub classes constructors willing to debug reference counts, can register the objectCleaner through this method.
      • isReleased

        public boolean isReleased()
        has the refCount fired the action already?
      • debugLocations

        public String debugLocations()
      • deferredDebug

        public static void deferredDebug​(Message message,
                                         String debugMessage,
                                         Object... args)
      • deferredDebug

        public void deferredDebug​(String message)
        Deferred debug, that will be used in case certain conditions apply to the RefCountMessage
      • getRefCount

        public int getRefCount()
      • getUsage

        public int getUsage()
      • getDurableCount

        public int getDurableCount()
      • onUp

        protected void onUp()
      • released

        protected void released()
      • disableErrorCheck

        public void disableErrorCheck()
      • onDown

        protected void onDown()
      • counterString

        protected String counterString()
      • releaseComplete

        protected void releaseComplete()
      • usageUp

        public int usageUp()
      • usageDown

        public int usageDown()
      • durableUp

        public int durableUp()
      • durableDown

        public int durableDown()
      • refDown

        public int refDown()
      • refUp

        public int refUp()
      • getUserContext

        public Object getUserContext​(Object key)
      • setUserContext

        public void setUserContext​(Object key,
                                   Object value)