@startuml ' Licensed to the Apache Software Foundation (ASF) under one or more ' contributor license agreements. See the NOTICE file distributed with ' this work for additional information regarding copyright ownership. ' The ASF licenses this file to You under the Apache License, Version 2.0 ' (the "License"); you may not use this file except in compliance with ' the License. You may obtain a copy of the License at ' ' http://www.apache.org/licenses/LICENSE-2.0 ' ' Unless required by applicable law or agreed to in writing, software ' distributed under the License is distributed on an "AS IS" BASIS, ' WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ' See the License for the specific language governing permissions and ' limitations under the License. hide footbox skinparam style strictuml activate Context == BEFORE_START_EVENT == Context -> ContextConfig ++:lifecycleEvent(BEFORE_START_EVENT) ContextConfig -> ContextConfig ++: beforeStart() ContextConfig -> ContextConfig: fixDocBase() ContextConfig -> ContextConfig: antiLocking() return return == CONFIGURE_START_EVENT == Context -> ContextConfig ++:lifecycleEvent(CONFIGURE_START_EVENT) ContextConfig -> ContextConfig ++: configureStart() ContextConfig -> ContextConfig ++: webConfig() ContextConfig --> WebXmlParser ** ContextConfig -> ContextConfig ++: getDefaultWebXmlFragment() ContextConfig -> WebXmlParser ++: parseWebXml(defaultWebXml) return return ContextConfig -> ContextConfig ++: getTomcatWebXmlFragment() ContextConfig -> WebXmlParser ++: parseWebXml(tomcatWebXml) return return ContextConfig --> WebXml ** ContextConfig -> WebXmlParser ++: parseWebXml(contextWebXml) WebXmlParser -> WebXml ++ return return ContextConfig -> ContextConfig: processJarsForWebFragments() ContextConfig -> ContextConfig: processServletContainerInitializers() ContextConfig -> ContextConfig: processClasses() ContextConfig -> WebXml ++: merge(orderedFragments) return ContextConfig -> WebXml ++: merge(tomcatWebXml) return ContextConfig -> WebXml ++: merge(defaultWebXml) return ContextConfig -> ContextConfig: convertJsps() ContextConfig -> ContextConfig: configureContext() ContextConfig -> ContextConfig: processResourceJARs() return ||| ContextConfig -> ContextConfig: applicationAnnotationsConfig() ContextConfig -> ContextConfig: validateSecurityRoles() ContextConfig -> ContextConfig: authenticatorConfig() return destroy WebXmlParser destroy WebXml return == AFTER_START_EVENT == Context -> ContextConfig ++:lifecycleEvent(AFTER_START_EVENT) ContextConfig -> Context ++:setDocBase(originalDocBase) return return @enduml