Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

WADL

URL

http://hostname:8888/opennaas/router/{resourceName}/vlanbridge?_wadl

Description
Code Block
themeEclipse
languagehtml/xml
collapsetrue
<?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="bridgeDomain" type="bridgeDomain" />
         <xs:element name="bridgeDomains" type="bridgeDomains" />
         <xs:element name="interfaceVLANOptions" type="interfaceVLANOptions" />
      </xs:schema>
      <xs:schema xmlns="opennaas.api" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="opennaas.api">
         <xs:complexType name="interfaceVLANOptions">
            <xs:sequence>
               <xs:element name="vlanOptions">
                  <xs:complexType>
                     <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
                           <xs:complexType>
                              <xs:sequence>
                                 <xs:element minOccurs="0" name="key" type="xs:string" />
                                 <xs:element minOccurs="0" name="value" type="xs:string" />
                              </xs:sequence>
                           </xs:complexType>
                        </xs:element>
                     </xs:sequence>
                  </xs:complexType>
               </xs:element>
            </xs:sequence>
         </xs:complexType>
         <xs:complexType name="bridgeDomains">
            <xs:sequence>
               <xs:element maxOccurs="unbounded" minOccurs="0" name="domainName" type="xs:string" />
            </xs:sequence>
         </xs:complexType>
         <xs:complexType name="bridgeDomain">
            <xs:sequence>
               <xs:element minOccurs="0" name="domainName" type="xs:string" />
               <xs:element name="vlanid" type="xs:int" />
               <xs:element minOccurs="0" name="interfacesNames">
                  <xs:complexType>
                     <xs:sequence>
                        <xs:element maxOccurs="unbounded" minOccurs="0" name="interfaceName" type="xs:string" />
                     </xs:sequence>
                  </xs:complexType>
               </xs:element>
               <xs:element minOccurs="0" name="description" type="xs:string" />
            </xs:sequence>
         </xs:complexType>
      </xs:schema>
   </grammars>
   <resources base="http://localhost:8888/opennaas/router/myre/vlanbridge/">
      <resource path="/">
         <method name="GET">
            <response>
               <representation mediaType="application/xml" element="prefix1:bridgeDomains" />
            </response>
         </method>
         <method name="POST">
            <request>
               <representation mediaType="application/xml" element="prefix1:bridgeDomain" />
            </request>
            <response status="204" />
         </method>
         <resource path="vlanoptions">
            <method name="GET">
               <request>
                  <param name="iface" style="query" type="xs:string" />
               </request>
               <response>
                  <representation mediaType="application/xml" element="prefix1:interfaceVLANOptions" />
               </response>
            </method>
            <method name="PUT">
               <request>
                  <param name="iface" style="query" type="xs:string" />
                  <representation mediaType="application/xml" element="prefix1:interfaceVLANOptions" />
               </request>
               <response status="204" />
            </method>
         </resource>
         <resource path="{id}">
            <param name="id" style="template" type="xs:string" />
            <method name="DELETE">
               <request />
               <response status="204" />
            </method>
            <method name="GET">
               <request />
               <response>
                  <representation mediaType="application/xml" element="prefix1:bridgeDomain" />
               </response>
            </method>
            <method name="PUT">
               <request>
                  <representation mediaType="application/xml" element="prefix1:bridgeDomain" />
               </request>
               <response status="204" />
            </method>
         </resource>
      </resource>
   </resources>
</application>

Methods

GetBridgeDomains

Returns the names of all existing Bridge Domains

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/ 
MethodGET 
ReturnBridgeDomainsList of Strings representing the name of all existing Bridge Domains in the router.
Response Example

In following example the router contains two domains: vlan.2 and vlan.3

Code Block
themeEclipse
languagehtml/xml
<?xml version="1.0" encoding="UTF-8"?>
<ns2:bridgeDomains xmlns:ns2="opennaas.api">
   <domainName>vlan.2</domainName>
   <domainName>vlan.3</domainName>
</ns2:bridgeDomains>

 

GetBridgeDomain

Returns the information of anl existing Bridge Domain

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/{domain-id} 
MethodGET 
Path Parameterdomain-idName of the bridge domain we want to retrieve information
ReturnBridgeDomainBridge domain information, consisting of its name, description, vlan and the list of interfaces composing the bridge domain.
Response Example

Following response would represent the information bridge domain "vlan.2"

Code Block
themeEclipse
languagehtml/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:bridgeDomain xmlns:ns2="opennaas.api">
  <domainName>vlan.2</domainName>
  <vlanid>2</vlanid>
  <interfacesNames>
    <interfaceName>fe-0/2/1.3</interfaceName>
    <interfaceName>fe-0/2/1.2</interfaceName>
  </interfacesNames>
  <description>Sample bridge domain</description>
</ns2:bridgeDomain>    

CreateBridgeDomain

Creates a bridge domain in the router, containing the list of interfaces to add and the vlanId to use.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge 
MethodPOST 
Body ParameterBridgeDomainBridge domain information, consisting of its name, description, vlan and the list of interfaces composing the bridge domain.
Return- 
Body Example

Following messag would create vlan.3 domain, using the vlanid "3", with two interfaces attached to it.

Code Block
themeConfluence
languagehtml/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:bridgeDomain xmlns:ns2="opennaas.api">
  <domainName>vlan.3</domainName>
  <vlanid>3</vlanid>
  <interfacesNames>
    <interfaceName>fe-0/1/2.1</interfaceName>
    <interfaceName>fe-0/1/3.5</interfaceName>
  </interfacesNames>
  <description>Another sample bridge domain</description>
</ns2:bridgeDomain>

UpdateBridgeDomain

Updates an existing bridge domain. User must provide all the information the vlan bridge would contain, not only the new information.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/{bridge-id} 
MethodPUT 
Path Parameter{bridge-id}Id of the vlan bridge to modify.
Body ParameterBridgeDomainBridge domain information, consisting of its name, description, vlan and the list of interfaces composing the bridge domain.
Return- 
Body Example

This message would be valid to remove the interface fe-0/1/3.5 created in the "createBridgeDomain" illustration.

Code Block
themeConfluence
languagehtml/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:bridgeDomain xmlns:ns2="opennaas.api">
  <domainName>vlan.3</domainName>
  <vlanid>3</vlanid>
  <interfacesNames>
    <interfaceName>fe-0/1/2.1</interfaceName>
  </interfacesNames>
  <description>Another sample bridge domain</description>
</ns2:bridgeDomain>

DeleteBridgeDomain

Removes an existing bridge domain from the router.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/{bridge-id} 
MethodDELETE 
Path Parameter{bridge-id}Id of the vlan bridge to remove.
Return- 

GetInterfaceVLANOptions

Retrieves the vlan options from a specific interface.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/vlanoptions?iface={ifaceName} 
MethodGET 
Query ParameterifaceName of the information which information we want to retrieve.
ReturnInterfaceVLANOptionsObject containing a Map with all vlan options of the interface
Response Example

Following message contains the information from a custom interface. It has two configured options: native-vlan-id (102) and port-mode(trunk)

Code Block
themeEclipse
languagehtml/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:interfaceVLANOptions xmlns:ns2="opennaas.api">
  <vlanOptions>
    <entry>
      <key>native-vlan-id</key>
      <value>102</value>
    </entry>
    <entry>
      <key>port-mode</key>
      <value>trunk</value>
    </entry>
  </vlanOptions>
</ns2:interfaceVLANOptions>

 

SetInterfaceVLANOptions

Set the vlan options of a speciifc interface.

 ValueDescription
URLhttp://hostname:8888/opennaas/router/{resourceName}/vlanbridge/vlanoptions?iface={ifaceName} 
MethodPOST 
Query ParameterifaceName of the information which information we want to set.
Body ParameterInterfaceVLANOptionsObject containing a Map with all vlan options of the interface
Return- 
Body Example

Following message would put vlan options to a specific interface. The vlan options consists of the native-vlan-id (102) and the port-mode(trunk)

Code Block
themeEclipse
languagehtml/xml
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:interfaceVLANOptions xmlns:ns2="opennaas.api">
  <vlanOptions>
    <entry>
      <key>native-vlan-id</key>
      <value>102</value>
    </entry>
    <entry>
      <key>port-mode</key>
      <value>trunk</value>
    </entry>
  </vlanOptions>
</ns2:interfaceVLANOptions>