Class SessionContext

    • Field Detail

      • sessionContextTimeoutInterval

        public long sessionContextTimeoutInterval
    • Constructor Detail

      • SessionContext

        public SessionContext​(AbstractContext parent)
        Parameters:
        parent -
      • SessionContext

        public SessionContext()
    • Method Detail

      • addServiceContext

        public void addServiceContext​(ServiceContext serviceContext)
      • addServiceGroupContext

        public void addServiceGroupContext​(ServiceGroupContext serviceGroupContext)
      • getCookieID

        public String getCookieID()
      • setCookieID

        public void setCookieID​(String cookieID)
      • touch

        public void touch()
        ServiceContext and ServiceGroupContext are not getting automatically garbage collectible. And there is no specific way for some one to go and make it garbage collectable. So the current solution is to make them time out. So the logic is that, there is a timer task in each and every service group which will check for the last touched time. And if it has not been touched for some time, the timer task will remove it from the memory. The touching logic happens like this. Whenever there is a call to addMessageContext in the operationContext it will go and update operationCOntext -> serviceContext -> serviceGroupContext.
        Overrides:
        touch in class AbstractContext
      • writeExternal

        public void writeExternal​(ObjectOutput o)
                           throws IOException
        Save the contents of this object.

        NOTE: Transient fields and static fields are not saved.

        Specified by:
        writeExternal in interface Externalizable
        Parameters:
        out - The stream to write the object contents to
        Throws:
        IOException