Source: bemap-services-v2/charging-stations/bemap-charging-station.js

/**
 * BeNomad BeMap JavaScript API - ChargingStation (v1.5)
 *
 * One charging station inside a pool. Mirrors the server DTO in
 * `bemap_idea/.../service/v1_0_0/model/chargingStation/ChargingStation.java`.
 *
 * @public
 * @constructor
 * @param {Object} options Parsed JSON entry from the server response.
 */
bemap.ChargingStation = function(options) {
    var opts = options || {};
    this.id = opts.id || null;
    this.operatorId = opts.operatorId || null;
    this.nature = opts.nature || null;
    this.availabilityStatus = opts.availabilityStatus || null;
    this.authenticationModes = Array.isArray(opts.authenticationModes) ? opts.authenticationModes.slice() : null;
    this.authenticationInformation = opts.authenticationInformation || null;
    this.paymentModes = Array.isArray(opts.paymentModes) ? opts.paymentModes.slice() : null;
    this.paymentInformation = opts.paymentInformation || null;
    this.chargePasses = Array.isArray(opts.chargePasses) ? opts.chargePasses.slice() : null;
    this.bookable = (typeof opts.bookable === 'boolean') ? opts.bookable : null;
    this.images = Array.isArray(opts.images) ? opts.images.slice() : null;
    this.tags = Array.isArray(opts.tags) ? opts.tags.slice() : null;
    this.chargingPoints = Array.isArray(opts.chargingPoints)
        ? opts.chargingPoints.map(function(p) { return new bemap.ChargingPoint(p); })
        : [];
};

bemap.ChargingStation.prototype.getId = function() { return this.id; };
bemap.ChargingStation.prototype.getOperatorId = function() { return this.operatorId; };
bemap.ChargingStation.prototype.getNature = function() { return this.nature; };
bemap.ChargingStation.prototype.getAvailabilityStatus = function() { return this.availabilityStatus; };
bemap.ChargingStation.prototype.getAuthenticationModes = function() { return this.authenticationModes; };
bemap.ChargingStation.prototype.getAuthenticationInformation = function() { return this.authenticationInformation; };
bemap.ChargingStation.prototype.getPaymentModes = function() { return this.paymentModes; };
bemap.ChargingStation.prototype.getPaymentInformation = function() { return this.paymentInformation; };
bemap.ChargingStation.prototype.getChargePasses = function() { return this.chargePasses; };
bemap.ChargingStation.prototype.isBookable = function() { return this.bookable; };
bemap.ChargingStation.prototype.getImages = function() { return this.images; };
bemap.ChargingStation.prototype.getTags = function() { return this.tags; };
bemap.ChargingStation.prototype.getChargingPoints = function() { return this.chargingPoints; };