This is an automated email from the ASF dual-hosted git repository.
markt pushed a commit to branch 9.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/9.0.x by this push:
new 4fb0e474f4 Add lifecycle events, correct activation, use aliases
correctly
4fb0e474f4 is described below
commit 4fb0e474f4a10b76fc6f47c8c2c4538c2d3c8c4e
Author: Mark Thomas <[email protected]>
AuthorDate: Fri Sep 6 15:32:51 2024 +0100
Add lifecycle events, correct activation, use aliases correctly
---
.../docs/architecture/startup/2_catalina_init.png | Bin 30440 -> 114077 bytes
.../docs/architecture/startup/2_catalina_init.uml | 95 ++++++++++++++++++---
2 files changed, 85 insertions(+), 10 deletions(-)
diff --git a/webapps/docs/architecture/startup/2_catalina_init.png
b/webapps/docs/architecture/startup/2_catalina_init.png
index 9c8aef0ef8..63a31d6a81 100644
Binary files a/webapps/docs/architecture/startup/2_catalina_init.png and
b/webapps/docs/architecture/startup/2_catalina_init.png differ
diff --git a/webapps/docs/architecture/startup/2_catalina_init.uml
b/webapps/docs/architecture/startup/2_catalina_init.uml
index b02d57f5a3..de8b3432f5 100644
--- a/webapps/docs/architecture/startup/2_catalina_init.uml
+++ b/webapps/docs/architecture/startup/2_catalina_init.uml
@@ -19,29 +19,104 @@ hide footbox
skinparam style strictuml
activate Catalina
-activate Server
-activate "Global\nNaming\nResources"
-activate Services
-activate Engine
-activate Executors
-activate MapperListener
-activate Connectors
-activate Protocol
Catalina -> Server: init()
+activate Server
+
+Server -> Server: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+
+Server -> Server: initInternal()
+activate Server
+
+Server -> "Global\nNaming\nResources" as GNR: init()
+activate GNR
+
+GNR -> GNR: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+GNR -> GNR: initInternal()
+GNR -> GNR: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Server <<-- GNR
+deactivate GNR
-Server -> "Global\nNaming\nResources" : init()
Server -> "Service(s)" as Services: init()
+activate Services
+
+Services -> Services: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+
+Services -> Services: initInternal()
+activate Services
Services -> Engine: init()
+activate Engine
+
+Engine -> Engine: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+Engine -> Engine: initInternal()
+Engine -> Engine: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Services <<-- Engine
+deactivate Engine
+
Services -> "Executor(s)" as Executors: init()
+activate Executors
+
+Executors -> Executors: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+Executors -> Executors: initInternal()
+Executors -> Executors: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Services <<-- Executors
+deactivate Executors
+
Services -> "Mapper\nListener" as MapperListener: init()
+activate MapperListener
+
+MapperListener -> MapperListener: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+MapperListener -> MapperListener: initInternal()
+MapperListener -> MapperListener: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Services <<-- MapperListener
+deactivate MapperListener
+
Services -> "Connector(s)" as Connectors: init()
+activate Connectors
+
+Connectors -> Connectors: fireLifecycleEvent(\n BEFORE_INIT_EVENT)
+Connectors -> Connectors: initInternal()
+activate Connectors
Connectors -->> CoyoteAdapter **
-activate CoyoteAdapter
Connectors -> Protocol: setAdapter()
+activate Protocol
+Connectors <<-- Protocol
+deactivate Protocol
+
Connectors -> Protocol: init()
+activate Protocol
+Connectors <<-- Protocol
+deactivate Protocol
+
+Connectors -->> Connectors
+deactivate Connectors
+
+Connectors -> Connectors: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Services <<-- Connectors
+deactivate Connectors
+
+Services -> Services: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Services -->> Services
+deactivate Services
+
+Server <<-- Services
+deactivate Services
+
+Server -->> Server
+deactivate Server
+
+Server -> Server: fireLifecycleEvent(\n AFTER_INIT_EVENT)
+
+Server -->> Catalina
+deactivate Server
@enduml
\ No newline at end of file
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]