ojp-sdk-legacy
Version:
OJP (Open Journey Planner) Javascript SDK (legacy version)
27 lines (26 loc) • 1.05 kB
JavaScript
import { TripContinuousLeg } from "./trip-continous-leg";
import { TripTimedLeg } from "./trip-timed-leg";
export class TripLegFactory {
static initWithTreeNode(treeNode, xmlConfig) {
const isOJPv2 = xmlConfig.ojpVersion === '2.0';
const legID_NodeName = isOJPv2 ? 'Id' : 'LegId';
const legID_string = treeNode.findTextFromChildNamed(legID_NodeName);
if (legID_string === null) {
return null;
}
const legID = parseInt(legID_string, 10);
const transferLeg = TripContinuousLeg.initWithTreeNode(legID, treeNode, 'TransferLeg', xmlConfig);
if (transferLeg) {
return transferLeg;
}
const timedLeg = TripTimedLeg.initWithTreeNode(legID, treeNode, xmlConfig);
if (timedLeg) {
return timedLeg;
}
const tripContinousLeg = TripContinuousLeg.initWithTreeNode(legID, treeNode, 'ContinuousLeg', xmlConfig);
if (tripContinousLeg) {
return tripContinousLeg;
}
return null;
}
}