class DesignWithContext[A] extends Design
DesignWithContext[A] is a wrapper of Design class for chaining lifecycle hooks for the same type A. This can be safely cast to just Design
- Alphabetic
- By Inheritance
- DesignWithContext
- Design
- DesignImpl
- LogSupport
- LazyLogger
- LoggingMethods
- Serializable
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: Design): Design
- Definition Classes
- Design
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
add(other: Design): Design
- Definition Classes
- Design
-
def
addBinding[A](b: Binding): DesignWithContext[A]
- Definition Classes
- Design
- def afterStart(body: (A) ⇒ Unit): DesignWithContext[A]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def beforeShutdown(body: (A) ⇒ Unit): DesignWithContext[A]
-
def
bind(t: Surface)(implicit sourceCode: SourceCode): Binder[Any]
- Definition Classes
- Design
-
macro
def
bind[A]: Binder[A]
- Definition Classes
- DesignImpl
-
macro
def
build[A](body: (A) ⇒ Any): Any
A helper method of creating a new session and an instance of A.
A helper method of creating a new session and an instance of A. This method is useful when you only need to use A as an entry point of your program. After executing the body, the sesion will be closed.
- Definition Classes
- DesignImpl
-
def
canEqual(other: Any): Boolean
- Definition Classes
- Design
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
macro
def
debug(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
debug(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(other: Any): Boolean
- Definition Classes
- Design → AnyRef → Any
-
macro
def
error(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
error(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- Design → AnyRef → Any
-
macro
def
info(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
info(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
macro
def
logAt(logLevel: LogLevel, message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
lazy val
logger: Logger
- Attributes
- protected[this]
- Definition Classes
- LazyLogger
-
def
minimize: Design
Generates a minimized design by removing overwritten bindings
Generates a minimized design by removing overwritten bindings
- Definition Classes
- Design
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
newSession: Session
Create a new session.
Create a new session.
With this method, the session will not start automatically. You need to explicitly call session.start and session.shutdown to start/terminate the lifecycle of objects
- Definition Classes
- Design
-
def
newSessionBuilder: SessionBuilder
Method for configuring the session in details
Method for configuring the session in details
- Definition Classes
- Design
-
def
noDefaultInstanceInjection: Design
- Definition Classes
- Design
-
def
noLifeCycleLogging: Design
- Definition Classes
- Design
-
def
noStats: Design
- Definition Classes
- Design
-
def
noTracer: Design
- Definition Classes
- Design
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def onInit(body: (A) ⇒ Unit): DesignWithContext[A]
- def onInject(body: (A) ⇒ Unit): DesignWithContext[A]
- def onShutdown(body: (A) ⇒ Unit): DesignWithContext[A]
- def onStart(body: (A) ⇒ Unit): DesignWithContext[A]
-
def
remove(t: Surface): Design
- Definition Classes
- Design
-
macro
def
remove[A]: Design
- Definition Classes
- DesignImpl
-
macro
def
run[A, B](body: (A) ⇒ B): B
Execute a given code block by building A using this design, and return B
Execute a given code block by building A using this design, and return B
- Definition Classes
- DesignImpl
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toDesign: Design
Used for casting itself as Design if returning DesignWithContext type is cumbersome
Used for casting itself as Design if returning DesignWithContext type is cumbersome
- Definition Classes
- Design
-
def
toString(): String
- Definition Classes
- Design → AnyRef → Any
-
macro
def
trace(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
trace(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
macro
def
warn(message: Any, cause: Throwable): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
macro
def
warn(message: Any): Unit
- Attributes
- protected
- Definition Classes
- LoggingMethods
-
def
withLazyMode: Design
Do not initialize singletons for debugging
Do not initialize singletons for debugging
- Definition Classes
- Design
-
def
withLifeCycleLogging: Design
- Definition Classes
- Design
-
def
withProductionMode: Design
Enable eager initialization of singletons services for production mode
Enable eager initialization of singletons services for production mode
- Definition Classes
- Design
-
def
withSession[U](body: (Session) ⇒ U): U
Run the code block with a new session.
Run the code block with a new session.
This method will create a new session, start it, run the given code block, and finally terminate the session after the code block completion.
- Definition Classes
- Design
-
def
withStats(stats: DIStats): Design
- Definition Classes
- Design
-
def
withTracer(t: Tracer): Design
Use a custom binding tracer
Use a custom binding tracer
- Definition Classes
- Design
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated