Moves wadls and docs to API repo, bug 928059
Please enter the commit message for your changes. Lines starting Change-Id: I39cef24f69347a24a89a43861ad3c87251083d1c
This commit is contained in:
parent
61fd0267d2
commit
edaec6a102
@ -33,7 +33,7 @@
|
||||
</profiles>
|
||||
<properties>
|
||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||
<doctools.version>1.0.9-SNAPSHOT</doctools.version>
|
||||
<doctools.version>1.0.11-SNAPSHOT</doctools.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
@ -117,7 +117,7 @@
|
||||
jar="${net.sourceforge.saxon:saxon:jar}"
|
||||
fork="true">
|
||||
<arg value="-u"/>
|
||||
<arg value="-s:https://raw.github.com/openstack/keystone/master/keystone/content/admin/identity-admin.wadl"/>
|
||||
<arg value="-s:src/docbkx/admin/identity-admin.wadl"/>
|
||||
<arg value="-xsl:${project.build.directory}/generated-resources/cloud/normalizeWadl/normalizeWadl.xsl"/>
|
||||
<arg value="-o:${project.build.directory}/generated-resources/xml/xslt/identity-admin.wadl"/>
|
||||
</java>
|
||||
@ -125,7 +125,7 @@
|
||||
jar="${net.sourceforge.saxon:saxon:jar}"
|
||||
fork="true">
|
||||
<arg value="-u"/>
|
||||
<arg value="-s:https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSADM-admin.wadl"/>
|
||||
<arg value="-s:src/docbkx/admin/OS-KSADM-admin.wadl"/>
|
||||
<arg value="-xsl:${project.build.directory}/generated-resources/cloud/normalizeWadl/normalizeWadl.xsl"/>
|
||||
<arg value="-o:${project.build.directory}/generated-resources/xml/xslt/OS-KSADM-admin.wadl"/>
|
||||
</java>
|
||||
@ -134,7 +134,7 @@
|
||||
jar="${net.sourceforge.saxon:saxon:jar}"
|
||||
fork="true">
|
||||
<arg value="-u"/>
|
||||
<arg value="-s:https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSCATALOG-admin.wadl"/>
|
||||
<arg value="-s:src/docbkx/admin/OS-KSCATALOG-admin.wadl"/>
|
||||
<arg value="-xsl:${project.build.directory}/generated-resources/cloud/normalizeWadl/normalizeWadl.xsl"/>
|
||||
<arg value="-o:${project.build.directory}/generated-resources/xml/xslt/OS-KSCATALOG-admin.wadl"/>
|
||||
</java>
|
||||
@ -143,7 +143,7 @@
|
||||
jar="${net.sourceforge.saxon:saxon:jar}"
|
||||
fork="true">
|
||||
<arg value="-u"/>
|
||||
<arg value="-s:https://raw.github.com/openstack/keystone/master/keystone/content/admin/RAX-KSKEY-admin.wadl"/>
|
||||
<arg value="-s:src/docbkx/admin/RAX-KSKEY-admin.wadl"/>
|
||||
<arg value="-xsl:${project.build.directory}/generated-resources/cloud/normalizeWadl/normalizeWadl.xsl"/>
|
||||
<arg value="-o:${project.build.directory}/generated-resources/xml/xslt/RAX-KSKEY-admin.wadl"/>
|
||||
</java>
|
||||
@ -152,7 +152,7 @@
|
||||
jar="${net.sourceforge.saxon:saxon:jar}"
|
||||
fork="true">
|
||||
<arg value="-u"/>
|
||||
<arg value="-s:https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSEC2-admin.wadl"/>
|
||||
<arg value="-s:src/docbkx/admin/OS-KSEC2-admin.wadl"/>
|
||||
<arg value="-xsl:${project.build.directory}/generated-resources/cloud/normalizeWadl/normalizeWadl.xsl"/>
|
||||
<arg value="-o:${project.build.directory}/generated-resources/xml/xslt/OS-KSEC2-admin.wadl"/>
|
||||
</java>
|
||||
@ -215,7 +215,7 @@
|
||||
<postProcess>
|
||||
<!-- Copies the figures to the correct location for webhelp -->
|
||||
<copy todir="${basedir}/target/docbkx/webhelp/identity-dev-guide/figures">
|
||||
<fileset dir="${basedir}/src/docbkx/img">
|
||||
<fileset dir="${basedir}/src/docbkx/common/img">
|
||||
<include name="**/*.svg" />
|
||||
</fileset>
|
||||
</copy>
|
||||
@ -234,7 +234,7 @@
|
||||
tofile="${basedir}/target/docbkx/webhelp/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf"/>
|
||||
|
||||
<!-- Moves extension PDF and keeps name of the main dev guide -->
|
||||
<copy failonerror="false"
|
||||
<!--<copy failonerror="false"
|
||||
file="${basedir}/target/docbkx/webhelp/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf"
|
||||
tofile="${basedir}/target/docbkx/webhelp/identity-dev-guide/identity-dev-guide.pdf"/>
|
||||
<move failonerror="false"
|
||||
@ -260,7 +260,7 @@
|
||||
tofile="${basedir}/target/docbkx/webhelp/identitydevguide/admin/RAX-KSKEY-admin-devguide.pdf"/>
|
||||
<move failonerror="false"
|
||||
file="${basedir}/target/docbkx/pdf/OS-KSEC2-admin-devguide.pdf"
|
||||
tofile="${basedir}/target/docbkx/webhelp/identitydevguide/admin/OS-KSEC2-admin-devguide.pdf"/>
|
||||
tofile="${basedir}/target/docbkx/webhelp/identitydevguide/admin/OS-KSEC2-admin-devguide.pdf"/>-->
|
||||
</postProcess>
|
||||
</configuration>
|
||||
</execution>
|
||||
@ -270,7 +270,7 @@
|
||||
<goal>generate-pdf</goal>
|
||||
<goal>generate-webhelp</goal>
|
||||
</goals>
|
||||
<phase>generate-sources</phase>
|
||||
<!-- <phase>generate-sources</phase>-->
|
||||
<configuration>
|
||||
<includes>HP-IDM/HP-IDM.xml</includes>
|
||||
<trimWadlUriCount>1</trimWadlUriCount>
|
||||
@ -295,8 +295,14 @@
|
||||
<xincludeSupported>true</xincludeSupported>
|
||||
<sourceDirectory>src/docbkx</sourceDirectory>
|
||||
<includes>
|
||||
identity-dev-guide.xml,,OS-KSADM-admin-devguide.xml,OS-KSCATALOG-admin-devguide.xml,RAX-KSKEY-service-devguide.xml,
|
||||
OS-KSEC2-service-devguide.xml,RAX-KSGRP-service-devguide.xml,RAX-KSKEY-admin-devguide.xml,OS-KSEC2-admin-devguide.xml
|
||||
common/identity-dev-guide.xml<!--,
|
||||
OS-KS/OS-KSADM-admin-devguide.xml,
|
||||
OS-KS/OS-KSCATALOG-admin-devguide.xml,
|
||||
OS-KS/OS-KSEC2-admin-devguide.xml,
|
||||
OS-KS/OS-KSEC2-service-devguide.xml,
|
||||
RAX-KS/RAX-KSKEY-service-devguide.xml,
|
||||
RAX-KS/RAX-KSGRP-service-devguide.xml,
|
||||
RAX-KS/RAX-KSKEY-admin-devguide.xml-->
|
||||
</includes>
|
||||
<profileSecurity>reviewer</profileSecurity>
|
||||
<branding>openstack</branding>
|
||||
|
@ -7,21 +7,21 @@
|
||||
<!-- xmllint -noent HP-IDM-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "https://raw.github.com/openstack/keystone/master/keystone/content/common/common.ent">
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:HP-IDM="http://docs.openstack.org/identity/api/ext/HP-IDM/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0">
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:HP-IDM="http://docs.openstack.org/identity/api/ext/HP-IDM/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0">
|
||||
|
||||
<grammars>
|
||||
<include href="https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/api.xsd"/>
|
||||
<include href="https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
@ -35,7 +35,7 @@
|
||||
<resource id="tokenById" path="{tokenId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
</param>
|
||||
<param name="tokenId" style="template" type="xsd:string" required="true"/>
|
||||
<param name="belongsTo" style="query" type="xsd:string" required="false"/>
|
||||
<param name="HP-IDM-serviceId" style="query" type="xsd:string" required="false"/>
|
||||
@ -50,7 +50,6 @@
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
|
||||
<!-- Token Operations -->
|
||||
<method name="GET" id="validateToken">
|
||||
<doc xml:lang="EN" title="Validate Token">
|
||||
@ -89,15 +88,15 @@
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
|
149
openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~
Normal file
149
openstack-identity-api/src/docbkx/HP-IDM/HP-IDM-admin.wadl~
Normal file
@ -0,0 +1,149 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent HP-IDM-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:HP-IDM="http://docs.openstack.org/identity/api/ext/HP-IDM/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<resource id="tokens" path="tokens">
|
||||
<resource id="tokenById" path="{tokenId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<param name="tokenId" style="template" type="xsd:string" required="true"/>
|
||||
<param name="belongsTo" style="query" type="xsd:string" required="false"/>
|
||||
<param name="HP-IDM-serviceId" style="query" type="xsd:string" required="false"/>
|
||||
<method href="#validateToken"/>
|
||||
<method href="#checkToken"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Token Operations -->
|
||||
<method name="GET" id="validateToken">
|
||||
<doc xml:lang="EN" title="Validate Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a supplied tenant
|
||||
and services and return the permissions relevant to a particular client.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If 'HP-IDM-serviceId' is provided, it must be a comma-separated string of
|
||||
service IDs. If any of the service IDs is invalid or if there are no
|
||||
roles associated with the service IDs, a user should expect a 401.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<param name="HP-IDM-serviceId" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If provided, filter the roles to be returned by the given service IDs.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="HEAD" id="checkToken">
|
||||
<doc xml:lang="EN" title="Check Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a particular tenant and services
|
||||
(For performance).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If `belongsTo` is provided, validates that a token has a specific tenant in scope.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If 'HP-IDM-serviceId' is provided, it must be a comma-separated string of
|
||||
service IDs. If any of the service ID is invalid or if there are no
|
||||
roles associated with the service IDs, a user should expect a 401.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
No response body is returned for this method.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope. (for performance).
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<param name="HP-IDM-serviceId" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Check the roles against the given service IDs.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -130,8 +130,8 @@
|
||||
<term>Doc Link (PDF)</term>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://github.com/openstack/keystone/raw/master/content/admin/HP-IDM-admin-devguide.pdf">
|
||||
https://github.com/openstack/keystone/raw/master/content/admin/HP-IDM-admin-devguide.pdf
|
||||
<link xlink:href="http://docs.openstack.org/api/openstack-identity/content/admin/HP-IDM-admin-devguide.pdf">
|
||||
http://docs.openstack.org/api/openstack-identity/ext/admin/HP-IDM-admin-devguide.pdf
|
||||
</link>
|
||||
</para>
|
||||
</listitem>
|
||||
@ -140,8 +140,8 @@
|
||||
<term>Doc Link (WADL)</term>
|
||||
<listitem>
|
||||
<para>
|
||||
<link xlink:href="https://raw.github.com/openstack/keystone/master/keystone/content/admin/HP-IDM-admin.wadl">
|
||||
https://raw.github.com/openstack/keystone/master/keystone/content/admin/HP-IDM-admin.wadl
|
||||
<link xlink:href="../admin/HP-IDM-admin.wadl">
|
||||
http://docs.openstack.org/api/openstack-identity/ext/admin/HP-IDM-admin.wadl
|
||||
</link>
|
||||
</para>
|
||||
</listitem>
|
||||
@ -186,7 +186,7 @@
|
||||
<title>Extension Query Response: JSON</title>
|
||||
<programlisting language="javascript"><xi:include href="samples/ext_query.json" parse="text"/></programlisting>
|
||||
</example>
|
||||
<section>
|
||||
<section xml:id="hp-idm_doc-change-history">
|
||||
<title>Document Change History</title>
|
||||
<para>
|
||||
The most recent changes to this document are described
|
||||
@ -199,7 +199,7 @@
|
||||
<?rax revhistory?>
|
||||
</section>
|
||||
</chapter>
|
||||
<chapter>
|
||||
<chapter xml:id="hp-idm_summary-of-changes">
|
||||
<title>Summary of Changes</title>
|
||||
<!--
|
||||
Provide an overall summary of the extension. Give an
|
||||
@ -216,14 +216,14 @@
|
||||
</link>
|
||||
for more details.
|
||||
</para>
|
||||
<section>
|
||||
<section xml:id="hp-idm-new-headers">
|
||||
<title>New Headers</title>
|
||||
<!--
|
||||
Describe any new headers, if any.
|
||||
-->
|
||||
<para>None.</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="hp-idm-new-faults">
|
||||
<title>New Faults</title>
|
||||
<!--
|
||||
Describe any new faults, if any. Make sure you specify
|
||||
@ -231,7 +231,7 @@
|
||||
-->
|
||||
<para>None.</para>
|
||||
</section>
|
||||
<section role="api-reference">
|
||||
<section xml:id="hp-idm-new-resources" role="api-reference">
|
||||
<title>New Resources</title>
|
||||
<!--
|
||||
List any new resources here. The api-reference role
|
||||
@ -241,7 +241,7 @@
|
||||
<para>
|
||||
No new resource. HP-IDM Extension merely introduced a new optional HP-IDM-serviceId parameter for the validate token operations. The following APIs are affected.
|
||||
</para>
|
||||
<section>
|
||||
<section xml:id="hp-idm-validate-tokens">
|
||||
<title>Validate Tokens With The New Optional HP-IDM-serviceId Parameter</title>
|
||||
<para>
|
||||
The following are a list of operations on templates.
|
||||
@ -257,14 +257,14 @@
|
||||
</wadl:resources>
|
||||
</section>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="hp-idm-new-actions">
|
||||
<title>New Actions</title>
|
||||
<!--
|
||||
Describe any new actions if any.
|
||||
-->
|
||||
<para>None.</para>
|
||||
</section>
|
||||
<section>
|
||||
<section xml:id="hp-idm-new-states">
|
||||
<title>New States</title>
|
||||
<!--
|
||||
Describe any new states.
|
||||
|
@ -34,9 +34,9 @@ format="SVG" scale="60"/>
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSADM-admin-devguide.pdf">
|
||||
<!ENTITY CURRENTWADL "https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSADM-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/OS-KSADM.xsd">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.openstack.org/api/openstack-identity/ext/admin/OS-KSADM-admin-devguide.pdf">
|
||||
<!ENTITY CURRENTWADL "http://docs.openstack.org/api/openstack-identity/ext/admin/OS-KSADM-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "http://docs.openstack.org/api/openstack-identity/ext/admin/common/xsd/OS-KSADM.xsd">
|
||||
]>
|
||||
|
||||
<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
@ -172,6 +172,6 @@ format="SVG" scale="60"/>
|
||||
</chapter>
|
||||
<chapter xml:id="api_operations" role="api-reference">
|
||||
<title>Extension Operations</title>
|
||||
<xi:include href="identity-OS-KSADM-api.xml"/>
|
||||
<xi:include href="../common/identity-OS-KSADM-api.xml"/>
|
||||
</chapter>
|
||||
</book>
|
793
openstack-identity-api/src/docbkx/OS-KS/OS-KSADM-admin.wadl
Normal file
793
openstack-identity-api/src/docbkx/OS-KS/OS-KSADM-admin.wadl
Normal file
@ -0,0 +1,793 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSADM-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSADM="http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0 xsd/OS-KSADM.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/OS-KSADM.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<method href="#listUsers"/>
|
||||
<method href="#addUser"/>
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<method href="#updateUser"/>
|
||||
<method href="#deleteUser"/>
|
||||
|
||||
<resource id="userRoles" path="roles">
|
||||
<resource id="user-roles-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userRoleById" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#addUserRole"/>
|
||||
<method href="#deleteUserRole"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="enabled" path="enabled">
|
||||
<method href="#setUserEnabled"/>
|
||||
</resource>
|
||||
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="{credential-type}">
|
||||
<param name="credentialType" style="template" type="OS-KSADM:extensibleCredentialsType" required="true"/>
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<method href="#addTenant"/>
|
||||
<resource id="tenantById" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string"/>
|
||||
<method href="#updateTenant"/>
|
||||
<method href="#deleteTenant"/>
|
||||
<resource id="usersForTenant" path="users">
|
||||
<method href="#listUsersForTenant"/>
|
||||
<resource id="userForTenant" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="userRolesForTenant" path="roles">
|
||||
<resource id="tenant-user-role-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userSpecificRoleForTenant" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#addRolesToUserOnTenant"/>
|
||||
<method href="#deleteRoleFromUserOnTenant"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="role-service-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="roles" path="roles">
|
||||
<method href="#getRoleByName"/>
|
||||
<method href="#listRoles"/>
|
||||
<method href="#addRole"/>
|
||||
<resource id="roleId" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#getRole"/>
|
||||
<method href="#deleteRole"/>
|
||||
</resource>
|
||||
</resource>
|
||||
<resource id="services" path="services">
|
||||
<method href="#listServices"/>
|
||||
<method href="#addService"/>
|
||||
<method href="#getServiceByName"/>
|
||||
<resource id="serviceId" path="{serviceId}">
|
||||
<param name="serviceId" style="template" type="xsd:string"/>
|
||||
<method href="#getService"/>
|
||||
<method href="#deleteService"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Tenant Operations -->
|
||||
<method name="POST" id="addTenant">
|
||||
<doc xml:lang="EN" title="Add Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Creates a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call creates a tenant.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenantwithoutid.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenantwithoutid.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateTenant">
|
||||
<doc xml:lang="EN" title="Update Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Updates a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call updates a tenant.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteTenant">
|
||||
<doc xml:lang="EN" title="Delete a Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Deletes a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call deletes a tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listUsersForTenant">
|
||||
<doc xml:lang="EN" title="List users for a Tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">Lists all the users for a tenant.</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Lists all the users for a tenant.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:users">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/users.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/users.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="PUT" id="addRolesToUserOnTenant">
|
||||
<doc xml:lang="EN" title="Add roles to a user on a tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a specific role to a user for a tenant.</p>
|
||||
</doc>
|
||||
<response status="201"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteRoleFromUserOnTenant">
|
||||
<doc xml:lang="EN" title="Delete roles from a user on tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Deletes a specific role from a user for a tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Operations-->
|
||||
<method name="GET" id="listUsers">
|
||||
<doc xml:lang="EN" title="List users">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List users.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:userss">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/users.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/users.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<method name="POST" id="addUser">
|
||||
<doc xml:lang="EN" title="Add user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/userwithoutid.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/userwithoutid.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUser">
|
||||
<doc xml:lang="EN" title="Update user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUser">
|
||||
<doc xml:lang="EN" title="Delete user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a user.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="PUT" id="setUserEnabled">
|
||||
<doc xml:lang="EN" title="Set user enabled.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Enable user.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/userwithenabledonly.xml"/>
|
||||
</doc>
|
||||
<param name="user" style="plain" path="/" type="OS-KSADM:UserWithOnlyEnabled"/></representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/userwithenabledonly.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Roles-->
|
||||
<method name="PUT" id="addUserRole">
|
||||
<doc xml:lang="EN" title="Add Global roles to a user.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a specific global role to a user.</p>
|
||||
</doc>
|
||||
<response status="201"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserRole">
|
||||
<doc xml:lang="EN" title="Delete Global Roles on User.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Deletes a specific global role from a user.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--Roles-->
|
||||
<method name="GET" id="listRoles">
|
||||
<doc xml:lang="EN" title="List Roles">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List roles.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="serviceId" style="query" required="false" type="xsd:string"/>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addRole">
|
||||
<doc xml:lang="EN" title="Add Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add a Role.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getRoleByName">
|
||||
<doc xml:lang="EN" title="Get Role By Name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a role by Name.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<method name="GET" id="getRole">
|
||||
<doc xml:lang="EN" title="Get Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a role.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteRole">
|
||||
<doc xml:lang="EN" title="Delete Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a role.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Service Operations -->
|
||||
<method name="GET" id="listServices">
|
||||
<doc xml:lang="EN" title="List Services">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List services.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:services">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/services.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/services.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getServiceByName">
|
||||
<doc xml:lang="EN" title="Get Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a service by name.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getService">
|
||||
<doc xml:lang="EN" title="Get Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a service.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="POST" id="addService">
|
||||
<doc xml:lang="EN" title="Add Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add a service.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/service.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="DELETE" id="deleteService">
|
||||
<doc xml:lang="EN" title="Delete Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a service.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -34,9 +34,9 @@ format="SVG" scale="60"/>
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://github.com/openstack/keystone/raw/master/keystone/content/admin/OS-KSCATALOG-admin-devguide.pdf">
|
||||
<!ENTITY CURRENTWADL "https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSCATALOG-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/OS-KSCATALOG.xsd">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.openstack.org/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf">
|
||||
<!ENTITY CURRENTWADL "http://docs.openstack.org/api/openstack-identity/ext/admin/OS-KSCATALOG-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "http://docs.openstack.org/api/openstack-identity/ext/admin/common/xsd/OS-KSCATALOG.xsd">
|
||||
]>
|
||||
|
||||
<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
@ -173,6 +173,6 @@ format="SVG" scale="60"/>
|
||||
|
||||
<chapter xml:id="api_operations" role="api-reference">
|
||||
<title>Extension Operations</title>
|
||||
<xi:include href="identity-OS-KSCATALOG-api.xml"/>
|
||||
<xi:include href="../common/identity-OS-KSCATALOG-api.xml"/>
|
||||
</chapter>
|
||||
</book>
|
295
openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl
Normal file
295
openstack-identity-api/src/docbkx/OS-KS/OS-KSCATALOG-admin.wadl
Normal file
@ -0,0 +1,295 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSCATALOG-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSCATALOG="http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0 xsd/OS-KSCATALOG.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/OS-KSCATALOG.xsd"/>
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<resource id="tenantId" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string"/>
|
||||
<resource id="endpoints-OS-KSCATALOG" path="OS-KSCATALOG">
|
||||
<resource id="endpoints" path="endpoints">
|
||||
<method href="#listEndpoints"/>
|
||||
<method href="#addEndpoint"/>
|
||||
<resource id="endpoint" path="{endpointId}">
|
||||
<param name="endpointId" style="template" type="xsd:string"/>
|
||||
<method href="#getEndpoint"/>
|
||||
<method href="#deleteEndpoint"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="role-service-OS-KSCATALOG" path="OS-KSCATALOG">
|
||||
<resource id="endpointTemplates" path="endpointTemplates">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<method href="#listEndpointTemplates"/>
|
||||
<method href="#addEndpointTemplate"/>
|
||||
<resource id="endpointTemplateId" path="{endpointTemplateId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<param name="endpointTemplateId" style="template" type="xsd:string"/>
|
||||
<method href="#getEndpointTemplate"/>
|
||||
<method href="#updateEndpointTemplate"/>
|
||||
<method href="#deleteEndpointTemplate"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- EndPoint Templates -->
|
||||
|
||||
<method name="GET" id="listEndpointTemplates">
|
||||
<doc xml:lang="EN" title="List Endpoint Templates">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List Endpoint Templates.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="serviceId" style="query" required="false" type="xsd:string"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplates">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplates.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplates.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Get Endpoint Template">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get Endpoint Template.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Add Endpoint Template">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add Endpoint Template.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="PUT" id="updateEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Update Endpoint Template">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update Endpoint Template.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Delete Endpoint Template.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a Endpoint Template.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addEndpoint">
|
||||
<doc xml:lang="EN" title="Add Endpoint">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add Endpoint to a tenant.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplateWithOnlyId.xml"/>
|
||||
</doc>
|
||||
<param name="endpoint" style="plain" path="/"
|
||||
type="OS-KSCATALOG:EndpointTemplateWithOnlyId"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpointTemplateWithOnlyId.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:endpoint">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoint.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoint.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listEndpoints">
|
||||
<doc xml:lang="EN" title="List Endpoints">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List Endpoints of a Tenant.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoints">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoints.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoints.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getEndpoint">
|
||||
<doc xml:lang="EN" title="Get Endpoint">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get Endpoint of a Tenant.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoint">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoint.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/endpoint.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteEndpoint">
|
||||
<doc xml:lang="EN" title="Delete Endpoint.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a Endpoint from a Tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -34,13 +34,13 @@ format="SVG" scale="60"/>
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSEC2-admin-devguide.pdf">
|
||||
<!ENTITY CURRENTWADL "https://raw.github.com/openstack/keystone/master/keystone/content/admin/OS-KSEC2-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/OS-KSEC2-credentials.xsd">
|
||||
<!ENTITY EC2CREDENTIALSEXAMPLEXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/ec2Credentials.xml">
|
||||
<!ENTITY EC2CREDENTIALSEXAMPLEJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/ec2Credentials.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/admin/osec2/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/admin/osec2/extension.json">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.openstack.org/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf">
|
||||
<!ENTITY CURRENTWADL "../admin/OS-KSEC2-admin.wadl">
|
||||
<!ENTITY EXTENSIONXSD "../common/xsd/OS-KSEC2-credentials.xsd">
|
||||
<!ENTITY EC2CREDENTIALSEXAMPLEXML "../common/samples/ec2Credentials.xml">
|
||||
<!ENTITY EC2CREDENTIALSEXAMPLEJSON "../common/samples/ec2Credentials.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "../common/samples/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "../common/samples/extension.json">
|
||||
|
||||
]>
|
||||
<book xmlns="http://docbook.org/ns/docbook"
|
211
openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin.wadl
Normal file
211
openstack-identity-api/src/docbkx/OS-KS/OS-KSEC2-admin.wadl
Normal file
@ -0,0 +1,211 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSEC2-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSEC2="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0 xsd/OS-KSEC2-credentials.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/OS-KSEC2-credentials.xsd" />
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="OS-KSEC2:ec2Credentials">
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswithec2.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswithec2.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -34,14 +34,14 @@
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://github.com/openstack/keystone/raw/master/keystone/content/service/OS-KSEC2-service-devguide.pdf">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/common/xsd/OS-KSEC2-credentials.xsd">
|
||||
<!ENTITY EC2CREDENTIALSREQUESTXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials-OS-KSEC2.xml">
|
||||
<!ENTITY EC2CREDENTIALSREQUESTJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials-OS-KSEC2.json">
|
||||
<!ENTITY EC2CREDENTIALSRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.xml">
|
||||
<!ENTITY EC2CREDENTIALSRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/osec2/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/osec2/extension.json">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.openstack.org/api/openstack-identity-service/2.0/identity-dev-guide-2.0.pdf">
|
||||
<!ENTITY EXTENSIONXSD "http://docs.openstack.org/api/openstack-identity/ext/os/common/xsd/OS-KSEC2-credentials.xsd">
|
||||
<!ENTITY EC2CREDENTIALSREQUESTXML "http://docs.openstack.org/api/openstack-identity/ext/os/common/samples/auth_credentials-OS-KSEC2.xml">
|
||||
<!ENTITY EC2CREDENTIALSREQUESTJSON "http://docs.openstack.org/api/openstack-identity/ext/os/common/samples/auth_credentials-OS-KSEC2.json">
|
||||
<!ENTITY EC2CREDENTIALSRESPONSEXML "http://docs.openstack.org/api/openstack-identity/ext/os/common/samples/auth.xml">
|
||||
<!ENTITY EC2CREDENTIALSRESPONSEJSON "http://docs.openstack.org/api/openstack-identity/ext/os/common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "http://docs.openstack.org/api/openstack-identity/ext/os/contrib/extensions/service/osec2/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "http://docs.openstack.org/api/openstack-identity/ext/os/contrib/extensions/service/osec2/extension.json">
|
||||
|
||||
|
||||
]>
|
212
openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl
Normal file
212
openstack-identity-api/src/docbkx/OS-KS/OS-KSS3-admin.wadl
Normal file
@ -0,0 +1,212 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSEC2-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSEC2="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0 xsd/OS-KSEC2-credentials.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/OS-KSEC2-credentials.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resoruces -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="OS-KSEC2:s3Credentials">
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSS3:s3credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSS3:s3credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswiths3.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswiths3.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSS3:s3credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="OS-KSS3:s3credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSS3:s3credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/s3Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
192
openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl
Normal file
192
openstack-identity-api/src/docbkx/OS-KS/OS-KSVALIDATE-admin.wadl
Normal file
@ -0,0 +1,192 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSVALIDATE-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSVALIDATE="http://docs.openstack.org/identity/api/ext/OS-KSVALIDATE/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/api.xsd"/>
|
||||
<include href="../common/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<resource id="extension" path="OS-KSVALIDATE">
|
||||
<resource id="token" path="token">
|
||||
<resource id="validate" path="validate">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<param name="X-Subject-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need to supply a token to validate.</doc>
|
||||
</param>
|
||||
<param name="belongsTo" style="query" type="xsd:string" required="false"/>
|
||||
<param name="HP-IDM-serviceId" style="query" type="xsd:string" required="false"/>
|
||||
<method href="#validateToken"/>
|
||||
<method href="#checkToken"/>
|
||||
</resource>
|
||||
|
||||
<resource id="endpointsForToken" path="endpoints">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<param name="X-Subject-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need to supply a token to validate.</doc>
|
||||
</param>
|
||||
<param name="HP-IDM-serviceId" style="query" type="xsd:string" required="false"/>
|
||||
<method href="#listEndpointsForToken"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
|
||||
<!-- Token Operations -->
|
||||
<method name="GET" id="validateToken">
|
||||
<doc xml:lang="EN" title="Validate Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a supplied tenant
|
||||
and services and return the permissions relevant to a particular client.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Behaviour is similar to <code>/tokens/{tokenId}</code>. In
|
||||
other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
'X-Subject-Token' is encrypted, but can still be used for
|
||||
caching. This extension will basically decrypt this header and
|
||||
internally call Keystone's normal validation, passing along all
|
||||
headers and query parameters. It should therefore support
|
||||
all exsting calls on <code>/tokens/{tokenId}</code>, including
|
||||
extensions such as HP-IDM.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<param name="OS-KSVALIDATE-serviceId" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If provided, filter the roles to be returned by the given service IDs.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="HEAD" id="checkToken">
|
||||
<doc xml:lang="EN" title="Check Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a particular
|
||||
tenant and services (For performance).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Behaviour is similar to <code>/tokens/{tokenId}</code>. In
|
||||
other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
'X-Subject-Token' is encrypted, but can still be used for
|
||||
caching. This extension will basically decrypt this header and
|
||||
internally call Keystone's normal validation, passing along all
|
||||
headers and query parameters. It should therefore support
|
||||
all exsting calls on <code>/tokens/{tokenId}</code>, including
|
||||
extensions such as HP-IDM.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
No response body is returned for this method.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope. (for performance).
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<param name="OS-KSVALIDATE-serviceId" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Check the roles against the given service IDs.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="listEndpointsForToken">
|
||||
<doc xml:lang="EN" title="List Endoints for a Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns a list of endpoints associated with a specific token.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoints">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/endpoints.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/endpoints.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
</application>
|
@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSGRP-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSGRP="http://docs.openstack.org/identity/api/ext/RAX-KSGRP/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/RAX-KSGRP/v1.0 xsd/RAX-KSGRP-groups.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/RAX-KSGRP-groups.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="user-groups-RAX-KSGRP" path="RAX-KSGRP">
|
||||
<method href="#listUserGroups"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<method name="GET" id="listUserGroups">
|
||||
<doc xml:lang="EN" title="List Groups for a User">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List all the groups for a user.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSGRP:groups">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSGRP-groups.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSGRP-groups.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -34,20 +34,20 @@
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.rackspace.com/identity/api/ext/RAX-KSGROUP/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://github.com/openstack/keystone/raw/master/keystone/content/service/RAX-KSGRP-service-devguide.pdf">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/service/xsd/RAX-KSGRP-groups.xsd">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.rackspace.com/api">
|
||||
<!ENTITY EXTENSIONXSD "../common/xsd/RAX-KSGRP-groups.xsd">
|
||||
|
||||
<!ENTITY GROUPSXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/RAX-KSGRP-groups.xml">
|
||||
<!ENTITY GROUPSJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/RAX-KSGRP-groups.json">
|
||||
<!ENTITY GROUPXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/RAX-KSGRP-group.xml">
|
||||
<!ENTITY GROUPJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/RAX-KSGRP-group.json">
|
||||
<!ENTITY GROUPSXML "../common/samples/RAX-KSGRP-groups.xml">
|
||||
<!ENTITY GROUPSJSON "../common/samples/RAX-KSGRP-groups.json">
|
||||
<!ENTITY GROUPXML "../common/samples/RAX-KSGRP-group.xml">
|
||||
<!ENTITY GROUPJSON "../common/samples/RAX-KSGRP-group.json">
|
||||
|
||||
<!ENTITY GROUPREQUESTXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials.xml">
|
||||
<!ENTITY GROUPREQUESTJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials.json">
|
||||
<!ENTITY GROUPRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/authwithgroups.xml">
|
||||
<!ENTITY GROUPRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/authwithgroups.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/raxgrp/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/raxgrp/extension.json">
|
||||
<!ENTITY GROUPREQUESTXML "../common/samples/auth_credentials.xml">
|
||||
<!ENTITY GROUPREQUESTJSON "../common/samples/auth_credentials.json">
|
||||
<!ENTITY GROUPRESPONSEXML "../common/samples/authwithgroups.xml">
|
||||
<!ENTITY GROUPRESPONSEJSON "../common/samples/authwithgroups.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "../contrib/extensions/service/raxgrp/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "../contrib/extensions/service/raxgrp/extension.json">
|
||||
|
||||
|
||||
]>
|
||||
@ -279,11 +279,11 @@
|
||||
</example>
|
||||
<example>
|
||||
<title>XML Auth Response that contains Groups</title>
|
||||
<programlisting language="xml"><xi:include href="&GROUPRESPONSEXML;" parse="text"><xi:fallback>Yet To Be added</xi:fallback></xi:include></programlisting>
|
||||
<programlisting language="xml"><xi:include href="&GROUPRESPONSEXML;" parse="text"><!--<xi:fallback>Yet To Be added</xi:fallback>--></xi:include></programlisting>
|
||||
</example>
|
||||
<example>
|
||||
<title>JSON Auth Response that contains Groups</title>
|
||||
<programlisting language="javascript"><xi:include href="&GROUPRESPONSEJSON;" parse="text"><xi:fallback>Yet To Be added</xi:fallback></xi:include></programlisting>
|
||||
<programlisting language="javascript"><xi:include href="&GROUPRESPONSEJSON;" parse="text"><!--<xi:fallback>Yet To Be added</xi:fallback>--></xi:include></programlisting>
|
||||
</example>
|
||||
</section>
|
||||
</section>
|
@ -34,16 +34,15 @@
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "/home/yogi/keystone/content/admin/RAX-KSKEY-admin-devguide.pdf">
|
||||
<!ENTITY EXTENSIONXSD "/home/yogi/keystone/content/service/xsd/RAX-KSKEY-credentials.xsd">
|
||||
<!ENTITY CURRENTWADL "https://raw.github.com/openstack/keystone/master/keystone/content/admin/RAX-KSKEY-admin.wadl">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/apiKeyCredentials.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/apiKeyCredentials.json">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/admin/raxkey/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/admin/raxkey/extension.json">
|
||||
|
||||
<!ENTITY CURRENTGUIDE "http://docs.rackspace.com/api">
|
||||
<!ENTITY EXTENSIONXSD "../service/xsd/RAX-KSKEY-credentials.xsd">
|
||||
<!ENTITY CURRENTWADL "../admin/RAX-KSKEY-admin.wadl">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTXML "../common/samples/apiKeyCredentials.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTJSON "../common/samples/apiKeyCredentials.json">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEXML "../common/samples/auth.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEJSON "../common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "../contrib/extensions/service/raxgrp/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "../contrib/extensions/service/raxgrp/extension.json">
|
||||
|
||||
]>
|
||||
<book xmlns="http://docbook.org/ns/docbook"
|
||||
@ -79,7 +78,7 @@
|
||||
<abstract>
|
||||
<para>
|
||||
This document is intended for service developers interested
|
||||
in using the Rackspace API Key Authentication Admin Extension along with the
|
||||
in using the Rackspace API Key Authentication Admin Extension along with the
|
||||
Keystone - OpenStack Identity
|
||||
(<abbrev>API</abbrev>).
|
||||
</para>
|
||||
@ -193,7 +192,7 @@
|
||||
<chapter xml:id="chapter-0001">
|
||||
<title>Summary of Changes</title>
|
||||
<para>
|
||||
The Rackspace API Key Authentication Admin Extension allows crud/listing operations on <parameter>apikeyCredentials</parameter>.
|
||||
The Rackspace API Key Authentication Admin Extension allows crud/listing operations on <parameter>apikeyCredentials</parameter>.
|
||||
</para>
|
||||
<section xml:id="NewHeaders-0001">
|
||||
<title>New Headers</title>
|
||||
@ -217,7 +216,7 @@
|
||||
<title>apikeyCredentials</title>
|
||||
<para>This extension allows authentication calls to accept new type of credentials <parameter>apikeyCredentials</parameter>.
|
||||
These are additional type of credentials defined to support rackspace style authentication.
|
||||
Examples of <parameter>apikeyCredentials</parameter> are illustrated below
|
||||
Examples of <parameter>apikeyCredentials</parameter> are illustrated below
|
||||
</para>
|
||||
<example>
|
||||
<title>apikeyCredentials XML</title>
|
||||
@ -228,7 +227,7 @@
|
||||
<programlisting language="javascript"><xi:include href="&APIKEYCREDENTIALSREQUESTJSON;" parse="text"/></programlisting>
|
||||
</example>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
<section xmlns="http://docbook.org/ns/docbook" xmlns:xi="http://www.w3.org/2001/XInclude"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xml:id="Admin_API_Service_Developer_Operations-d1e1357" version="5.0" role="api-reference">
|
||||
@ -265,7 +264,7 @@
|
||||
<wadl:method href="getUserCredential"/>
|
||||
</wadl:resource>
|
||||
</wadl:resources>
|
||||
</section>
|
||||
</section>
|
||||
</section>
|
||||
</chapter>
|
||||
</book>
|
211
openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl
Normal file
211
openstack-identity-api/src/docbkx/RAX-KS/RAX-KSKEY-admin.wadl
Normal file
@ -0,0 +1,211 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSKEY-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSKEY="http://docs.openstack.org/identity/api/ext/RAX-KSKEY/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0 xsd/RAX-KSKEY-credentials.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/RAX-KSKEY-credentials.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="RAX-KSKEY:apiKeyCredentials">
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswithapikey.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentialswithapikey.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -34,14 +34,14 @@
|
||||
</tr>
|
||||
</thead>'>
|
||||
<!ENTITY NAMESPACE "http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0">
|
||||
<!ENTITY CURRENTGUIDE "https://github.com/openstack/keystone/raw/master/keystone/content/service/RAX-KSKEY-service-devguide.pdf">
|
||||
<!ENTITY EXTENSIONXSD "https://raw.github.com/openstack/keystone/master/keystone/content/service/xsd/RAX-KSKEY-credentials.xsd">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials-RAX-KSKEY.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth_credentials-RAX-KSKEY.json">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/content/common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/raxkey/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "https://raw.github.com/openstack/keystone/master/keystone/contrib/extensions/service/raxkey/extension.json">
|
||||
<!ENTITY CURRENTGUIDE "http://docs.rackspace.com/api">
|
||||
<!ENTITY EXTENSIONXSD "../service/xsd/RAX-KSKEY-credentials.xsd">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTXML "../common/samples/apiKeyCredentials.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSREQUESTJSON "../common/samples/apiKeyCredentials.json">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEXML "../common/samples/auth.xml">
|
||||
<!ENTITY APIKEYCREDENTIALSRESPONSEJSON "../common/samples/auth.json">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEXML "../contrib/extensions/service/raxgrp/extension.xml">
|
||||
<!ENTITY EXTENSIONQUERYRESPONSEJSON "../contrib/extensions/service/raxgrp/extension.json">
|
||||
|
||||
|
||||
]>
|
106
openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl
Normal file
106
openstack-identity-api/src/docbkx/RAX-KS/RAX-KSQA-admin.wadl
Normal file
@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSQA-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSQA="http://docs.openstack.org/identity/api/ext/RAX-KSQA/v1.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/RAX-KSQA/v1.0 xsd/RAX-KSQA-secretQA.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
<include href="xsd/RAX-KSQA-secretQA.xsd"/>
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="user-RAX-KSQA" path="RAX-KSQA">
|
||||
<resource id="secretqa" path="secretqa">
|
||||
<method href="#getUserSecretQA"/>
|
||||
<method href="#updateUserSecretQA"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<method name="GET" id="getUserSecretQA">
|
||||
<doc xml:lang="EN" title="Get User SecretQA">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Gets a User secret Question and Answer.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="PUT" id="updateUserSecretQA">
|
||||
<doc xml:lang="EN" title="Update User SecretQA">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Updates a User secret Question and Answer.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
</application>
|
793
openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl
Normal file
793
openstack-identity-api/src/docbkx/admin/OS-KSADM-admin.wadl
Normal file
@ -0,0 +1,793 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSADM-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSADM="http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSADM/v1.0 ../common/xsd/OS-KSADM.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/OS-KSADM.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<method href="#listUsers"/>
|
||||
<method href="#addUser"/>
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<method href="#updateUser"/>
|
||||
<method href="#deleteUser"/>
|
||||
|
||||
<resource id="userRoles" path="roles">
|
||||
<resource id="user-roles-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userRoleById" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#addUserRole"/>
|
||||
<method href="#deleteUserRole"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="enabled" path="enabled">
|
||||
<method href="#setUserEnabled"/>
|
||||
</resource>
|
||||
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="{credential-type}">
|
||||
<param name="credentialType" style="template" type="OS-KSADM:extensibleCredentialsType" required="true"/>
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<method href="#addTenant"/>
|
||||
<resource id="tenantById" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string"/>
|
||||
<method href="#updateTenant"/>
|
||||
<method href="#deleteTenant"/>
|
||||
<resource id="usersForTenant" path="users">
|
||||
<method href="#listUsersForTenant"/>
|
||||
<resource id="userForTenant" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="userRolesForTenant" path="roles">
|
||||
<resource id="tenant-user-role-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userSpecificRoleForTenant" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#addRolesToUserOnTenant"/>
|
||||
<method href="#deleteRoleFromUserOnTenant"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="role-service-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="roles" path="roles">
|
||||
<method href="#getRoleByName"/>
|
||||
<method href="#listRoles"/>
|
||||
<method href="#addRole"/>
|
||||
<resource id="roleId" path="{roleId}">
|
||||
<param name="roleId" style="template" type="xsd:string"/>
|
||||
<method href="#getRole"/>
|
||||
<method href="#deleteRole"/>
|
||||
</resource>
|
||||
</resource>
|
||||
<resource id="services" path="services">
|
||||
<method href="#listServices"/>
|
||||
<method href="#addService"/>
|
||||
<method href="#getServiceByName"/>
|
||||
<resource id="serviceId" path="{serviceId}">
|
||||
<param name="serviceId" style="template" type="xsd:int"/>
|
||||
<method href="#getService"/>
|
||||
<method href="#deleteService"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Tenant Operations -->
|
||||
<method name="POST" id="addTenant">
|
||||
<doc xml:lang="EN" title="Add Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Creates a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call creates a tenant.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenantwithoutid.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenantwithoutid.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateTenant">
|
||||
<doc xml:lang="EN" title="Update Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Updates a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call updates a tenant.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteTenant">
|
||||
<doc xml:lang="EN" title="Delete a Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Deletes a tenant.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">This call deletes a tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listUsersForTenant">
|
||||
<doc xml:lang="EN" title="List users for a Tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">Lists all the users for a tenant.</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Lists all the users for a tenant.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:users">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/users.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/users.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="PUT" id="addRolesToUserOnTenant">
|
||||
<doc xml:lang="EN" title="Add roles to a user on a tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a specific role to a user for a tenant.</p>
|
||||
</doc>
|
||||
<response status="201"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteRoleFromUserOnTenant">
|
||||
<doc xml:lang="EN" title="Delete roles from a user on tenant.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Deletes a specific role from a user for a tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Operations-->
|
||||
<method name="GET" id="listUsers">
|
||||
<doc xml:lang="EN" title="List users">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List users.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:userss">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/users.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/users.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<method name="POST" id="addUser">
|
||||
<doc xml:lang="EN" title="Add user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/userwithoutid.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/userwithoutid.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUser">
|
||||
<doc xml:lang="EN" title="Update user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUser">
|
||||
<doc xml:lang="EN" title="Delete user">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a user.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="PUT" id="setUserEnabled">
|
||||
<doc xml:lang="EN" title="Set user enabled.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Enable user.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/userwithenabledonly.xml"/>
|
||||
</doc>
|
||||
<param name="user" style="plain" path="/" type="OS-KSADM:UserWithOnlyEnabled"/></representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/userwithenabledonly.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Roles-->
|
||||
<method name="PUT" id="addUserRole">
|
||||
<doc xml:lang="EN" title="Add Global roles to a user.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a specific global role to a user.</p>
|
||||
</doc>
|
||||
<response status="201"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserRole">
|
||||
<doc xml:lang="EN" title="Delete Global Roles on User.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Deletes a specific global role from a user.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credential">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/passwordcredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--Roles-->
|
||||
<method name="GET" id="listRoles">
|
||||
<doc xml:lang="EN" title="List Roles">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List roles.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="serviceId" style="query" required="false" type="xsd:string"/>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addRole">
|
||||
<doc xml:lang="EN" title="Add Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add a Role.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getRoleByName">
|
||||
<doc xml:lang="EN" title="Get Role By Name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a role by Name.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
|
||||
<method name="GET" id="getRole">
|
||||
<doc xml:lang="EN" title="Get Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a role.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:role">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/role.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteRole">
|
||||
<doc xml:lang="EN" title="Delete Role">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a role.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Service Operations -->
|
||||
<method name="GET" id="listServices">
|
||||
<doc xml:lang="EN" title="List Services">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List services.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:services">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/services.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/services.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getServiceByName">
|
||||
<doc xml:lang="EN" title="Get Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a service by name.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getService">
|
||||
<doc xml:lang="EN" title="Get Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get a service.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="POST" id="addService">
|
||||
<doc xml:lang="EN" title="Add Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add a service.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSADM:service">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/service.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="DELETE" id="deleteService">
|
||||
<doc xml:lang="EN" title="Delete Service">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a service.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
261
openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl
Normal file
261
openstack-identity-api/src/docbkx/admin/OS-KSCATALOG-admin.wadl
Normal file
@ -0,0 +1,261 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSCATALOG-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSCATALOG="http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0 ../common/xsd/OS-KSCATALOG.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/OS-KSCATALOG.xsd"/>
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<resource id="tenantId" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string"/>
|
||||
<resource id="endpoints-OS-KSCATALOG" path="OS-KSCATALOG">
|
||||
<resource id="endpoints" path="endpoints">
|
||||
<method href="#listEndpoints"/>
|
||||
<method href="#addEndpoint"/>
|
||||
<resource id="endpoint" path="{endpointId}">
|
||||
<param name="endpointId" style="template" type="xsd:string"/>
|
||||
<method href="#getEndpoint"/>
|
||||
<method href="#deleteEndpoint"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="role-service-OS-KSCATALOG" path="OS-KSCATALOG">
|
||||
<resource id="endpointTemplates" path="endpointTemplates">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<method href="#listEndpointTemplates"/>
|
||||
<method href="#addEndpointTemplate"/>
|
||||
<resource id="endpointTemplateId" path="{endpointTemplateId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true"/>
|
||||
<param name="endpointTemplateId" style="template" type="xsd:int"/>
|
||||
<method href="#getEndpointTemplate"/>
|
||||
<method href="#deleteEndpointTemplate"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- EndPoint Templates -->
|
||||
|
||||
<method name="GET" id="listEndpointTemplates">
|
||||
<doc xml:lang="EN" title="List Endpoint Templates">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List Endpoint Templates.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="serviceId" style="query" required="false" type="xsd:string"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplates">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplates.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplates.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Get Endpoint Template">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get Endpoint Template.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Add Endpoint Template">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add Endpoint Template.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplate.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteEndpointTemplate">
|
||||
<doc xml:lang="EN" title="Delete Endpoint Template.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a Endpoint Template.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="addEndpoint">
|
||||
<doc xml:lang="EN" title="Add Endpoint">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Add Endpoint to a tenant.</p>
|
||||
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSCATALOG:endpointTemplate">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplateWithOnlyId.xml"/>
|
||||
</doc>
|
||||
<param name="endpoint" style="plain" path="/"
|
||||
type="OS-KSCATALOG:EndpointTemplateWithOnlyId"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpointTemplateWithOnlyId.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="identity:endpoint">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoint.xml"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoint.json"/>
|
||||
</doc>
|
||||
<param name="Location" type="xsd:anyURI" style="header"/>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listEndpoints">
|
||||
<doc xml:lang="EN" title="List Endpoints">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List Endpoints of a Tenant.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoints">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoints.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoints.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getEndpoint">
|
||||
<doc xml:lang="EN" title="Get Endpoint">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get Endpoint of a Tenant.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoint">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoint.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/endpoint.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteEndpoint">
|
||||
<doc xml:lang="EN" title="Delete Endpoint.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete a Endpoint from a Tenant.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
212
openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl
Normal file
212
openstack-identity-api/src/docbkx/admin/OS-KSEC2-admin.wadl
Normal file
@ -0,0 +1,212 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent OS-KSEC2-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:OS-KSEC2="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0 ../common/xsd/OS-KSEC2-credentials.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/OS-KSEC2-credentials.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="OS-KSEC2:ec2Credentials">
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentialswithec2.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentialswithec2.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="OS-KSEC2:ec2Credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/ec2Credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
74
openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl
Normal file
74
openstack-identity-api/src/docbkx/admin/RAX-KSGRP-admin.wadl
Normal file
@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSGRP-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSGRP="http://docs.openstack.org/identity/api/ext/RAX-KSGRP/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/RAX-KSGRP/v1.0 ../common/xsd/RAX-KSGRP-groups.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/RAX-KSGRP-groups.xsd"/>
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="user-groups-RAX-KSGRP" path="RAX-KSGRP">
|
||||
<method href="#listUserGroups"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<method name="GET" id="listUserGroups">
|
||||
<doc xml:lang="EN" title="List Groups for a User">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List all the groups for a user.</p>
|
||||
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSGRP:groups">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSGRP-groups.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSGRP-groups.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
||||
|
212
openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl
Normal file
212
openstack-identity-api/src/docbkx/admin/RAX-KSKEY-admin.wadl
Normal file
@ -0,0 +1,212 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSKEY-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSKEY="http://docs.openstack.org/identity/api/ext/RAX-KSKEY/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0 ../common/xsd/RAX-KSKEY-credentials.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/RAX-KSKEY-credentials.xsd" />
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" required="true" type="xsd:string"/>
|
||||
<resource id="user-OS-KSADM" path="OS-KSADM">
|
||||
<resource id="userCredentials" path="credentials">
|
||||
<method href="#addUserCredential"/>
|
||||
<method href="#listCredentials"/>
|
||||
<resource id="userCredentialsByType" path="RAX-KSKEY:apiKeyCredentials">
|
||||
<method href="#updateUserCredential"/>
|
||||
<method href="#deleteUserCredential"/>
|
||||
<method href="#getUserCredential"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- User Credentials-->
|
||||
<method name="POST" id="addUserCredential">
|
||||
<doc xml:lang="EN" title="Add user Credential.">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Adds a credential to a user.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="201">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentials">
|
||||
<doc xml:lang="EN" title="List Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentialswithapikey.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentialswithapikey.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listCredentialsByType">
|
||||
<doc xml:lang="EN" title="List Credentials by type">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List credentials by type.</p>
|
||||
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:credentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/credentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="POST" id="updateUserCredential">
|
||||
<doc xml:lang="EN" title="Update user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Update credentials.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="DELETE" id="deleteUserCredential">
|
||||
<doc xml:lang="EN" title="Delete user credential">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Delete User credentials.</p>
|
||||
</doc>
|
||||
<response status="204"/>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="getUserCredential">
|
||||
<doc xml:lang="EN" title="Get user Credentials">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get user credentials.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSKEY:apiKeyCredentials">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/apiKeyCredentials.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
||||
|
106
openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl
Normal file
106
openstack-identity-api/src/docbkx/admin/RAX-KSQA-admin.wadl
Normal file
@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent RAX-KSQA-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:RAX-KSQA="http://docs.openstack.org/identity/api/ext/RAX-KSQA/v1.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
http://docs.openstack.org/identity/api/ext/RAX-KSQA/v1.0 ../common/xsd/RAX-KSQA-secretQA.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
<include href="../common/xsd/RAX-KSQA-secretQA.xsd"/>
|
||||
</grammars>
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<resource id="users" path="users">
|
||||
<resource id="userById" path="{userId}">
|
||||
<param name="userId" style="template" type="xsd:string"/>
|
||||
<resource id="user-RAX-KSQA" path="RAX-KSQA">
|
||||
<resource id="secretqa" path="secretqa">
|
||||
<method href="#getUserSecretQA"/>
|
||||
<method href="#updateUserSecretQA"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<method name="GET" id="getUserSecretQA">
|
||||
<doc xml:lang="EN" title="Get User SecretQA">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Gets a User secret Question and Answer.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="PUT" id="updateUserSecretQA">
|
||||
<doc xml:lang="EN" title="Update User SecretQA">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Updates a User secret Question and Answer.</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200">
|
||||
<representation mediaType="application/xml" element="RAX-KSQA:secretQA">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc xml:lang="EN">
|
||||
<xsdxt:code href="../common/samples/RAX-KSQA-secretQA.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&postPutFaults;
|
||||
</method>
|
||||
</application>
|
1
openstack-identity-api/src/docbkx/admin/extensions.json
Normal file
1
openstack-identity-api/src/docbkx/admin/extensions.json
Normal file
@ -0,0 +1 @@
|
||||
{ "extensions" : { "values" : []}}
|
5
openstack-identity-api/src/docbkx/admin/extensions.xml
Normal file
5
openstack-identity-api/src/docbkx/admin/extensions.xml
Normal file
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<extensions xmlns="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:atom="http://www.w3.org/2005/Atom">
|
||||
</extensions>
|
508
openstack-identity-api/src/docbkx/admin/identity-admin.wadl
Normal file
508
openstack-identity-api/src/docbkx/admin/identity-admin.wadl
Normal file
@ -0,0 +1,508 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent identity-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "../common/common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<method href="#getVersionInfo"/>
|
||||
|
||||
<resource id="extensions" path="extensions">
|
||||
<method href="#listExtensions"/>
|
||||
|
||||
<resource id="extension" path="{alias}">
|
||||
<param name="alias" style="template" type="xsd:string"/>
|
||||
<method href="#getExtension"/>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tokens" path="tokens">
|
||||
<method href="#authenticate"/>
|
||||
<resource id="tokenById" path="{tokenId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<param name="tokenId" style="template" type="xsd:string" required="true"/>
|
||||
<param name="belongsTo" style="query" type="xsd:string" required="false"/>
|
||||
<method href="#validateToken"/>
|
||||
<method href="#checkToken"/>
|
||||
<resource id="endpointsForToken" path="endpoints">
|
||||
<method href="#listEndpointsForToken"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="users" path="users">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<method href="#getUserByName"/>
|
||||
<resource id="userid" path="{user_id}">
|
||||
<param name="user_id" style="template" type="xsd:string" required="true"/>
|
||||
<method href="#getUserById"/>
|
||||
|
||||
<resource id="userRoles" path="roles">
|
||||
<method href="#listUserGlobalRoles"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
You need a valid admin token for access.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<method href="#listTenants"/>
|
||||
<method href="#getTenantByName"/>
|
||||
<resource id="tenantById" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string" required="true"/>
|
||||
<method href="#getTenantById"/>
|
||||
|
||||
<resource id="usersForTenant" path="users">
|
||||
<resource id="getTenantUser" path="{user_id}">
|
||||
<param name="user_id" style="template" type="xsd:string" required="true"/>
|
||||
|
||||
<resource id="userRolesForTenant" path="roles">
|
||||
<method href="#listRolesForUserOnTenant"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- Resource Types -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<resource_type id="VersionDetails">
|
||||
<method href="#getVersionInfo"/>
|
||||
</resource_type>
|
||||
|
||||
<resource_type id="ExtensionList">
|
||||
<doc xml:lang="EN" title="Extension List">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
A list of supported extensions.
|
||||
</p>
|
||||
</doc>
|
||||
<method href="#listExtensions"/>
|
||||
</resource_type>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Version -->
|
||||
|
||||
<method name="GET" id="getVersionInfo">
|
||||
<doc xml:lang="EN" title="Version Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about this specific version of the API.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:version">
|
||||
<param name="location" style="plain" type="xsd:anyURI" required="true" path="/capi:version/atom:link[@rel='self']/@href">
|
||||
<link resource_type="#VersionDetails" rel="self"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Extensions -->
|
||||
|
||||
<method name="GET" id="listExtensions">
|
||||
<doc xml:lang="EN" title="List Extensions">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Lists supported extensions.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extensions">
|
||||
<param name="next" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='next']/@href">
|
||||
<link resource_type="#ExtensionList" rel="next"/>
|
||||
</param>
|
||||
<param name="previous" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='previous']/@href">
|
||||
<link resource_type="#ExtensionList" rel="previous"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
</method>
|
||||
<method name="GET" id="getExtension">
|
||||
<doc xml:lang="EN" title="Get Extension Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Gets details about a specific extension.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extension"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Token Operations -->
|
||||
|
||||
<method name="POST" id="authenticate">
|
||||
<doc xml:lang="EN" title="Authenticate for Service API">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Authenticate to generate a token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
This call will return a token if successful. Each ReST request against other services (or other
|
||||
calls on Keystone such as the GET /tenants call)
|
||||
requires the inclusion of a specific authorization token HTTP x-header, defined as X-Auth-Token.
|
||||
Clients obtain
|
||||
this token, along with the URL to other service APIs, by first authenticating against the
|
||||
Keystone Service and supplying valid credentials.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Client authentication is provided via a ReST interface using the POST method,
|
||||
with v2.0/tokens supplied as the path. A payload of credentials must be included
|
||||
in the body.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
The Keystone Service is a ReSTful web service. It is the entry point to all service APIs.
|
||||
To access the Keystone Service, you must know URL of the Keystone service.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:auth">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/auth_credentials.xml"/>
|
||||
<xsdxt:code href="../common/samples/auth_with_token.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/auth_credentials.json"/>
|
||||
<xsdxt:code href="../common/samples/auth_with_token.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/auth.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/auth.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
<response status="403">
|
||||
<representation mediaType="application/xml" element="identity:userDisabled"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="validateToken">
|
||||
<doc xml:lang="EN" title="Validate Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a supplied tenant
|
||||
and return the permissions relevant to a particular client.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="HEAD" id="checkToken">
|
||||
<doc xml:lang="EN" title="Check Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a particular tenant
|
||||
(For performance).
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope. (for performance).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If `belongsTo` is provided, validates that a token has a specific tenant in scope.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
No response body is returned for this method.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Operations-->
|
||||
<method name="GET" id="getUserByName">
|
||||
<doc xml:lang="EN" title="Get a User by Name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about a specific user, by user name.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getUserById">
|
||||
<doc xml:lang="EN" title="Get a User by ID">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about a specific user, by user id.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="listUserGlobalRoles">
|
||||
<doc xml:lang="EN" title="List User Global Roles">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns global roles for a specific user (excludes tenant roles).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Returns a list of global roles associated with a specific
|
||||
user (excludes tenant roles).</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Tenant Operations -->
|
||||
|
||||
<method name="GET" id="listTenants">
|
||||
<doc xml:lang="EN" title="Get Tenants">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Get a list of tenants.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
The operation returns a list of tenants which the supplied token provides
|
||||
access to. This call must be authenticated, so a valid token must
|
||||
be passed in as a header.
|
||||
</p>
|
||||
<xsdxt:samples>
|
||||
<xsdxt:sample xmlns="http://docs.rackspace.com/api" title="Tenants Request with Auth Token">
|
||||
<xsdxt:code href="../common/samples/tenants-request.txt" language="text"/>
|
||||
</xsdxt:sample>
|
||||
</xsdxt:samples>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenants">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenants.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenants.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getTenantByName">
|
||||
<doc xml:lang="EN" title="Get tenants by name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns detailed information about a tenant, by name.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getTenantById">
|
||||
<doc xml:lang="EN" title="Get Tenants by ID">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns detailed information about a tenant, by id.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="listEndpointsForToken">
|
||||
<doc xml:lang="EN" title="List Endoints for a Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns a list of endpoints associated with a specific token.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoints">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/endpoints.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/endpoints.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listRolesForUserOnTenant">
|
||||
<doc xml:lang="EN" title="List Roles for User on Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns roles for a specific user on a specific tenant (excludes global roles).
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="../common/samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
38
openstack-identity-api/src/docbkx/admin/version.json.tpl
Normal file
38
openstack-identity-api/src/docbkx/admin/version.json.tpl
Normal file
@ -0,0 +1,38 @@
|
||||
{
|
||||
"version" : {
|
||||
"id" : "v{{API_VERSION}}",
|
||||
"status" : "{{API_VERSION_STATUS}}",
|
||||
"updated" : "{{API_VERSION_DATE}}",
|
||||
"links": [
|
||||
{
|
||||
"rel" : "self",
|
||||
"href" : "http://{{HOST}}:{{PORT}}/v{{API_VERSION}}/"
|
||||
},
|
||||
{
|
||||
"rel" : "describedby",
|
||||
"type" : "text/html",
|
||||
"href" : "http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/content/"
|
||||
},
|
||||
{
|
||||
"rel" : "describedby",
|
||||
"type" : "application/pdf",
|
||||
"href" : "http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/identity-dev-guide-{{API_VERSION}}.pdf"
|
||||
},
|
||||
{
|
||||
"rel" : "describedby",
|
||||
"type" : "application/vnd.sun.wadl+xml",
|
||||
"href" : "http://{{HOST}}:{{PORT}}/v2.0/identity-admin.wadl"
|
||||
}
|
||||
],
|
||||
"media-types": [
|
||||
{
|
||||
"base" : "application/xml",
|
||||
"type" : "application/vnd.openstack.identity-v{{API_VERSION}}+xml"
|
||||
},
|
||||
{
|
||||
"base" : "application/json",
|
||||
"type" : "application/vnd.openstack.identity-v{{API_VERSION}}+json"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
27
openstack-identity-api/src/docbkx/admin/version.xml.tpl
Normal file
27
openstack-identity-api/src/docbkx/admin/version.xml.tpl
Normal file
@ -0,0 +1,27 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<version xmlns="http://docs.openstack.org/common/api/v2.0"
|
||||
xmlns:atom="http://www.w3.org/2005/Atom"
|
||||
id="v{{API_VERSION}}" status="{{API_VERSION_STATUS}}" updated="{{API_VERSION_DATE}}">
|
||||
|
||||
<media-types>
|
||||
<media-type base="application/xml"
|
||||
type="application/vnd.openstack.identity-v{{API_VERSION}}+xml"/>
|
||||
<media-type base="application/json"
|
||||
type="application/vnd.openstack.identity-v{{API_VERSION}}+json"/>
|
||||
</media-types>
|
||||
|
||||
<atom:link rel="self"
|
||||
href="http://{{HOST}}:{{PORT}}/v{{API_VERSION}}/"/>
|
||||
|
||||
<atom:link rel="describedby"
|
||||
type="text/html"
|
||||
href="http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/content/" />
|
||||
|
||||
<atom:link rel="describedby"
|
||||
type="application/pdf"
|
||||
href="http://docs.openstack.org/api/openstack-identity-service/{{API_VERSION}}/identity-dev-guide-{{API_VERSION}}.pdf" />
|
||||
|
||||
<atom:link rel="describedby"
|
||||
type="application/vnd.sun.wadl+xml"
|
||||
href="http://{{HOST}}:{{PORT}}/v2.0/identity-admin.wadl" />
|
||||
</version>
|
@ -0,0 +1,18 @@
|
||||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<section
|
||||
xmlns="http://docbook.org/ns/docbook"
|
||||
xml:id="Service_API_Client_Operations"
|
||||
version="5.0">
|
||||
<title>Service API (Client Operations)</title>
|
||||
<para>The operations described in this chapter allow clients tokens
|
||||
authenticate and get access tokens and service endpoints. The following
|
||||
calls are core Keystone Service APIs in version 2.0:</para>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="../admin/identity-admin.wadl#tokens" >
|
||||
<wadl:method href="authenticate"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="../admin/identity-admin.wadl#tenants" >
|
||||
<wadl:method href="listTenants"/>
|
||||
</wadl:resource>
|
||||
</wadl:resources>
|
||||
</section>
|
56
openstack-identity-api/src/docbkx/common/common.ent
Normal file
56
openstack-identity-api/src/docbkx/common/common.ent
Normal file
@ -0,0 +1,56 @@
|
||||
|
||||
<!--
|
||||
A collection of common faults, these are pretty much expected
|
||||
in every request.
|
||||
-->
|
||||
<!ENTITY commonFaults
|
||||
'
|
||||
<response xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:identityFault"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="400" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:badRequest"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="401" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:unauthorized"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="403" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:forbidden"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="405" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:badMethod"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="413" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:overLimit"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="503" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:serviceUnavailable"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
'>
|
||||
<!--
|
||||
Faults on GET
|
||||
-->
|
||||
<!ENTITY getFaults
|
||||
'
|
||||
<response status="404" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:itemNotFound"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
'>
|
||||
<!--
|
||||
Faults on POST/PUT
|
||||
-->
|
||||
<!ENTITY postPutFaults
|
||||
'
|
||||
<response status="415" xmlns="http://wadl.dev.java.net/2009/02">
|
||||
<representation mediaType="application/xml" element="identity:badMediaType"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
'>
|
@ -26,30 +26,30 @@
|
||||
<section xml:id="User_Operations_OS-KSADM">
|
||||
<title>User Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#users">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#users">
|
||||
<wadl:method href="listUsers"/>
|
||||
<wadl:method href="addUser"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userById">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userById">
|
||||
<wadl:method href="updateUser"/>
|
||||
<wadl:method href="deleteUser"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#user-OS-KSADM">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#user-OS-KSADM">
|
||||
<wadl:method href="setUserEnabled"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userRoles">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userRoles">
|
||||
<wadl:method href="listUserRoles"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userRoleById">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userRoleById">
|
||||
<wadl:method href="addUserRole"/>
|
||||
<wadl:method href="getUserRole"/>
|
||||
<wadl:method href="deleteUserRole"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userCredentials">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userCredentials">
|
||||
<wadl:method href="addUserCredential"/>
|
||||
<wadl:method href="listCredentials"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userCredentialsByType">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userCredentialsByType">
|
||||
<wadl:method href="listCredentialsByType"/>
|
||||
<wadl:method href="updateUserCredential"/>
|
||||
<wadl:method href="deleteUserCredential"/>
|
||||
@ -61,21 +61,21 @@
|
||||
<section xml:id="Tenant_Operations_OS-KSADM">
|
||||
<title>Tenant Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#tenants">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tenants">
|
||||
<wadl:method href="addTenant"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#tenantById">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tenantById">
|
||||
<wadl:method href="updateTenant"/>
|
||||
<wadl:method href="deleteTenant"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#usersForTenant">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#usersForTenant">
|
||||
<wadl:method href="listUsersForTenant"/>
|
||||
<wadl:method href="listUsersWithRoleForTenant"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#rolesForTenant">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#rolesForTenant">
|
||||
<wadl:method href="listRolesForTenant"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#userSpecificRoleForTenant">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userSpecificRoleForTenant">
|
||||
<wadl:method href="addRolesToUserOnTenant"/>
|
||||
<wadl:method href="deleteRoleFromUserOnTenant"/>
|
||||
</wadl:resource>
|
||||
@ -85,11 +85,11 @@
|
||||
<section xml:id="Role_Operations_OS-KSADM">
|
||||
<title>Role Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#roles">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#roles">
|
||||
<wadl:method href="listRoles"/>
|
||||
<wadl:method href="addRole"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#roleId">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#roleId">
|
||||
<wadl:method href="getRole"/>
|
||||
<wadl:method href="deleteRole"/>
|
||||
</wadl:resource>
|
||||
@ -99,11 +99,11 @@
|
||||
<section xml:id="Service_Operations_OS-KSADM">
|
||||
<title>Service Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#services">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#services">
|
||||
<wadl:method href="listServices"/>
|
||||
<wadl:method href="addService"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSADM-admin.wadl#serviceId">
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#serviceId">
|
||||
<wadl:method href="getService"/>
|
||||
<wadl:method href="deleteService"/>
|
||||
</wadl:resource>
|
@ -26,11 +26,11 @@
|
||||
<section xml:id="Endpoint_Template_Operations_OS-KSCATALOG">
|
||||
<title>Endpoint Template Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSCATALOG-admin.wadl#endpointTemplates">
|
||||
<wadl:resource href="../admin/OS-KSCATALOG-admin.wadl#endpointTemplates">
|
||||
<wadl:method href="listEndpointTemplates"/>
|
||||
<wadl:method href="addEndpointTemplate"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSCATALOG-admin.wadl#endpointTemplateId">
|
||||
<wadl:resource href="../admin/OS-KSCATALOG-admin.wadl#endpointTemplateId">
|
||||
<wadl:method href="getEndpointTemplate"/>
|
||||
<wadl:method href="deleteEndpointTemplate"/>
|
||||
</wadl:resource>
|
||||
@ -41,11 +41,11 @@
|
||||
<section xml:id="Tenant_Operations_OS-KSCATALOG">
|
||||
<title>Endpoint Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="OS-KSCATALOG-admin.wadl#endpoints">
|
||||
<wadl:resource href="../admin/OS-KSCATALOG-admin.wadl#endpoints">
|
||||
<wadl:method href="listEndpoints"/>
|
||||
<wadl:method href="addEndpoint"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="OS-KSCATALOG-admin.wadl#endpoint">
|
||||
<wadl:resource href="../admin/OS-KSCATALOG-admin.wadl#endpoint">
|
||||
<wadl:method href="getEndpoint"/>
|
||||
<wadl:method href="deleteEndpoint"/>
|
||||
</wadl:resource>
|
508
openstack-identity-api/src/docbkx/common/identity-admin.wadl
Normal file
508
openstack-identity-api/src/docbkx/common/identity-admin.wadl
Normal file
@ -0,0 +1,508 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent identity-admin.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:capi="http://docs.openstack.oapi/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:xsdxt="http://docs.rackspacecloud.com/xsd-ext/v1.0"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 xsd/api.xsd
|
||||
http://docs.openstack.oapi/v1.0 xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="xsd/api.xsd"/>
|
||||
<include href="xsd/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:35357">
|
||||
<resource id="version" path="v2.0">
|
||||
<method href="#getVersionInfo"/>
|
||||
|
||||
<resource id="extensions" path="extensions">
|
||||
<method href="#listExtensions"/>
|
||||
|
||||
<resource id="extension" path="{alias}">
|
||||
<param name="alias" style="template" type="xsd:string"/>
|
||||
<method href="#getExtension"/>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tokens" path="tokens">
|
||||
<method href="#authenticate"/>
|
||||
<resource id="tokenById" path="{tokenId}">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<param name="tokenId" style="template" type="xsd:string" required="true"/>
|
||||
<param name="belongsTo" style="query" type="xsd:string" required="false"/>
|
||||
<method href="#validateToken"/>
|
||||
<method href="#checkToken"/>
|
||||
<resource id="endpointsForToken" path="endpoints">
|
||||
<method href="#listEndpointsForToken"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="users" path="users">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>You need a valid admin token for access.</doc>
|
||||
</param>
|
||||
<method href="#getUserByName"/>
|
||||
<resource id="userid" path="{user_id}">
|
||||
<param name="user_id" style="template" type="xsd:string" required="true"/>
|
||||
<method href="#getUserById"/>
|
||||
|
||||
<resource id="userRoles" path="roles">
|
||||
<method href="#listUserGlobalRoles"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
|
||||
<resource id="tenants" path="tenants">
|
||||
<param name="X-Auth-Token" style="header" type="xsd:string" required="true">
|
||||
<doc>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
You need a valid admin token for access.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
<method href="#listTenants"/>
|
||||
<method href="#getTenantByName"/>
|
||||
<resource id="tenantById" path="{tenantId}">
|
||||
<param name="tenantId" style="template" type="xsd:string" required="true"/>
|
||||
<method href="#getTenantById"/>
|
||||
|
||||
<resource id="usersForTenant" path="users">
|
||||
<resource id="getTenantUser" path="{user_id}">
|
||||
<param name="user_id" style="template" type="xsd:string" required="true"/>
|
||||
|
||||
<resource id="userRolesForTenant" path="roles">
|
||||
<method href="#listRolesForUserOnTenant"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- Resource Types -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<resource_type id="VersionDetails">
|
||||
<method href="#getVersionInfo"/>
|
||||
</resource_type>
|
||||
|
||||
<resource_type id="ExtensionList">
|
||||
<doc xml:lang="EN" title="Extension List">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
A list of supported extensions.
|
||||
</p>
|
||||
</doc>
|
||||
<method href="#listExtensions"/>
|
||||
</resource_type>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Version -->
|
||||
|
||||
<method name="GET" id="getVersionInfo">
|
||||
<doc xml:lang="EN" title="Version Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about this specific version of the API.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:version">
|
||||
<param name="location" style="plain" type="xsd:anyURI" required="true" path="/capi:version/atom:link[@rel='self']/@href">
|
||||
<link resource_type="#VersionDetails" rel="self"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Extensions -->
|
||||
|
||||
<method name="GET" id="listExtensions">
|
||||
<doc xml:lang="EN" title="List Extensions">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Lists supported extensions.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extensions">
|
||||
<param name="next" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='next']/@href">
|
||||
<link resource_type="#ExtensionList" rel="next"/>
|
||||
</param>
|
||||
<param name="previous" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='previous']/@href">
|
||||
<link resource_type="#ExtensionList" rel="previous"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
</method>
|
||||
<method name="GET" id="getExtension">
|
||||
<doc xml:lang="EN" title="Get Extension Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Gets details about a specific extension.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extension"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Token Operations -->
|
||||
|
||||
<method name="POST" id="authenticate">
|
||||
<doc xml:lang="EN" title="Authenticate for Service API">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Authenticate to generate a token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
This call will return a token if successful. Each ReST request against other services (or other
|
||||
calls on Keystone such as the GET /tenants call)
|
||||
requires the inclusion of a specific authorization token HTTP x-header, defined as X-Auth-Token.
|
||||
Clients obtain
|
||||
this token, along with the URL to other service APIs, by first authenticating against the
|
||||
Keystone Service and supplying valid credentials.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Client authentication is provided via a ReST interface using the POST method,
|
||||
with v2.0/tokens supplied as the path. A payload of credentials must be included
|
||||
in the body.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
The Keystone Service is a ReSTful web service. It is the entry point to all service APIs.
|
||||
To access the Keystone Service, you must know URL of the Keystone service.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:auth">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/auth_credentials.xml"/>
|
||||
<xsdxt:code href="samples/auth_with_token.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/auth_credentials.json"/>
|
||||
<xsdxt:code href="samples/auth_with_token.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/auth.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/auth.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
<response status="403">
|
||||
<representation mediaType="application/xml" element="identity:userDisabled"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="validateToken">
|
||||
<doc xml:lang="EN" title="Validate Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a supplied tenant
|
||||
and return the permissions relevant to a particular client.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/validatetoken.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/validatetoken.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="HEAD" id="checkToken">
|
||||
<doc xml:lang="EN" title="Check Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Check that a token is valid and that it belongs to a particular tenant
|
||||
(For performance).
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="belongsTo" style="query" required="false" type="xsd:string">
|
||||
<doc xml:lang="EN">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Validates a token has the supplied tenant in scope. (for performance).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Valid tokens will exist in the
|
||||
<code>/tokens/{tokenId}</code> path and invalid
|
||||
tokens will not. In other words, a user should expect an
|
||||
itemNotFound (<code>404</code>) fault for an
|
||||
invalid token.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
If `belongsTo` is provided, validates that a token has a specific tenant in scope.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
No response body is returned for this method.
|
||||
</p>
|
||||
</doc>
|
||||
</param>
|
||||
</request>
|
||||
<response status="200 203"/>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!--User Operations-->
|
||||
<method name="GET" id="getUserByName">
|
||||
<doc xml:lang="EN" title="Get a User by Name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about a specific user, by user name.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getUserById">
|
||||
<doc xml:lang="EN" title="Get a User by ID">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about a specific user, by user id.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:user">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/user.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/user.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="listUserGlobalRoles">
|
||||
<doc xml:lang="EN" title="List User Global Roles">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns global roles for a specific user (excludes tenant roles).
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Returns a list of global roles associated with a specific
|
||||
user (excludes tenant roles).</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Tenant Operations -->
|
||||
|
||||
<method name="GET" id="listTenants">
|
||||
<doc xml:lang="EN" title="Get Tenants">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Get a list of tenants.
|
||||
</p>
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
The operation returns a list of tenants which the supplied token provides
|
||||
access to. This call must be authenticated, so a valid token must
|
||||
be passed in as a header.
|
||||
</p>
|
||||
<xsdxt:samples>
|
||||
<xsdxt:sample xmlns="http://docs.rackspace.com/api" title="Tenants Request with Auth Token">
|
||||
<xsdxt:code href="samples/tenants-request.txt" language="text"/>
|
||||
</xsdxt:sample>
|
||||
</xsdxt:samples>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenants">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenants.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenants.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getTenantByName">
|
||||
<doc xml:lang="EN" title="Get tenants by name">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns detailed information about a tenant, by name.
|
||||
</p>
|
||||
</doc>
|
||||
<request>
|
||||
<param name="name" style="query" type="xsd:string" required="true"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getTenantById">
|
||||
<doc xml:lang="EN" title="Get Tenants by ID">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml" class="shortdesc">
|
||||
Returns detailed information about a tenant, by id.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenant">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenant.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/tenant.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="listEndpointsForToken">
|
||||
<doc xml:lang="EN" title="List Endoints for a Token">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns a list of endpoints associated with a specific token.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:endpoints">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/endpoints.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/endpoints.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<method name="GET" id="listRolesForUserOnTenant">
|
||||
<doc xml:lang="EN" title="List Roles for User on Tenant">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns roles for a specific user on a specific tenant (excludes global roles).
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:roles">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/roles.xml"/>
|
||||
</doc>
|
||||
</representation>
|
||||
<representation mediaType="application/json">
|
||||
<doc>
|
||||
<xsdxt:code href="samples/roles.json"/>
|
||||
</doc>
|
||||
</representation>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
@ -40,7 +40,6 @@
|
||||
<xi:include href="identity-general-api-info.xml"/>
|
||||
<chapter xml:id="api_operations" role="api-reference">
|
||||
<title>API Operations</title>
|
||||
<xi:include href="identity-client-api.xml"/>
|
||||
<xi:include href="identity-service-api.xml"/>
|
||||
</chapter>
|
||||
</book>
|
@ -31,47 +31,47 @@
|
||||
</tbody>
|
||||
</table>
|
||||
<para>The following calls are core for the Keystone Admin 2.0 APIs:</para>
|
||||
<section xml:id="Token_Operations">
|
||||
<!-- <section xml:id="Token_Operations">
|
||||
<title>Token Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="identity-admin.wadl#tokens">
|
||||
<wadl:method href="authenticate"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tokens">
|
||||
<!-\- <wadl:method href="authenticate"/>-\->
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#tokenById">
|
||||
<wadl:method href="validateToken"/>
|
||||
<wadl:method href="checkToken"/>
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#endpointsForToken">
|
||||
<wadl:method href="listEndpointsForToken"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tokenById">
|
||||
<!-\- <wadl:method href="validateToken"/>
|
||||
<wadl:method href="checkToken"/>-\->
|
||||
</wadl:resource>
|
||||
<!-\- <wadl:resource href="../admin/OS-KSADM-admin.wadl#endpointsForToken">-\->
|
||||
<!-\- <wadl:method href="listEndpointsForToken"/>-\->
|
||||
<!-\- </wadl:resource>-\->
|
||||
</wadl:resources>
|
||||
</section>
|
||||
</section>-->
|
||||
<section xml:id="User_Operations">
|
||||
<title>User Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="identity-admin.wadl#users">
|
||||
<wadl:method href="getUserByName"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#users">
|
||||
<!-- <wadl:method href="getUserByName"/>-->
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#userid">
|
||||
<wadl:method href="getUserById"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userid">
|
||||
<!-- <wadl:method href="getUserById"/>-->
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#userRoles">
|
||||
<wadl:method href="listUserGlobalRoles"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userRoles">
|
||||
<!-- <wadl:method href="listUserGlobalRoles"/>-->
|
||||
</wadl:resource>
|
||||
</wadl:resources>
|
||||
</section>
|
||||
<section xml:id="Tenant_Operations">
|
||||
<title>Tenant Operations</title>
|
||||
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
|
||||
<wadl:resource href="identity-admin.wadl#tenants">
|
||||
<wadl:method href="listTenants"/>
|
||||
<wadl:method href="getTenantByName"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tenants">
|
||||
<!-- <wadl:method href="listTenants"/>
|
||||
<wadl:method href="getTenantByName"/>-->
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#tenantById">
|
||||
<wadl:method href="getTenantById"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#tenantById">
|
||||
<!-- <wadl:method href="getTenantById"/>-->
|
||||
</wadl:resource>
|
||||
<wadl:resource href="identity-admin.wadl#userRolesForTenant">
|
||||
<wadl:method href="listRolesForUserOnTenant"/>
|
||||
<wadl:resource href="../admin/OS-KSADM-admin.wadl#userRolesForTenant">
|
||||
<!-- <wadl:method href="listRolesForUserOnTenant"/>-->
|
||||
</wadl:resource>
|
||||
</wadl:resources>
|
||||
</section>
|
182
openstack-identity-api/src/docbkx/common/identity.wadl
Normal file
182
openstack-identity-api/src/docbkx/common/identity.wadl
Normal file
@ -0,0 +1,182 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- (C) 2011 OpenStack LLC., All Rights Reserved -->
|
||||
<!--*******************************************************-->
|
||||
<!-- Import Common XML Entities -->
|
||||
<!-- -->
|
||||
<!-- You can resolve the entites with xmllint -->
|
||||
<!-- -->
|
||||
<!-- xmllint -noent identity.wadl -->
|
||||
<!--*******************************************************-->
|
||||
<!DOCTYPE application [
|
||||
<!ENTITY % common SYSTEM "common.ent">
|
||||
%common;
|
||||
]>
|
||||
|
||||
<application xmlns="http://wadl.dev.java.net/2009/02"
|
||||
xmlns:identity="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns:capi="http://docs.openstack.org/common/api/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:html="http://www.w3.org/1999/xhtml"
|
||||
xmlns:wadl="http://wadl.dev.java.net/2009/02"
|
||||
xsi:schemaLocation="http://docs.openstack.org/identity/api/v2.0 ../common/xsd/api.xsd
|
||||
http://docs.openstack.org/common/api/v1.0 ../common/xsd/api-common.xsd
|
||||
http://wadl.dev.java.net/2009/02 http://www.w3.org/Submission/wadl/wadl.xsd
|
||||
">
|
||||
|
||||
<grammars>
|
||||
<include href="../common/xsd/api.xsd"/>
|
||||
<include href="../common/xsd/api-common.xsd"/>
|
||||
</grammars>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Resources -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- We should use SSL in production -->
|
||||
<resources base="http://localhost:5000">
|
||||
<resource id="version" type="#VersionDetails" path="v2.0/">
|
||||
<resource id="extensions" type="#ExtensionList" path="extensions">
|
||||
<resource id="extension" path="{alias}">
|
||||
<param name="alias" style="template" type="xsd:string"/>
|
||||
<method href="#getExtension"/>
|
||||
</resource>
|
||||
</resource>
|
||||
<resource id="tokens" path="tokens">
|
||||
<method href="#authenticate"/>
|
||||
</resource>
|
||||
<resource id="tenants" path="tenants">
|
||||
<method href="#listTenants"/>
|
||||
</resource>
|
||||
</resource>
|
||||
</resources>
|
||||
|
||||
<!--***************************************************-->
|
||||
<!-- Resource Types -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<resource_type id="VersionDetails">
|
||||
<method href="#getVersionInfo"/>
|
||||
</resource_type>
|
||||
<resource_type id="ExtensionList">
|
||||
<doc xml:lang="EN" title="Extension List">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
A list of supported extensions.
|
||||
</p>
|
||||
</doc>
|
||||
<method href="#listExtensions"/>
|
||||
</resource_type>
|
||||
|
||||
<!--*******************************************************-->
|
||||
<!-- All Methods -->
|
||||
<!--*******************************************************-->
|
||||
|
||||
<!-- Version -->
|
||||
|
||||
<method name="GET" id="getVersionInfo">
|
||||
<doc xml:lang="EN" title="Version Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">
|
||||
Returns detailed information about this specific version of the API.
|
||||
</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:version">
|
||||
<param name="location" style="plain" type="xsd:anyURI" required="true" path="/capi:version/atom:link[@rel='self']/@href">
|
||||
<link resource_type="#VersionDetails" rel="self"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Extensions -->
|
||||
|
||||
<method name="GET" id="listExtensions">
|
||||
<doc xml:lang="EN" title="List Extensions">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">List all available extensions.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extensions">
|
||||
<param name="next" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='next']/@href">
|
||||
<link resource_type="#ExtensionList" rel="next"/>
|
||||
</param>
|
||||
<param name="previous" style="plain" type="xsd:anyURI" path="/capi:extensions/atom:link[@rel='previous']/@href">
|
||||
<link resource_type="#ExtensionList" rel="previous"/>
|
||||
</param>
|
||||
</representation>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
<method name="GET" id="getExtension">
|
||||
<doc xml:lang="EN" title="Get Server Details">
|
||||
<p xmlns="http://www.w3.org/1999/xhtml">Get details about a specific extension.</p>
|
||||
</doc>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="capi:extension"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Token Operations -->
|
||||
<method name="POST" id="authenticate">
|
||||
<wadl:doc xml:lang="EN" title="Authenticate"
|
||||
xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Client authentication is provided via a ReST interface using the POST method,
|
||||
with v2.0/tokens supplied as the path. A payload of credentials must be included
|
||||
in the body. See <a href="xsd/credentials.xsd">supported credentials</a>
|
||||
</p>
|
||||
<p>
|
||||
Each ReST request against the Keystone system requires the inclusion of a
|
||||
specific authorization token HTTP x-header, defined as X-Auth-Token. Clients obtain
|
||||
this token, along with the URL to other service APIs, by first authenticating against the
|
||||
Keystone Service and supplying valid credentials.
|
||||
</p>
|
||||
<p>
|
||||
The Keystone Service is a ReSTful web service. It is the entry point to all service APIs.
|
||||
To access the Keystone Service, you must know URL of the Keystone service.
|
||||
</p>
|
||||
</wadl:doc>
|
||||
<request>
|
||||
<representation mediaType="application/xml" element="identity:auth"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:access"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
<response status="403">
|
||||
<representation mediaType="application/xml" element="identity:userDisabled"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
|
||||
<!-- Tenant Operations -->
|
||||
|
||||
<method name="GET" id="listTenants">
|
||||
<wadl:doc title="List Tenants" xml:lang="EN"
|
||||
xmlns="http://www.w3.org/1999/xhtml">
|
||||
<p>
|
||||
Returns a list of tenants.
|
||||
</p>
|
||||
</wadl:doc>
|
||||
<request>
|
||||
<param name="marker" style="query" required="false" type="xsd:string"/>
|
||||
<param name="limit" style="query" required="false" type="xsd:int"/>
|
||||
</request>
|
||||
<response status="200 203">
|
||||
<representation mediaType="application/xml" element="identity:tenants"/>
|
||||
<representation mediaType="application/json"/>
|
||||
</response>
|
||||
&commonFaults;
|
||||
&getFaults;
|
||||
</method>
|
||||
</application>
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
337
openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js
Normal file
337
openstack-identity-api/src/docbkx/common/js/shjs/sh_java.js
Normal file
@ -0,0 +1,337 @@
|
||||
if (! this.sh_languages) {
|
||||
this.sh_languages = {};
|
||||
}
|
||||
sh_languages['java'] = [
|
||||
[
|
||||
[
|
||||
/\b(?:import|package)\b/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\/\/\//g,
|
||||
'sh_comment',
|
||||
1
|
||||
],
|
||||
[
|
||||
/\/\//g,
|
||||
'sh_comment',
|
||||
7
|
||||
],
|
||||
[
|
||||
/\/\*\*/g,
|
||||
'sh_comment',
|
||||
8
|
||||
],
|
||||
[
|
||||
/\/\*/g,
|
||||
'sh_comment',
|
||||
9
|
||||
],
|
||||
[
|
||||
/\b[+-]?(?:(?:0x[A-Fa-f0-9]+)|(?:(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?))u?(?:(?:int(?:8|16|32|64))|L)?\b/g,
|
||||
'sh_number',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
10
|
||||
],
|
||||
[
|
||||
/'/g,
|
||||
'sh_string',
|
||||
11
|
||||
],
|
||||
[
|
||||
/(\b(?:class|interface))([ \t]+)([$A-Za-z0-9_]+)/g,
|
||||
['sh_keyword', 'sh_normal', 'sh_classname'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\b(?:abstract|assert|break|case|catch|class|const|continue|default|do|else|extends|false|final|finally|for|goto|if|implements|instanceof|interface|native|new|null|private|protected|public|return|static|strictfp|super|switch|synchronized|throw|throws|true|this|transient|try|volatile|while)\b/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\b(?:int|byte|boolean|char|long|float|double|short|void)\b/g,
|
||||
'sh_type',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g,
|
||||
'sh_symbol',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\{|\}/g,
|
||||
'sh_cbracket',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:[A-Za-z]|_)[A-Za-z0-9_]*(?=[ \t]*\()/g,
|
||||
'sh_function',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/([A-Za-z](?:[^`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\s]|[_])*)((?:<.*>)?)(\s+(?=[*&]*[A-Za-z][^`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\s]*\s*[`~!@#$%&*()_=+{}|;:",<.>\/?'\\[\]\^\-\[\]]+))/g,
|
||||
['sh_usertype', 'sh_usertype', 'sh_normal'],
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/$/g,
|
||||
null,
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<\?xml/g,
|
||||
'sh_preproc',
|
||||
2,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!DOCTYPE/g,
|
||||
'sh_preproc',
|
||||
4,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/&(?:[A-Za-z0-9]+);/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/@[A-Za-z]+/g,
|
||||
'sh_type',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\?>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\\(?:\\|")/g,
|
||||
null,
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
-2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/-->/g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/$/g,
|
||||
null,
|
||||
-2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\*\//g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<\?xml/g,
|
||||
'sh_preproc',
|
||||
2,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!DOCTYPE/g,
|
||||
'sh_preproc',
|
||||
4,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/&(?:[A-Za-z0-9]+);/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/@[A-Za-z]+/g,
|
||||
'sh_type',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\*\//g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/\\./g,
|
||||
'sh_specialchar',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/'/g,
|
||||
'sh_string',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/\\./g,
|
||||
'sh_specialchar',
|
||||
-1
|
||||
]
|
||||
]
|
||||
];
|
@ -0,0 +1,347 @@
|
||||
if (! this.sh_languages) {
|
||||
this.sh_languages = {};
|
||||
}
|
||||
sh_languages['javascript'] = [
|
||||
[
|
||||
[
|
||||
/\/\/\//g,
|
||||
'sh_comment',
|
||||
1
|
||||
],
|
||||
[
|
||||
/\/\//g,
|
||||
'sh_comment',
|
||||
7
|
||||
],
|
||||
[
|
||||
/\/\*\*/g,
|
||||
'sh_comment',
|
||||
8
|
||||
],
|
||||
[
|
||||
/\/\*/g,
|
||||
'sh_comment',
|
||||
9
|
||||
],
|
||||
[
|
||||
/\b(?:abstract|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|final|finally|for|function|goto|if|implements|in|instanceof|interface|native|new|null|private|protected|prototype|public|return|static|super|switch|synchronized|throw|throws|this|transient|true|try|typeof|var|volatile|while|with)\b/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(\+\+|--|\)|\])(\s*)(\/=?(?![*\/]))/g,
|
||||
['sh_symbol', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(0x[A-Fa-f0-9]+|(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?)(\s*)(\/(?![*\/]))/g,
|
||||
['sh_number', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/([A-Za-z$_][A-Za-z0-9$_]*\s*)(\/=?(?![*\/]))/g,
|
||||
['sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\/(?:\\.|[^*\\\/])(?:\\.|[^\\\/])*\/[gim]*/g,
|
||||
'sh_regexp',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\b[+-]?(?:(?:0x[A-Fa-f0-9]+)|(?:(?:[\d]*\.)?[\d]+(?:[eE][+-]?[\d]+)?))u?(?:(?:int(?:8|16|32|64))|L)?\b/g,
|
||||
'sh_number',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
10
|
||||
],
|
||||
[
|
||||
/'/g,
|
||||
'sh_string',
|
||||
11
|
||||
],
|
||||
[
|
||||
/~|!|%|\^|\*|\(|\)|-|\+|=|\[|\]|\\|:|;|,|\.|\/|\?|&|<|>|\|/g,
|
||||
'sh_symbol',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\{|\}/g,
|
||||
'sh_cbracket',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\b(?:Math|Infinity|NaN|undefined|arguments)\b/g,
|
||||
'sh_predef_var',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/\b(?:Array|Boolean|Date|Error|EvalError|Function|Number|Object|RangeError|ReferenceError|RegExp|String|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt)\b/g,
|
||||
'sh_predef_func',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:[A-Za-z]|_)[A-Za-z0-9_]*(?=[ \t]*\()/g,
|
||||
'sh_function',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/$/g,
|
||||
null,
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<\?xml/g,
|
||||
'sh_preproc',
|
||||
2,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!DOCTYPE/g,
|
||||
'sh_preproc',
|
||||
4,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/&(?:[A-Za-z0-9]+);/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/@[A-Za-z]+/g,
|
||||
'sh_type',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\?>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\\(?:\\|")/g,
|
||||
null,
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
-2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/-->/g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
3
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/$/g,
|
||||
null,
|
||||
-2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\*\//g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<\?xml/g,
|
||||
'sh_preproc',
|
||||
2,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!DOCTYPE/g,
|
||||
'sh_preproc',
|
||||
4,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
5
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/&(?:[A-Za-z0-9]+);/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z][A-Za-z0-9]*/g,
|
||||
'sh_keyword',
|
||||
6,
|
||||
1
|
||||
],
|
||||
[
|
||||
/@[A-Za-z]+/g,
|
||||
'sh_type',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\*\//g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/(?:<?)[A-Za-z0-9_\.\/\-_~]+@[A-Za-z0-9_\.\/\-_~]+(?:>?)|(?:<?)[A-Za-z0-9_]+:\/\/[A-Za-z0-9_\.\/\-_~]+(?:>?)/g,
|
||||
'sh_url',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/(?:TODO|FIXME|BUG)(?:[:]?)/g,
|
||||
'sh_todo',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/\\./g,
|
||||
'sh_specialchar',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/'/g,
|
||||
'sh_string',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/\\./g,
|
||||
'sh_specialchar',
|
||||
-1
|
||||
]
|
||||
]
|
||||
];
|
538
openstack-identity-api/src/docbkx/common/js/shjs/sh_main.js
Normal file
538
openstack-identity-api/src/docbkx/common/js/shjs/sh_main.js
Normal file
@ -0,0 +1,538 @@
|
||||
/*
|
||||
SHJS - Syntax Highlighting in JavaScript
|
||||
Copyright (C) 2007, 2008 gnombat@users.sourceforge.net
|
||||
License: http://shjs.sourceforge.net/doc/gplv3.html
|
||||
*/
|
||||
|
||||
if (! this.sh_languages) {
|
||||
this.sh_languages = {};
|
||||
}
|
||||
var sh_requests = {};
|
||||
|
||||
function sh_isEmailAddress(url) {
|
||||
if (/^mailto:/.test(url)) {
|
||||
return false;
|
||||
}
|
||||
return url.indexOf('@') !== -1;
|
||||
}
|
||||
|
||||
function sh_setHref(tags, numTags, inputString) {
|
||||
var url = inputString.substring(tags[numTags - 2].pos, tags[numTags - 1].pos);
|
||||
if (url.length >= 2 && url.charAt(0) === '<' && url.charAt(url.length - 1) === '>') {
|
||||
url = url.substr(1, url.length - 2);
|
||||
}
|
||||
if (sh_isEmailAddress(url)) {
|
||||
url = 'mailto:' + url;
|
||||
}
|
||||
tags[numTags - 2].node.href = url;
|
||||
}
|
||||
|
||||
/*
|
||||
Konqueror has a bug where the regular expression /$/g will not match at the end
|
||||
of a line more than once:
|
||||
|
||||
var regex = /$/g;
|
||||
var match;
|
||||
|
||||
var line = '1234567890';
|
||||
regex.lastIndex = 10;
|
||||
match = regex.exec(line);
|
||||
|
||||
var line2 = 'abcde';
|
||||
regex.lastIndex = 5;
|
||||
match = regex.exec(line2); // fails
|
||||
*/
|
||||
function sh_konquerorExec(s) {
|
||||
var result = [''];
|
||||
result.index = s.length;
|
||||
result.input = s;
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
Highlights all elements containing source code in a text string. The return
|
||||
value is an array of objects, each representing an HTML start or end tag. Each
|
||||
object has a property named pos, which is an integer representing the text
|
||||
offset of the tag. Every start tag also has a property named node, which is the
|
||||
DOM element started by the tag. End tags do not have this property.
|
||||
@param inputString a text string
|
||||
@param language a language definition object
|
||||
@return an array of tag objects
|
||||
*/
|
||||
function sh_highlightString(inputString, language) {
|
||||
if (/Konqueror/.test(navigator.userAgent)) {
|
||||
if (! language.konquered) {
|
||||
for (var s = 0; s < language.length; s++) {
|
||||
for (var p = 0; p < language[s].length; p++) {
|
||||
var r = language[s][p][0];
|
||||
if (r.source === '$') {
|
||||
r.exec = sh_konquerorExec;
|
||||
}
|
||||
}
|
||||
}
|
||||
language.konquered = true;
|
||||
}
|
||||
}
|
||||
|
||||
var a = document.createElement('a');
|
||||
var span = document.createElement('span');
|
||||
|
||||
// the result
|
||||
var tags = [];
|
||||
var numTags = 0;
|
||||
|
||||
// each element is a pattern object from language
|
||||
var patternStack = [];
|
||||
|
||||
// the current position within inputString
|
||||
var pos = 0;
|
||||
|
||||
// the name of the current style, or null if there is no current style
|
||||
var currentStyle = null;
|
||||
|
||||
var output = function(s, style) {
|
||||
var length = s.length;
|
||||
// this is more than just an optimization - we don't want to output empty <span></span> elements
|
||||
if (length === 0) {
|
||||
return;
|
||||
}
|
||||
if (! style) {
|
||||
var stackLength = patternStack.length;
|
||||
if (stackLength !== 0) {
|
||||
var pattern = patternStack[stackLength - 1];
|
||||
// check whether this is a state or an environment
|
||||
if (! pattern[3]) {
|
||||
// it's not a state - it's an environment; use the style for this environment
|
||||
style = pattern[1];
|
||||
}
|
||||
}
|
||||
}
|
||||
if (currentStyle !== style) {
|
||||
if (currentStyle) {
|
||||
tags[numTags++] = {pos: pos};
|
||||
if (currentStyle === 'sh_url') {
|
||||
sh_setHref(tags, numTags, inputString);
|
||||
}
|
||||
}
|
||||
if (style) {
|
||||
var clone;
|
||||
if (style === 'sh_url') {
|
||||
clone = a.cloneNode(false);
|
||||
}
|
||||
else {
|
||||
clone = span.cloneNode(false);
|
||||
}
|
||||
clone.className = style;
|
||||
tags[numTags++] = {node: clone, pos: pos};
|
||||
}
|
||||
}
|
||||
pos += length;
|
||||
currentStyle = style;
|
||||
};
|
||||
|
||||
var endOfLinePattern = /\r\n|\r|\n/g;
|
||||
endOfLinePattern.lastIndex = 0;
|
||||
var inputStringLength = inputString.length;
|
||||
while (pos < inputStringLength) {
|
||||
var start = pos;
|
||||
var end;
|
||||
var startOfNextLine;
|
||||
var endOfLineMatch = endOfLinePattern.exec(inputString);
|
||||
if (endOfLineMatch === null) {
|
||||
end = inputStringLength;
|
||||
startOfNextLine = inputStringLength;
|
||||
}
|
||||
else {
|
||||
end = endOfLineMatch.index;
|
||||
startOfNextLine = endOfLinePattern.lastIndex;
|
||||
}
|
||||
|
||||
var line = inputString.substring(start, end);
|
||||
|
||||
var matchCache = [];
|
||||
for (;;) {
|
||||
var posWithinLine = pos - start;
|
||||
|
||||
var stateIndex;
|
||||
var stackLength = patternStack.length;
|
||||
if (stackLength === 0) {
|
||||
stateIndex = 0;
|
||||
}
|
||||
else {
|
||||
// get the next state
|
||||
stateIndex = patternStack[stackLength - 1][2];
|
||||
}
|
||||
|
||||
var state = language[stateIndex];
|
||||
var numPatterns = state.length;
|
||||
var mc = matchCache[stateIndex];
|
||||
if (! mc) {
|
||||
mc = matchCache[stateIndex] = [];
|
||||
}
|
||||
var bestMatch = null;
|
||||
var bestPatternIndex = -1;
|
||||
for (var i = 0; i < numPatterns; i++) {
|
||||
var match;
|
||||
if (i < mc.length && (mc[i] === null || posWithinLine <= mc[i].index)) {
|
||||
match = mc[i];
|
||||
}
|
||||
else {
|
||||
var regex = state[i][0];
|
||||
regex.lastIndex = posWithinLine;
|
||||
match = regex.exec(line);
|
||||
mc[i] = match;
|
||||
}
|
||||
if (match !== null && (bestMatch === null || match.index < bestMatch.index)) {
|
||||
bestMatch = match;
|
||||
bestPatternIndex = i;
|
||||
if (match.index === posWithinLine) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (bestMatch === null) {
|
||||
output(line.substring(posWithinLine), null);
|
||||
break;
|
||||
}
|
||||
else {
|
||||
// got a match
|
||||
if (bestMatch.index > posWithinLine) {
|
||||
output(line.substring(posWithinLine, bestMatch.index), null);
|
||||
}
|
||||
|
||||
var pattern = state[bestPatternIndex];
|
||||
|
||||
var newStyle = pattern[1];
|
||||
var matchedString;
|
||||
if (newStyle instanceof Array) {
|
||||
for (var subexpression = 0; subexpression < newStyle.length; subexpression++) {
|
||||
matchedString = bestMatch[subexpression + 1];
|
||||
output(matchedString, newStyle[subexpression]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
matchedString = bestMatch[0];
|
||||
output(matchedString, newStyle);
|
||||
}
|
||||
|
||||
switch (pattern[2]) {
|
||||
case -1:
|
||||
// do nothing
|
||||
break;
|
||||
case -2:
|
||||
// exit
|
||||
patternStack.pop();
|
||||
break;
|
||||
case -3:
|
||||
// exitall
|
||||
patternStack.length = 0;
|
||||
break;
|
||||
default:
|
||||
// this was the start of a delimited pattern or a state/environment
|
||||
patternStack.push(pattern);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// end of the line
|
||||
if (currentStyle) {
|
||||
tags[numTags++] = {pos: pos};
|
||||
if (currentStyle === 'sh_url') {
|
||||
sh_setHref(tags, numTags, inputString);
|
||||
}
|
||||
currentStyle = null;
|
||||
}
|
||||
pos = startOfNextLine;
|
||||
}
|
||||
|
||||
return tags;
|
||||
}
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// DOM-dependent functions
|
||||
|
||||
function sh_getClasses(element) {
|
||||
var result = [];
|
||||
var htmlClass = element.className;
|
||||
if (htmlClass && htmlClass.length > 0) {
|
||||
var htmlClasses = htmlClass.split(' ');
|
||||
for (var i = 0; i < htmlClasses.length; i++) {
|
||||
if (htmlClasses[i].length > 0) {
|
||||
result.push(htmlClasses[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
function sh_addClass(element, name) {
|
||||
var htmlClasses = sh_getClasses(element);
|
||||
for (var i = 0; i < htmlClasses.length; i++) {
|
||||
if (name.toLowerCase() === htmlClasses[i].toLowerCase()) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
htmlClasses.push(name);
|
||||
element.className = htmlClasses.join(' ');
|
||||
}
|
||||
|
||||
/**
|
||||
Extracts the tags from an HTML DOM NodeList.
|
||||
@param nodeList a DOM NodeList
|
||||
@param result an object with text, tags and pos properties
|
||||
*/
|
||||
function sh_extractTagsFromNodeList(nodeList, result) {
|
||||
var length = nodeList.length;
|
||||
for (var i = 0; i < length; i++) {
|
||||
var node = nodeList.item(i);
|
||||
switch (node.nodeType) {
|
||||
case 1:
|
||||
if (node.nodeName.toLowerCase() === 'br') {
|
||||
var terminator;
|
||||
if (/MSIE/.test(navigator.userAgent)) {
|
||||
terminator = '\r';
|
||||
}
|
||||
else {
|
||||
terminator = '\n';
|
||||
}
|
||||
result.text.push(terminator);
|
||||
result.pos++;
|
||||
}
|
||||
else {
|
||||
result.tags.push({node: node.cloneNode(false), pos: result.pos});
|
||||
sh_extractTagsFromNodeList(node.childNodes, result);
|
||||
result.tags.push({pos: result.pos});
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
case 4:
|
||||
result.text.push(node.data);
|
||||
result.pos += node.length;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
Extracts the tags from the text of an HTML element. The extracted tags will be
|
||||
returned as an array of tag objects. See sh_highlightString for the format of
|
||||
the tag objects.
|
||||
@param element a DOM element
|
||||
@param tags an empty array; the extracted tag objects will be returned in it
|
||||
@return the text of the element
|
||||
@see sh_highlightString
|
||||
*/
|
||||
function sh_extractTags(element, tags) {
|
||||
var result = {};
|
||||
result.text = [];
|
||||
result.tags = tags;
|
||||
result.pos = 0;
|
||||
sh_extractTagsFromNodeList(element.childNodes, result);
|
||||
return result.text.join('');
|
||||
}
|
||||
|
||||
/**
|
||||
Merges the original tags from an element with the tags produced by highlighting.
|
||||
@param originalTags an array containing the original tags
|
||||
@param highlightTags an array containing the highlighting tags - these must not overlap
|
||||
@result an array containing the merged tags
|
||||
*/
|
||||
function sh_mergeTags(originalTags, highlightTags) {
|
||||
var numOriginalTags = originalTags.length;
|
||||
if (numOriginalTags === 0) {
|
||||
return highlightTags;
|
||||
}
|
||||
|
||||
var numHighlightTags = highlightTags.length;
|
||||
if (numHighlightTags === 0) {
|
||||
return originalTags;
|
||||
}
|
||||
|
||||
var result = [];
|
||||
var originalIndex = 0;
|
||||
var highlightIndex = 0;
|
||||
|
||||
while (originalIndex < numOriginalTags && highlightIndex < numHighlightTags) {
|
||||
var originalTag = originalTags[originalIndex];
|
||||
var highlightTag = highlightTags[highlightIndex];
|
||||
|
||||
if (originalTag.pos <= highlightTag.pos) {
|
||||
result.push(originalTag);
|
||||
originalIndex++;
|
||||
}
|
||||
else {
|
||||
result.push(highlightTag);
|
||||
if (highlightTags[highlightIndex + 1].pos <= originalTag.pos) {
|
||||
highlightIndex++;
|
||||
result.push(highlightTags[highlightIndex]);
|
||||
highlightIndex++;
|
||||
}
|
||||
else {
|
||||
// new end tag
|
||||
result.push({pos: originalTag.pos});
|
||||
|
||||
// new start tag
|
||||
highlightTags[highlightIndex] = {node: highlightTag.node.cloneNode(false), pos: originalTag.pos};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
while (originalIndex < numOriginalTags) {
|
||||
result.push(originalTags[originalIndex]);
|
||||
originalIndex++;
|
||||
}
|
||||
|
||||
while (highlightIndex < numHighlightTags) {
|
||||
result.push(highlightTags[highlightIndex]);
|
||||
highlightIndex++;
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
Inserts tags into text.
|
||||
@param tags an array of tag objects
|
||||
@param text a string representing the text
|
||||
@return a DOM DocumentFragment representing the resulting HTML
|
||||
*/
|
||||
function sh_insertTags(tags, text) {
|
||||
var doc = document;
|
||||
|
||||
var result = document.createDocumentFragment();
|
||||
var tagIndex = 0;
|
||||
var numTags = tags.length;
|
||||
var textPos = 0;
|
||||
var textLength = text.length;
|
||||
var currentNode = result;
|
||||
|
||||
// output one tag or text node every iteration
|
||||
while (textPos < textLength || tagIndex < numTags) {
|
||||
var tag;
|
||||
var tagPos;
|
||||
if (tagIndex < numTags) {
|
||||
tag = tags[tagIndex];
|
||||
tagPos = tag.pos;
|
||||
}
|
||||
else {
|
||||
tagPos = textLength;
|
||||
}
|
||||
|
||||
if (tagPos <= textPos) {
|
||||
// output the tag
|
||||
if (tag.node) {
|
||||
// start tag
|
||||
var newNode = tag.node;
|
||||
currentNode.appendChild(newNode);
|
||||
currentNode = newNode;
|
||||
}
|
||||
else {
|
||||
// end tag
|
||||
currentNode = currentNode.parentNode;
|
||||
}
|
||||
tagIndex++;
|
||||
}
|
||||
else {
|
||||
// output text
|
||||
currentNode.appendChild(doc.createTextNode(text.substring(textPos, tagPos)));
|
||||
textPos = tagPos;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
Highlights an element containing source code. Upon completion of this function,
|
||||
the element will have been placed in the "sh_sourceCode" class.
|
||||
@param element a DOM <pre> element containing the source code to be highlighted
|
||||
@param language a language definition object
|
||||
*/
|
||||
function sh_highlightElement(element, language) {
|
||||
sh_addClass(element, 'sh_sourceCode');
|
||||
var originalTags = [];
|
||||
var inputString = sh_extractTags(element, originalTags);
|
||||
var highlightTags = sh_highlightString(inputString, language);
|
||||
var tags = sh_mergeTags(originalTags, highlightTags);
|
||||
var documentFragment = sh_insertTags(tags, inputString);
|
||||
while (element.hasChildNodes()) {
|
||||
element.removeChild(element.firstChild);
|
||||
}
|
||||
element.appendChild(documentFragment);
|
||||
}
|
||||
|
||||
function sh_getXMLHttpRequest() {
|
||||
if (window.ActiveXObject) {
|
||||
return new ActiveXObject('Msxml2.XMLHTTP');
|
||||
}
|
||||
else if (window.XMLHttpRequest) {
|
||||
return new XMLHttpRequest();
|
||||
}
|
||||
throw 'No XMLHttpRequest implementation available';
|
||||
}
|
||||
|
||||
function sh_load(language, element, prefix, suffix) {
|
||||
if (language in sh_requests) {
|
||||
sh_requests[language].push(element);
|
||||
return;
|
||||
}
|
||||
sh_requests[language] = [element];
|
||||
var request = sh_getXMLHttpRequest();
|
||||
var url = prefix + 'sh_' + language + suffix;
|
||||
request.open('GET', url, true);
|
||||
request.onreadystatechange = function () {
|
||||
if (request.readyState === 4) {
|
||||
try {
|
||||
if (! request.status || request.status === 200) {
|
||||
eval(request.responseText);
|
||||
var elements = sh_requests[language];
|
||||
for (var i = 0; i < elements.length; i++) {
|
||||
sh_highlightElement(elements[i], sh_languages[language]);
|
||||
}
|
||||
}
|
||||
else {
|
||||
throw 'HTTP error: status ' + request.status;
|
||||
}
|
||||
}
|
||||
finally {
|
||||
request = null;
|
||||
}
|
||||
}
|
||||
};
|
||||
request.send(null);
|
||||
}
|
||||
|
||||
/**
|
||||
Highlights all elements containing source code on the current page. Elements
|
||||
containing source code must be "pre" elements with a "class" attribute of
|
||||
"sh_LANGUAGE", where LANGUAGE is a valid language identifier; e.g., "sh_java"
|
||||
identifies the element as containing "java" language source code.
|
||||
*/
|
||||
function sh_highlightDocument(prefix, suffix) {
|
||||
var nodeList = document.getElementsByTagName('pre');
|
||||
for (var i = 0; i < nodeList.length; i++) {
|
||||
var element = nodeList.item(i);
|
||||
var htmlClasses = sh_getClasses(element);
|
||||
for (var j = 0; j < htmlClasses.length; j++) {
|
||||
var htmlClass = htmlClasses[j].toLowerCase();
|
||||
if (htmlClass === 'sh_sourcecode') {
|
||||
continue;
|
||||
}
|
||||
if (htmlClass.substr(0, 3) === 'sh_') {
|
||||
var language = htmlClass.substring(3);
|
||||
if (language in sh_languages) {
|
||||
sh_highlightElement(element, sh_languages[language]);
|
||||
}
|
||||
else if (typeof(prefix) === 'string' && typeof(suffix) === 'string') {
|
||||
sh_load(language, element, prefix, suffix);
|
||||
}
|
||||
else {
|
||||
throw 'Found <pre> element with class="' + htmlClass + '", but no such language exists';
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
115
openstack-identity-api/src/docbkx/common/js/shjs/sh_xml.js
Normal file
115
openstack-identity-api/src/docbkx/common/js/shjs/sh_xml.js
Normal file
@ -0,0 +1,115 @@
|
||||
if (! this.sh_languages) {
|
||||
this.sh_languages = {};
|
||||
}
|
||||
sh_languages['xml'] = [
|
||||
[
|
||||
[
|
||||
/<\?xml/g,
|
||||
'sh_preproc',
|
||||
1,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!DOCTYPE/g,
|
||||
'sh_preproc',
|
||||
3,
|
||||
1
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
4
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-1
|
||||
],
|
||||
[
|
||||
/<(?:\/)?[A-Za-z](?:[A-Za-z0-9_:.-]*)/g,
|
||||
'sh_keyword',
|
||||
5,
|
||||
1
|
||||
],
|
||||
[
|
||||
/&(?:[A-Za-z0-9]+);/g,
|
||||
'sh_preproc',
|
||||
-1
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\?>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/\\(?:\\|")/g,
|
||||
null,
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
-2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/>/g,
|
||||
'sh_preproc',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
2
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/-->/g,
|
||||
'sh_comment',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/<!--/g,
|
||||
'sh_comment',
|
||||
4
|
||||
]
|
||||
],
|
||||
[
|
||||
[
|
||||
/(?:\/)?>/g,
|
||||
'sh_keyword',
|
||||
-2
|
||||
],
|
||||
[
|
||||
/([^=" \t>]+)([ \t]*)(=?)/g,
|
||||
['sh_type', 'sh_normal', 'sh_symbol'],
|
||||
-1
|
||||
],
|
||||
[
|
||||
/"/g,
|
||||
'sh_string',
|
||||
2
|
||||
]
|
||||
]
|
||||
];
|
@ -0,0 +1,184 @@
|
||||
/**
|
||||
controller.js
|
||||
|
||||
(C) 2009 Rackspace Hosting, All Rights Reserved
|
||||
|
||||
This file definas a single object in global scope:
|
||||
|
||||
trc.schema.controller
|
||||
|
||||
The controller object is responsible for displaying a menu that
|
||||
allows users to view schema source and jump to various definitions
|
||||
in the schema.
|
||||
**/
|
||||
|
||||
|
||||
//
|
||||
// Initialization code...
|
||||
//
|
||||
(function()
|
||||
{
|
||||
//
|
||||
// Make sure dependecies are defined in the global scope, throw
|
||||
// an error if they are not.
|
||||
//
|
||||
if ((!window.trc) ||
|
||||
(!trc.util))
|
||||
{
|
||||
throw new Error("Require trc/util.js to be loaded.");
|
||||
}
|
||||
|
||||
//
|
||||
// We use YUI to build our controller menu make sure we have the
|
||||
// proper dependecies loaded, call init when we do...
|
||||
//
|
||||
|
||||
function InitController()
|
||||
{
|
||||
trc.schema.controller._init();
|
||||
}
|
||||
|
||||
trc.util.yui.loadYUIDeps (["menu"], InitController);
|
||||
})();
|
||||
|
||||
|
||||
if (!trc.schema)
|
||||
{
|
||||
trc.schema = new Object();
|
||||
}
|
||||
|
||||
trc.schema.controller = {
|
||||
//
|
||||
// Internal and external links by type:
|
||||
//
|
||||
// type --> array of links
|
||||
//
|
||||
// possible types include: import, include, element,
|
||||
// attribute, complextype, simpleType
|
||||
//
|
||||
// each link contains the following properties:
|
||||
// name : the name of the link
|
||||
// href : the link itself
|
||||
// title : a description of the link
|
||||
links : new Object(),
|
||||
|
||||
//
|
||||
// A single link that points to the schema index document.
|
||||
//
|
||||
index : null,
|
||||
|
||||
//
|
||||
// Our initialization function
|
||||
//
|
||||
_init : function() {
|
||||
//
|
||||
// Load the menu...
|
||||
//
|
||||
var controllerDiv = document.getElementById("Controller");
|
||||
var mainMenu = this._menuMarkup("mainmenu");
|
||||
|
||||
for (var linkType in this.links)
|
||||
{
|
||||
var subItem = this._menuItemMarkup(mainMenu, linkType, "#", null);
|
||||
var subMenu = this._menuMarkup (linkType+"_subMenu");
|
||||
|
||||
var items = this.links[linkType];
|
||||
for (var i=0;i<items.length;i++)
|
||||
{
|
||||
this._menuItemMarkup (subMenu,
|
||||
items[i].name,
|
||||
items[i].href,
|
||||
items[i].title);
|
||||
}
|
||||
subItem.item.appendChild (subMenu.main);
|
||||
}
|
||||
|
||||
//
|
||||
// Toggle view source menu
|
||||
//
|
||||
this._menuItemMarkup (mainMenu, "toggle src view",
|
||||
"javascript:trc.schema.sampleManager.toggleSrcView()", null);
|
||||
|
||||
//
|
||||
// Index schema document
|
||||
//
|
||||
if (this.index != null)
|
||||
{
|
||||
this._menuItemMarkup (mainMenu, this.index.name,
|
||||
this.index.href, this.index.title);
|
||||
}
|
||||
|
||||
controllerDiv.appendChild (mainMenu.main);
|
||||
var oMenu = new YAHOO.widget.Menu("mainmenu", {position: "static"});
|
||||
oMenu.render();
|
||||
oMenu.show();
|
||||
},
|
||||
|
||||
//
|
||||
// Builds menu markup returns the associated divs in the
|
||||
// properties main, body, header, footer, and list
|
||||
//
|
||||
_menuMarkup : function(id /*Id for main part*/)
|
||||
{
|
||||
//
|
||||
// Build our menu div...
|
||||
//
|
||||
var mainDiv = document.createElement("div");
|
||||
var headerDiv = document.createElement("div");
|
||||
var bodyDiv = document.createElement("div");
|
||||
var footerDiv = document.createElement("div");
|
||||
var listDiv = document.createElement("ul");
|
||||
|
||||
mainDiv.setAttribute ("id", id);
|
||||
trc.util.dom.setClassName (mainDiv, "yuimenu");
|
||||
trc.util.dom.setClassName (headerDiv, "hd");
|
||||
trc.util.dom.setClassName (bodyDiv, "bd");
|
||||
trc.util.dom.setClassName (footerDiv, "ft");
|
||||
|
||||
mainDiv.appendChild (headerDiv);
|
||||
mainDiv.appendChild (bodyDiv);
|
||||
mainDiv.appendChild (footerDiv);
|
||||
bodyDiv.appendChild (listDiv);
|
||||
|
||||
return {
|
||||
main : mainDiv,
|
||||
body : bodyDiv,
|
||||
header : headerDiv,
|
||||
footer : footerDiv,
|
||||
list : listDiv
|
||||
};
|
||||
},
|
||||
|
||||
//
|
||||
// Adds a menu item to existing markup.
|
||||
//
|
||||
_menuItemMarkup : function (menu, /*Markup returned from _menuMarkup*/
|
||||
name, /* String, menu item name */
|
||||
href, /* String, menu item href */
|
||||
title /* String, title (tool tip)*/
|
||||
)
|
||||
{
|
||||
var listItem = document.createElement ("li");
|
||||
var link = document.createElement ("a");
|
||||
|
||||
trc.util.dom.setClassName (listItem, "yuimenuitem");
|
||||
trc.util.dom.setClassName (link, "yuimenuitemlabel");
|
||||
|
||||
link.setAttribute ("href", href);
|
||||
|
||||
if (title != null)
|
||||
{
|
||||
link.setAttribute ("title", title);
|
||||
}
|
||||
|
||||
link.appendChild (document.createTextNode(name));
|
||||
|
||||
listItem.appendChild (link);
|
||||
menu.list.appendChild(listItem);
|
||||
|
||||
return {
|
||||
item : listItem,
|
||||
anchor : link
|
||||
};
|
||||
}
|
||||
};
|
@ -0,0 +1,137 @@
|
||||
/**
|
||||
layoutManager.js
|
||||
|
||||
(C) 2009 Rackspace Hosting, All Rights Reserved
|
||||
|
||||
This file contains code that adjusts the layout of a schema
|
||||
document after a dom has been loaded. It does not modify the
|
||||
global scope.
|
||||
**/
|
||||
|
||||
(function()
|
||||
{
|
||||
//
|
||||
// Make sure dependecies are defined in the global scope, throw
|
||||
// an error if they are not.
|
||||
//
|
||||
if ((!window.trc) ||
|
||||
(!trc.util))
|
||||
{
|
||||
throw new Error("Require trc/util.js to be loaded.");
|
||||
}
|
||||
|
||||
//
|
||||
// This function should be called when the DOM is loaded so we
|
||||
// can get to work adjusting things.
|
||||
//
|
||||
function InitLayoutManager()
|
||||
{
|
||||
layoutManager._init();
|
||||
}
|
||||
trc.util.browser.addInitFunction (InitLayoutManager);
|
||||
|
||||
var layoutManager={
|
||||
//
|
||||
// Initialization function...
|
||||
//
|
||||
_init : function()
|
||||
{
|
||||
this._adjustMain();
|
||||
this._adjustSubElements();
|
||||
},
|
||||
|
||||
//
|
||||
// Applies appropriate styles to body and other main content
|
||||
// tags.
|
||||
//
|
||||
_adjustMain : function()
|
||||
{
|
||||
//
|
||||
// Change the class name for the correct YUI skin name.
|
||||
//
|
||||
var bodyTags = document.getElementsByTagName("body");
|
||||
if (bodyTags.length == 0)
|
||||
{
|
||||
throw new Error ("Couldn't find body element, bad DOM?");
|
||||
}
|
||||
else
|
||||
{
|
||||
trc.util.dom.setClassName(bodyTags[0], "yui-skin-sam");
|
||||
}
|
||||
|
||||
//
|
||||
// Setout the layout...
|
||||
//
|
||||
var docDiv = document.getElementById("doc");
|
||||
var mainDiv = document.getElementById("Main");
|
||||
|
||||
trc.util.dom.setClassName (docDiv, "yui-t1");
|
||||
docDiv.setAttribute ("id", "doc3");
|
||||
mainDiv.setAttribute ("id", "yui-main");
|
||||
|
||||
//
|
||||
// Old IE browser hacks...
|
||||
//
|
||||
switch (trc.util.browser.detectIEVersion())
|
||||
{
|
||||
//
|
||||
// IE 6 does not support fixed positioning. The
|
||||
// following is a little hack to get it to work.
|
||||
//
|
||||
//
|
||||
case 6:
|
||||
var controllerDiv = document.getElementById("Controller");
|
||||
controllerDiv.style.position="absolute";
|
||||
window.setInterval((function(){
|
||||
/* avoid leak by constantly querying for the
|
||||
* controller. */
|
||||
var ctrlDiv = document.getElementById("Controller");
|
||||
ctrlDiv.style.top = document.documentElement.scrollTop+10;
|
||||
}), 1000);
|
||||
break;
|
||||
|
||||
//
|
||||
// The controler doesn't work **at all** in IE 7
|
||||
// don't even show it.
|
||||
//
|
||||
case 7:
|
||||
var controllerDiv = document.getElementById("Controller");
|
||||
controllerDiv.style.display = "none";
|
||||
break;
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Adds appropriate classes for subElements...
|
||||
//
|
||||
_adjustSubElements : function()
|
||||
{
|
||||
var divs = document.getElementsByTagName("div");
|
||||
for (var i=0;i<divs.length;i++)
|
||||
{
|
||||
var currentClass = divs[i].getAttribute ("class");
|
||||
var newClassName = currentClass;
|
||||
switch (currentClass)
|
||||
{
|
||||
case "SubItem" :
|
||||
newClassName += " yui-gd";
|
||||
break;
|
||||
case "SubItemProps" :
|
||||
newClassName += " yui-gd first";
|
||||
break;
|
||||
case "SubName" :
|
||||
newClassName += " yui-u first";
|
||||
break;
|
||||
case "SubAttributes" :
|
||||
case "SubDocumentation" :
|
||||
newClassName += " yui-u";
|
||||
break;
|
||||
}
|
||||
if (currentClass != newClassName)
|
||||
{
|
||||
trc.util.dom.setClassName (divs[i], newClassName);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
})();
|
@ -0,0 +1,342 @@
|
||||
/**
|
||||
schemaManager.js:
|
||||
|
||||
(C) 2009 Rackspace Hosting, All Rights Reserved
|
||||
|
||||
This file defines a single object in global scope:
|
||||
|
||||
trc.schema.sampleManager
|
||||
|
||||
The object is responsible for loading, formatting, and displaying
|
||||
samples in schema files. It expects trc.util to be defined which is
|
||||
provided in trc/util.js.
|
||||
|
||||
Code highlighting is provided by SHJS
|
||||
(http://shjs.sourceforge.net/). It should also be loaded before
|
||||
this code is initialized.
|
||||
|
||||
All methods/properties prepended with an underscore (_) are meant
|
||||
for internal use.
|
||||
**/
|
||||
|
||||
//
|
||||
// Initialization code...
|
||||
//
|
||||
(function()
|
||||
{
|
||||
//
|
||||
// Make sure dependecies are defined in the global scope, throw
|
||||
// an error if they are not.
|
||||
//
|
||||
if ((!window.trc) ||
|
||||
(!trc.util))
|
||||
{
|
||||
throw new Error("Require trc/util.js to be loaded.");
|
||||
}
|
||||
|
||||
//
|
||||
// Make sure syntax highlighter scripts are loaded, if not then
|
||||
// load them.
|
||||
//
|
||||
if (!window.sh_highlightDocument)
|
||||
{
|
||||
trc.util.dom.addStyle ("../style/shjs/sh_darkblue.css");
|
||||
|
||||
trc.util.dom.addScript ("../js/shjs/sh_main.js");
|
||||
trc.util.dom.addScript ("../js/shjs/sh_xml.js");
|
||||
trc.util.dom.addScript ("../js/shjs/sh_javascript.js");
|
||||
trc.util.dom.addScript ("../js/shjs/sh_java.js");
|
||||
}
|
||||
|
||||
function InitSchemaSampleManager()
|
||||
{
|
||||
trc.schema.sampleManager._init();
|
||||
}
|
||||
|
||||
trc.util.browser.addInitFunction(InitSchemaSampleManager);
|
||||
})();
|
||||
|
||||
//
|
||||
// Define trc.schema.sampleManager...
|
||||
//
|
||||
if (!trc.schema)
|
||||
{
|
||||
trc.schema = new Object();
|
||||
}
|
||||
trc.schema.sampleManager = {
|
||||
//
|
||||
// All sample data in an associative array:
|
||||
//
|
||||
// Select Element ID -> Array of sample ids.
|
||||
//
|
||||
samples : new Object(),
|
||||
|
||||
//
|
||||
// An array of code data..
|
||||
//
|
||||
// Code data is defined as an object with the following
|
||||
// properties:
|
||||
//
|
||||
// type: The mimetype of the code...href: The location of the code
|
||||
// or null if it's inline
|
||||
//
|
||||
// id: The id of the pre that contains the code.
|
||||
//
|
||||
// The initial object is the source code for the current document.
|
||||
//
|
||||
codes : new Array({
|
||||
id : "SrcContentCode",
|
||||
type : "application/xml",
|
||||
href : (function() {
|
||||
var ret = location.href;
|
||||
if (location.hash && (location.hash.length != 0))
|
||||
{
|
||||
ret = ret.replace (location.hash, "");
|
||||
}
|
||||
return ret;
|
||||
})()
|
||||
}),
|
||||
|
||||
//
|
||||
// Sets up the manager, begins the loading process...
|
||||
//
|
||||
_init : function() {
|
||||
//
|
||||
// Setup an array to hold data items to load, this is used by
|
||||
// the loadSample method.
|
||||
//
|
||||
this._toLoad = new Array();
|
||||
|
||||
for (var i=0;i<this.codes.length;i++)
|
||||
{
|
||||
if ((this.codes[i] != null) &&
|
||||
(this.codes[i].href != null))
|
||||
{
|
||||
this._toLoad.push (this.codes[i]);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Loads the code text
|
||||
//
|
||||
this._loadCode();
|
||||
},
|
||||
|
||||
//
|
||||
// Loads the next sample in the toLoad array.
|
||||
//
|
||||
_loadCode : function() {
|
||||
if (this._toLoad.length == 0)
|
||||
{
|
||||
//
|
||||
// All samples have been loaded, fire the loadComplete
|
||||
// method.
|
||||
//
|
||||
this._loadComplete();
|
||||
return;
|
||||
}
|
||||
|
||||
var codeData = this._toLoad.pop();
|
||||
var request = trc.util.net.getHTTPRequest();
|
||||
var manager = this;
|
||||
|
||||
request.onreadystatechange = function() {
|
||||
if (request.readyState == 4 /* Ready */) {
|
||||
if (request.status == 200 /* OKAY */) {
|
||||
manager._setCodeText (codeData, request.responseText);
|
||||
}
|
||||
else
|
||||
{
|
||||
manager._setCodeText (codeData, "Could not load sample ("+request.status+") "+request.responseText);
|
||||
}
|
||||
manager._loadCode();
|
||||
}
|
||||
};
|
||||
|
||||
request.open ("GET", codeData.href);
|
||||
request.send(null);
|
||||
},
|
||||
|
||||
//
|
||||
// Called after all samples are loaded into the DOM.
|
||||
//
|
||||
_loadComplete : function()
|
||||
{
|
||||
//
|
||||
// Normalize all code samples..
|
||||
//
|
||||
this._normalizeCodeText(1, 1, 5);
|
||||
|
||||
//
|
||||
// Perform syntax highlighting...
|
||||
//
|
||||
sh_highlightDocument();
|
||||
|
||||
//
|
||||
// All samples are initially hidden, show the selected
|
||||
// samples...
|
||||
//
|
||||
for (var optionID in this.samples)
|
||||
{
|
||||
this.showSample(optionID);
|
||||
}
|
||||
|
||||
//
|
||||
// We've adjusted the document, we need to setup the view so
|
||||
// that we're still pointing to the hash target.
|
||||
//
|
||||
if (window.location.hash &&
|
||||
(window.location.hash.length != 0))
|
||||
{
|
||||
window.location.href = window.location.hash;
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Sets code text replacing any text already existing there.
|
||||
//
|
||||
_setCodeText : function ( codeData /* Info of the code to set (code object) */,
|
||||
code /* Code text to set (string) */)
|
||||
{
|
||||
//
|
||||
// Preprocess the txt if nessesary...
|
||||
//
|
||||
var ieVersion = trc.util.browser.detectIEVersion();
|
||||
if ((ieVersion > -1) &&
|
||||
(ieVersion < 8))
|
||||
{
|
||||
code = trc.util.text.unix2dos (code);
|
||||
}
|
||||
|
||||
var pre = document.getElementById(codeData.id);
|
||||
var preNodes = pre.childNodes;
|
||||
//
|
||||
// Remove placeholder data...
|
||||
//
|
||||
while (preNodes.length != 0)
|
||||
{
|
||||
pre.removeChild (preNodes[0]);
|
||||
}
|
||||
|
||||
//
|
||||
// Set the correct class type...
|
||||
//
|
||||
switch (codeData.type)
|
||||
{
|
||||
/*
|
||||
Javascript mimetypes
|
||||
*/
|
||||
case 'application/json':
|
||||
case 'application/javascript':
|
||||
case 'application/x-javascript':
|
||||
case 'application/ecmascript':
|
||||
case 'text/ecmascript':
|
||||
case 'text/javascript':
|
||||
trc.util.dom.setClassName (pre, "sh_javascript");
|
||||
break;
|
||||
/*
|
||||
Not real mimetypes but this is what we'll use for Java.
|
||||
*/
|
||||
case 'application/java':
|
||||
case 'text/java':
|
||||
trc.util.dom.setClassName (pre, "sh_java");
|
||||
break;
|
||||
default:
|
||||
trc.util.dom.setClassName (pre, "sh_xml");
|
||||
break;
|
||||
}
|
||||
|
||||
//
|
||||
// Add new code...
|
||||
//
|
||||
pre.appendChild (document.createTextNode (code));
|
||||
},
|
||||
|
||||
//
|
||||
// Retrives source code text
|
||||
//
|
||||
_getCodeText : function (codeData /* Info for the code to get*/)
|
||||
{
|
||||
var pre = document.getElementById(codeData.id);
|
||||
pre.normalize();
|
||||
//
|
||||
// Should be a single text node after pre...
|
||||
//
|
||||
return pre.firstChild.nodeValue;
|
||||
},
|
||||
|
||||
|
||||
//
|
||||
// Normalizes text by ensuring that top, bottom, right indent
|
||||
// levels are equal for all samples.
|
||||
//
|
||||
_normalizeCodeText : function (top, /* integer, top indent in lines */
|
||||
bottom, /* integer, bottom indent in lines */
|
||||
right /* integer, right indent in spaces */
|
||||
)
|
||||
{
|
||||
for (var i=0;i<this.codes.length;i++)
|
||||
{
|
||||
if (this.codes[i] != null)
|
||||
{
|
||||
var code = this._getCodeText (this.codes[i]);
|
||||
code = trc.util.text.setIndent (code, top, bottom, right);
|
||||
this._setCodeText (this.codes[i], code);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// This event handler shows the appropriate sample given an ID
|
||||
// to the select element.
|
||||
//
|
||||
showSample : function (selectID) /* ID of the Select element */
|
||||
{
|
||||
//
|
||||
// Get the selected value
|
||||
//
|
||||
var selected = document.getElementById(selectID);
|
||||
var selectedValue = selected.options[selected.selectedIndex].value;
|
||||
var samples = this.samples[selectID];
|
||||
|
||||
//
|
||||
// Undisplay old samples, display selected ones.
|
||||
//
|
||||
for (var i=0;i<samples.length;i++)
|
||||
{
|
||||
if (samples[i] != null)
|
||||
{
|
||||
var sample = document.getElementById (samples[i]);
|
||||
if (samples[i] == selectedValue)
|
||||
{
|
||||
sample.style.display = "block";
|
||||
}
|
||||
else
|
||||
{
|
||||
sample.style.display = "none";
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Toggles the current source view. If the source is displayed it
|
||||
// undisplays it and vice versa.
|
||||
//
|
||||
toggleSrcView : function()
|
||||
{
|
||||
var content = document.getElementById ("Content");
|
||||
var src = document.getElementById ("SrcContent");
|
||||
|
||||
if (content.style.display != "none")
|
||||
{
|
||||
content.style.display = "none";
|
||||
src.style.display = "block";
|
||||
}
|
||||
else
|
||||
{
|
||||
content.style.display = "block";
|
||||
src.style.display = "none";
|
||||
}
|
||||
}
|
||||
};
|
564
openstack-identity-api/src/docbkx/common/js/trc/util.js
Normal file
564
openstack-identity-api/src/docbkx/common/js/trc/util.js
Normal file
@ -0,0 +1,564 @@
|
||||
/**
|
||||
util.js:
|
||||
|
||||
(C) 2009 Rackspace Hosting, All Rights Reserved
|
||||
|
||||
This file defines a single object in global scope:
|
||||
|
||||
trc.util
|
||||
|
||||
The util object contains internal objects which contain useful
|
||||
utility properties and methods.
|
||||
|
||||
trc.util.browser: contains methods for browser detection.
|
||||
|
||||
trc.util.dom: contains methods for manipulating the DOM.
|
||||
|
||||
trc.util.text: contains methods and properties useful when working
|
||||
with plain text.
|
||||
|
||||
trc.util.net: contains methods for creating HTTP requests.
|
||||
|
||||
trc.util.yui : contains methods for working with the YUI toolkit.
|
||||
|
||||
All methods/properties prepended with an underscore (_) are meant
|
||||
for internal use.
|
||||
**/
|
||||
|
||||
//
|
||||
// Define TRC
|
||||
//
|
||||
if (!window.trc)
|
||||
{
|
||||
trc= new Object();
|
||||
}
|
||||
trc.util = new Object();
|
||||
trc.util.browser = {
|
||||
//
|
||||
// Returns the current version of IE, or -1 if it's not an IE
|
||||
// browser. This is one of the recomended ways of detecting IE
|
||||
// see:
|
||||
//
|
||||
// http://msdn.microsoft.com/en-us/library/ms537509%28VS.85%29.aspx
|
||||
//
|
||||
detectIEVersion : function() {
|
||||
var rv = -1; // Return value assumes failure.
|
||||
if (navigator.appName == 'Microsoft Internet Explorer')
|
||||
{
|
||||
var ua = navigator.userAgent;
|
||||
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
|
||||
if (re.exec(ua) != null)
|
||||
rv = parseFloat( RegExp.$1 );
|
||||
}
|
||||
return rv;
|
||||
},
|
||||
|
||||
//
|
||||
// A list of functions to execute on init.
|
||||
//
|
||||
_initFuns : new Array(),
|
||||
|
||||
//
|
||||
// Has the init function event been set?
|
||||
//
|
||||
_initFunSet: false,
|
||||
|
||||
//
|
||||
// Function called when the DOM has loaded. It launches all init
|
||||
// functions.
|
||||
//
|
||||
_onInit : function()
|
||||
{
|
||||
//
|
||||
// Sort by order...
|
||||
//
|
||||
this._initFuns.sort(function(a, b){ return a.order - b.order; });
|
||||
for (var i=0;i<this._initFuns.length;i++)
|
||||
{
|
||||
this._initFuns[i]();
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Adds a function that should be executed when the dom is
|
||||
// loaded.
|
||||
//
|
||||
addInitFunction : function(init, /*Function to call after dom
|
||||
* is loaded*/
|
||||
|
||||
order /* An optional it specifing
|
||||
* order. The bigger the int the
|
||||
* later it will run. Default is
|
||||
* 1.*/
|
||||
) {
|
||||
if (arguments.length < 2)
|
||||
{
|
||||
init.order = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
init.order = order;
|
||||
}
|
||||
this._initFuns.push (init);
|
||||
|
||||
if (!this._initFunSet)
|
||||
{
|
||||
var butil = this;
|
||||
function initFun()
|
||||
{
|
||||
return (function(){ butil._onInit(); });
|
||||
}
|
||||
|
||||
//
|
||||
// Try event listeners, attachEvent and if that fails use
|
||||
// window.onload...
|
||||
//
|
||||
if (window.addEventListener)
|
||||
{
|
||||
window.addEventListener("load", initFun(), false);
|
||||
} else if (window.attachEvent)
|
||||
{
|
||||
window.attachEvent ("onload", initFun());
|
||||
} else
|
||||
{
|
||||
window.onload = initFun();
|
||||
}
|
||||
|
||||
this._initFunSet = true;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
trc.util.dom = {
|
||||
//
|
||||
// Adds a new script tag to the current DOM.
|
||||
//
|
||||
addScript : function (src /* Script href */)
|
||||
{
|
||||
var scriptElement = document.createElement ("script");
|
||||
scriptElement.setAttribute ("type", "text/javascript");
|
||||
scriptElement.setAttribute ("src", src);
|
||||
|
||||
this.addToHead (scriptElement);
|
||||
},
|
||||
|
||||
//
|
||||
// Adds a new stylesheet to the current DOM.
|
||||
//
|
||||
addStyle : function (src /* Stylesheet href */)
|
||||
{
|
||||
var linkElement = document.createElement ("link");
|
||||
linkElement.setAttribute ("rel", "stylesheet");
|
||||
linkElement.setAttribute ("type", "text/css");
|
||||
linkElement.setAttribute ("href", src);
|
||||
|
||||
this.addToHead (linkElement);
|
||||
},
|
||||
|
||||
//
|
||||
// Adds a DOM node to the HTTP head element. The element is
|
||||
// always added as the last child an error is thrown if the
|
||||
// head element can't be found.
|
||||
//
|
||||
addToHead : function (node /* A DOM node */)
|
||||
{
|
||||
var headArray = document.getElementsByTagName("head");
|
||||
if (headArray.length == 0)
|
||||
{
|
||||
throw new Error("Couldn't find head element, bad DOM?");
|
||||
}
|
||||
else
|
||||
{
|
||||
headArray[0].appendChild (node);
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Dum utility function for setting the class name of an
|
||||
// element. Eventually we'll move completely to XHTML, but
|
||||
// this will never work in IE 6, so for now we need this
|
||||
// method for setting the class name.
|
||||
//
|
||||
setClassName : function (element, /* DOM Element*/
|
||||
name /* Class name to use */
|
||||
)
|
||||
{
|
||||
var ieVersion = trc.util.browser.detectIEVersion();
|
||||
|
||||
if ((ieVersion > -1) &&
|
||||
(ieVersion < 7))
|
||||
{
|
||||
element.className = name;
|
||||
}
|
||||
else
|
||||
{
|
||||
element.setAttribute ("class",name);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
trc.util.text = {
|
||||
//
|
||||
// Useful RegExps
|
||||
//
|
||||
blank : new RegExp ("^\\s*$"), /* A blank string */
|
||||
indent : new RegExp ("^\\s+"), /* Line indent */
|
||||
lines : new RegExp ("$","m"), /* All lines */
|
||||
linechars : new RegExp ("(\n|\r)"), /* EOL line characters */
|
||||
tabs : new RegExp ("\t","g"), /* All tabs */
|
||||
|
||||
//
|
||||
// We need this because microsoft browsers before IE 7, connot
|
||||
// display pre-formatted text correctly win unix style line
|
||||
// endings.
|
||||
//
|
||||
unix2dos : function(txt /* String */) {
|
||||
//if already DOS...
|
||||
if (txt.search(/\r\n/) != -1)
|
||||
{
|
||||
return txt;
|
||||
}
|
||||
return txt.replace (/\n/g, "\r\n");
|
||||
},
|
||||
|
||||
//
|
||||
// Useful to normalize text.
|
||||
//
|
||||
dos2unix : function(txt /* String */) {
|
||||
//if already unix...
|
||||
if (txt.search(/\r\n/) == -1)
|
||||
{
|
||||
return txt;
|
||||
}
|
||||
|
||||
return txt.replace(/\r/g, "");
|
||||
},
|
||||
|
||||
//
|
||||
// Create a string with a character repeated x times.
|
||||
//
|
||||
repString : function (length, /* integer, size of the string to create */
|
||||
ch /* string, The character to set the string to */
|
||||
)
|
||||
{
|
||||
var ret = new String();
|
||||
for (var i=0;i<length;i++) {ret=ret.concat(ch);}
|
||||
|
||||
return ret;
|
||||
},
|
||||
|
||||
//
|
||||
// Replace tabs in a text with strings.
|
||||
//
|
||||
replaceTabs : function (txt, /* String to modify */
|
||||
length /* integer, tab length in spaces */
|
||||
)
|
||||
{
|
||||
var tabs = this.repString(length, " ");
|
||||
return txt.replace (this.tabs, tabs);
|
||||
},
|
||||
|
||||
//
|
||||
// Given multi-line text returns Adjust top and bottom indent
|
||||
// (in lines) and right indent (in spaces)
|
||||
//
|
||||
setIndent : function (txt, /* String */
|
||||
top, /* integer, top indent in lines */
|
||||
bottom, /* integer, bottom indent in lines */
|
||||
right /* integer, right indent in spaces */
|
||||
)
|
||||
{
|
||||
//
|
||||
// Can't indent an empty string..
|
||||
//
|
||||
if (txt.length == 0)
|
||||
{
|
||||
return txt;
|
||||
}
|
||||
|
||||
//
|
||||
// If not 0, bottom will be off by one...
|
||||
//
|
||||
if (bottom != 0)
|
||||
{
|
||||
bottom++;
|
||||
}
|
||||
|
||||
var head=this.repString (top, "\n");
|
||||
var tail=this.repString (bottom, "\n");
|
||||
var marg=this.repString (right, " ");
|
||||
var ntxt = this.dos2unix(txt);
|
||||
var ntxt = this.replaceTabs (ntxt, 8);
|
||||
var lines = ntxt.split (this.lines);
|
||||
var origIndent=Number.MAX_VALUE;
|
||||
var origIndentStr;
|
||||
|
||||
//
|
||||
// Look up indent.
|
||||
//
|
||||
for (var i=0;i<lines.length;i++)
|
||||
{
|
||||
//
|
||||
// Remove EOL characters...
|
||||
//
|
||||
lines[i] = lines[i].replace (this.linechars, "");
|
||||
|
||||
//
|
||||
// Ignore blank lines
|
||||
//
|
||||
if (lines[i].match(this.blank) != null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
//
|
||||
// Detect the indent if any...
|
||||
//
|
||||
var result = lines[i].match(this.indent);
|
||||
if (result == null)
|
||||
{
|
||||
origIndent = 0;
|
||||
origIndentStr = "";
|
||||
}
|
||||
else if (result[0].length < origIndent)
|
||||
{
|
||||
origIndent = result[0].length;
|
||||
origIndentStr = result[0];
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// This implys all line are blank...can't indent.
|
||||
//
|
||||
if (origIndent == Number.MAX_VALUE)
|
||||
{
|
||||
return txt;
|
||||
}
|
||||
|
||||
if (origIndent != 0)
|
||||
{
|
||||
var regExStr = "^";
|
||||
for (var i=0;i<origIndent;i++)
|
||||
{
|
||||
regExStr=regExStr.concat("\\s");
|
||||
}
|
||||
var indent = new RegExp(regExStr);
|
||||
for (var i=0;i<lines.length;i++)
|
||||
{
|
||||
lines[i] = lines[i].replace(indent,marg);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (var i=0;i<lines.length;i++)
|
||||
{
|
||||
lines[i] = marg.concat (lines[i]);
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Remove top...
|
||||
//
|
||||
while (lines.length != 0)
|
||||
{
|
||||
if (lines[0].match(this.blank))
|
||||
{
|
||||
lines.shift();
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Remove bottom...
|
||||
//
|
||||
while (lines.length != 0)
|
||||
{
|
||||
if (lines[lines.length-1].match(this.blank))
|
||||
{
|
||||
lines.pop();
|
||||
}
|
||||
else
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var indented = lines.join("\n");
|
||||
indented=head.concat(indented, tail);
|
||||
|
||||
return indented;
|
||||
}
|
||||
};
|
||||
|
||||
trc.util.net = {
|
||||
//
|
||||
// A list of possible factories for creating an XMLHTTPRequest
|
||||
//
|
||||
_HTTPReqFactories :
|
||||
[
|
||||
function() { return new XMLHttpRequest(); },
|
||||
function() { return new ActiveXObject("Msxml2.XMLHTTP"); },
|
||||
function() { return new ActiveXObject("Microsoft.XMLHTTP"); }
|
||||
],
|
||||
|
||||
//
|
||||
// A cached XMLHTTPRequest factory that we know works in this
|
||||
// browser
|
||||
//
|
||||
_HTTPReqFactory : null,
|
||||
|
||||
//
|
||||
// Provides a way of getting an HTTPRequest object in a
|
||||
// platform independent manner
|
||||
//
|
||||
getHTTPRequest : function()
|
||||
{
|
||||
//
|
||||
// Use cache if available..
|
||||
//
|
||||
if (this._HTTPReqFactory != null) return this._HTTPReqFactory();
|
||||
|
||||
//
|
||||
// Search for a factory..
|
||||
//
|
||||
for (var i=0; i< this._HTTPReqFactories.length; i++)
|
||||
{
|
||||
try {
|
||||
var factory = this._HTTPReqFactories[i];
|
||||
var request = factory();
|
||||
if (request != null)
|
||||
{
|
||||
this._HTTPReqFactory = factory;
|
||||
return request;
|
||||
}
|
||||
} catch (e) {
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Looks like we don't have support for XMLHttpRequest...
|
||||
//
|
||||
this._HTTPReqFactory = function() {throw new Error("XMLHttpRequest not supported");}
|
||||
this._HTTPReqFactory();
|
||||
return;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
//
|
||||
// Init code for trc.util.yui...
|
||||
//
|
||||
(function()
|
||||
{
|
||||
//
|
||||
// Menu make sure we have the YUI loader as it's used by our
|
||||
// init function to load YUI components.
|
||||
//
|
||||
if (!window.YAHOO)
|
||||
{
|
||||
//
|
||||
// We are currently using YUI on YAHOO!'s servers we may
|
||||
// want to change this.
|
||||
//
|
||||
var YUI_BASE="http://yui.yahooapis.com/2.7.0/";
|
||||
|
||||
trc.util.dom.addScript (YUI_BASE+"build/yuiloader/yuiloader-min.js");
|
||||
}
|
||||
|
||||
function InitYUIUtil()
|
||||
{
|
||||
trc.util.yui._init();
|
||||
}
|
||||
trc.util.browser.addInitFunction (InitYUIUtil);
|
||||
})();
|
||||
|
||||
trc.util.yui = {
|
||||
//
|
||||
// A list of dependecies to be passed to the YUI loader. This is
|
||||
// essentially a hash set: dep->dep.
|
||||
//
|
||||
_deps : new Object(),
|
||||
|
||||
//
|
||||
// An array of callback functions, these should be called when all
|
||||
// dependecies are loaded.
|
||||
//
|
||||
_callbacks : new Array(),
|
||||
|
||||
//
|
||||
// The init function simply calls the YUI loader...
|
||||
//
|
||||
_init : function() {
|
||||
var yuiUtil = this;
|
||||
|
||||
//
|
||||
// It takes safari a while to load the YUI Loader if it hasn't
|
||||
// loaded yet keep trying at 1/4 second intervals
|
||||
//
|
||||
if (!window.YAHOO)
|
||||
{
|
||||
window.setTimeout (function() {
|
||||
yuiUtil._init();
|
||||
}, 250);
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
// Collect requirements...
|
||||
//
|
||||
var required = new Array();
|
||||
for (var req in this._deps)
|
||||
{
|
||||
required.push (req);
|
||||
}
|
||||
|
||||
//
|
||||
// Load YUI dependecies...
|
||||
//
|
||||
var loader = new YAHOO.util.YUILoader({
|
||||
require: required,
|
||||
loadOptional: true,
|
||||
filter: "RAW",
|
||||
onSuccess: function() {
|
||||
yuiUtil._depsLoaded();
|
||||
},
|
||||
timeout: 10000,
|
||||
combine: true
|
||||
});
|
||||
loader.insert();
|
||||
},
|
||||
|
||||
//
|
||||
// Called after all dependecies have been loaded
|
||||
//
|
||||
_depsLoaded : function() {
|
||||
//
|
||||
// Dependecies are loaded let everyone know.
|
||||
//
|
||||
for (var i=0;i<this._callbacks.length;i++)
|
||||
{
|
||||
this._callbacks[i]();
|
||||
}
|
||||
},
|
||||
|
||||
//
|
||||
// Request that one or more YUI dependecies are loaded.
|
||||
//
|
||||
loadYUIDeps : function (deps, /*An array of dep strings */
|
||||
callback /*A function to call when deps are loaded*/
|
||||
)
|
||||
{
|
||||
for (var i=0;i<deps.length;i++)
|
||||
{
|
||||
this._deps[deps[i]] = deps[i];
|
||||
}
|
||||
if (callback != null)
|
||||
{
|
||||
this._callbacks.push (callback);
|
||||
}
|
||||
}
|
||||
};
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"RAX-KSGRP:groups":[{
|
||||
"id":"test_global_group_add",
|
||||
"description":"A description ..."
|
||||
}
|
||||
],
|
||||
"RAX-KSGRP:groups_links":[]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
<groups xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSGRP/v1.0">
|
||||
<group xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSGRP/v1.0" id="test_global_group_add">
|
||||
<description>A Description of the group</description>
|
||||
</group>
|
||||
</groups>
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"RAX-KSQA:secretQA":{
|
||||
"question":"What is the color of my eyes?",
|
||||
"answer":"Leonardo Da Vinci"
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<secretQA xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSQA/v1.0"
|
||||
question="What is the color of my eyes?"
|
||||
answer="Leonardo Da Vinci" />
|
||||
|
||||
|
@ -0,0 +1,6 @@
|
||||
{
|
||||
"RAX-KSKEY:apiKeyCredentials":{
|
||||
"username":"test_user",
|
||||
"apiKey":"aaaaa-bbbbb-ccccc-12345678"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<apiKeyCredentials
|
||||
xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0"
|
||||
username="testuser"
|
||||
apiKey="aaaaa-bbbbb-ccccc-12345678"/>
|
||||
|
87
openstack-identity-api/src/docbkx/common/samples/auth.json
Normal file
87
openstack-identity-api/src/docbkx/common/samples/auth.json
Normal file
@ -0,0 +1,87 @@
|
||||
{
|
||||
"access":{
|
||||
"token":{
|
||||
"id":"ab48a9efdfedb23ty3494",
|
||||
"expires":"2010-11-01T03:32:15-05:00",
|
||||
"tenant":{
|
||||
"id": "t1000",
|
||||
"name": "My Project"
|
||||
}
|
||||
},
|
||||
"user":{
|
||||
"id":"u123",
|
||||
"name":"jqsmith",
|
||||
"roles":[{
|
||||
"id":"100",
|
||||
"name":"compute:admin"
|
||||
},
|
||||
{
|
||||
"id":"101",
|
||||
"name":"object-store:admin",
|
||||
"tenantId":"t1000"
|
||||
}
|
||||
],
|
||||
"roles_links":[]
|
||||
},
|
||||
"serviceCatalog":[{
|
||||
"name":"Cloud Servers",
|
||||
"type":"compute",
|
||||
"endpoints":[{
|
||||
"tenantId":"t1000",
|
||||
"publicURL":"https://compute.north.host.com/v1/t1000",
|
||||
"internalURL":"https://compute.north.internal/v1/t1000",
|
||||
"region":"North",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.host.com/v1/",
|
||||
"versionList":"https://compute.north.host.com/"
|
||||
},
|
||||
{
|
||||
"tenantId":"t1000",
|
||||
"publicURL":"https://compute.north.host.com/v1.1/t1000",
|
||||
"internalURL":"https://compute.north.internal/v1.1/t1000",
|
||||
"region":"North",
|
||||
"versionId":"1.1",
|
||||
"versionInfo":"https://compute.north.host.com/v1.1/",
|
||||
"versionList":"https://compute.north.host.com/"
|
||||
}
|
||||
],
|
||||
"endpoints_links":[]
|
||||
},
|
||||
{
|
||||
"name":"Cloud Files",
|
||||
"type":"object-store",
|
||||
"endpoints":[{
|
||||
"tenantId":"t1000",
|
||||
"publicURL":"https://storage.north.host.com/v1/t1000",
|
||||
"internalURL":"https://storage.north.internal/v1/t1000",
|
||||
"region":"North",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://storage.north.host.com/v1/",
|
||||
"versionList":"https://storage.north.host.com/"
|
||||
},
|
||||
{
|
||||
"tenantId":"t1000",
|
||||
"publicURL":"https://storage.south.host.com/v1/t1000",
|
||||
"internalURL":"https://storage.south.internal/v1/t1000",
|
||||
"region":"South",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://storage.south.host.com/v1/",
|
||||
"versionList":"https://storage.south.host.com/"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name":"DNS-as-a-Service",
|
||||
"type":"dnsextension:dns",
|
||||
"endpoints":[{
|
||||
"tenantId":"t1000",
|
||||
"publicURL":"https://dns.host.com/v2.0/t1000",
|
||||
"versionId":"2.0",
|
||||
"versionInfo":"https://dns.host.com/v2.0/",
|
||||
"versionList":"https://dns.host.com/"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
70
openstack-identity-api/src/docbkx/common/samples/auth.xml
Normal file
70
openstack-identity-api/src/docbkx/common/samples/auth.xml
Normal file
@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<access xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<token id="ab48a9efdfedb23ty3494" expires="2010-11-01T03:32:15-05:00">
|
||||
<tenant id="t1000" name="My Project" />
|
||||
</token>
|
||||
<user id="u123" name="jqsmith">
|
||||
<roles>
|
||||
<role id="100" name="compute:admin"/>
|
||||
<role id="101" name="object-store:admin" tenantId="t1000"/>
|
||||
</roles>
|
||||
</user>
|
||||
<serviceCatalog>
|
||||
<service type="compute" name="Cloud Servers">
|
||||
<endpoint
|
||||
tenantId="t1000"
|
||||
region="North"
|
||||
publicURL="https://compute.north.host.com/v1/t1000"
|
||||
internalURL="https://compute.north.host.internal/v1/t1000">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.host.com/v1/"
|
||||
list="https://compute.north.host.com/"
|
||||
/>
|
||||
</endpoint>
|
||||
<endpoint
|
||||
tenantId="t1000"
|
||||
region="North"
|
||||
publicURL="https://compute.north.host.com/v1.1/t1000"
|
||||
internalURL="https://compute.north.host.internal/v1.1/t1000">
|
||||
<version
|
||||
id="1.1"
|
||||
info="https://compute.north.host.com/v1.1/"
|
||||
list="https://compute.north.host.com/" />
|
||||
</endpoint>
|
||||
</service>
|
||||
<service type="object-store" name="Cloud Files">
|
||||
<endpoint
|
||||
tenantId="t1000"
|
||||
region="North"
|
||||
publicURL="https://storage.north.host.com/v1/t1000"
|
||||
internalURL="https://storage.north.host.internal/v1/t1000">
|
||||
<version
|
||||
id="1"
|
||||
info="https://storage.north.host.com/v1/"
|
||||
list="https://storage.north.host.com/" />
|
||||
</endpoint>
|
||||
<endpoint
|
||||
tenantId="t1000"
|
||||
region="South"
|
||||
publicURL="https://storage.south.host.com/v1/t1000"
|
||||
internalURL="https://storage.south.host.internal/v1/t1000">
|
||||
<version
|
||||
id="1"
|
||||
info="https://storage.south.host.com/v1/"
|
||||
list="https://storage.south.host.com/" />
|
||||
</endpoint>
|
||||
</service>
|
||||
<service type="dnsextension:dns" name="DNS-as-a-Service">
|
||||
<endpoint
|
||||
tenantId="t1000"
|
||||
publicURL="https://dns.host.com/v2.0/t1000">
|
||||
<version
|
||||
id="2.0"
|
||||
info="https://dns.host.com/v2.0/"
|
||||
list="https://dns.host.com/" />
|
||||
</endpoint>
|
||||
</service>
|
||||
</serviceCatalog>
|
||||
</access>
|
@ -0,0 +1,10 @@
|
||||
{
|
||||
"auth":{
|
||||
"OS-KSEC2-ec2Credentials":{
|
||||
"username":"test_user",
|
||||
"secret":"aaaaa",
|
||||
"signature":"bbb"
|
||||
},
|
||||
"tenantId":"77654"
|
||||
}
|
||||
}
|
@ -3,9 +3,8 @@
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0"
|
||||
tenantId="1234">
|
||||
<ec2Credentials
|
||||
xmlns="http://docs.openstack.org/identity/api/ext/OS-EC2/v1.0"
|
||||
xmlns="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
username="testuser"
|
||||
key="aaaaa"
|
||||
signature="bbbbb"
|
||||
tenantId="77654"/>
|
||||
</auth>
|
||||
signature="bbbbb"/>
|
||||
</auth>
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"auth":{
|
||||
"RAX-KSKEY:apiKeyCredentials":{
|
||||
"username":"test_user",
|
||||
"apiKey":"aaaaa-bbbbb-ccccc-12345678"
|
||||
},
|
||||
"tenantId":"1234"
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<auth xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<apiKeyCredentials
|
||||
xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0"
|
||||
username="testuser"
|
||||
apiKey="aaaaa-bbbbb-ccccc-12345678"/>
|
||||
</auth>
|
@ -0,0 +1,9 @@
|
||||
{
|
||||
"auth":{
|
||||
"passwordCredentials":{
|
||||
"username":"test_user",
|
||||
"password":"mypass"
|
||||
},
|
||||
"tenantName":"customer-x"
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<auth xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0"
|
||||
tenantName="customer-x">
|
||||
<passwordCredentials username="test_user" password="test"/>
|
||||
</auth>
|
@ -0,0 +1,8 @@
|
||||
{
|
||||
"auth": {
|
||||
"tenantName": "customer-x",
|
||||
"token": {
|
||||
"id": "abcdefghijk"
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<auth xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0"
|
||||
tenantName="customer-x">
|
||||
<token id="abcdefghijk" />
|
||||
</auth>
|
||||
|
@ -0,0 +1,87 @@
|
||||
{
|
||||
"access":{
|
||||
"token":{
|
||||
"id":"asdasdasd-adsasdads-asdasdasd-adsadsasd",
|
||||
"expires":"2010-11-01T03:32:15-05:00"
|
||||
},
|
||||
"user":{
|
||||
"id":"123",
|
||||
"name":"testName",
|
||||
"roles":[{
|
||||
"id":"234",
|
||||
"name":"compute:admin"
|
||||
},
|
||||
{
|
||||
"id":"235",
|
||||
"name":"object-store:admin",
|
||||
"tenantId":"1"
|
||||
}
|
||||
],
|
||||
"roles_links":[],
|
||||
"RAX-KSGRP:groups":[{
|
||||
"id":"test_global_group_add",
|
||||
"description":"A description ..."
|
||||
}
|
||||
],
|
||||
"RAX-KSGRP:groups_links":[]
|
||||
},
|
||||
"serviceCatalog":[{
|
||||
"name":"Cloud Servers",
|
||||
"type":"compute",
|
||||
"endpoints":[{
|
||||
"publicURL":"https://compute.north.host/v1/1234",
|
||||
"internalURL":"https://compute.north.host/v1/1234",
|
||||
"region":"North",
|
||||
"tenantId":"1234",
|
||||
"versionId":"1.0",
|
||||
"versionInfo":"https://compute.north.host/v1.0/",
|
||||
"versionList":"https://compute.north.host/"
|
||||
},
|
||||
{
|
||||
"publicURL":"https://compute.north.host/v1.1/3456",
|
||||
"internalURL":"https://compute.north.host/v1.1/3456",
|
||||
"region":"North",
|
||||
"tenantId":"3456",
|
||||
"versionId":"1.1",
|
||||
"versionInfo":"https://compute.north.host/v1.1/",
|
||||
"versionList":"https://compute.north.host/"
|
||||
}
|
||||
],
|
||||
"endpoints_links":[]
|
||||
},
|
||||
{
|
||||
"name":"Cloud Files",
|
||||
"type":"object-store",
|
||||
"endpoints":[{
|
||||
"publicURL":"https://compute.north.host/v1/blah-blah",
|
||||
"internalURL":"https://compute.north.host/v1/blah-blah",
|
||||
"region":"South",
|
||||
"tenantId":"1234",
|
||||
"versionId":"1.0",
|
||||
"versionInfo":"uri",
|
||||
"versionList":"uri"
|
||||
},
|
||||
{
|
||||
"publicURL":"https://compute.north.host/v1.1/blah-blah",
|
||||
"internalURL":"https://compute.north.host/v1.1/blah-blah",
|
||||
"region":"South",
|
||||
"tenantId":"1234",
|
||||
"versionId":"1.1",
|
||||
"versionInfo":"https://compute.north.host/v1.1/",
|
||||
"versionList":"https://compute.north.host/"
|
||||
}
|
||||
],
|
||||
"endpoints_links":[{
|
||||
"rel":"next",
|
||||
"href":"https://identity.north.host/v2.0/endpoints?marker=2"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"serviceCatalog_links":[{
|
||||
"rel":"next",
|
||||
"href":"https://identity.host/v2.0/endpoints?session=2hfh8Ar&marker=2"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
@ -1,19 +1,16 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<auth xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<access xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<token expires="2010-11-01T03:32:15-05:00"
|
||||
id="ab48a9efdfedb23ty3494"/>
|
||||
<serviceCatalog>
|
||||
<service type="compute" name="Computers in the Cloud">
|
||||
<endpoint
|
||||
region="North"
|
||||
tenantId="1234"
|
||||
publicURL="https://north.compute.public.com/v2.0/1234"
|
||||
internalURL="https://north.compute.internal.com/v2.0/1234">
|
||||
<version
|
||||
id="2.0"
|
||||
info="https://north.compute.public.com/v2.0/"
|
||||
list="https://north.compute.public.com/" />
|
||||
</endpoint>
|
||||
<endpoint region="North" tenantId="1"
|
||||
publicURL="https://north.compute.public.com/v2.0/1234"
|
||||
internalURL="https://north.compute.internal.com/v2.0/1234">
|
||||
<version id="2.0"
|
||||
info="https://north.compute.public.com/v2.0/"
|
||||
list="https://north.compute.public.com/"/>
|
||||
</endpoint>
|
||||
<endpoint
|
||||
region="South"
|
||||
tenantId="3456"
|
||||
@ -57,4 +54,17 @@
|
||||
</endpoint>
|
||||
</service>
|
||||
</serviceCatalog>
|
||||
<user xmlns="http://docs.openstack.org/identity/api/v2.0"
|
||||
id="123" username="jqsmith">
|
||||
<roles xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<role id="123" name="Admin" tenantId="1234" description="All Access" />
|
||||
<role id="234" name="object-store:admin" tenantId="1"/>
|
||||
|
||||
</roles>
|
||||
<groups xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSGRP/v1.0">
|
||||
<group id="test_global_group_add">
|
||||
<description>A Description of the group</description>
|
||||
</group>
|
||||
</groups>
|
||||
</user>
|
||||
</auth>
|
@ -0,0 +1,64 @@
|
||||
{
|
||||
"choices":[{
|
||||
"id":"v1.0",
|
||||
"status":"DEPRECATED",
|
||||
"links":[{
|
||||
"rel":"self",
|
||||
"href":"http://identity.api.openstack.org/v1.0"
|
||||
}
|
||||
],
|
||||
"media-types":{
|
||||
"values":[{
|
||||
"base":"application/xml",
|
||||
"type":"application/vnd.openstack.identity+xml;version=1.0"
|
||||
},
|
||||
{
|
||||
"base":"application/json",
|
||||
"type":"application/vnd.openstack.identity+json;version=1.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id":"v1.1",
|
||||
"status":"CURRENT",
|
||||
"links":[{
|
||||
"rel":"self",
|
||||
"href":"http://identity.api.openstack.org/v1.1"
|
||||
}
|
||||
],
|
||||
"media-types":{
|
||||
"values":[{
|
||||
"base":"application/xml",
|
||||
"type":"application/vnd.openstack.identity+xml;version=1.1"
|
||||
},
|
||||
{
|
||||
"base":"application/json",
|
||||
"type":"application/vnd.openstack.identity+json;version=1.1"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"id":"v2.0",
|
||||
"status":"BETA",
|
||||
"links":[{
|
||||
"rel":"self",
|
||||
"href":"http://identity.api.openstack.org/v2.0"
|
||||
}
|
||||
],
|
||||
"media-types":{
|
||||
"values":[{
|
||||
"base":"application/xml",
|
||||
"type":"application/vnd.openstack.identity+xml;version=2.0"
|
||||
},
|
||||
{
|
||||
"base":"application/json",
|
||||
"type":"application/vnd.openstack.identity+json;version=2.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"choices_links":""
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
{
|
||||
"credentials":[{
|
||||
"passwordCredentials":{
|
||||
"username":"test_user",
|
||||
"password":"mypass"
|
||||
}
|
||||
}
|
||||
],
|
||||
"credentials_links":[]
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<credentials xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<passwordCredentials username="test_user" password="test"/>
|
||||
</credentials>
|
@ -0,0 +1,16 @@
|
||||
{
|
||||
"credentials":[{
|
||||
"passwordCredentials":{
|
||||
"username":"test_user",
|
||||
"password":"mypass"
|
||||
}
|
||||
},
|
||||
{
|
||||
"RAX-KSKEY:apiKeyCredentials":{
|
||||
"username":"test_user",
|
||||
"apiKey":"aaaaa-bbbbb-ccccc-12345678"
|
||||
}
|
||||
}
|
||||
],
|
||||
"credentials_links":[]
|
||||
}
|
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<credentials xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<passwordCredentials username="test_user" password="test"/>
|
||||
<apiKeyCredentials
|
||||
xmlns="http://docs.rackspace.com/identity/api/ext/RAX-KSKEY/v1.0"
|
||||
username="testuser"
|
||||
apiKey="aaaaa-bbbbb-ccccc-12345678"/>
|
||||
</credentials>
|
@ -0,0 +1,17 @@
|
||||
{
|
||||
"credentials":[{
|
||||
"passwordCredentials":{
|
||||
"username":"test_user",
|
||||
"password":"mypass"
|
||||
}
|
||||
},
|
||||
{
|
||||
"OS-KSEC2-ec2Credentials":{
|
||||
"username":"test_user",
|
||||
"secret":"aaaaa",
|
||||
"signature":"bbb"
|
||||
}
|
||||
}
|
||||
],
|
||||
"credentials_links":[]
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<credentials xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<passwordCredentials username="test_user" password="test"/>
|
||||
<ec2Credentials xmlns="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
username="testuser" key="aaaaa" signature="bbbbb"/>
|
||||
</credentials>
|
@ -0,0 +1,7 @@
|
||||
{
|
||||
"OS-KSEC2-ec2Credentials":{
|
||||
"username":"test_user",
|
||||
"secret":"aaaaa",
|
||||
"signature":"bbb"
|
||||
}
|
||||
}
|
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<ec2Credentials
|
||||
xmlns="http://docs.openstack.org/identity/api/ext/OS-KSEC2/v1.0"
|
||||
username="testuser"
|
||||
key="aaaaa"
|
||||
signature="bbbbb"/>
|
||||
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"endpoint": {
|
||||
"id": 1,
|
||||
"tenantId":1,
|
||||
"region": "North",
|
||||
"type": "compute",
|
||||
"publicURL": "https://compute.north.public.com/v1",
|
||||
"internalURL": "https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId": "1",
|
||||
"versionInfo": "https://compute.north.public.com/v1/",
|
||||
"versionList": "https://compute.north.public.com/"
|
||||
}
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<endpoint
|
||||
id="1"
|
||||
tenantId="1"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="North"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1"
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpoint>
|
@ -0,0 +1,14 @@
|
||||
{
|
||||
"OS-KSCATALOG:endpointTemplate":{
|
||||
"id":1,
|
||||
"region":"North",
|
||||
"global":true,
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/",
|
||||
"enabled":true
|
||||
}
|
||||
}
|
@ -1,17 +1,18 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<endpointTemplate
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0"
|
||||
xmlns="http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0"
|
||||
id="1"
|
||||
region="North"
|
||||
global="true"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
publicURL="https://service-public.com/v1"
|
||||
internalURL="https://service-internal.com/v1"
|
||||
enabled="true">
|
||||
<version
|
||||
ID="1"
|
||||
Info="https://compute.north.public.com/v1/"
|
||||
List="https://compute.north.public.com/"
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpointTemplate>
|
@ -0,0 +1,5 @@
|
||||
{
|
||||
"OS-KSCATALOG:endpointTemplate":{
|
||||
"id":1,
|
||||
}
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<endpointTemplate
|
||||
xmlns="http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:type="EndpointTemplateWithOnlyId"
|
||||
id="1"/>
|
@ -0,0 +1,59 @@
|
||||
{
|
||||
"OS-KSCATALOG:endpointsTemplates": [
|
||||
{
|
||||
"id": 1,
|
||||
"region": "North",
|
||||
"global": true,
|
||||
"type": "compute",
|
||||
"publicURL": "https://compute.north.public.com/v1",
|
||||
"internalURL": "https://compute.north.internal.com/v1",
|
||||
"versionId": "1",
|
||||
"versionInfo": "https://compute.north.public.com/v1/",
|
||||
"versionList": "https://compute.north.public.com/",
|
||||
"enabled": true
|
||||
},
|
||||
{
|
||||
"id": 2,
|
||||
"region": "South",
|
||||
"type": "compute",
|
||||
"publicURL": "https://compute.south.public.com/v1",
|
||||
"internalURL": "https://compute.south.internal.com/v1",
|
||||
"versionId": "1",
|
||||
"versionInfo": "https://compute.south.public.com/v1/",
|
||||
"versionList": "https://compute.south.public.com/",
|
||||
"enabled": false
|
||||
},
|
||||
{
|
||||
"id": 3,
|
||||
"region": "North",
|
||||
"global": true,
|
||||
"type": "object-store",
|
||||
"publicURL": "https://object-store.north.public.com/v1.0",
|
||||
"versionId": "1.0",
|
||||
"versionInfo": "https://object-store.north.public.com/v1.0/",
|
||||
"versionList": "https://object-store.north.public.com/",
|
||||
"enabled": true
|
||||
},
|
||||
{
|
||||
"id": 4,
|
||||
"region": "South",
|
||||
"type": "object-store",
|
||||
"publicURL": "https://object-store.south.public.com/v2",
|
||||
"versionId": "2",
|
||||
"versionInfo": "https://object-store.south.public.com/v2/",
|
||||
"versionList": "https://object-store.south.public.com/",
|
||||
"enabled": true
|
||||
},
|
||||
{
|
||||
"id": 5,
|
||||
"global": true,
|
||||
"type": "OS-DNS:DNS",
|
||||
"publicURL": "https://dns.public.com/v3.2",
|
||||
"versionId": "1.0",
|
||||
"versionInfo": "https://dns.public.com/v1.0/",
|
||||
"versionList": "https://dns.public.com/",
|
||||
"enabled": true
|
||||
}
|
||||
],
|
||||
"OS-KSCATALOG:endpointsTemplates_links": []
|
||||
}
|
@ -1,62 +1,67 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<endpointTemplates xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<endpointTemplates xmlns="http://docs.openstack.org/identity/api/ext/OS-KSCATALOG/v1.0">
|
||||
<endpointTemplate
|
||||
id="1"
|
||||
region="North"
|
||||
global="true"
|
||||
serviceType="compute"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
enabled="true">
|
||||
<version
|
||||
ID="1"
|
||||
List="https://compute.north.public.com/"
|
||||
Info="https://compute.north.public.com/v1"/>
|
||||
id="1"
|
||||
list="https://compute.north.public.com/"
|
||||
info="https://compute.north.public.com/v1"/>
|
||||
</endpointTemplate>
|
||||
<endpointTemplate
|
||||
id="2"
|
||||
region="south"
|
||||
serviceType="service2"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
publicURL="https://service2.public.com/v1"
|
||||
internalURL="https://service2.internal.public.com/v1"
|
||||
enabled="false">
|
||||
<version
|
||||
ID="1"
|
||||
List="https://service1.public.com/"
|
||||
Info="https://service1.public.com/v1"/>
|
||||
id="1"
|
||||
list="https://service1.public.com/"
|
||||
info="https://service1.public.com/v1"/>
|
||||
</endpointTemplate>
|
||||
<endpointTemplate
|
||||
id="3"
|
||||
region="DFW"
|
||||
global="true"
|
||||
serviceType="service1"
|
||||
type="ext1:service1"
|
||||
name="Compute"
|
||||
publicURL="https://service1.public.com/v1"
|
||||
enabled="true">
|
||||
<version
|
||||
ID="1"
|
||||
List="https://service1.public.com/"
|
||||
Info="https://service1.public.com/v1"/>
|
||||
id="1"
|
||||
list="https://service1.public.com/"
|
||||
info="https://service1.public.com/v1"/>
|
||||
</endpointTemplate>
|
||||
<endpointTemplate
|
||||
id="4"
|
||||
region="ORD"
|
||||
serviceType="service2"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
publicURL="https://service2.public.com/v1"
|
||||
enabled="true">
|
||||
<version
|
||||
ID="1"
|
||||
List="https://service1.public.com/"
|
||||
Info="https://service1.public.com/v1"/>
|
||||
id="1"
|
||||
list="https://service1.public.com/"
|
||||
info="https://service1.public.com/v1"/>
|
||||
</endpointTemplate>
|
||||
<endpointTemplate
|
||||
id="5"
|
||||
global="true"
|
||||
serviceType="service3"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
publicURL="https://service3.public.com/v1">
|
||||
<version
|
||||
ID="1"
|
||||
List="https://service1.public.com/"
|
||||
Info="https://service1.public.com/v1"/>
|
||||
id="1"
|
||||
list="https://service1.public.com/"
|
||||
info="https://service1.public.com/v1"/>
|
||||
</endpointTemplate>
|
||||
</endpointTemplates>
|
@ -0,0 +1,64 @@
|
||||
{
|
||||
"endpoints":[{
|
||||
"id":1,
|
||||
"tenantId":"1",
|
||||
"region":"North",
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/"
|
||||
},
|
||||
{
|
||||
"id":2,
|
||||
"tenantId":"1",
|
||||
"region":"South",
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/"
|
||||
},
|
||||
{
|
||||
"id":3,
|
||||
"tenantId":"1",
|
||||
"region":"East",
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/"
|
||||
},
|
||||
{
|
||||
"id":4,
|
||||
"tenantId":"1",
|
||||
"region":"West",
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/"
|
||||
},
|
||||
{
|
||||
"id":5,
|
||||
"tenantId":"1",
|
||||
"region":"Global",
|
||||
"type":"compute",
|
||||
"publicURL":"https://compute.north.public.com/v1",
|
||||
"internalURL":"https://compute.north.internal.com/v1",
|
||||
"adminURL" : "https://compute.north.internal.com/v1",
|
||||
"versionId":"1",
|
||||
"versionInfo":"https://compute.north.public.com/v1/",
|
||||
"versionList":"https://compute.north.public.com/"
|
||||
}
|
||||
],
|
||||
"endpoints_links":[]
|
||||
}
|
@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<endpoints
|
||||
xmlns="http://docs.openstack.org/identity/api/v2.0">
|
||||
<endpoint
|
||||
id="1"
|
||||
tenantId="1"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="North"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpoint>
|
||||
<endpoint
|
||||
id="2"
|
||||
tenantId="2"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="South"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpoint>
|
||||
<endpoint
|
||||
id="3"
|
||||
tenantId="1"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="East"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1"
|
||||
tenantId="1"
|
||||
/>
|
||||
<endpoint
|
||||
id="4"
|
||||
tenantId="1"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="West"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpoint>
|
||||
<endpoint
|
||||
id="5"
|
||||
tenantId="1"
|
||||
type="compute"
|
||||
name="Compute"
|
||||
region="Global"
|
||||
publicURL="https://compute.north.public.com/v1"
|
||||
internalURL="https://compute.north.internal.com/v1"
|
||||
adminURL="https://compute.north.internal.com/v1">
|
||||
<version
|
||||
id="1"
|
||||
info="https://compute.north.public.com/v1/"
|
||||
list="https://compute.north.public.com/"
|
||||
/>
|
||||
</endpoint>
|
||||
</endpoints>
|
@ -1,14 +1,13 @@
|
||||
{
|
||||
"user": {
|
||||
"roles": {
|
||||
"values": [
|
||||
"roles": [
|
||||
{
|
||||
"tenantId": "1234",
|
||||
"id": "Admin"
|
||||
}
|
||||
]
|
||||
},
|
||||
"id": "u1000",
|
||||
],
|
||||
"roles_links": [],
|
||||
"id": "1000",
|
||||
"username": "jqsmith",
|
||||
"email": "john.smith@example.org",
|
||||
"enabled": true,
|
@ -0,0 +1,40 @@
|
||||
{
|
||||
"extensions":[{
|
||||
"name":"Reset Password Extension",
|
||||
"namespace":"http://docs.rackspacecloud.com/identity/api/ext/rpe/v2.0",
|
||||
"alias":"RS-RPE",
|
||||
"updated":"2011-01-22T13:25:27-06:00",
|
||||
"description":"Adds the capability to reset a user's password. The user is emailed when the password has been reset.",
|
||||
"links":[{
|
||||
"rel":"describedby",
|
||||
"type":"application/pdf",
|
||||
"href":"http://docs.rackspacecloud.com/identity/api/ext/identity-rpe-20111111.pdf"
|
||||
},
|
||||
{
|
||||
"rel":"describedby",
|
||||
"type":"application/vnd.sun.wadl+xml",
|
||||
"href":"http://docs.rackspacecloud.com/identity/api/ext/identity-rpe.wadl"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name":"User Metadata Extension",
|
||||
"namespace":"http://docs.rackspacecloud.com/identity/api/ext/meta/v2.0",
|
||||
"alias":"RS-META",
|
||||
"updated":"2011-01-12T11:22:33-06:00",
|
||||
"description":"Allows associating arbritrary metadata with a user.",
|
||||
"links":[{
|
||||
"rel":"describedby",
|
||||
"type":"application/pdf",
|
||||
"href":"http://docs.rackspacecloud.com/identity/api/ext/identity-meta-20111201.pdf"
|
||||
},
|
||||
{
|
||||
"rel":"describedby",
|
||||
"type":"application/vnd.sun.wadl+xml",
|
||||
"href":"http://docs.rackspacecloud.com/identity/api/ext/identity-meta.wadl"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"extensions_links":[]
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
{
|
||||
"user":{
|
||||
"roles":[{
|
||||
"tenantId":"1234",
|
||||
"id":"Admin"
|
||||
},
|
||||
{
|
||||
"tenantId":"1234",
|
||||
"id":"DBUser"
|
||||
}
|
||||
],
|
||||
"roles_links":[{
|
||||
"rel":"next",
|
||||
"href":"http://identity.api.openstack.org/v2.0/tenants/1234/users/u1000/roles?marker=Super"
|
||||
}
|
||||
],
|
||||
"id":"u1000",
|
||||
"username":"jqsmith",
|
||||
"email":"john.smith@example.org",
|
||||
"enabled":true
|
||||
}
|
||||
}
|
@ -0,0 +1 @@
|
||||
This operation does not require a request body.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user