blob: 709b429a623934bc97a181d8302c6a136182722c [file] [log] [blame]
anjana_sreekumar@infosys.com991c2062020-01-08 11:42:57 +05301/*
2 * Copyright 2019-present Infosys Limited  
3 *   
4 * SPDX-License-Identifier: Apache-2.0    
5 */
6/******************************************************************************
7 *
8 * This is an auto generated file.
9 * Please do not edit this file.
10 * All edits to be made through template source file
11 * <TOP-DIR/scripts/GtpV2StackCodeGen/tts/ietemplate.cpp.tt>
12 ******************************************************************************/
13
14#include "recoveryIe.h"
15#include "dataTypeCodecUtils.h"
16
17RecoveryIe::RecoveryIe()
18{
19 ieType = 3;
20 // TODO
21
22}
23
24RecoveryIe::~RecoveryIe() {
25 // TODO Auto-generated destructor stub
26}
27
28bool RecoveryIe::encodeRecoveryIe(MsgBuffer &buffer, RecoveryIeData const &data)
29{
30 if (!(buffer.writeUint8(data.restartCounter)))
31 {
32 errorStream.add((char *)"Encoding of restartCounter failed\n");
33 return false;
34 }
35
36 return true;
37}
38
39bool RecoveryIe::decodeRecoveryIe(MsgBuffer &buffer, RecoveryIeData &data, Uint16 length)
40{
41 // TODO optimize the length checks
42
43 Uint16 ieBoundary = buffer.getCurrentIndex() + length;
44
45 buffer.readUint8(data.restartCounter);
46 if (buffer.getCurrentIndex() > ieBoundary)
47 {
48 errorStream.add((char *)"Attempt to read beyond IE boundary: restartCounter\n");
49 return false;
50 }
51
52 // The IE is decoded now. The buffer index should be pointing to the
53 // IE Boundary. If not, we have some more data left for the IE which we don't know
54 // how to decode
55 if (ieBoundary == buffer.getCurrentIndex())
56 {
57 return true;
58 }
59 else
60 {
61 errorStream.add((char *)"Unable to decode IE RecoveryIe\n");
62 return false;
63 }
64}
65void RecoveryIe::displayRecoveryIe_v(RecoveryIeData const &data, Debug &stream)
66{
67 stream.incrIndent();
68 stream.add((char *)"RecoveryIeData:");
69 stream.incrIndent();
70 stream.endOfLine();
71
72 stream.add((char *)"restartCounter: ");
73 stream.add(data.restartCounter);
74 stream.endOfLine();
75 stream.decrIndent();
76 stream.decrIndent();
77}