Packages

c

net.liftweb.http

SessionVar

abstract class SessionVar[T] extends util.AnyVar[T, SessionVar[T]] with LazyLoggable

A typesafe container for data with a lifetime nominally equivalent to the lifetime of HttpSession attributes.

object MySnippetCompanion { object mySessionVar extends SessionVar[String]("hello") }

The standard pattern is to create a singleton object extending SessionVar instead of creating an instance variable of a concrete SessionVar subclass. This is preferred because SessionVar will use the name of its instantiating class for part of its state maintenance mechanism.

If you find it necessary to create a SessionVar subclass of which there may be more than one instance, it is necessary to override the nameSalt() method to return a unique salt value for each instance to prevent name collisions.

Note: SessionVars can be used within CometActors

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SessionVar
  2. LazyLoggable
  3. AnyVar
  4. AnyVarTrait
  5. HasCalcDefaultValue
  6. PSettableValueHolder
  7. SettableValueHolder
  8. Settable
  9. PValueHolder
  10. ValueHolder
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SessionVar(dflt: ⇒ T)

    dflt

    - the default value to be returned if none was set prior to requesting a value to be returned from the container

Type Members

  1. type CleanUpParam = LiftSession
    Definition Classes
    SessionVarAnyVarTrait
  2. type FuncType = (Box[T], Boolean) ⇒ Unit

    The function takes a Box[T] (Full if the Var is being set, Empty if it's being cleared) and a Boolean indicating that the set function is setting to the default value.

    The function takes a Box[T] (Full if the Var is being set, Empty if it's being cleared) and a Boolean indicating that the set function is setting to the default value.

    Definition Classes
    AnyVarTrait
  3. type ValueType = T
    Definition Classes
    PValueHolderValueHolder

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def __nameSalt: String
    Attributes
    protected
    Definition Classes
    AnyVarTrait
  5. def apply(what: T): T

    Set the session variable

    Set the session variable

    what

    -- the value to set the session variable to

    Definition Classes
    AnyVarTrait
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def atomicUpdate(f: (ValueType) ⇒ ValueType): ValueType

    Perform an atomic update of this Settable.

    Perform an atomic update of this Settable. The current value is passed to the function and the ValueHolder is set to the result of the function. This is enclosed in the performAtomicOperation method which will, by default, synchronize this instance

    Definition Classes
    Settable
  8. def calcDefaultValue: T
    Attributes
    protected
    Definition Classes
    AnyVarAnyVarTraitHasCalcDefaultValue
  9. def clearFunc(name: String): Unit
    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait
  10. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def doSync[F](f: ⇒ F): F

    Different Vars require different mechanisms for synchronization.

    Different Vars require different mechanisms for synchronization. This method implements the Var specific synchronization mechanism

    Definition Classes
    SessionVarAnyVarTrait
  12. def doWith[F](newVal: T)(f: ⇒ F): F

    Change the value of the Var for the lifespan of the function

    Change the value of the Var for the lifespan of the function

    Definition Classes
    AnyVarTrait
  13. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  14. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  15. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. def findFunc(name: String): Box[T]
    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait
  17. def get: T

    Shadow of the 'is' method

    Shadow of the 'is' method

    Definition Classes
    AnyVarTraitValueHolder
  18. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
  20. def is: T

    The current value of the variable

    The current value of the variable

    Definition Classes
    AnyVarTrait
  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. lazy val logger: Logger
    Attributes
    protected
    Definition Classes
    LazyLoggable
    Annotations
    @transient()
  23. lazy val name: String
    Attributes
    protected
    Definition Classes
    AnyVarTrait
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
  27. def onChange(f: FuncType): Unit

    On any change to this Var, invoke the function.

    On any change to this Var, invoke the function. Changes are setting the value, clearing the value. There may not be a call if the Var goes out of scope (e.g., a RequestVar at the end of the Request).

    The function takes a Box[T] (Full if the Var is being set, Empty if it's being cleared) and a Boolean indicating that the set function is setting to the default value.

    The function should execute *very* quickly (e.g., Schedule a function to be executed on a different thread).

    The function should generally be set in Boot or when a singleton is created.

    f

    the function to execute on change

    Definition Classes
    AnyVarTrait
  28. def onShutdown(session: CleanUpParam): Unit
    Attributes
    protected
    Definition Classes
    AnyVarTrait
  29. def performAtomicOperation[T](f: ⇒ T): T

    Perform an atomic operation on the Settable.

    Perform an atomic operation on the Settable. By default synchronizes the instance, but it could use other mechanisms

    Definition Classes
    Settable
  30. def registerCleanupFunc(in: (LiftSession) ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait
  31. final def registerGlobalCleanupFunc(in: (CleanUpParam) ⇒ Unit): Unit
    Attributes
    protected
    Definition Classes
    AnyVarTrait
  32. def remove(): Unit
    Definition Classes
    AnyVarTrait
  33. def set(what: T): T

    Shadow of the apply method

    Shadow of the apply method

    Definition Classes
    AnyVarTraitSettable
  34. def setFunc(name: String, value: T): Unit
    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait
  35. def setIfUnset(value: ⇒ T): T

    Set the Var if it has not been calculated

    Set the Var if it has not been calculated

    Definition Classes
    AnyVarTrait
  36. def set_?: Boolean

    Has this Var been set or accessed and had its default value calculated

    Has this Var been set or accessed and had its default value calculated

    Definition Classes
    AnyVarTrait
  37. def settingDefault_?: Boolean
    Attributes
    protected
    Definition Classes
    AnyVarTrait
  38. def showWarningWhenAccessedOutOfSessionScope_?: Boolean
  39. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  40. def testWasSet(name: String, bn: String): Boolean

    A non-side-effecting test if the value was initialized

    A non-side-effecting test if the value was initialized

    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait
  41. def toString(): String
    Definition Classes
    AnyVarTrait → AnyRef → Any
  42. def update(f: (T) ⇒ T): T

    Applies the given function to the contents of this variable and sets the variable to the resulting value.

    Applies the given function to the contents of this variable and sets the variable to the resulting value.

    f

    -- the function to apply and set the result from.

    Definition Classes
    AnyVarTrait
  43. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  44. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  45. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. def wasInitialized(name: String, bn: String): Boolean
    Attributes
    protected
    Definition Classes
    SessionVarAnyVarTrait

Inherited from LazyLoggable

Inherited from util.AnyVar[T, SessionVar[T]]

Inherited from AnyVarTrait[T, SessionVar[T]]

Inherited from HasCalcDefaultValue[T]

Inherited from PSettableValueHolder[T]

Inherited from SettableValueHolder

Inherited from Settable

Inherited from PValueHolder[T]

Inherited from ValueHolder

Inherited from AnyRef

Inherited from Any

Ungrouped