Remove extra whitespace
Cleanup extraneous whitespace like end of line whitespace or whitespace before </para>. Change-Id: I83a26dae9f6f7e9af522c2418d64c2efae9d61f1
This commit is contained in:
parent
d299e6a3e7
commit
6e402a3c91
@ -44,11 +44,11 @@ format="SVG" scale="60"/>
|
||||
token HTTP x-header, defined as <code>X-Auth-Token</code>.
|
||||
Clients obtain this token, along with the Cloud Servers
|
||||
API URL, by first using an authentication service and
|
||||
supplying a valid username and API access key. </para>
|
||||
supplying a valid username and API access key.</para>
|
||||
<simplesect>
|
||||
<title>Request</title>
|
||||
<para>To authenticate, you must supply your username and
|
||||
API access key in x-headers: </para>
|
||||
API access key in x-headers:</para>
|
||||
<para>
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
@ -71,13 +71,13 @@ format="SVG" scale="60"/>
|
||||
Keystone), or you can use your own
|
||||
authentication system. Place your access
|
||||
key in the <code>X-Auth-Key</code>
|
||||
x-header. </para>
|
||||
x-header.</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
<para> </para>
|
||||
<example>
|
||||
<title>Authentication HTTP Request </title>
|
||||
<title>Authentication HTTP Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/auth-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
</simplesect>
|
||||
|
@ -37,7 +37,7 @@ format="SVG" scale="60"/>
|
||||
data. You can store an unlimited quantity of files and each
|
||||
file can be as large as 5 GBs, plus with large object
|
||||
creation, you can upload and store objects of virtually any
|
||||
size. </para>
|
||||
size.</para>
|
||||
<para>OpenStack Object Storage allows users to store and retrieve
|
||||
files and content through a simple Web Service interface
|
||||
(ReST: Representational State Transfer). There are also
|
||||
@ -51,7 +51,7 @@ format="SVG" scale="60"/>
|
||||
</para>
|
||||
<para>We welcome feedback, comments, and bug reports at <link
|
||||
xlink:href="http://bugs.launchpad.net/swift"
|
||||
>http://bugs.launchpad.net/swift</link>. </para>
|
||||
>http://bugs.launchpad.net/swift</link>.</para>
|
||||
<section xml:id="intended-audience-object-dev-guide">
|
||||
<title>Intended Audience</title>
|
||||
<para>This guide is intended to assist software developers who
|
||||
@ -63,7 +63,7 @@ format="SVG" scale="60"/>
|
||||
here, you should first have a general understanding of the
|
||||
OpenStack Object Storage service and have access to an
|
||||
installation of OpenStack Object Storage. You should also
|
||||
be familiar with: </para>
|
||||
be familiar with:</para>
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem>
|
||||
<para>ReSTful web services</para>
|
||||
|
@ -41,11 +41,11 @@ format="SVG" scale="60"/>
|
||||
UNIX®-like environments and Mac OS X® and can be
|
||||
downloaded for Windows®. For more information on cURL,
|
||||
visit <link xlink:href="http://curl.haxx.se/"
|
||||
>http://curl.haxx.se/</link>. </para>
|
||||
>http://curl.haxx.se/</link>.</para>
|
||||
<para>cURL allows you to transmit and receive HTTP requests
|
||||
and responses from the command-line or from within a shell
|
||||
script. This makes it possible to work with the ReST API
|
||||
directly without using one of the client APIs. </para>
|
||||
directly without using one of the client APIs.</para>
|
||||
<para>The following cURL command-line options will be
|
||||
used</para>
|
||||
<variablelist>
|
||||
@ -139,7 +139,7 @@ Content-Type: text/plain
|
||||
</section>
|
||||
<section xml:id="listing-and-creating-storage-containers">
|
||||
<title>Listing and Creating Containers</title>
|
||||
<para> The simplest operation for Object Storage is to simply
|
||||
<para>The simplest operation for Object Storage is to simply
|
||||
list the containers you have, which when you don't have
|
||||
any containers yet isn't terribly exciting:</para>
|
||||
<example>
|
||||
|
@ -57,41 +57,41 @@ format="SVG" scale="60"/>
|
||||
pseudo-directories in your container, the index page displays
|
||||
by default for each sub-directory. If your pseudo-directory
|
||||
does not have a file with the same name as your index file,
|
||||
visits to the sub-directory return a 404 error. </para>
|
||||
visits to the sub-directory return a 404 error.</para>
|
||||
<para>You also have the option of displaying a list of files in
|
||||
your pseudo-directory instead of a web page. You do this by
|
||||
setting the <code>X-Container-Meta-Web-Listings</code> header
|
||||
to <code>TRUE</code>. You may add style to your file listing
|
||||
by setting <code>X-Container-Meta-Web-Listings-CSS:</code> to
|
||||
a style sheet (for example, <code>lists.css</code>). </para>
|
||||
a style sheet (for example, <code>lists.css</code>).</para>
|
||||
<section xml:id="Examples_for_static_web-dle4025">
|
||||
<title>Static Web Middleware through swift</title>
|
||||
<example>
|
||||
<title>Make Container Publicly Readable</title>
|
||||
<para> Make the container publicly readable. Once the
|
||||
<para>Make the container publicly readable. Once the
|
||||
container is publicly readable, you may access your
|
||||
objects directly, but you will need to set the index
|
||||
file to browse the main site URL and its
|
||||
sub-directories. </para>
|
||||
sub-directories.</para>
|
||||
<literallayout class="monospaced">swift post -r '.r:*' container</literallayout>
|
||||
</example>
|
||||
<example>
|
||||
<title>Set Site Index File</title>
|
||||
<para>Set the index file. In this case,
|
||||
<code>index.html</code> is the default file
|
||||
displayed when the site displays. </para>
|
||||
displayed when the site displays.</para>
|
||||
<literallayout class="monospaced">swift post -m 'web-index:index.html' container</literallayout>
|
||||
</example>
|
||||
<example>
|
||||
<title>Enable File Listing</title>
|
||||
<para>Turn on file listing. If you do not set the index
|
||||
file, list the objects in the container. Instructions
|
||||
on styling the list with the CSS follow. </para>
|
||||
on styling the list with the CSS follow.</para>
|
||||
<literallayout class="monospaced">swift post -m 'web-listings: true' container</literallayout>
|
||||
</example>
|
||||
<example>
|
||||
<title>Enable CSS for File Listing</title>
|
||||
<para>Style the file listing. </para>
|
||||
<para>Style the file listing.</para>
|
||||
<literallayout class="monospaced"><xi:include href="samples/file-listings-css-set-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
</section>
|
||||
@ -100,8 +100,8 @@ format="SVG" scale="60"/>
|
||||
<para>You can create and set custom error pages for visitors
|
||||
to your website; currently, only 401 (Unauthorized) and
|
||||
404 (Not Found) errors are supported. To do this, set the
|
||||
metadata header, <code>X-Container-Meta-Web-Error</code>. </para>
|
||||
<para> Error pages are served with the <status> code
|
||||
metadata header, <code>X-Container-Meta-Web-Error</code>.</para>
|
||||
<para>Error pages are served with the <status> code
|
||||
prepended to the name of the error page you set. For
|
||||
instance, if you set
|
||||
<code>X-Container-Meta-Web-Error</code> to
|
||||
@ -110,9 +110,9 @@ format="SVG" scale="60"/>
|
||||
will display <code>404error.html</code>. You must have
|
||||
both of these pages created in your container when you set
|
||||
the <code>X-Container-Meta-Web-Error</code> metadata, or
|
||||
your site will display generic error pages. </para>
|
||||
your site will display generic error pages.</para>
|
||||
<para>Set the <code>X-Container-Meta-Web-Error</code> metadata
|
||||
once for your entire static website. </para>
|
||||
once for your entire static website.</para>
|
||||
<example>
|
||||
<title>Set Error Pages for Static Website Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/error-page-set-req.txt" parse="text"/></literallayout>
|
||||
|
@ -207,7 +207,7 @@ format="SVG" scale="60"/>
|
||||
<literallayout class="monospaced"><xi:include href="samples/objects-get-details-http-json-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
<example>
|
||||
<title>Get Objects Details HTTP and JSON Response </title>
|
||||
<title>Get Objects Details HTTP and JSON Response</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/objects-get-details-http-json-resp.txt" parse="text"/></literallayout>
|
||||
<programlisting language="json"><xi:include href="samples/objects-get-details-resp.json" parse="text"/></programlisting>
|
||||
</example>
|
||||
@ -216,7 +216,7 @@ format="SVG" scale="60"/>
|
||||
<literallayout class="monospaced"><xi:include href="samples/objects-get-details-http-xml-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
<example>
|
||||
<title>Objects Details Request: XML </title>
|
||||
<title>Objects Details Request: XML</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/objects-get-details-http-xml-resp.txt" parse="text"/></literallayout>
|
||||
<programlisting language="xml"><xi:include href="samples/objects-get-details-resp.xml" parse="text"/></programlisting>
|
||||
</example>
|
||||
@ -263,7 +263,7 @@ reddelicious</literallayout>
|
||||
list.</para>
|
||||
<para>By using <code>end_marker</code> we can limit
|
||||
the result set to object names less than the given
|
||||
value. </para>
|
||||
value.</para>
|
||||
<literallayout class="monospaced"><xi:include href="samples/objects-list-end-marker-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
</section>
|
||||
@ -294,11 +294,11 @@ reddelicious</literallayout>
|
||||
Request</title>
|
||||
<para>To display a list of all the objects in the
|
||||
storage container, use &GET; without a
|
||||
<code>delimiter</code> or <code>prefix</code>. </para>
|
||||
<code>delimiter</code> or <code>prefix</code>.</para>
|
||||
<literallayout class="monospaced">GET /v1/AccountString/backups</literallayout>
|
||||
<para>The system returns status code 2xx (between 200
|
||||
and 299, inclusive) and the requested list of the
|
||||
objects. </para>
|
||||
objects.</para>
|
||||
<literallayout class="monospaced">photos/animals/cats/persian.jpg
|
||||
photos/animals/cats/siamese.jpg
|
||||
photos/animals/dogs/corgi.jpg
|
||||
@ -313,7 +313,7 @@ photos/plants/rose.jpg</literallayout>
|
||||
results. Any character may be used as a delimiter.
|
||||
However, to use <code>delimiter</code> with
|
||||
pseudo-directories, use the parameter slash
|
||||
(<literal>/</literal>). </para>
|
||||
(<literal>/</literal>).</para>
|
||||
<literallayout class="monospaced">GET /v1/AccountString/backups?delimiter=/</literallayout>
|
||||
<para>The system returns status code 2xx (between 200
|
||||
and 299, inclusive) and the requested matching
|
||||
@ -324,17 +324,17 @@ photos/plants/rose.jpg</literallayout>
|
||||
They have a content-type of
|
||||
<literal>application/directory</literal> and are in
|
||||
the <literal>subdir</literal> section of json and xml
|
||||
results. </para>
|
||||
results.</para>
|
||||
<literallayout class="monospaced">photos/</literallayout>
|
||||
<para>Use the <code>prefix</code> parameter with the
|
||||
<code>delimiter</code> parameter to view the
|
||||
objects inside a pseudo-directory, including
|
||||
further nested pseudo-directories. </para>
|
||||
further nested pseudo-directories.</para>
|
||||
<literallayout class="monospaced">GET /v1/AccountString/backups?prefix=photos/&delimiter=/</literallayout>
|
||||
<para>The system returns status code 2xx (between 200
|
||||
and 299, inclusive) and the objects and
|
||||
pseudo-directories within the top level
|
||||
pseudo-directory. </para>
|
||||
pseudo-directory.</para>
|
||||
<literallayout class="monospaced">photos/animals/
|
||||
photos/me.jpg
|
||||
photos/plants/ </literallayout>
|
||||
@ -346,7 +346,7 @@ photos/plants/ </literallayout>
|
||||
called <code>dogs</code> within the
|
||||
pseudo-directory <code>animals</code>. In order to
|
||||
navigate directly to the files contained within
|
||||
<code>dogs</code>, enter the below command. </para>
|
||||
<code>dogs</code>, enter the below command.</para>
|
||||
<literallayout class="monospaced">GET /v1/AccountString/backups?prefix=photos/animals/dogs/&delimiter=/ </literallayout>
|
||||
<para>The system returns status code 2xx (between 200
|
||||
and 299, inclusive) and the objects and
|
||||
@ -368,9 +368,9 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<para>Containers can be assigned custom metadata by including
|
||||
additional HTTP headers on the &PUT; request. The custom
|
||||
metadata is assigned to a container via HTTP headers
|
||||
identified with the <code>X-Container-Meta-</code> prefix. </para>
|
||||
identified with the <code>X-Container-Meta-</code> prefix.</para>
|
||||
<example>
|
||||
<title>Create Container HTTP Request </title>
|
||||
<title>Create Container HTTP Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/container-create-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
<para>No content is returned. A status code of 201 (Created)
|
||||
@ -417,7 +417,7 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<title>Delete Container</title>
|
||||
<para>&DELETE; operations against a storage container
|
||||
permanently remove it. The container must be empty before
|
||||
it can be deleted. </para>
|
||||
it can be deleted.</para>
|
||||
<para>A &HEAD; request against the container can be used to
|
||||
determine if it contains any objects.</para>
|
||||
<example>
|
||||
@ -463,10 +463,10 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<title>Create or Update Container Metadata</title>
|
||||
<para>You may create any custom or arbitrary metadata headers
|
||||
as you find useful. They must, however, take the format
|
||||
<code>X-Container-Meta-</code>. </para>
|
||||
<code>X-Container-Meta-</code>.</para>
|
||||
<para>To create or update the arbitrary container metadata,
|
||||
use the &POST; query. Subsequent requests of the same
|
||||
key/value pair overwrites the previous value. </para>
|
||||
key/value pair overwrites the previous value.</para>
|
||||
<example>
|
||||
<title>Update Container Metadata HTTP Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/container-update-metadata-req.txt" parse="text"/></literallayout>
|
||||
@ -474,7 +474,7 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<para>No response body is returned. A status code of 2xx
|
||||
(between 200 and 299, inclusive) indicates success; status 404
|
||||
(Not Found) is returned when the requested container does not
|
||||
exist. </para>
|
||||
exist.</para>
|
||||
<example>
|
||||
<title>Update Container Metadata HTTP Response</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/container-update-metadata-resp.txt" parse="text"/></literallayout>
|
||||
@ -498,7 +498,7 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<title>Delete Container Metadata</title>
|
||||
<para>To delete a metadata header send an empty value for that
|
||||
particular header, such as
|
||||
<code>X-Container-Meta-Book:</code>. </para>
|
||||
<code>X-Container-Meta-Book:</code>.</para>
|
||||
<para>If the tool you're using to communicate with Object
|
||||
Storage doesn't support sending empty headers (older
|
||||
versions of curl) send the header
|
||||
@ -512,7 +512,7 @@ photos/animals/dogs/terrier.jpg</literallayout>
|
||||
<title>Delete Container Metadata HTTP Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/container-delete-metadata-req.txt" parse="text"/></literallayout>
|
||||
<para>No response body is returned. A status code of 2xx
|
||||
(between 200 and 299, inclusive) indicates success. </para>
|
||||
(between 200 and 299, inclusive) indicates success.</para>
|
||||
</example>
|
||||
</section>
|
||||
</section>
|
||||
|
@ -458,7 +458,7 @@
|
||||
header in a &PUT; operation. This creates a
|
||||
new manifest object that shares the same set
|
||||
of segment objects as the original manifest
|
||||
object. </td>
|
||||
object.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
@ -845,10 +845,10 @@
|
||||
remove an object and you have five total versions of it,
|
||||
you must &DELETE; it five times.</para>
|
||||
<note>
|
||||
<para> A large-object manifest file cannot be versioned,
|
||||
<para>A large-object manifest file cannot be versioned,
|
||||
but it may point to versioned segments.</para>
|
||||
</note>
|
||||
<para> To turn off Object Versioning on your current version
|
||||
<para>To turn off Object Versioning on your current version
|
||||
container, remove its <code>X-Versions-Location</code>
|
||||
metadata by sending an empty key value.</para>
|
||||
<example>
|
||||
|
@ -163,7 +163,7 @@ format="SVG" scale="60"/>
|
||||
<code>format=json</code> argument is appended to
|
||||
the storage account URL, the service serves extended
|
||||
container information serialized in the chosen format.
|
||||
The sample responses are formatted for readability. </para>
|
||||
The sample responses are formatted for readability.</para>
|
||||
<para>The following HTTP request asks for a JSON response,
|
||||
so the response returns an HTTP header and a JSON
|
||||
response.</para>
|
||||
@ -238,7 +238,7 @@ oranges</literallayout>
|
||||
list.</para>
|
||||
<para>By using <code>end_marker</code> we can limit
|
||||
the result set to container names less than the
|
||||
given value. </para>
|
||||
given value.</para>
|
||||
<literallayout class="monospaced"><xi:include href="samples/large-container-list-filter-end-marker-req.txt" parse="text"/></literallayout>
|
||||
<literallayout class="monospaced">apples
|
||||
bananas
|
||||
@ -276,16 +276,16 @@ kiwis</literallayout>
|
||||
<title>Create or Update Account Metadata</title>
|
||||
<para>You can associate custom metadata headers with the
|
||||
account level URI. These headers must take the format
|
||||
<code>X-Account-Meta-*</code>. </para>
|
||||
<code>X-Account-Meta-*</code>.</para>
|
||||
<para>To create or update an account metadata header use the
|
||||
&POST; query. Subsequent requests for the same key/value
|
||||
pair overwrite the previous value. </para>
|
||||
pair overwrite the previous value.</para>
|
||||
<example>
|
||||
<title>Update Account Metadata HTTP Request</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/account-update-metadata-req.txt" parse="text"/></literallayout>
|
||||
</example>
|
||||
<para>No response body is returned. A status code of 2xx
|
||||
(between 200 and 299, inclusive) indicates success. </para>
|
||||
(between 200 and 299, inclusive) indicates success.</para>
|
||||
<example>
|
||||
<title>Update Account Metadata HTTP Response</title>
|
||||
<literallayout class="monospaced"><xi:include href="samples/account-update-metadata-resp.txt" parse="text"/></literallayout>
|
||||
@ -306,7 +306,7 @@ kiwis</literallayout>
|
||||
<title>Delete Account Metadata</title>
|
||||
<para>To delete a metadata header, send an empty value for
|
||||
that particular header, such as for the
|
||||
<code>X-Account-Meta-Book</code> header. </para>
|
||||
<code>X-Account-Meta-Book</code> header.</para>
|
||||
<para>If the tool you use to communicate with Object Storage,
|
||||
such as older versions of cURL, does not support empty
|
||||
headers, send the
|
||||
|
Loading…
x
Reference in New Issue
Block a user