<?xml version="1.0" encoding="UTF-8"?>
<!--
   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.
-->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.4-strict.dtd" >
    <wicket:head>
        <title>Karaf WebConsole</title>
    </wicket:head>

    <body>
       <wicket:extend>
            <h1>Blueprint container details</h1>

            <table class="dataview grid_12">
                <tr wicket:id="components" class="component">
                    <td>
                        <span wicket:id="componentId">.component-1</span>
                    </td>
                    <td>
                        <span wicket:id="type">org.osgi.service.blueprint.reflect.ComponentMetadata</span>
                    </td>
                    <td>
                        <ul>
                            <li wicket:id="dependencies">
                                <span wicket:id="dependency">.component-12</span>
                            </li>
                        </ul>
                    </td>
                </tr>
            </table>

            <div id="graph" class="grid_12" style="height: 550px"></div>
        </wicket:extend>
    </body>
</html>
