WADL
URL
http://hostname:8888/opennaas/resources?_wadl
...
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
title | ResourceManager.wadl |
---|
collapse | true |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://wadl.dev.java.net/2009/02" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<grammars>
<xs:schema xmlns="http://www.science.uva.nl/research/sne/ndl#" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.science.uva.nl/research/sne/ndl#">
<xs:import namespace="" />
<xs:element name="Device" type="device" />
<xs:element name="Interface" type="interface" />
<xs:element name="Layer" type="layer" />
<xs:element name="atLayer" type="layerId" />
<xs:element name="capacity" type="xs:string" />
<xs:element name="hasInterface" type="interfaceId" />
<xs:element name="linkTo" type="link" />
<xs:element name="name" type="xs:string" />
</xs:schema>
<xs:schema xmlns:ns1="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns2="http://www.science.uva.nl/research/sne/ndl/domain#" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespacendl#" xmlns:ns3="http://www.science.uva.nl/research/sne/ndl/domain#">
<xs:import namespace="" />
<xs:element name="NetworkDomain" type="networkDomain" / xmlns:ns4="org.opennaas.core.resources.descriptor.vcpe" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="org.opennaas.core.resources.descriptor.vcpe">
<xs:element name="hasDevice" type="deviceId" />
</xs:schema>
<xs:schema xmlns:ns1import namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns2 />
<xs:import namespace="http://www.science.uva.nl/research/sne/ndl#" xmlns:ns3/>
<xs:import namespace="http://www.science.uva.nl/research/sne/ndl/domain#" xmlns:ns4="org.opennaas.core.resources.descriptor.vcpe" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace />
<xs:import namespace="org.opennaas.core.resources.descriptor.vcpe" />
<xs:import namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#element name="resourceDescriptor" type="resourceDescriptor" />
<xs:importelement namespacename="http://www.science.uva.nl/research/sne/ndl#" />
<xs:import namespace="http://www.science.uva.nl/research/sne/ndl/domain#resourceInfo" type="resourceInfo" />
<xs:importelement namespacename="org.opennaas.core.resources.descriptor.vcperesources" type="resourceListWrapper" />
<xs:element name="resourceDescriptorresourcesTypes" type="resourceDescriptorresourceTypeListWrapper" />
<xs:element name="vcpeNetworkDescriptor" type="vcpeNetworkDescriptor" />
<xs:complexType name="resourceDescriptorresourceInfo">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityDescriptorsresourceId" type="capabilityDescriptorxs:string" />
<xs:element minOccurs="0" name="fileTopologyname" type="xs:string" />
<xs:element minOccurs="0" name="idtype" type="xs:string" />
<xs:element minOccurs="0" name="informationstate" type="informationstate" />
<xs:element minOccurs="0" name="networkTopology" type="networkTopology" />
<xs:element minOccurs="0" name="profileId" type="xs:string" />
<xs:element name="propertiescapabilities">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="entrycapability">
nillable="true" type="xs:string" />
<xs:complexType></xs:sequence>
</xs:complexType>
<xs:sequence>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element minOccurs="0"complexType name="key" type="xs:string" /resourceTypeListWrapper">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" name="valueresourceType" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:sequence><xs:complexType name="resourceListWrapper">
<xs:sequence>
</xs:complexType>
<xs:element maxOccurs="unbounded" minOccurs="0" name="resource" type="xs:string" />
</xs:element>
sequence>
</xs:sequence>complexType>
<xs:complexType name="resourceDescriptor">
</xs:complexType>
<xs:sequence>
</xs:element>
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityDescriptors" type="resourceReferencescapabilityDescriptor" />
<xs:complexType>
element minOccurs="0" name="fileTopology" type="xs:string" />
<xs:sequence>
element minOccurs="0" name="id" type="xs:string" />
<xs:element maxOccurs="unbounded" minOccurs="0" name="entry">
information" type="information" />
<xs:element minOccurs="0" name="networkTopology" type="networkTopology" />
<xs:complexType>
:element minOccurs="0" name="profileId" type="xs:string" />
<xs:element name="properties">
<xs:sequence>
complexType>
<xs:sequence>
<xs:element minOccursmaxOccurs="0unbounded" nameminOccurs="key0" typename="xs:stringentry" />
<xs:element minOccurs="0" name="value" type="xs:string" />complexType>
</xs<xs:sequence>
</xs:complexType>
<xs:element minOccurs="0" name="key" type="xs:string" />
</xs:element>
<xs:element </xs:sequence>
minOccurs="0" name="value" type="xs:string" />
</xs:complexType>
sequence>
</xs:element>complexType>
</xs:sequence>
</xs:complexType>element>
<xs:complexType name="capabilityDescriptor">
<xs</xs:sequence>
<xs:element minOccurs="0" name="information" type="information" </>xs:complexType>
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityProperty" type="capabilityProperty" /></xs:element>
<xs:element minOccurs="0" name="enabled" type="xs:boolean" /resourceReferences">
<xs:element name="id" type="xs:long" /> <xs:complexType>
</xs:sequence>
</xs<xs:complexType>sequence>
<xs:complexType name="information">
<xs:sequence>
element maxOccurs="unbounded" minOccurs="0" name="entry">
<xs:element minOccurs="0" name="description" type="xs:string" />
<xs:complexType>
<xs:element minOccurs="0" name="name" type="xs:string" />
<xs:element minOccurs="0" name="type" type="xs:string" />
sequence>
<xs:element minOccurs="0" name="versionkey" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexTypeelement minOccurs="0" name="value" type="capabilityPropertyxs:string" />
<xs:sequence>
<xs:element name="id" type="xs:long" />
</xs:sequence>
</xs:sequence>complexType>
<xs:attribute name="name" type="xs:string" />
</xs:element>
<xs:attribute name="value" type="xs:string" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="networkTopology"></xs:element>
<xs</xs:sequence>
</xs:complexType>
<xs:elementcomplexType maxOccursname="unbounded" minOccurs="0" ref="ns2:Device" />capabilityDescriptor">
<xs:sequence>
<xs:element maxOccursminOccurs="unbounded0" minOccursname="0information" reftype="ns2:Interfaceinformation" />
<xs:element maxOccurs="unbounded" minOccurs="0" name="capabilityProperty" reftype="ns2:LayercapabilityProperty" />
<xs:element minOccurs="0" name="locationenabled" type="xs:stringboolean" />
<xs:element maxOccursname="unboundedid" minOccurstype="0" ref="ns3:NetworkDomainxs:long" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="deviceinformation">
<xs:sequence>
<xs:element maxOccursminOccurs="unbounded0" minOccursname="0description" reftype="ns2xs:hasInterfacestring" />
<xs:element minOccurs="0" refname="ns2:name" type="xs:string" />
</xs:sequence>
<xs:element minOccurs="0" name="type" type="xs:string" />
</xs:complexType>
<xs:complexTypeelement minOccurs="0" name="interfaceIdversion">
<xs:sequence type="xs:string" />
<xs:attribute ref="ns1:resource" /></xs:sequence>
</xs:complexType>
<xs:complexType name="interfacecapabilityProperty">
<xs:sequence>
<xs:element minOccursname="0id" reftype="ns2xs:atLayerlong" />
<xs:element minOccurs="0" ref="ns2:capacity" />
</xs:sequence>
<xs:elementattribute minOccursname="0name" reftype="ns2xs:linkTostring" />
<xs:elementattribute minOccursname="0value" reftype="ns2xs:namestring" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="layerIdnetworkTopology">
<xs:sequence />
sequence>
<xs:attribute element maxOccurs="unbounded" minOccurs="0" ref="ns1ns2:resourceDevice" />
</xs:complexType>
<xs:complexTypeelement namemaxOccurs="linkunbounded">
<xs:sequenceminOccurs="0" ref="ns2:Interface" />
<xs:attributeelement maxOccurs="unbounded" minOccurs="0" ref="ns1ns2:resourceLayer" />
</xs:complexType>
<xs:complexTypeelement nameminOccurs="layer0">
name="location" <xs:sequence>type="xs:string" />
<xs:element maxOccurs="unbounded" minOccurs="0" ref="ns2ns3:nameNetworkDomain" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="networkDomaindevice">
<xs:sequence>
<xs:element maxOccurs="unbounded" minOccurs="0" ref="ns3ns2:hasDevicehasInterface" />
<xs:element minOccurs="0" ref="ns2:name" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="deviceIdinterfaceId">
<xs:sequence />
<xs:attribute ref="ns1:resource" />
</xs:complexType>
<xs:complexType name="vcpeNetworkDescriptorinterface">
<xs:complexContent>sequence>
<xs:extension base="resourceDescriptor">
element minOccurs="0" ref="ns2:atLayer" />
<xs:sequence>
element minOccurs="0" ref="ns2:capacity" />
<xs:element minOccurs="0" ref="ns4ns2:vCPEModellinkTo" />
<xs:element minOccurs="0" ref="ns2:name" />
</xs:sequence>
</xs:complexType>
</xs:extension><xs:complexType name="layerId">
<xs:sequence </xs:complexContent>
>
<xs:attribute ref="ns1:resource" </xs:complexType>
>
</xs:schema>complexType>
<xs:schemacomplexType xmlnsname="http://www.w3.org/1999/02/22-rdf-syntax-ns#" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
"link">
<xs:import namespace=""sequence />
<xs:elementattribute nameref="RDF" type="networkTopologyns1:resource" />
<xs:attribute name="resource" type="xs:string" /</xs:complexType>
<xs:complexType name="layer">
</xs:schema>
<xs:schema xmlns="org.opennaas.core.resources.descriptor.vcpe" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="org.opennaas.core.resources.descriptor.vcpe">
sequence>
<xs:element nameminOccurs="vCPEModel0" typeref="xsns2:stringname" />
</xs:schema>sequence>
</grammars>
<resources base="http://localhost:8888/opennaas/resources/">
<resource path="/"></xs:complexType>
<resource<xs:complexType pathname="createnetworkDomain">
<xs:sequence>
<method name="POST">
<xs:element <request>
maxOccurs="unbounded" minOccurs="0" ref="ns3:hasDevice" />
<representation mediaType="application/xml<xs:element minOccurs="0" ref="ns2:name" />
</request></xs:sequence>
<response></xs:complexType>
<representation mediaType="application/xml<xs:complexType name="deviceId">
<xs:sequence />
<param name="result" style="plain" type="xs:string <xs:attribute ref="ns1:resource" />
</xs:complexType>
</representation><xs:complexType name="vcpeNetworkDescriptor">
<xs:complexContent>
</response>
</method>
<xs:extension base="resourceDescriptor">
</resource>
<xs:sequence>
<resource path="getDescriptor/{resourceId}">
<param name="resourceId" style="template" type="xs:string <xs:element minOccurs="0" ref="ns4:vCPEModel" />
<method name="GET">
</xs:sequence>
<request />
</xs:extension>
<response></xs:complexContent>
</xs:complexType>
<representation<xs:simpleType mediaTypename="application/xmlstate" />
<xs:restriction base="xs:string">
</response>
</method>
<xs:enumeration value="INSTANTIATED" />
</resource>
<resource<xs:enumeration pathvalue="getName/{resourceId}/""INITIALIZED" />
<param name="resourceId" style="template" type="xs:string <xs:enumeration value="ACTIVE" />
<method name <xs:enumeration value="GETINACTIVE" />
<request<xs:enumeration value="SHUTDOWN" />
<response>
<xs:enumeration value="ERROR" />
<representation mediaType="application/octet-stream"></xs:restriction>
</xs:simpleType>
</xs:schema>
<param<xs:schema namexmlns="resulthttp://www.science.uva.nl/research/sne/ndl/domain#" styleattributeFormDefault="plainunqualified" typeelementFormDefault="xs:stringunqualified" />
targetNamespace="http://www.science.uva.nl/research/sne/ndl/domain#">
</representation><xs:import namespace="" />
<xs:element </response>name="NetworkDomain" type="networkDomain" />
<xs:element name="hasDevice" type="deviceId" </method>>
</resource>xs:schema>
<resource path="getResourceTypes">
<method name="GET<xs:schema xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" attributeFormDefault="unqualified" elementFormDefault="unqualified" targetNamespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<xs:import namespace="" />
<response>
<xs:element name="RDF" type="networkTopology" />
<representation<xs:attribute mediaTypename="application/xmlresource" type="xs:string" />
</xs:schema>
<xs:schema xmlns="org.opennaas.core.resources.descriptor.vcpe" attributeFormDefault="unqualified" </response>elementFormDefault="unqualified" targetNamespace="org.opennaas.core.resources.descriptor.vcpe">
<xs:element name="vCPEModel" type="xs:string" </method>>
</xs:schema>
</resource>grammars>
<resources base="http://localhost:8888/opennaas/resources/">
<resource path="modify/{resourceId}">
<param<method name="resourceId" style="template" type="xs:stringDELETE">
<response status="204" />
</method>
<method name="POSTGET">
<request>
<response>
<representation mediaType="application/xml" />
</request>response>
</method>
<response>
<method name="POST">
<request>
<representation mediaType="application/xml" />
</request>
<response>
<representation mediaType="application/xml">
<param name="result" style="plain" type="xs:string" />
</representation>
</response>
</method>
</resource>
<resource path="removeforceStop/{resourceId}">
<param name="resourceId" style="template" type="xs:string" />
<method name="POSTPUT">
<request />
<response status="204" />
</method>
</resource>
<resource path="start/{resourceId}type">
<param<method name="resourceIdGET" style="template" type="xs:string" />
>
<response>
<method name="POST">
<request<representation mediaType="application/xml" />
<response status="204" /></response>
</method>
</resource>
<resource path="stoptype/{resourceIdtype}">
<param name="resourceIdtype" style="template" type="xs:string" />
<method name="POSTGET">
<request />
<response status="204" /><response>
</method>
</resource>
<representation mediaType="application/xml" />
</resource>
</response>
</resources>
</application> |
Methods
CreateResource
| Value | Description | |
---|
URL | http://hostname:8888/opennaas/resources/create | | |
Method | POST | | |
Parameter | ResourceDescriptor | Resource descriptor containing the resource info (type, name, description) and its list of capabilities. | |
Return | String | Resource id of the created resource. | |
Body Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
title | CreateResource Body |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<resourceDescriptor xmlns:ns2="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns3="http://www.science.uva.nl/research/sne/ndl#" xmlns:ns4="http://www.science.uva.nl/research/sne/ndl/domain#" xmlns:ns5="org.opennaas.core.resources.descriptor.vcpe">
<capabilityDescriptors>
<information>
method>
</resource>
<resource path="type/{type}/name">
<param name="type" style="template" type="xs:string" />
<method name="GET">
<request />
<response>
<name>bgp capability</name><representation mediaType="application/xml" />
<type>bgp</type>
</information>response>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>method>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>resource>
</capabilityDescriptors>
<capabilityDescriptors>
<information><resource path="type/{type}/name/{name}">
<name>chassis capability</name>
<param name="type" <type>chassis</type>style="template" type="xs:string" />
</information>
<capabilityProperty<param name="actionset.name" valuestyle="junostemplate">
type="xs:string" />
</capabilityProperty>
<capabilityProperty<method name="actionset.version" value="10.10GET">
<request </capabilityProperty>
>
</capabilityDescriptors>
<information><response>
<name>myre</name>
<type>router</type>
</information>
<properties<representation mediaType="application/>
</resourceDescriptor>octet-stream">
<param name="result" style="plain" type="xs:string" />
</representation>
</response>
</method>
</resource>
<resource path="{resourceId}">
<param name="resourceId" style="template" type="xs:string" />
<method name="DELETE">
<request />
<response status="204" />
</method>
<method name="GET">
<request />
<response>
<representation mediaType="application/xml" />
</response>
</method>
<method name="PUT">
<request>
<representation mediaType="application/xml" />
</request>
<response>
<representation mediaType="application/xml">
<param name="result" style="plain" type="xs:string" />
</representation>
</response>
</method>
</resource>
<resource path="{resourceId}/descriptor">
<param name="resourceId" style="template" type="xs:string" />
<method name="GET">
<request />
<response>
<representation mediaType="application/xml" />
</response>
</method>
</resource>
<resource path="{resourceId}/name">
<param name="resourceId" style="template" type="xs:string" />
<method name="GET">
<request />
<response>
<representation mediaType="application/octet-stream">
<param name="result" style="plain" type="xs:string" />
</representation>
</response>
</method>
</resource>
<resource path="{resourceId}/status">
<param name="resourceId" style="template" type="xs:string" />
<method name="GET">
<request />
<response>
<representation mediaType="application/octet-stream">
<param name="result" style="plain" type="xs:string" />
</representation>
</response>
</method>
</resource>
<resource path="{resourceId}/status/start">
<param name="resourceId" style="template" type="xs:string" />
<method name="PUT">
<request />
<response status="204" />
</method>
</resource>
<resource path="{resourceId}/status/stop">
<param name="resourceId" style="template" type="xs:string" />
<method name="PUT">
<request />
<response status="204" />
</method>
</resource>
</resource>
</resources>
</application> |
Methods
ListResources
Returns the ids of all existing resources, no matter the state they have.
Response Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
|
<resources>
<resource>b6c3a6c9-9a2e-4bc4-9604-13d014bd508f</resource>
<resource>584c96d5-2221-47d0-8c51-c5d4d45f3ff4</resource>
<resource>c65gfr15-22er-74j0-87gh-hg78nnlo0aqe</resource>
</resources> |
CreateResource
The CreateResource method creates a new resource in OpenNaaS from the resource descriptor given by the user. If the method ends successfully, the id of the new resource is returned to he user.
| Value | Description |
---|
URL | http://hostname:8888/opennaas/resources/ | |
Method | POST | |
Body Parameter | ResourceDescriptor | Resource descriptor containing the resource info (type, name, description) and its list of capabilities. |
Return | String | Resource id of the created resource. |
The following example creates a router resource called "myre" with BGP and Chassis capabilities, both of them using the "Junos 10.10" driver.
Body Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
title | CreateResource Body |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<resourceDescriptor xmlns:ns2="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns3="http://www.science.uva.nl/research/sne/ndl#" xmlns:ns4="http://www.science.uva.nl/research/sne/ndl/domain#" xmlns:ns5="org.opennaas.core.resources.descriptor.vcpe">
<capabilityDescriptors>
<information>
<name>bgp capability</name>
<type>bgp</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<capabilityDescriptors>
<information>
<name>chassis capability</name>
<type>chassis</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<information>
<name>myre</name>
<type>router</type>
</information>
<properties />
</resourceDescriptor> |
Response Example
No Format |
---|
584c96d5-2221-47d0-8c51-c5d4d45f3ff4 |
ModifyResource
The ModifyResource method updated the information of an existing resource of OpenNaaS. The resourceDescriptor will be replaced by the new one, but the resourceId will be manteined.
| Value | Description |
---|
URL | http://hostname:8888/opennaas/resources/{resourceId} | |
Method | PUT | |
Path Parameter | resourceId | Id of the resource to be modified. |
Body Parameter | ResourceDescriptor | Resource descriptor containing the new resource information. |
Return | String | Resource id of the modified resource. It matches the path parameter "resourceId" |
The following example modifies the previous created router by adding a new capability: the IP capability using the "Junos 10.10" router.
Body Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
title | CreateResource Body |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<resourceDescriptor xmlns:ns2="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns3="http://www.science.uva.nl/research/sne/ndl#" xmlns:ns4="http://www.science.uva.nl/research/sne/ndl/domain#" xmlns:ns5="org.opennaas.core.resources.descriptor.vcpe">
<capabilityDescriptors>
<information>
<name>bgp capability</name>
<type>bgp</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<capabilityDescriptors>
<information>
<name>chassis capability</name>
<type>chassis</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
<id>0</id>
</capabilityDescriptors>
<capabilityDescriptors>
<information>
<name>ip capability</name>
<type>ip</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<information>
<name>myre</name>
<type>router</type>
</information>
<properties />
</resourceDescriptor> |
Response Example
No Format |
---|
584c96d5-2221-47d0-8c51-c5d4d45f3ff4 |
RemoveResource
The RemoveResource method removes a resource from OpenNaaS, only if it's in INITIALIZED state. It the resource is in STARTED state, it must be stopped before calling this method.
DestroyAllResources
Stops and removes all existing resource of the OpenNaaS instance.
GetResourceInfoById
Returns the main information from a specific resource: id, name, type, state and the list of capabilities it contains.
Response Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<resourceInfo>
<resourceId>584c96d5-2221-47d0-8c51-c5d4d45f3ff4</resourceId>
<name>myre</name>
<type>router</type>
<state>ACTIVE</state>
<capabilities>
<capability>ip</capability>
<capability>chassis</capability>
<capability>bgp</capability>
</capabilities>
</resourceInfo> |
GetNameFromResourceID
Given the resourceId of an existing resource, this method return its name.
Response Example
GetResourceDescriptor
Given the resourceId of an existing resource, this method returns its whole resource descriptor.
Response Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<resourceDescriptor xmlns:ns2="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ns3="http://www.science.uva.nl/research/sne/ndl#" xmlns:ns4="http://www.science.uva.nl/research/sne/ndl/domain#" xmlns:ns5="org.opennaas.core.resources.descriptor.vcpe">
<capabilityDescriptors>
<information>
<name>bgp capability</name>
<type>bgp</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<capabilityDescriptors>
<information>
<name>chassis capability</name>
<type>chassis</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
<id>0</id>
</capabilityDescriptors>
<capabilityDescriptors>
<information>
<name>ip capability</name>
<type>ip</type>
</information>
<capabilityProperty name="actionset.name" value="junos">
</capabilityProperty>
<capabilityProperty name="actionset.version" value="10.10">
</capabilityProperty>
</capabilityDescriptors>
<id>584c96d5-2221-47d0-8c51-c5d4d45f3ff4</id>
<information>
<description>Junos v10 Router</description>
<name>myre</name>
<type>router</type>
</information>
<properties/>
</resourceDescriptor> |
GetStatus
Returns the current lifecycle state of the resource.
Response Example
StartResource
The StartResource method starts a resource, only if it's in INITIALIZED state.
StopResource
The StopResource method stops a resource, only if it's in STARTED state.
ForceStopResource
Forces a resource to get into INITIALIZED state.
GetResourceTypes
List all the types of resources supported by the OpenNaaS instance.
Response Example
Code Block |
---|
|
<?xml version="1.0" encoding="UTF-8"?>
<resourcesTypes>
<resourceType>bod</resourceType>
<resourceType>roadm</resourceType>
<resourceType>MACBridgeIOS</resourceType>
<resourceType>pdu</resourceType>
<resourceType>sampleresource</resourceType>
<resourceType>quantumresource</resourceType>
<resourceType>network</resourceType>
<resourceType>powernet</resourceType>
<resourceType>vnmapper</resourceType>
<resourceType>router</resourceType>
<resourceType>openflowswitch</resourceType>
<resourceType>vcpenet</resourceType>
<resourceType>ofnetwork</resourceType>
</resourcesTypes> |
ListResourcesByType
Returns the ids of all existing resources of a specific type.
Response Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
|
<resources>
<resource>b6c3a6c9-9a2e-4bc4-9604-13d014bd508f</resource>
<resource>584c96d5-2221-47d0-8c51-c5d4d45f3ff4</resource>
</resources>
|
ListResourcesNameByType
Returns the list of all existing resources of a specific type.
Response Example
Code Block |
---|
theme | Eclipse |
---|
language | html/xml |
---|
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<resources>
<resource>dub_1_log</resource>
<resource>myre</resource>
<resource>logicalrouter1</resource>
</resources> |
GetIdentifierFromResourceTypeName
Given the name and the type of an existing resource, this method returns its id.
Response Example
No Format |
---|
584c96d5-2221-47d0-8c51-c5d4d45f3ff4 |