<!--
  ~ Copyright 2015-present Open Networking Laboratory
  ~
  ~ 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">
    <command-bundle xmlns="http://karaf.apache.org/xmlns/shell/v1.1.0">
        <command>
            <action class="org.onosproject.xosintegration.cli.VoltTenantsListCommand"/>
            <completers>
                <ref component-id="tenantIdCompleter"/>
                <null/>
            </completers>
        </command>
        <command>
            <action class="org.onosproject.xosintegration.cli.VoltTenantsCreateCommand"/>
            <completers>
                <ref component-id="placeholderCompleter"/>
                <ref component-id="placeholderCompleter"/>
                <ref component-id="connectPointCompleter"/>
                <null/>
            </completers>
        </command>
        <command>
            <action class="org.onosproject.xosintegration.cli.VoltRemoveTenantCommand"/>
            <completers>
                <ref component-id="tenantIdCompleter"/>
                <null/>
            </completers>
        </command>
    </command-bundle>
    <bean id="tenantIdCompleter" class="org.onosproject.xosintegration.cli.TenantIdCompleter"/>
    <bean id="placeholderCompleter" class="org.onosproject.cli.PlaceholderCompleter"/>
    <bean id="connectPointCompleter" class="org.onosproject.cli.net.ConnectPointCompleter"/>
</blueprint>
