<?xml version="1.0"?>
<!--
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.
-->
<!--
  components.xml is the configuration file for the VM Ops
  insertion servers.  Someone can quickly pull together an
  insertion server by selecting the correct adapters to use.

  Here are some places to look for information.
    - To find out the general functionality that each Manager 
      or Adapter provide, look at the javadoc for the interface
      that it implements.  The interface is usually the
      "key" attribute in the declaration.
    - To find specific implementation of each Manager or
      Adapter, look at the javadoc for the actual class.  The 
      class can be found in the <class> element.
    - To find out the configuration parameters for each Manager 
      or Adapter, look at the javadoc for the actual implementation
      class.  It should be documented in the description of the 
      class.
    - To know more about the components.xml in general, look for
      the javadoc for ComponentLocator.java.

  If you found that the Manager or Adapter are not properly 
  documented, please contact the author.
-->
<components.xml>
    <interceptor library="com.cloud.configuration.DefaultInterceptorLibrary"/>
    <management-server class="com.cloud.network.NetworkManagerImpl" library="com.cloud.network.NetworkManagerTestComponentLibrary">
        <dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl">
             <param name="premium">true</param>
        </dao>
        <adapters key="com.cloud.network.guru.NetworkGuru">
            <!--
                 NOTE: The order of those gurus implicates priority of network traffic types the guru implements.
                 The upper the higher priority. It effects listTafficTypeImplementors API which returns impelmentor
                 of a specific network traffic.
                 A fair question is, if two gurus implement the same two network traffic types, but these traffic types
                 have cross priority, how to rank them? For example:
                    GuruA (TrafficTypeA, TrafficTypeB)
                    GuruB (TrafficTypeA, TrafficTypeB)
                 we want GuruB.TrafficTypeB > GuruA.TrafficTypeB and GuruB.TrafficTypeA < GuruA.TrafficTypeA. As the priority
                 implicated by order can not map to multiple traffic type, you have to do implement GuruC which inherits GuruB
                 for TrafficTypeB. Then ranking them in order of:
                    GuruC (TrafficTypeB)
                    GuruA (TrafficTypeA, TrafficTypeB)
                    GuruB (TrafficTypeA, TrafficTypeB)
                 now GuruC represents TrafficTypeB with highest priority while GuruA represents TrafficTypeA with highest pirority.

                 However, above case barely happens.
            -->

            <adapter name="StorageNetworkGuru" class="com.cloud.network.guru.StorageNetworkGuru"/>
            <adapter name="ExternalGuestNetworkGuru" class="com.cloud.network.guru.ExternalGuestNetworkGuru"/>
            <adapter name="PublicNetworkGuru" class="com.cloud.network.guru.PublicNetworkGuru"/>
            <adapter name="PodBasedNetworkGuru" class="com.cloud.network.guru.PodBasedNetworkGuru"/>
            <adapter name="ControlNetworkGuru" class="com.cloud.network.guru.ControlNetworkGuru"/>
            <adapter name="DirectNetworkGuru" class="com.cloud.network.guru.DirectNetworkGuru"/>
            <adapter name="DirectPodBasedNetworkGuru" class="com.cloud.network.guru.DirectPodBasedNetworkGuru"/>
            <!--<adapter name="OvsGuestNetworkGuru" class="com.cloud.network.guru.OvsGuestNetworkGuru"/> -->
            <adapter name="PrivateNetworkGuru" class="com.cloud.network.guru.PrivateNetworkGuru"/>
            <!--<adapter name="NiciraNvpGuestNetworkGuru" class="com.cloud.network.guru.NiciraNvpGuestNetworkGuru"/> -->
        </adapters>
        <adapters key="com.cloud.network.IpAddrAllocator">
            <adapter name="Basic" class="com.cloud.network.ExteralIpAddressAllocator"/>
        </adapters>
        <adapters key="com.cloud.network.element.NetworkElement">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <!--<adapter name="Ovs" class="com.cloud.network.element.OvsElement"/> -->
            <!--<adapter name="ExternalDhcpServer" class="com.cloud.network.element.ExternalDhcpElement"/>-->
            <adapter name="BareMetal" class="com.cloud.network.element.BareMetalElement"/>
            <adapter name="SecurityGroupProvider" class="com.cloud.network.element.SecurityGroupElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <!--<adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
        </adapters>
        <adapters key="com.cloud.network.element.FirewallServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.DhcpServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <adapter name="ExternalDhcpElement" class="com.cloud.network.element.ExternalDhcpElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.UserDataServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.SourceNatServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <!--<adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/>   -->
        </adapters>
        <adapters key="com.cloud.network.element.StaticNatServiceProvider">
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
        </adapters>
        <adapters key="com.cloud.network.element.PortForwardingServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
        </adapters>
        <adapters key="com.cloud.network.element.LoadBalancingServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.RemoteAccessVPNServiceProvider">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.Site2SiteVpnServiceProvider">
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.IpDeployer">
            <adapter name="VirtualRouter" class="com.cloud.network.element.VirtualRouterElement"/>
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
            <!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
        </adapters>
        <adapters key="com.cloud.network.element.ConnectivityProvider">
            <!-- <adapter name="NiciraNvp" class="com.cloud.network.element.NiciraNvpElement"/> -->
        </adapters>
        <adapters key="com.cloud.network.element.NetworkACLServiceProvider">
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>
        <adapters key="com.cloud.network.element.VpcProvider">
            <adapter name="VpcVirtualRouter" class="com.cloud.network.element.VpcVirtualRouterElement"/>
        </adapters>

        <!--<manager name="OvsTunnelManager" key="com.cloud.network.ovs.OvsTunnelManager" class="com.cloud.network.ovs.OvsTunnelManagerImpl"/>-->
        <!--<manager name="ElasticLoadBalancerManager" key="com.cloud.network.lb.ElasticLoadBalancerManager" class="com.cloud.network.lb.ElasticLoadBalancerManagerImpl"/>-->
        <pluggableservice name="VirtualRouterElementService" key="com.cloud.network.element.VirtualRouterElementService" class="com.cloud.network.element.VirtualRouterElement"/>
        <!-- <pluggableservice name="NiciraNvpElementService" key="com.cloud.network.element.NiciraNvpElementService" class="com.cloud.network.element.NiciraNvpElement"/> -->
        <!--<dao name="OvsTunnelInterfaceDao" class="com.cloud.network.ovs.dao.OvsTunnelInterfaceDaoImpl" singleton="false"/> -->
        <!--<dao name="OvsTunnelAccountDao" class="com.cloud.network.ovs.dao.OvsTunnelNetworkDaoImpl" singleton="false"/> -->
        <!--<dao name="NiciraNvpDao" class="com.cloud.network.dao.NiciraNvpDaoImpl" singleton="false"/> -->
        <!--<dao name="NiciraNvpNicMappingDao" class="com.cloud.network.dao.NiciraNvpNicMappingDaoImpl" singleton="false"/> -->
        <!--<dao name="NiciraNvpRouterMappingDao" class="com.cloud.network.dao.NiciraNvpRouterMappingDaoImpl" singleton="false"/> -->
        <!--<dao name="ElasticLbVmMapDao" class="com.cloud.network.lb.dao.ElasticLbVmMapDaoImpl" singleton="false"/> -->
    </management-server>

    <configuration-server class="com.cloud.server.ConfigurationServerImpl">
        <dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl" singleton="false">
             <param name="premium">true</param>
        </dao>
        <dao name="Snapshot policy defaults" class="com.cloud.storage.dao.SnapshotPolicyDaoImpl" singleton="false"/>
        <dao name="DiskOffering configuration server" class="com.cloud.storage.dao.DiskOfferingDaoImpl" singleton="false"/>         
        <dao name="ServiceOffering configuration server" class="com.cloud.service.dao.ServiceOfferingDaoImpl" singleton="false"/>
        <dao name="host zone configuration server" class="com.cloud.dc.dao.DataCenterDaoImpl" singleton="false"/>
        <dao name="host pod configuration server" class="com.cloud.dc.dao.HostPodDaoImpl" singleton="false"/>
        <dao name="DomainDao" class="com.cloud.domain.dao.DomainDaoImpl" singleton="false"/>
        <dao name="NetworkOfferingDao" class="com.cloud.offerings.dao.NetworkOfferingDaoImpl" singleton="false"/>
        <dao name="DataCenterDao" class="com.cloud.dc.dao.DataCenterDaoImpl" singleton="false"/>
        <dao name="NetworkDao" class="com.cloud.network.dao.NetworkDaoImpl" singleton="false"/>
        <dao name="IpAddressDao" class="com.cloud.network.dao.IPAddressDaoImpl" singleton="false"/>     
        <dao name="VlanDao" class="com.cloud.dc.dao.VlanDaoImpl" singleton="false"/>
        <dao name="ResouceCountDao" class="com.cloud.configuration.dao.ResourceCountDaoImpl" singleton="false"/>
        <dao name="AccountDao" class="com.cloud.user.dao.AccountDaoImpl" singleton="false"/>
        <dao name="UserDao" class="com.cloud.user.dao.UserDaoImpl" singleton="false"/>
        <dao name="NetworkOfferingServiceDao" class="com.cloud.offerings.dao.NetworkOfferingServiceMapDaoImpl" singleton="false"/>
        <dao name="VirtualRouterProviderDao" class="com.cloud.network.dao.VirtualRouterProviderDaoImpl" singleton="false"/>
        <dao name="IdentityDao" class="com.cloud.uuididentity.dao.IdentityDaoImpl" singleton="false"/>
        <dao name="Site2SiteCustomerGatewayDao" class="com.cloud.network.dao.Site2SiteCustomerGatewayDaoImpl" singleton="false"/>
        <dao name="Site2SiteVpnGatewayDao" class="com.cloud.network.dao.Site2SiteVpnGatewayDaoImpl" singleton="false"/>
        <dao name="Site2SiteVpnConnectionDao" class="com.cloud.network.dao.Site2SiteVpnConnectionDaoImpl" singleton="false"/>
    </configuration-server>
    
    
</components.xml>
