WADL

URL

http://hostname:8888/opennaas/router/name}/ospf?_wadl

Description
ospf.wadl
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://wadl.dev.java.net/2009/02" xmlns:prefix1="opennaas.api" xmlns:xs="http://www.w3.org/2001/XMLSchema">
   <grammars>
      <xs:schema xmlns="opennaas.api" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="opennaas.api">
         <xs:import namespace="" />
         <xs:element name="ospfArea" type="ospfAreaWrapper" />
         <xs:element name="ospfProtocolEndpoint" type="ospfProtocolEndpointWrapper" />
         <xs:element name="ospfService" type="ospfServiceWrapper" />
      </xs:schema>
      <xs:schema xmlns:ns1="opennaas.api" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="opennaas.api">
         <xs:import namespace="opennaas.api" />
         <xs:element name="interfaces" type="interfacesNamesList" />
         <xs:complexType name="interfacesNamesList">
            <xs:sequence>
               <xs:element maxOccurs="unbounded" minOccurs="0" name="interface" type="xs:string" />
            </xs:sequence>
         </xs:complexType>
         <xs:complexType name="ospfServiceWrapper">
            <xs:sequence>
               <xs:element minOccurs="0" name="routerId" type="xs:string" />
               <xs:element minOccurs="0" name="enabledState" type="enabledState" />
               <xs:element maxOccurs="unbounded" minOccurs="0" name="ospfArea" type="ospfAreaWrapper" />
            </xs:sequence>
         </xs:complexType>
         <xs:complexType name="ospfAreaWrapper">
            <xs:sequence>
               <xs:element minOccurs="0" name="areaId" type="xs:string" />
               <xs:element minOccurs="0" name="areaType" type="areaType" />
               <xs:element minOccurs="0" name="ospfProtocolEndpoints">
                  <xs:complexType>
                     <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="ospfProtocolEndpoint" nillable="true" type="ospfProtocolEndpointWrapper" />
                     </xs:sequence>
                  </xs:complexType>
               </xs:element>
            </xs:sequence>
         </xs:complexType>
         <xs:complexType name="ospfProtocolEndpointWrapper">
            <xs:sequence>
               <xs:element minOccurs="0" name="name" type="xs:string" />
               <xs:element minOccurs="0" name="enabledState" type="enabledState" />
            </xs:sequence>
         </xs:complexType>
         <xs:simpleType name="enabledState">
            <xs:restriction base="xs:string">
               <xs:enumeration value="UNKNOWN" />
               <xs:enumeration value="OTHER" />
               <xs:enumeration value="ENABLED" />
               <xs:enumeration value="DISABLED" />
               <xs:enumeration value="SHUTTING_DOWN" />
               <xs:enumeration value="NOT_APPLICABLE" />
               <xs:enumeration value="ENABLED_BUT_OFFLINE" />
               <xs:enumeration value="IN_TEST" />
               <xs:enumeration value="DEFERRED" />
               <xs:enumeration value="QUIESCE" />
               <xs:enumeration value="STARTING" />
               <xs:enumeration value="DMTF_RESERVED" />
               <xs:enumeration value="VENDOR_RESERVED" />
            </xs:restriction>
         </xs:simpleType>
         <xs:simpleType name="areaType">
            <xs:restriction base="xs:string">
               <xs:enumeration value="PLAIN" />
               <xs:enumeration value="STUB" />
               <xs:enumeration value="NSSA" />
            </xs:restriction>
         </xs:simpleType>
      </xs:schema>
   </grammars>
   <resources base="http://localhost:8888/opennaas/router/myre/ospf/">
      <resource path="/">
         <method name="DELETE">
            <response status="204" />
         </method>
         <method name="GET">
            <response>
               <representation mediaType="application/xml" element="prefix1:ospfService" />
            </response>
         </method>
         <method name="POST">
            <request>
               <representation mediaType="application/xml" element="prefix1:ospfService" />
            </request>
            <response status="204" />
         </method>
         <resource path="area">
            <method name="DELETE">
               <request>
                  <param name="areaId" style="query" type="xs:string" />
               </request>
               <response status="204" />
            </method>
            <method name="POST">
               <request>
                  <representation mediaType="application/xml" element="prefix1:ospfArea" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="area/interfaces">
            <method name="PUT">
               <request>
                  <param name="areaId" style="query" type="xs:string" />
                  <representation mediaType="application/xml" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="area/interfaces/delete">
            <method name="PUT">
               <request>
                  <param name="areaId" style="query" type="xs:string" />
                  <representation mediaType="application/xml" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="interfaces/status/disable">
            <method name="PUT">
               <request>
                  <representation mediaType="application/xml" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="interfaces/status/enable">
            <method name="PUT">
               <request>
                  <representation mediaType="application/xml" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="status/active">
            <method name="PUT">
               <response status="204" />
            </method>
         </resource>
         <resource path="status/inactive">
            <method name="PUT">
               <response status="204" />
            </method>
         </resource>
      </resource>
   </resources>
</application>

 

Methods

ReadOSPFConfiguration

This method returns the existing OSPF configuration in a router, in terms of different OSPFAreas and the set of interfaces in each of them.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/ 
MethodGET 
ReturnOSPFServiceOSPFService containing the existing OSPFAreas and the interfaces of each area.
Response Example

Following example would illustrate a router with one OSPFArea and 4 enabled interfaces in it.

<?xml version="1.0" encoding="UTF-8"?>
<ospfService>
   <routerId>193.1.190.141</routerId>
   <enabledState>ENABLED</enabledState>
   <ospfArea>
      <areaId>0.0.0.0</areaId>
      <ospfProtocolEndpoints>
         <ospfProtocolEndpoint>
            <name>ge-2/0/0.13</name>
            <enabledState>ENABLED</enabledState>
         </ospfProtocolEndpoint>
         <ospfProtocolEndpoint>
            <name>gr-1/1/0.1</name>
            <enabledState>ENABLED</enabledState>
         </ospfProtocolEndpoint>
         <ospfProtocolEndpoint>
            <name>gr-1/1/0.2</name>
            <enabledState>ENABLED</enabledState>
         </ospfProtocolEndpoint>
         <ospfProtocolEndpoint>
            <name>gr-1/1/0.3</name>
            <enabledState>ENABLED</enabledState>
         </ospfProtocolEndpoint>
      </ospfProtocolEndpoints>
   </ospfArea>
</ospfService>

ConfigureOSPF

Configures OSPF in the router. By default, OSPF is created but it's in a disable state. It can be enabled with the enableOSPF after you configure all the desired information. Optionally the routerId can be specified when calling this method.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/ 
MethodPOST 
Body ParameterOSPFServiceOSPFService containing the desired initial state of the OSPF service and optionally the routerId.
Return- 
Body Example

Following example would configure OSPF in an ENABLED state, with the routerId 193.1.190.141

<?xml version="1.0" encoding="UTF-8"?>
<ospfService>
   <routerId>193.1.190.141</routerId>
</ospfService>

ClearOSPFConfiguration

Removes the whole OSPF configuration from the router.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/ 
MethodDELETE 
Return- 

ActivateOSPF

Enables OSPF service in the router.

DeactivateOSPF

Disables the OSPF service in the router.

ConfigureOSPFArea

Adds an OSPF area to the router. Optionally it can includes a list of interfaces to add to this area, with their enabled state.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/area 
MethodPOST 
Body ParameterOSPFAreaOSPF Area containing its id, type (optional) and optionally the list of interfaces to be added, with their enabled state.
Return- 
Body Example

Following example would create an OSPF area with id 0.0.0.0 and 4 interfaces in it, all of them enabled.

<?xml version="1.0" encoding="UTF-8"?>
<ospfArea>
   <areaId>0.0.0.0</areaId>
   <ospfProtocolEndpoints>
      <ospfProtocolEndpoint>
         <name>ge-2/0/0.13</name>
         <enabledState>ENABLED</enabledState>
      </ospfProtocolEndpoint>
      <ospfProtocolEndpoint>
         <name>gr-1/1/0.1</name>
         <enabledState>ENABLED</enabledState>
      </ospfProtocolEndpoint>
      <ospfProtocolEndpoint>
         <name>gr-1/1/0.2</name>
         <enabledState>ENABLED</enabledState>
      </ospfProtocolEndpoint>
      <ospfProtocolEndpoint>
         <name>gr-1/1/0.3</name>
         <enabledState>ENABLED</enabledState>
      </ospfProtocolEndpoint>
   </ospfProtocolEndpoints>
</ospfArea>

RemoveOSPFArea

Removes an existing OSPFArea from the router.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/area?areaId={areaId} 
MethodPOST 
QueryParameterareaIdId of the area to be deleted.
Return- 

AddInterfacesInOSPFArea

Adds a list of interfaces to an existing OSPF area. By default it will be added with "enabled" state.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/area/interfaces?areaId={areaId} 
MethodPUT 
Query ParameterareaIdId of the area where we want to add the interfaces.
Body ParameterInterfacesNamesListList with the name of the interfaces to add to the OSPF area.
Return- 
Body Example

Following request would add interface fe-0/3/3.2 to the 0.0.0.0 area.

<?xml version="1.0" encoding="UTF-8"?>
<interfaces>
   <interface>fe-0/3/3.2</interface>
</interfaces>

RemoveInterfacesInOSPFArea

Removes a list of interface from an existing OSPF area they belong to.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/ospf/area/interfaces?areaId={areaId} 
MethodPUT 
Query ParameterareaIdId of the area where we want to add the interfaces.
Body ParameterInterfacesNamesListList with the name of the interfaces to add to the OSPF area.
Return- 
Body Example

Following request would remove interface fe-0/3/3.1 and fe-0/3/3.2 from the 0.0.0.0 area.

<?xml version="1.0" encoding="UTF-8"?>
<interfaces>
 <interface>fe-0/3/3.1</interface>
 <interface>fe-0/3/3.2</interface>
</interfaces>

EnableOSPFInterfaces

Enables a list existing OSPF interfaces which are in disable state. It's independent from the area they belong to.

Body Example

Following request would enable interfaces fe-0/3/3.1 and ge-0/1/1.3.

<?xml version="1.0" encoding="UTF-8"?>
<interfaces>
   <interface>fe-0/3/3.1</interface>
   <interface>ge-0/1/1.3</interface>
</interfaces>

DisableOSPFInterfaces

Disables a list existing OSPF interfaces which are in enabled state. It's independent from the area they belong to.

Body Example

Following request would disable interface fe-0/3/3.1

<?xml version="1.0" encoding="UTF-8"?>
<interfaces>
   <interface>fe-0/3/3.1</interface>
</interfaces>
  • No labels