AT&T ECOMP Vendor Event Listener library  0.1
Functions
evel_other.c File Reference

Implementation of EVEL functions relating to Other. More...

#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include "evel.h"
#include "evel_internal.h"
Include dependency graph for evel_other.c:

Go to the source code of this file.

Functions

EVENT_OTHERevel_new_other ()
 Create a new Other event. More...
 
void evel_other_type_set (EVENT_OTHER *other, const char *const type)
 Set the Event Type property of the Other. More...
 
void evel_other_field_add (EVENT_OTHER *other, char *name, char *value)
 Add a field name/value pair to the Other. More...
 
void evel_json_encode_other (EVEL_JSON_BUFFER *jbuf, EVENT_OTHER *event)
 Encode the Other in JSON according to AT&T's schema for the event type. More...
 
void evel_free_other (EVENT_OTHER *event)
 Free an Other. More...
 

Detailed Description

Implementation of EVEL functions relating to Other.

License

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the AT&T.
  4. Neither the name of AT&T nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY AT&T INTELLECTUAL PROPERTY ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AT&T INTELLECTUAL PROPERTY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file evel_other.c.

Function Documentation

§ evel_free_other()

void evel_free_other ( EVENT_OTHER event)

Free an Other.

Free off the Other supplied. Will free all the contained allocated memory.

Note
It does not free the Other itself, since that may be part of a larger structure.

Definition at line 201 of file evel_other.c.

§ evel_json_encode_other()

void evel_json_encode_other ( EVEL_JSON_BUFFER jbuf,
EVENT_OTHER event 
)

Encode the Other in JSON according to AT&T's schema for the event type.

Parameters
jbufPointer to the EVEL_JSON_BUFFER to encode into.
eventPointer to the EVENT_HEADER to encode.

Definition at line 160 of file evel_other.c.

§ evel_new_other()

EVENT_OTHER* evel_new_other ( void  )

Create a new Other event.

Create a new other event.

Note
The mandatory fields on the Other must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Other has immutable properties.
Returns
pointer to the newly manufactured EVENT_OTHER. If the event is not used (i.e. posted) it must be released using evel_free_other.
Return values
NULLFailed to create the event.

Definition at line 53 of file evel_other.c.

§ evel_other_field_add()

void evel_other_field_add ( EVENT_OTHER other,
char *  name,
char *  value 
)

Add a field name/value pair to the Other.

Add a value name/value pair to the Other.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
otherPointer to the Other.
nameASCIIZ string with the field's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the field's value. The caller does not need to preserve the value once the function returns.

Definition at line 127 of file evel_other.c.

§ evel_other_type_set()

void evel_other_type_set ( EVENT_OTHER other,
const char *const  type 
)

Set the Event Type property of the Other.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
otherPointer to the Other.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 99 of file evel_other.c.