# service name
[WS-Addressing]

## Files
file | axis2_svc_name.h
## Typedefs
typedef struct axis2_svc_name | axis2_svc_name_t
## Functions
AXIS2_EXTERN axis2_svc_name_t * | axis2_svc_name_create (const axutil_env_t *env, const axutil_qname_t *qname, const axis2_char_t *endpoint_name)
AXIS2_EXTERN const axutil_qname_t * | axis2_svc_name_get_qname (const axis2_svc_name_t *svc_name, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t | axis2_svc_name_set_qname (struct axis2_svc_name *svc_name, const axutil_env_t *env, const axutil_qname_t *qname)
AXIS2_EXTERN const axis2_char_t * | axis2_svc_name_get_endpoint_name (const axis2_svc_name_t *svc_name, const axutil_env_t *env)
AXIS2_EXTERN axis2_status_t | axis2_svc_name_set_endpoint_name (struct axis2_svc_name *svc_name, const axutil_env_t *env, const axis2_char_t *endpoint_name)
AXIS2_EXTERN void | axis2_svc_name_free (struct axis2_svc_name *svc_name, const axutil_env_t *env)

## Detailed Description

service name provides a full description of the service endpoint. service name contains a QName identifying the WSDL service element that contains the definition of the endpoint being conveyed. It also contains an optional non-qualified name that identifies the specific port in the service that corresponds to the endpoint.

## Typedef Documentation

typedef struct axis2_svc_name axis2_svc_name_t

Type name for struct axis2_svc_name

## Function Documentation

AXIS2_EXTERN axis2_svc_name_t* axis2_svc_name_create | ( | const axutil_env_t * | env,
|  | const axutil_qname_t * | qname,
|  | const axis2_char_t * | endpoint_name |
| ) |  |  |

Creates a service name struct with given QName and endpoint name.

Parameters:

  | env | pointer to environment struct
  | qname | pointer to QName, this method creates a clone of QName
  | endpoint_name | endpoint name string

Returns:
  pointer to newly create service name struct

AXIS2_EXTERN void axis2_svc_name_free | ( | struct axis2_svc_name * | svc_name,
|  | const axutil_env_t * | env |
| ) |  |  |

Frees service name struct.

Parameters:

  | svc_name | pointer to service name struct
  | env | pointer to environment struct

Returns:
  void

AXIS2_EXTERN const axis2_char_t* axis2_svc_name_get_endpoint_name | ( | const axis2_svc_name_t * | svc_name,
|  | const axutil_env_t * | env |
| ) |  |  |

Gets endpoint name. Endpoint name is a non-qualified name that identifies the specific port in the service that corresponds to the endpoint.

Parameters:

  | svc_name | pointer to service name struct
  | env | pointer to environment struct

Returns:
  endpoint name string

AXIS2_EXTERN const axutil_qname_t* axis2_svc_name_get_qname | ( | const axis2_svc_name_t * | svc_name,
|  | const axutil_env_t * | env |
| ) |  |  |

Gets QName. QName identifies the WSDL service element that contains the definition of the endpoint being conveyed.

Parameters:

  | svc_name | pointer to service name struct
  | env | pointer to environment struct

Returns:
  pointer to QName struct, returns a reference, not a cloned copy

AXIS2_EXTERN axis2_status_t axis2_svc_name_set_endpoint_name | ( | struct axis2_svc_name * | svc_name,
|  | const axutil_env_t * | env,
|  | const axis2_char_t * | endpoint_name |
| ) |  |  |

Sets endpoint name. Endpoint name is a non-qualified name that identifies the specific port in the service that corresponds to the endpoint.

Parameters:

  | svc_name | pointer to service name struct
  | env | pointer to environment struct
  | endpoint_name | endpoint name string

Returns:
  AXIS2_SUCCESS on success, else AXIS2_FAILURE

AXIS2_EXTERN axis2_status_t axis2_svc_name_set_qname | ( | struct axis2_svc_name * | svc_name,
|  | const axutil_env_t * | env,
|  | const axutil_qname_t * | qname |
| ) |  |  |

Sets QName. QName identifies the WSDL service element that contains the definition of the endpoint being conveyed.

Parameters:

  | svc_name | pointer to service name struct
  | env | pointer to environment struct
  | qname | pointer to QName, service name creates a clone of QName

Returns:
  AXIS2_SUCCESS on success, else AXIS2_FAILURE