Http Server: Override the default error message

When a non default error message is return (like in the case of
exception) That message needs to be used as the content body.

Signed-off-by: Amnon Heiman <amnon@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Http Server: Add enum support to code generation

When a parameter is declare as enum in the swagger definition file, the
code generation will create an enum internal namespace to the operation.

To the set of values a NUM_ITEMS value is added as the last value, so
if an enum op is declared as:
"enum":["MKDIRS", "RENAME"] in an operation putFile
The declared enum would be:

namespace ns_putFile {

enum class op {
MKDIRS, RENAME, NUM_ITEMS
};

For each enum a translation from string is created for it. The
translation function return the enum value if it is found or NUM_ITEMS
if it is not found, similar to string method that returns npos.

Signed-off-by: Amnon Heiman <amnon@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Http server: Additional file support

The patch series change the file api implementation to use enum over
string.

It also introduce the following operation:
GET
GETFILESTATUS - return information on a file
LISTSTATUS -  return information on all files in a directory

PUT
MKDIRS - create a directory
RENAME - rename a file or a directory
COPY - copy a file

The simplest way of testing the changes is to use the Swagger-UI file
operation.

Signed-off-by: Amnon Heiman <amnon@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Http Server: Testing to support additional os version

Support os version of type: v0.06-rc4

Signed-off-by: Amnon Heiman <amnon@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>
Http Server testing: Adding file API testing

Add testing for LISTSTATUS, STATUS, COPY, RENAME, DELETE

Signed-off-by: Amnon Heiman <amnon@cloudius-systems.com>
Signed-off-by: Avi Kivity <avi@cloudius-systems.com>