# http request line
[http transport]

## Files
file | axis2_http_request_line.h
| axis2 HTTP Request Line

## Typedefs
typedef struct axis2_http_request_line | axis2_http_request_line_t
## Functions
AXIS2_EXTERN axis2_char_t * | axis2_http_request_line_get_method (const axis2_http_request_line_t *request_line, const axutil_env_t *env)
AXIS2_EXTERN axis2_char_t * | axis2_http_request_line_get_http_version (const axis2_http_request_line_t *request_line, const axutil_env_t *env)
AXIS2_EXTERN axis2_char_t * | axis2_http_request_line_get_uri (const axis2_http_request_line_t *request_line, const axutil_env_t *env)
AXIS2_EXTERN axis2_char_t * | axis2_http_request_line_to_string (axis2_http_request_line_t *request_line, const axutil_env_t *env)
AXIS2_EXTERN void | axis2_http_request_line_free (axis2_http_request_line_t *request_line, const axutil_env_t *env)
AXIS2_EXTERN axis2_http_request_line_t * | axis2_http_request_line_create (const axutil_env_t *env, const axis2_char_t *method, const axis2_char_t *uri, const axis2_char_t *http_version)
AXIS2_EXTERN axis2_http_request_line_t * | axis2_http_request_line_parse_line (const axutil_env_t *env, const axis2_char_t *str)

## Typedef Documentation

typedef struct axis2_http_request_line axis2_http_request_line_t

Type name for struct axis2_http_request_line

## Function Documentation

AXIS2_EXTERN axis2_http_request_line_t* axis2_http_request_line_create | ( | const axutil_env_t * | env,
|  | const axis2_char_t * | method,
|  | const axis2_char_t * | uri,
|  | const axis2_char_t * | http_version |
| ) |  |  |

Parameters:

  | env | pointer to environment struct
  | method | pointer to method
  | uri | pointer to uri
  | http_version | pointer to http version

AXIS2_EXTERN void axis2_http_request_line_free | ( | axis2_http_request_line_t * | request_line,
|  | const axutil_env_t * | env |
| ) |  |  |

Parameters:

  | request_line | pointer to request line
  | env | pointer to environment struct

Returns:
  AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_char_t* axis2_http_request_line_get_http_version | ( | const axis2_http_request_line_t * | request_line,
|  | const axutil_env_t * | env |
| ) |  |  |

Parameters:

  | request_line | pointer to request line
  | env | pointer to environment struct

AXIS2_EXTERN axis2_char_t* axis2_http_request_line_get_method | ( | const axis2_http_request_line_t * | request_line,
|  | const axutil_env_t * | env |
| ) |  |  |

Parameters:

  | request_line | pointer to request line
  | env | pointer to environment struct

AXIS2_EXTERN axis2_char_t* axis2_http_request_line_get_uri | ( | const axis2_http_request_line_t * | request_line,
|  | const axutil_env_t * | env |
| ) |  |  |

Parameters:

  | request_line | pointer to request line
  | env | pointer to environment struct

AXIS2_EXTERN axis2_http_request_line_t* axis2_http_request_line_parse_line | ( | const axutil_env_t * | env,
|  | const axis2_char_t * | str |
| ) |  |  |

Parses a line "<http method> <uri location> <http version>CRLF" and creates http_request_line object. E.g "POST /axis2/services/echo HTTP/1.1\r\n"

Parameters:

  | env | pointer to environment struct
  | str | pointer to the line to be parsed

Returns:
  created object if success. NULL otherwise

AXIS2_EXTERN axis2_char_t* axis2_http_request_line_to_string | ( | axis2_http_request_line_t * | request_line,
|  | const axutil_env_t * | env |
| ) |  |  |

Parameters:

  | request_line | pointer to request line
  | env | pointer to environment struct