|
|
@@ -1,1335 +0,0 @@
|
|
|
-/*
|
|
|
- * Copyright (C) 2007-2010 Siemens AG
|
|
|
- *
|
|
|
- * This program is free software: you can redistribute it and/or modify
|
|
|
- * it under the terms of the GNU Lesser General Public License as published
|
|
|
- * by the Free Software Foundation, either version 3 of the License, or
|
|
|
- * (at your option) any later version.
|
|
|
- *
|
|
|
- * This program is distributed in the hope that it will be useful,
|
|
|
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
- * GNU Lesser General Public License for more details.
|
|
|
- *
|
|
|
- * You should have received a copy of the GNU Lesser General Public License
|
|
|
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
- */
|
|
|
-
|
|
|
-/*******************************************************************
|
|
|
- *
|
|
|
- * @author Daniel.Peintner.EXT@siemens.com
|
|
|
- * @version 0.3
|
|
|
- * @contact Joerg.Heuer@siemens.com
|
|
|
- *
|
|
|
- * <p>NOTE: Code generated by EXIdizer v0.1</p>
|
|
|
- ********************************************************************/
|
|
|
-
|
|
|
-#ifndef EXI_ENCODER_C
|
|
|
-#define EXI_ENCODER_C
|
|
|
-
|
|
|
-#include <stdio.h>
|
|
|
-#include <stdint.h>
|
|
|
-#include <string.h>
|
|
|
-#include <stdlib.h>
|
|
|
-
|
|
|
-#include "EXITypes.h"
|
|
|
-#include "BitOutputStream.h"
|
|
|
-#include "BitEncoderChannel.h"
|
|
|
-
|
|
|
-#include "EXICoder.h"
|
|
|
-#include "EXIHeaderEncoder.h"
|
|
|
-
|
|
|
-/* ==================================== */
|
|
|
-
|
|
|
-int exiInitEncoder(bitstream_t* stream, exi_state_t* state) {
|
|
|
- /* init grammar state */
|
|
|
- state->stackIndex = 0;
|
|
|
- state->grammarStack[0] = 0;
|
|
|
- /* encode header */
|
|
|
- return writeEXIHeader(stream);
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeStartDocument(bitstream_t* stream, exi_state_t* state) {
|
|
|
- if ( state->grammarStack[state->stackIndex] == 0 ) {
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 1;
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
- return -1;
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeEndDocument(bitstream_t* stream, exi_state_t* state) {
|
|
|
- if ( state->grammarStack[state->stackIndex] == 2) {
|
|
|
- encodeFinish(stream);
|
|
|
- return 0;
|
|
|
- }
|
|
|
-
|
|
|
- return -1;
|
|
|
-}
|
|
|
-
|
|
|
-static int _exiEncodeStartElement(bitstream_t* stream, size_t nbits, uint8_t val,
|
|
|
- exi_state_t* state, eqname_t* se, size_t stackId, size_t newState) {
|
|
|
- encodeNBitUnsignedInteger(stream, nbits, val);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = stackId;
|
|
|
- /* push element on stack */
|
|
|
- return exiPushStack(state, newState, se);
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeStartElement(bitstream_t* stream, exi_state_t* state,
|
|
|
- eqname_t* se) {
|
|
|
- switch (state->grammarStack[state->stackIndex]) {
|
|
|
- case 1:
|
|
|
- /* DocContent[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}BodyElement), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupRes), START_ELEMENT({urn:iso:15118:2:2010:MsgDef}V2G_Message), START_ELEMENT_GENERIC] */
|
|
|
- if ( se->localPart == 2 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}BodyElement) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 0, state, se, 2, 3);
|
|
|
- }
|
|
|
- else if ( se->localPart == 11 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 1, state, se, 2, 5);
|
|
|
- }
|
|
|
- else if ( se->localPart == 13 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 2, state, se, 2, 6);
|
|
|
- }
|
|
|
- else if ( se->localPart == 17 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 3, state, se, 2, 7);
|
|
|
- }
|
|
|
- else if ( se->localPart == 19 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 4, state, se, 2, 8);
|
|
|
- }
|
|
|
- else if ( se->localPart == 21 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 5, state, se, 2, 9);
|
|
|
- }
|
|
|
- else if ( se->localPart == 23 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 6, state, se, 2, 10);
|
|
|
- }
|
|
|
- else if ( se->localPart == 33 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 7, state, se, 2, 11);
|
|
|
- }
|
|
|
- else if ( se->localPart == 35 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 8, state, se, 2, 12);
|
|
|
- }
|
|
|
- else if ( se->localPart == 37 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 9, state, se, 2, 13);
|
|
|
- }
|
|
|
- else if ( se->localPart == 39 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 10, state, se, 2, 14);
|
|
|
- }
|
|
|
- else if ( se->localPart == 41 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 11, state, se, 2, 15);
|
|
|
- }
|
|
|
- else if ( se->localPart == 43 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 12, state, se, 2, 16);
|
|
|
- }
|
|
|
- else if ( se->localPart == 48 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 13, state, se, 2, 17);
|
|
|
- }
|
|
|
- else if ( se->localPart == 50 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 14, state, se, 2, 18);
|
|
|
- }
|
|
|
- else if ( se->localPart == 53 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 15, state, se, 2, 19);
|
|
|
- }
|
|
|
- else if ( se->localPart == 55 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 16, state, se, 2, 20);
|
|
|
- }
|
|
|
- else if ( se->localPart == 59 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 17, state, se, 2, 21);
|
|
|
- }
|
|
|
- else if ( se->localPart == 61 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 18, state, se, 2, 22);
|
|
|
- }
|
|
|
- else if ( se->localPart == 8 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}V2G_Message) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 19, state, se, 2, 23);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 5:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 24, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 6:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 32, 33);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 7:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVID), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 26 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVID) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 46, 47);
|
|
|
- }
|
|
|
- else if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 1, state, se, 48, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 8:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 67, 68);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 10:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 69, 70);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 11:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ContractID)] */
|
|
|
- if ( se->localPart == 1 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ContractID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 78, 79);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 12:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 80, 81);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 13:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 82, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 14:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 89, 90);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 15:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 91, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 16:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 99, 100);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 17:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope), END_ELEMENT] */
|
|
|
- if ( se->localPart == 58 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceType) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 124, 125);
|
|
|
- }
|
|
|
- else if ( se->localPart == 57 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 126, 127);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 18:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 128, 129);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 19:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceList)] */
|
|
|
- if ( se->localPart == 52 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceList) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 140, 131);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 20:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 143, 144);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 21:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVID), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 26 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVID) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 146, 47);
|
|
|
- }
|
|
|
- else if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 1, state, se, 147, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 22:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ResponseCode) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 148, 149);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 23:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Header)] */
|
|
|
- if ( se->localPart == 4 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Header) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 153, 154);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 24:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ReqLockStatus)] */
|
|
|
- if ( se->localPart == 45 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ReqLockStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 26, 27);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 25:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ConnectorLocked)] */
|
|
|
- if ( se->localPart == 4 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ConnectorLocked) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 28, 27);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 28:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargerStandby)] */
|
|
|
- if ( se->localPart == 0 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargerStandby) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 29, 30);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 32:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 34, 35);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 35:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FatalError)] */
|
|
|
- if ( se->localPart == 12 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FatalError) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 36, 37);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 36:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EVSEStandby)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EVSEStandby) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 38, 30);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 38:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ConnectorLocked)] */
|
|
|
- if ( se->localPart == 4 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ConnectorLocked) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 39, 27);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 39:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}PowerSwitchClosed)] */
|
|
|
- if ( se->localPart == 23 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}PowerSwitchClosed) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 40, 41);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 40:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}RCD)] */
|
|
|
- if ( se->localPart == 25 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}RCD) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 42, 43);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 42:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ShutDownTime)] */
|
|
|
- if ( se->localPart == 36 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ShutDownTime) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 44, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 46:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 48, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 48:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff)] */
|
|
|
- if ( se->localPart == 63 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 49, 45);
|
|
|
- }
|
|
|
- else if ( se->localPart == 64 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 1, state, se, 50, 51);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 49:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff)] */
|
|
|
- if ( se->localPart == 64 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 50, 51);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 50:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo)] */
|
|
|
- if ( se->localPart == 15 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 52, 53);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 53:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterID), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- if ( se->localPart == 16 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterID) */
|
|
|
- return _exiEncodeStartElement(stream, 3, 0, state, se, 54, 55);
|
|
|
- }
|
|
|
- else if ( se->localPart == 18 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading) */
|
|
|
- return _exiEncodeStartElement(stream, 3, 1, state, se, 56, 57);
|
|
|
- }
|
|
|
- else if ( se->localPart == 19 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 3, 2, state, se, 58, 59);
|
|
|
- }
|
|
|
- else if ( se->localPart == 37 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter) */
|
|
|
- return _exiEncodeStartElement(stream, 3, 3, state, se, 60, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 54:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- if ( se->localPart == 18 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 56, 57);
|
|
|
- }
|
|
|
- else if ( se->localPart == 19 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 58, 59);
|
|
|
- }
|
|
|
- else if ( se->localPart == 37 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 2, state, se, 60, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 56:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- if ( se->localPart == 19 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 58, 59);
|
|
|
- }
|
|
|
- else if ( se->localPart == 37 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 60, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 57:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Multiplier)] */
|
|
|
- if ( se->localPart == 20 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Multiplier) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 61, 62);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 58:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- if ( se->localPart == 37 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 60, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 61:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Unit)] */
|
|
|
- if ( se->localPart == 49 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Unit) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 63, 64);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 63:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Value)] */
|
|
|
- if ( se->localPart == 50 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Value) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 65, 66);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 69:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEID)] */
|
|
|
- if ( se->localPart == 3 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 71, 72);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 71:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 73, 35);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 73:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent)] */
|
|
|
- if ( se->localPart == 63 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 74, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 74:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEMaxPower)] */
|
|
|
- if ( se->localPart == 6 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEMaxPower) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 75, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 75:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PCurrent), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo), END_ELEMENT] */
|
|
|
- if ( se->localPart == 25 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PCurrent) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 76, 57);
|
|
|
- }
|
|
|
- else if ( se->localPart == 15 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 77, 53);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 76:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo), END_ELEMENT] */
|
|
|
- if ( se->localPart == 15 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 77, 53);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 82:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ReqSwitchStatus)] */
|
|
|
- if ( se->localPart == 46 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ReqSwitchStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 83, 41);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 83:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile), END_ELEMENT] */
|
|
|
- if ( se->localPart == 64 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 84, 51);
|
|
|
- }
|
|
|
- else if ( se->localPart == 0 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 85, 86);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 84:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile), END_ELEMENT] */
|
|
|
- if ( se->localPart == 0 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 85, 86);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 86:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargingProfileEntryStart)] */
|
|
|
- if ( se->localPart == 2 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargingProfileEntryStart) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 87, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 87:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargingProfileEntryMaxPower)] */
|
|
|
- if ( se->localPart == 1 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ChargingProfileEntryMaxPower) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 88, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 91:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EoC)] */
|
|
|
- if ( se->localPart == 10 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EoC) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 92, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 92:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EAmount)] */
|
|
|
- if ( se->localPart == 2 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EAmount) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 93, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 93:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxPower)] */
|
|
|
- if ( se->localPart == 28 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxPower) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 94, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 94:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxPhases)] */
|
|
|
- if ( se->localPart == 27 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxPhases) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 95, 96);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 95:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxVoltage)] */
|
|
|
- if ( se->localPart == 29 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMaxVoltage) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 97, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 97:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMinVoltage)] */
|
|
|
- if ( se->localPart == 30 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVMinVoltage) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 98, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 99:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 101, 35);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 101:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEVoltage)] */
|
|
|
- if ( se->localPart == 8 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEVoltage) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 102, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 102:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEIMax)] */
|
|
|
- if ( se->localPart == 4 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEIMax) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 103, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 103:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEMaxPhases)] */
|
|
|
- if ( se->localPart == 5 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEMaxPhases) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 104, 96);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 104:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EnergyProvider), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable), END_ELEMENT] */
|
|
|
- if ( se->localPart == 9 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EnergyProvider) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 105, 106);
|
|
|
- }
|
|
|
- else if ( se->localPart == 65 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 107, 108);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 105:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable), END_ELEMENT] */
|
|
|
- if ( se->localPart == 65 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 107, 108);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 108:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Currency)] */
|
|
|
- if ( se->localPart == 5 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Currency) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 109, 110);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 109:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Tariff)] */
|
|
|
- if ( se->localPart == 38 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Tariff) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 111, 112);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 111:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Tariff), END_ELEMENT] */
|
|
|
- if ( se->localPart == 38 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Tariff) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 111, 112);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 112:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffID)] */
|
|
|
- if ( se->localPart == 45 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 113, 51);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 113:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffDescription), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntries)] */
|
|
|
- if ( se->localPart == 40 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffDescription) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 114, 115);
|
|
|
- }
|
|
|
- else if ( se->localPart == 41 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntries) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 1, state, se, 116, 117);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 114:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntries)] */
|
|
|
- if ( se->localPart == 41 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntries) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 116, 117);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 117:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntry)] */
|
|
|
- if ( se->localPart == 43 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntry) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 118, 119);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 118:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntry), END_ELEMENT] */
|
|
|
- if ( se->localPart == 43 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntry) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 118, 119);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 119:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffStart)] */
|
|
|
- if ( se->localPart == 47 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffStart) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 120, 121);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 120:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffPMax)] */
|
|
|
- if ( se->localPart == 46 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffPMax) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 122, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 122:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EPrice), END_ELEMENT] */
|
|
|
- if ( se->localPart == 6 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EPrice) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 123, 57);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 124:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope), END_ELEMENT] */
|
|
|
- if ( se->localPart == 57 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 126, 127);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 128:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceList), END_ELEMENT] */
|
|
|
- if ( se->localPart == 52 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceList) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 130, 131);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 131:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Service)] */
|
|
|
- if ( se->localPart == 26 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Service) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 132, 133);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 132:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Service), END_ELEMENT] */
|
|
|
- if ( se->localPart == 26 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Service) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 132, 133);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 133:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceID)] */
|
|
|
- if ( se->localPart == 28 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 134, 135);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 134:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceName), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- if ( se->localPart == 30 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceName) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 136, 137);
|
|
|
- }
|
|
|
- else if ( se->localPart == 33 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 138, 125);
|
|
|
- }
|
|
|
- else if ( se->localPart == 31 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 2, state, se, 139, 127);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 136:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- if ( se->localPart == 33 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 138, 125);
|
|
|
- }
|
|
|
- else if ( se->localPart == 31 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 139, 127);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 138:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- if ( se->localPart == 31 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 139, 127);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 140:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVPubKey)] */
|
|
|
- if ( se->localPart == 31 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVPubKey) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 141, 142);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 143:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringAuthPubKey), END_ELEMENT] */
|
|
|
- if ( se->localPart == 16 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringAuthPubKey) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 145, 142);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 146:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus)] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PEVStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 147, 25);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 148:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEID)] */
|
|
|
- if ( se->localPart == 3 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 150, 72);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 150:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EVSEStatus) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 151, 35);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 151:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent)] */
|
|
|
- if ( se->localPart == 63 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TCurrent) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 152, 45);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 153:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Body)] */
|
|
|
- if ( se->localPart == 0 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Body) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 155, 156);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 154:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}SessionInformation)] */
|
|
|
- if ( se->localPart == 7 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}SessionInformation) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 157, 158);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 156:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}BodyElement), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupRes), END_ELEMENT] */
|
|
|
- if ( se->localPart == 2 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}BodyElement) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 0, state, se, 174, 3);
|
|
|
- }
|
|
|
- else if ( se->localPart == 11 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 1, state, se, 174, 5);
|
|
|
- }
|
|
|
- else if ( se->localPart == 13 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 2, state, se, 174, 6);
|
|
|
- }
|
|
|
- else if ( se->localPart == 17 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 3, state, se, 174, 7);
|
|
|
- }
|
|
|
- else if ( se->localPart == 19 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 4, state, se, 174, 8);
|
|
|
- }
|
|
|
- else if ( se->localPart == 21 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 5, state, se, 174, 9);
|
|
|
- }
|
|
|
- else if ( se->localPart == 23 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 6, state, se, 174, 10);
|
|
|
- }
|
|
|
- else if ( se->localPart == 33 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 7, state, se, 174, 11);
|
|
|
- }
|
|
|
- else if ( se->localPart == 35 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 8, state, se, 174, 12);
|
|
|
- }
|
|
|
- else if ( se->localPart == 37 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 9, state, se, 174, 13);
|
|
|
- }
|
|
|
- else if ( se->localPart == 39 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 10, state, se, 174, 14);
|
|
|
- }
|
|
|
- else if ( se->localPart == 41 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 11, state, se, 174, 15);
|
|
|
- }
|
|
|
- else if ( se->localPart == 43 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 12, state, se, 174, 16);
|
|
|
- }
|
|
|
- else if ( se->localPart == 48 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 13, state, se, 174, 17);
|
|
|
- }
|
|
|
- else if ( se->localPart == 50 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 14, state, se, 174, 18);
|
|
|
- }
|
|
|
- else if ( se->localPart == 53 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 15, state, se, 174, 19);
|
|
|
- }
|
|
|
- else if ( se->localPart == 55 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 16, state, se, 174, 20);
|
|
|
- }
|
|
|
- else if ( se->localPart == 59 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupReq) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 17, state, se, 174, 21);
|
|
|
- }
|
|
|
- else if ( se->localPart == 61 && se->namespaceURI == 4 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupRes) */
|
|
|
- return _exiEncodeStartElement(stream, 5, 18, state, se, 174, 22);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 157:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Notification), END_ELEMENT] */
|
|
|
- if ( se->localPart == 6 && se->namespaceURI == 6 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Notification) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 159, 160);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 158:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}SessionID)] */
|
|
|
- if ( se->localPart == 34 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}SessionID) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 161, 162);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 160:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultCode), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- if ( se->localPart == 13 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultCode) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 166, 167);
|
|
|
- }
|
|
|
- else if ( se->localPart == 14 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 168, 169);
|
|
|
- }
|
|
|
- else if ( se->localPart == 10 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 2, state, se, 170, 171);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 161:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceSessionID), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion), END_ELEMENT] */
|
|
|
- if ( se->localPart == 32 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceSessionID) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 163, 162);
|
|
|
- }
|
|
|
- else if ( se->localPart == 24 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 164, 165);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 163:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion), END_ELEMENT] */
|
|
|
- if ( se->localPart == 24 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 164, 165);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 166:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- if ( se->localPart == 14 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 0, state, se, 168, 169);
|
|
|
- }
|
|
|
- else if ( se->localPart == 10 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList) */
|
|
|
- return _exiEncodeStartElement(stream, 2, 1, state, se, 170, 171);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 168:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- if ( se->localPart == 10 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList) */
|
|
|
- return _exiEncodeStartElement(stream, 1, 0, state, se, 170, 171);
|
|
|
- }
|
|
|
- break;
|
|
|
- case 171:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Event)] */
|
|
|
- if ( se->localPart == 9 && se->namespaceURI == 5 ) {
|
|
|
- /* START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Event) */
|
|
|
- return _exiEncodeStartElement(stream, 0, 0, state, se, 172, 173);
|
|
|
- }
|
|
|
- break;
|
|
|
-
|
|
|
- default:
|
|
|
- return -1;
|
|
|
- }
|
|
|
-
|
|
|
- return -1;
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeEndElement(bitstream_t* stream, exi_state_t* state,
|
|
|
- eqname_t* ee) {
|
|
|
- switch (state->grammarStack[state->stackIndex]) {
|
|
|
- case 53:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterID), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- encodeNBitUnsignedInteger(stream, 3, 4);
|
|
|
- break;
|
|
|
- case 54:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterReading), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- case 134:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceName), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- case 160:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultCode), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- encodeNBitUnsignedInteger(stream, 2, 3);
|
|
|
- break;
|
|
|
- case 156:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}BodyElement), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}LineLockRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringReceiptRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringStatusRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PaymentDetailsRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDeliveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PowerDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceDiscoveryRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServicePaymentSelectionRes), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupReq), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}SessionSetupRes), END_ELEMENT] */
|
|
|
- encodeNBitUnsignedInteger(stream, 5, 19);
|
|
|
- break;
|
|
|
- case 58:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- case 76:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo), END_ELEMENT] */
|
|
|
- case 84:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile), END_ELEMENT] */
|
|
|
- case 105:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable), END_ELEMENT] */
|
|
|
- case 111:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Tariff), END_ELEMENT] */
|
|
|
- case 118:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TariffEntry), END_ELEMENT] */
|
|
|
- case 122:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EPrice), END_ELEMENT] */
|
|
|
- case 124:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope), END_ELEMENT] */
|
|
|
- case 128:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceList), END_ELEMENT] */
|
|
|
- case 132:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}Service), END_ELEMENT] */
|
|
|
- case 138:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- case 143:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeteringAuthPubKey), END_ELEMENT] */
|
|
|
- case 157:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDef}Notification), END_ELEMENT] */
|
|
|
- case 163:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion), END_ELEMENT] */
|
|
|
- case 168:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- encodeNBitUnsignedInteger(stream, 1, 1);
|
|
|
- break;
|
|
|
- case 56:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}MeterStatus), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}TMeter), END_ELEMENT] */
|
|
|
- case 75:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}PCurrent), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}MeterInfo), END_ELEMENT] */
|
|
|
- case 83:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}Tariff), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ChargingProfile), END_ELEMENT] */
|
|
|
- case 104:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}EnergyProvider), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}TariffTable), END_ELEMENT] */
|
|
|
- case 17:
|
|
|
- /* FirstStartTagStartTag[START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgBody}ServiceScope), END_ELEMENT] */
|
|
|
- case 136:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceType), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceScope), END_ELEMENT] */
|
|
|
- case 161:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ServiceSessionID), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}ProtocolVersion), END_ELEMENT] */
|
|
|
- case 166:
|
|
|
- /* Element[START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}FaultMsg), START_ELEMENT({urn:iso:15118:2:2010:MsgDataTypes}EventList), END_ELEMENT] */
|
|
|
- encodeNBitUnsignedInteger(stream, 2, 2);
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- /* FirstStartTag(xsi:type)StartTag[END_ELEMENT] */
|
|
|
- case 26:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 29:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 31:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 34:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 44:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 52:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 60:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 65:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 67:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 9:
|
|
|
- /* FirstStartTagStartTag[END_ELEMENT] */
|
|
|
- case 77:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 78:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 80:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 85:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 88:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 89:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 98:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 107:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 116:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 123:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 126:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 130:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 139:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 141:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 145:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 147:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 152:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 155:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 159:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 164:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 170:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 172:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- case 174:
|
|
|
- /* Element[END_ELEMENT] */
|
|
|
- /* no event code to write */
|
|
|
- break;
|
|
|
-
|
|
|
- default:
|
|
|
- return -1;
|
|
|
- }
|
|
|
-
|
|
|
- /* pop item */
|
|
|
- return exiPopStack(state);
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeCharacters(bitstream_t* stream, exi_state_t* state,
|
|
|
- exi_value_t* val) {
|
|
|
- switch (state->grammarStack[state->stackIndex]) {
|
|
|
- case 27:
|
|
|
- case 30:
|
|
|
- case 37:
|
|
|
- case 41:
|
|
|
- case 43:
|
|
|
- if (val->type == BOOLEAN) {
|
|
|
- /* CHARACTERS[BOOLEAN] */
|
|
|
- encodeBoolean(stream, val->boolean);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 51:
|
|
|
- case 90:
|
|
|
- case 129:
|
|
|
- case 149:
|
|
|
- case 173:
|
|
|
- if (val->type == ENUMERATION) {
|
|
|
- /* CHARACTERS[ENUMERATION] */
|
|
|
- encodeNBitUnsignedInteger(stream, 3, val->enumeration);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 68:
|
|
|
- case 70:
|
|
|
- case 100:
|
|
|
- if (val->type == ENUMERATION) {
|
|
|
- /* CHARACTERS[ENUMERATION] */
|
|
|
- encodeNBitUnsignedInteger(stream, 1, val->enumeration);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 33:
|
|
|
- case 81:
|
|
|
- case 125:
|
|
|
- case 144:
|
|
|
- case 167:
|
|
|
- if (val->type == ENUMERATION) {
|
|
|
- /* CHARACTERS[ENUMERATION] */
|
|
|
- encodeNBitUnsignedInteger(stream, 2, val->enumeration);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 169:
|
|
|
- if (val->type == STRING) {
|
|
|
- /* CHARACTERS[STRING] */
|
|
|
- /* xsi:type OR xsi:nil */
|
|
|
- encodeNBitUnsignedInteger(stream, 1, 0);
|
|
|
- encodeStringValue(stream, &val->string);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 62:
|
|
|
- if (val->type == ENUMERATION) {
|
|
|
- /* CHARACTERS[ENUMERATION] */
|
|
|
- encodeNBitUnsignedInteger(stream, 4, val->enumeration);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 121:
|
|
|
- if (val->type == UNSIGNED_INTEGER_32) {
|
|
|
- /* CHARACTERS[UNSIGNED_INTEGER_32] */
|
|
|
- encodeUnsignedInteger32(stream, val->uint32);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 47:
|
|
|
- case 55:
|
|
|
- case 79:
|
|
|
- case 106:
|
|
|
- case 110:
|
|
|
- case 115:
|
|
|
- case 127:
|
|
|
- case 137:
|
|
|
- case 165:
|
|
|
- if (val->type == STRING) {
|
|
|
- /* CHARACTERS[STRING] */
|
|
|
- encodeStringValue(stream, &val->string);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 64:
|
|
|
- if (val->type == ENUMERATION) {
|
|
|
- /* CHARACTERS[ENUMERATION] */
|
|
|
- encodeNBitUnsignedInteger(stream, 5, val->enumeration);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 66:
|
|
|
- if (val->type == INTEGER_32) {
|
|
|
- /* CHARACTERS[INTEGER_32] */
|
|
|
- /* xsi:type OR xsi:nil */
|
|
|
- encodeNBitUnsignedInteger(stream, 1, 0);
|
|
|
- encodeInteger32(stream, val->int32);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 45:
|
|
|
- if (val->type == INTEGER_32) {
|
|
|
- /* CHARACTERS[INTEGER_32] */
|
|
|
- encodeInteger32(stream, val->int32);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 59:
|
|
|
- case 96:
|
|
|
- if (val->type == INTEGER_16) {
|
|
|
- /* CHARACTERS[INTEGER_16] */
|
|
|
- encodeInteger32(stream, val->int32);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 72:
|
|
|
- case 135:
|
|
|
- case 142:
|
|
|
- case 162:
|
|
|
- if (val->type == BINARY_HEX) {
|
|
|
- /* CHARACTERS[BINARY_HEX] */
|
|
|
- encodeBinary(stream, &val->binary);
|
|
|
- /* move on */
|
|
|
- state->grammarStack[state->stackIndex] = 31;
|
|
|
- return 0;
|
|
|
- }
|
|
|
- break;
|
|
|
-
|
|
|
- default:
|
|
|
- return -1;
|
|
|
- }
|
|
|
-
|
|
|
- return -1;
|
|
|
-}
|
|
|
-
|
|
|
-int exiEncodeAttribute(bitstream_t* stream, exi_state_t* state,
|
|
|
- eqname_t* at, exi_value_t* val) {
|
|
|
- switch (state->grammarStack[state->stackIndex]) {
|
|
|
-
|
|
|
- default:
|
|
|
- return -1;
|
|
|
- }
|
|
|
-
|
|
|
- return -1;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-#endif
|
|
|
-
|