| 1234567891011121314151617181920212223242526272829303132333435 |
- 'use strict';
- const { parseXML } = require('../parser');
- const {
- parse: parseCreatePartyRegistration,
- } = require('./create-party-registration');
- const { parse: parseQueryRegistration } = require('./query-registration');
- const {
- parse: parseCancelPartyRegistration,
- } = require('./cancel-party-registration');
- async function parse(input) {
- const json = await parseXML(input);
- const o = json['oadrPayload']['$$']['oadrSignedObject'][0]['$$'];
- if (o['oadrCreatePartyRegistration']) {
- return await parseCreatePartyRegistration(input);
- }
- if (o['oadrCancelPartyRegistration']) {
- return await parseCancelPartyRegistration(input);
- }
- if (o['oadrQueryRegistration']) {
- return await parseQueryRegistration(input);
- }
- throw new Error(`Unexpected payload type: ${Object.keys(o)}`);
- }
- module.exports = {
- parse,
- };
|