<?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.
-->
<!--
  This is an example components.xml that refers to the main components.xml.
-->
<components.xml>
    <system-integrity-checker class="com.cloud.upgrade.DatabaseUpgradeChecker">
        <checker name="ManagementServerNode" class="com.cloud.cluster.ManagementServerNode"/>
        <checker name="EncryptionSecretKeyChecker" class="com.cloud.utils.crypt.EncryptionSecretKeyChecker"/>
        <checker name="DatabaseIntegrityChecker" class="com.cloud.upgrade.DatabaseIntegrityChecker"/>
    </system-integrity-checker>

    <interceptor library="com.cloud.configuration.DefaultInterceptorLibrary"/>
    <management-server class="com.cloud.server.ManagementServerImpl" library="com.cloud.configuration.PremiumComponentLibrary">
        <dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl">
             <param name="premium">true</param>
        </dao>
        <adapters key="com.cloud.agent.manager.allocator.HostAllocator">
            <adapter name="FirstFitRouting" class="com.cloud.agent.manager.allocator.impl.FirstFitRoutingAllocator"/>
            <!--adapter name="FirstFitRouting" class="com.cloud.agent.manager.allocator.impl.RecreateHostAllocator"/-->
            <!--adapter name="FirstFit" class="com.cloud.agent.manager.allocator.impl.FirstFitAllocator"/-->
        </adapters>
        <adapters key="com.cloud.storage.allocator.StoragePoolAllocator">
            <adapter name="LocalStorage" class="com.cloud.storage.allocator.LocalStoragePoolAllocator"/>
            <adapter name="Storage" class="com.cloud.storage.allocator.FirstFitStoragePoolAllocator"/>
        </adapters>
        <adapters key="com.cloud.agent.manager.allocator.PodAllocator">
            <adapter name="User First" class="com.cloud.agent.manager.allocator.impl.UserConcentratedAllocator"/>
        </adapters>
        <adapters key="com.cloud.consoleproxy.ConsoleProxyAllocator">
            <adapter name="Balance" class="com.cloud.consoleproxy.ConsoleProxyBalanceAllocator"/>
        </adapters>
        <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.cluster.ClusterServiceAdapter">
            <adapter name="ClusterService" class="com.cloud.cluster.ClusterServiceServletAdapter"/>
        </adapters>
        <adapters key="com.cloud.storage.secondary.SecondaryStorageVmAllocator">
            <adapter name="Balance" class="com.cloud.storage.secondary.SecondaryStorageVmDefaultAllocator"/>
        </adapters>
        <adapters key="com.cloud.network.IpAddrAllocator">
            <adapter name="Basic" class="com.cloud.network.ExternalIpAddressAllocator"/>
        </adapters>
        <adapters key="com.cloud.server.auth.UserAuthenticator">
            <!-- <adapter name="SHA256SALT" class="com.cloud.server.auth.SHA256SaltedUserAuthenticator"/> -->
            <adapter name="MD5" class="com.cloud.server.auth.MD5UserAuthenticator"/>
            <adapter name="LDAP" class="com.cloud.server.auth.LDAPUserAuthenticator"/>
        </adapters>
        <adapters key="com.cloud.ha.Investigator">
            <adapter name="SimpleInvestigator" class="com.cloud.ha.CheckOnAgentInvestigator"/>
            <adapter name="XenServerInvestigator" class="com.cloud.ha.XenServerInvestigator"/>
            <adapter name="PingInvestigator" class="com.cloud.ha.UserVmDomRInvestigator"/>
			<adapter name="ManagementIPSysVMInvestigator" class="com.cloud.ha.ManagementIPSystemVMInvestigator"/>
        </adapters>
        <adapters key="com.cloud.ha.FenceBuilder">
            <adapter name="XenServerFenceBuilder" class="com.cloud.ha.XenServerFencer"/>
            <adapter name="KVMFenceBuilder" class="com.cloud.ha.KVMFencer"/>
            <adapter name="OvmFenceBuilder" class="com.cloud.ovm.hypervisor.OvmFencer"/>
        </adapters>
        <adapters key="com.cloud.hypervisor.HypervisorGuru">
            <adapter name="XenServerGuru" class="com.cloud.hypervisor.XenServerGuru"/>
            <adapter name="KVMGuru" class="com.cloud.hypervisor.KVMGuru"/>
        </adapters>
        <adapters key="com.cloud.resource.Discoverer">
            <adapter name="XCP Agent" class="com.cloud.hypervisor.xenserver.discoverer.XcpServerDiscoverer"/>
            <adapter name="SecondaryStorage" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer"/>
            <adapter name="KVM Agent" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer"/>
            <adapter name="Bare Metal Agent" class="com.cloud.baremetal.BareMetalDiscoverer"/>
			<adapter name="Ovm Discover" class="com.cloud.ovm.hypervisor.OvmDiscoverer" />
        </adapters>
        <adapters key="com.cloud.deploy.DeploymentPlanner">
            <adapter name="First Fit" class="com.cloud.deploy.FirstFitPlanner"/>
            <adapter name="UserDispersing" class="com.cloud.deploy.UserDispersingPlanner"/>
            <adapter name="UserConcentratedPod" class="com.cloud.deploy.UserConcentratedPodPlanner"/>
            <adapter name="BareMetal Fit" class="com.cloud.deploy.BareMetalPlanner"/>
        </adapters>
        <adapters key="com.cloud.alert.AlertAdapter">
            <adapter name="ClusterAlert" class="com.cloud.alert.ClusterAlertAdapter"/>
            <adapter name="ConsoleProxyAlert" class="com.cloud.alert.ConsoleProxyAlertAdapter"/>
            <adapter name="SecondaryStorageVmAlert" class="com.cloud.alert.SecondaryStorageVmAlertAdapter"/>
        </adapters>
        <adapters key="org.apache.cloudstack.acl.SecurityChecker">
            <adapter name="DomainChecker" class="com.cloud.acl.DomainChecker"/>
        </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"/>
            <adapter name="DnsNotifier" class="org.apache.cloudstack.network.element.DnsNotifier"/>
        </adapters>
        <adapters key="com.cloud.cluster.agentlb.AgentLoadBalancerPlanner">
            <adapter name="ClusterBasedAgentLbPlanner" class="com.cloud.cluster.agentlb.ClusterBasedAgentLoadBalancerPlanner"/>
        </adapters>
        <adapters key="com.cloud.hypervisor.HypervisorGuru">
            <adapter name="XenServerGuru" class="com.cloud.hypervisor.XenServerGuru"/>
            <adapter name="KVMGuru" class="com.cloud.hypervisor.KVMGuru"/>
            <adapter name="BareMetalGuru" class="com.cloud.baremetal.BareMetalGuru"/>
            <adapter name="OvmGuru" class="com.cloud.ovm.hypervisor.OvmGuru" />
        </adapters>
        <adapters key="com.cloud.agent.StartupCommandProcessor">
            <adapter name="BasicAgentAuthorizer" class="com.cloud.agent.manager.authn.impl.BasicAgentAuthManager"/>
        </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"/>
        <manager name="LBHealthCheckManager" key="com.cloud.network.lb.LBHealthCheckManager" class="com.cloud.network.lb.LBHealthCheckManagerImpl"/>
        <pluggableservice name="ApiDiscoveryService" key="org.apache.cloudstack.discovery.ApiDiscoveryService" class="org.apache.cloudstack.discovery.ApiDiscoveryServiceImpl"/>
        <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="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>
