Interface OdlInterfaceRpcService

  • All Superinterfaces:
    org.opendaylight.yangtools.yang.binding.RpcService
    All Known Implementing Classes:
    InterfaceManagerRpcService

    public interface OdlInterfaceRpcService
    extends org.opendaylight.yangtools.yang.binding.RpcService
    Interface for implementing the following YANG RPCs defined in module odl-interface-rpc
     rpc get-dpid-from-interface {
       input input {
         leaf intf-name {
           type string;
         }
       }
       output output {
         leaf dpid {
           type uint64;
         }
       }
     }
     rpc get-port-from-interface {
       input input {
         leaf intf-name {
           type string;
         }
       }
       output output {
         leaf dpid {
           type uint64;
         }
         leaf portno {
           type uint32;
         }
         leaf portname {
           type string;
         }
         leaf phy-address {
           type string;
         }
       }
     }
     rpc get-egress-actions-for-interface {
       input input {
         leaf intf-name {
           type string;
         }
         leaf tunnel-key {
           type uint32;
           mandatory false;
         }
         leaf action-key {
           type int32;
           mandatory false;
         }
       }
       output output {
         uses action:action-list;
       }
     }
     rpc get-egress-instructions-for-interface {
       input input {
         leaf intf-name {
           type string;
         }
         leaf tunnel-key {
           type uint32;
           mandatory false;
         }
       }
       output output {
         uses offlow:instruction-list;
       }
     }
     rpc get-endpoint-ip-for-dpn {
       input input {
         leaf dpid {
           type uint64;
         }
       }
       output output {
         leaf-list local-ips {
           type inet:ip-address;
         }
       }
     }
     rpc get-interface-type {
       input input {
         leaf intf-name {
           type string;
         }
       }
       output output {
         leaf interface-type {
           type identityref {
             base interface-type;
           }
         }
       }
     }
     rpc get-tunnel-type {
       input input {
         leaf intf-name {
           type string;
         }
       }
       output output {
         leaf tunnel-type {
           type identityref {
             base tunnel-type-base;
           }
         }
       }
     }
     rpc get-nodeconnector-id-from-interface {
       input input {
         leaf intf-name {
           type string;
         }
       }
       output output {
         leaf nodeconnector-id {
           type inv:node-connector-id;
         }
       }
     }
     rpc get-interface-from-if-index {
       input input {
         leaf if-index {
           type int32;
         }
       }
       output output {
         leaf interface-name {
           type string;
         }
       }
     }
     rpc get-dpn-interface-list {
       input input {
         leaf dpid {
           type uint64;
         }
       }
       output output {
         list interfaces {
           leaf interface-name {
             type string;
           }
           leaf interface-type {
             type identityref {
               base interface-type;
             }
           }
         }
       }
     }
     
    • Method Detail

      • getDpidFromInterface

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpidFromInterfaceOutput>> getDpidFromInterface​(GetDpidFromInterfaceInput input)
        used to retrieve dpid from interface name
      • getPortFromInterface

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetPortFromInterfaceOutput>> getPortFromInterface​(GetPortFromInterfaceInput input)
        used to retrieve dpid from interface name
      • getEndpointIpForDpn

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetEndpointIpForDpnOutput>> getEndpointIpForDpn​(GetEndpointIpForDpnInput input)
        to get the local ip of the tunnel/trunk interface
      • getInterfaceType

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetInterfaceTypeOutput>> getInterfaceType​(GetInterfaceTypeInput input)
        to get the type of the interface(vlan, vxlan, vxlan-gpe or gre)
      • getTunnelType

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetTunnelTypeOutput>> getTunnelType​(GetTunnelTypeInput input)
        to get the type of the tunnel interface(vxlan, vxlan-gpe, gre, etc.)
      • getInterfaceFromIfIndex

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetInterfaceFromIfIndexOutput>> getInterfaceFromIfIndex​(GetInterfaceFromIfIndexInput input)
        to get interface associated with an if-index
      • getDpnInterfaceList

        @CheckReturnValue
        com.google.common.util.concurrent.ListenableFuture<org.opendaylight.yangtools.yang.common.RpcResult<GetDpnInterfaceListOutput>> getDpnInterfaceList​(GetDpnInterfaceListInput input)
        used to retrieve interface list for a given Dpn