<?xml version='1.0' encoding='utf-8'?>
<!--
  ~ Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
  ~
  ~ WSO2 Inc. 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.
  -->
<!-- The contents of this file will be loaded for each web application -->
<Context crossContext="true" useRelativeRedirects="false">


    <!-- Default set of monitored resources -->

    <Loader className="org.wso2.carbon.webapp.mgt.loader.CarbonWebappLoader" loaderClass="org.wso2.carbon.webapp.mgt.loader.CarbonWebappClassLoader"/>

    <!-- Uncomment this to disable session persistence across Tomcat restarts -->
    <!--
    <Manager pathname="" />
    -->

    <!-- Uncomment this to enable Comet connection tacking (provides events
         on session expiration as well as webapp lifecycle) -->
    <!--
    <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
    -->
    <!-- APIPublisherLifecycleListener listens to webapp deployment events and publish JAX-RS services packaged into each of the aforesaid
         web applications that are configured to be made available as 'Managed APIs'. Given below are the parameters that need to be congigured 
         in the form of 'context-param's in web.xml of each applicable web application.
         
         'managed-api-enabled'    - Indicates that the web application being processed needs to be published as a 'Managed API'.
 	 'managed-api-context'    - Context of the 'Managed API'.
	 'managed-api-version'    - Version of the 'Managed API'.
	 'managed-api-owner'      - Owner of the 'Managed API'.
	 'managed-api-isSecured'  - Indicates if the 'Managed API' needs to be exposed over a secured channel.
	 'managed-api-transports' - Transports through which the 'Managed API' is exposed.
     -->
    <Listener className="org.wso2.carbon.apimgt.webapp.publisher.lifecycle.listener.APIPublisherLifecycleListener"/>

    <!-- WebAppDeploymentLifecycleListener listens to webapp deployment events and adds the custom permissions defined in webapps'
        META-INF/permissions.xml to the permissions/admin section of registry. Given below is a sample of permissions.xml file.

    <PermissionConfiguration>
            <Permission>
                <name>Device Management</name>
                <path>/device-mgt</path>
            </Permission>
            <Permission>
                <name>Administrator</name>
                <path>/device-mgt/admin</path>
            </Permission>
            <Permission>
                <name>Dashboard</name>
                <path>/device-mgt/admin/dashboard</path>
            </Permission>
            <Permission>
                <name>Lock</name>
                <path>/device-mgt/admin/operation/lock</path>
            </Permission>
    </PermissionConfiguration>
     -->
    <Listener className="org.wso2.carbon.device.mgt.core.config.permission.lifecycle.WebAppDeploymentLifecycleListener"/>
</Context>
