<?xml version="1.0" encoding="UTF-8"?>
<!--
   Licensed 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.
-->
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">

    <!-- Reference to the MBean server -->
    <reference id="mbeanServer" interface="javax.management.MBeanServer">
        <reference-listener ref="mbeanRegistrer" bind-method="registerMBeanServer" unbind-method="unregisterMBeanServer"/>
    </reference>

    <!-- Dev MBean -->
    <bean id="devMBean" class="org.apache.karaf.management.mbeans.dev.internal.DevMBeanImpl">
        <property name="bundleContext" ref="blueprintBundleContext"/>
    </bean>

    <!-- Register Dev MBean in the MBean Server -->
    <bean id="mbeanRegistrer" class="org.apache.karaf.management.MBeanRegistrer">
        <property name="mbeans">
            <map>
                <entry value="org.apache.karaf:type=dev,name=${karaf.name}" key-ref="devMBean"/>
            </map>
        </property>
    </bean>

</blueprint>