trait AnyVarTrait[T, MyType <: AnyVarTrait[T, MyType]] extends PSettableValueHolder[T] with HasCalcDefaultValue[T]
Abstract a request or a session scoped variable.
- Self Type
- MyType
- Alphabetic
- By Inheritance
- AnyVarTrait
- HasCalcDefaultValue
- PSettableValueHolder
- SettableValueHolder
- Settable
- PValueHolder
- ValueHolder
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
- abstract type CleanUpParam
-
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. -
type
ValueType = T
- Definition Classes
- PValueHolder → ValueHolder
Abstract Value Members
-
abstract
def
calcDefaultValue: T
- Attributes
- protected
- Definition Classes
- AnyVarTrait → HasCalcDefaultValue
-
abstract
def
clearFunc(name: String): Unit
- Attributes
- protected
-
abstract
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
-
abstract
def
findFunc(name: String): Box[T]
- Attributes
- protected
-
abstract
def
registerCleanupFunc(in: (MyType.CleanUpParam) ⇒ Unit): Unit
- Attributes
- protected
-
abstract
def
setFunc(name: String, value: T): Unit
- Attributes
- protected
-
abstract
def
testWasSet(name: String, initedKey: String): Boolean
A non-side-effecting test if the value was initialized
A non-side-effecting test if the value was initialized
- Attributes
- protected
-
abstract
def
wasInitialized(name: String, initedKey: String): Boolean
- Attributes
- protected
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
__nameSalt: String
- Attributes
- protected
-
def
apply(what: T): T
Set the session variable
Set the session variable
- what
-- the value to set the session variable to
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
atomicUpdate(f: (MyType.ValueType) ⇒ MyType.ValueType): MyType.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
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
doWith[F](newVal: T)(f: ⇒ F): F
Change the value of the Var for the lifespan of the function
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
get: T
Shadow of the 'is' method
Shadow of the 'is' method
- Definition Classes
- AnyVarTrait → ValueHolder
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
def
is: T
The current value of the variable
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
lazy val
name: String
- Attributes
- protected
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
onChange(f: MyType.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
-
def
onShutdown(session: MyType.CleanUpParam): Unit
- Attributes
- protected
-
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
-
final
def
registerGlobalCleanupFunc(in: (MyType.CleanUpParam) ⇒ Unit): Unit
- Attributes
- protected
- def remove(): Unit
-
def
set(what: T): T
Shadow of the apply method
Shadow of the apply method
- Definition Classes
- AnyVarTrait → Settable
-
def
setIfUnset(value: ⇒ T): T
Set the Var if it has not been calculated
-
def
set_?: Boolean
Has this Var been set or accessed and had its default value calculated
-
def
settingDefault_?: Boolean
- Attributes
- protected
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyVarTrait → AnyRef → Any
-
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.
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )