All Superinterfaces:
org.opendaylight.yangtools.yang.binding.Augmentable<Protocol>, org.opendaylight.yangtools.yang.binding.BindingContract<org.opendaylight.yangtools.yang.binding.DataContainer>, org.opendaylight.yangtools.yang.binding.BindingObject, org.opendaylight.yangtools.yang.binding.ChildOf<Protocols>, org.opendaylight.yangtools.yang.binding.DataContainer, org.opendaylight.yangtools.yang.binding.DataObject, org.opendaylight.yangtools.yang.binding.Identifiable<ProtocolKey>

@Generated("mdsal-binding-generator") public interface Protocol extends org.opendaylight.yangtools.yang.binding.ChildOf<Protocols>, org.opendaylight.yangtools.yang.binding.Augmentable<Protocol>, org.opendaylight.yangtools.yang.binding.Identifiable<ProtocolKey>
A process (instance) of a routing protocol. Some systems may not support more than one instance of a particular routing protocol

This class represents the following YANG schema fragment defined in module openconfig-network-instance

 list protocol {
   key "identifier name";
   leaf identifier {
     type leafref {
       path ../config/identifier;
     }
   }
   leaf name {
     type leafref {
       path ../config/name;
     }
   }
   container config {
     uses protocols-config;
   }
   container state {
     config false;
     uses protocols-config;
     uses protocols-state;
   }
   container static {
     when "../config/identifier = 'STATIC'" {
     }
     uses lroute:local-static-top;
   }
   container aggregate {
     when "../config/identifier = 'LOCAL-AGGREGATE'" {
     }
     uses lroute:local-aggregate-top;
   }
 }
 

To create instances of this class use ProtocolBuilder.

See Also:
  • Field Details

    • QNAME

      static final @NonNull org.opendaylight.yangtools.yang.common.QName QNAME
      YANG identifier of the statement represented by this class.
  • Method Details

    • implementedInterface

      default Class<Protocol> implementedInterface()
      Specified by:
      implementedInterface in interface org.opendaylight.yangtools.yang.binding.BindingContract<org.opendaylight.yangtools.yang.binding.DataContainer>
      Specified by:
      implementedInterface in interface org.opendaylight.yangtools.yang.binding.DataObject
    • bindingHashCode

      static int bindingHashCode(@NonNull Protocol obj)
      Default implementation of Object.hashCode() contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent hashing results across all implementations.
      Parameters:
      obj - Object for which to generate hashCode() result.
      Returns:
      Hash code value of data modeled by this interface.
      Throws:
      NullPointerException - if obj is null
    • bindingEquals

      static boolean bindingEquals(@NonNull Protocol thisObj, Object obj)
      Default implementation of Object.equals(Object) contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent equality results across all implementations.
      Parameters:
      thisObj - Object acting as the receiver of equals invocation
      obj - Object acting as argument to equals invocation
      Returns:
      True if thisObj and obj are considered equal
      Throws:
      NullPointerException - if thisObj is null
    • bindingToString

      static String bindingToString(@NonNull Protocol obj)
      Default implementation of Object.toString() contract for this interface. Implementations of this interface are encouraged to defer to this method to get consistent string representations across all implementations.
      Parameters:
      obj - Object for which to generate toString() result.
      Returns:
      String value of data modeled by this interface.
      Throws:
      NullPointerException - if obj is null
    • key

      Specified by:
      key in interface org.opendaylight.yangtools.yang.binding.Identifiable<ProtocolKey>
    • getIdentifier

      InstallProtocolType getIdentifier()
      Return identifier, or null if it is not present.
           
               The protocol name for the routing or forwarding protocol to be instantiated
           
       
      Returns:
      InstallProtocolType identifier, or null if it is not present.
    • requireIdentifier

      default @NonNull InstallProtocolType requireIdentifier()
      Return identifier, guaranteed to be non-null.
           
               The protocol name for the routing or forwarding protocol to be instantiated
           
       
      Returns:
      InstallProtocolType identifier, guaranteed to be non-null.
      Throws:
      NoSuchElementException - if identifier is not present
    • getName

      String getName()
      Return name, or null if it is not present.
           
               An operator-assigned identifier for the routing or forwarding protocol. For some
               processes this leaf may be system defined.
           
       
      Returns:
      String name, or null if it is not present.
    • requireName

      default @NonNull String requireName()
      Return name, guaranteed to be non-null.
           
               An operator-assigned identifier for the routing or forwarding protocol. For some
               processes this leaf may be system defined.
           
       
      Returns:
      String name, guaranteed to be non-null.
      Throws:
      NoSuchElementException - if name is not present
    • getConfig

      Config getConfig()
      Return config, or null if it is not present.
           
               Configuration parameters relating to the routing protocol instance
           
       
      Returns:
      Config config, or null if it is not present.
    • nonnullConfig

      @NonNull Config nonnullConfig()
      Return config, or an empty instance if it is not present.
      Returns:
      Config config, or an empty instance if it is not present.
    • getState

      State getState()
      Return state, or null if it is not present.
           
               State parameters relating to the routing protocol instance
           
       
      Returns:
      State state, or null if it is not present.
    • nonnullState

      @NonNull State nonnullState()
      Return state, or an empty instance if it is not present.
      Returns:
      State state, or an empty instance if it is not present.
    • getStatic

      Static getStatic()
      Return static, or null if it is not present.
           
               Configuration and state parameters relating to static routes
           
       
      Returns:
      Static static, or null if it is not present.
    • nonnullStatic

      @NonNull Static nonnullStatic()
      Return static, or an empty instance if it is not present.
      Returns:
      Static static, or an empty instance if it is not present.
    • getAggregate

      Aggregate getAggregate()
      Return aggregate, or null if it is not present.
           
               Configuration and state parameters relating to locally generated aggregate
               routes
           
       
      Returns:
      Aggregate aggregate, or null if it is not present.
    • nonnullAggregate

      @NonNull Aggregate nonnullAggregate()
      Return aggregate, or an empty instance if it is not present.
      Returns:
      Aggregate aggregate, or an empty instance if it is not present.