123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- "use strict";
- /**
- * Licensed Materials - Property of IBM
- * IBM Cognos Products: Cognos Analytics
- * Copyright IBM Corp. 2015, 2017
- * US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
- */
- define(['underscore', 'bi/admin/common/utils/parameters/SimpleParmValueItem', 'bi/admin/common/utils/parameters/BoundRangeParmValueItem', 'bi/admin/common/utils/parameters/UnboundedStartRangeParmValueItem', 'bi/admin/common/utils/parameters/UnboundedEndRangeParmValueItem', 'bi/admin/common/utils/parameters/HierarchicalParmValueItem', 'bi/admin/globalparameters/helpers/SoapHelper'], function (_, SimpleParmValueItem, BoundRangeParmValueItem, UnboundedStartRangeParmValueItem, UnboundedEndRangeParmValueItem, HierarchicalParmValueItem, SoapHelper) {
- function ParameterValue() {
- //NOSONAR
- this._name = '';
- this._parmValueItems = [];
- }
- ParameterValue.prototype._loadParmValueItemFromJSON = function (parmValueItemJSON) {
- var parmValueItem;
- switch (parmValueItemJSON.type) {
- case 'simpleParmValueItem':
- {
- parmValueItem = new SimpleParmValueItem();
- break;
- }
- case 'boundRangeParmValueItem':
- {
- parmValueItem = new BoundRangeParmValueItem();
- break;
- }
- case 'unboundedStartRangeParmValueItem':
- {
- parmValueItem = new UnboundedStartRangeParmValueItem();
- break;
- }
- case 'unboundedEndRangeParmValueItem':
- {
- parmValueItem = new UnboundedEndRangeParmValueItem();
- break;
- }
- case 'hierarchicalParmValueItem':
- {
- parmValueItem = new HierarchicalParmValueItem();
- break;
- }
- default:
- {
- return null;
- }
- }
- parmValueItem.fromJSON(parmValueItemJSON);
- return parmValueItem;
- };
- ParameterValue.prototype.fromJSON = function (json) {
- this._name = json.name;
- _.each(json.values, function (parmValueItemJSON) {
- var parmValueItem = this._loadParmValueItemFromJSON(parmValueItemJSON);
- if (parmValueItem != null) {
- this._parmValueItems.push(parmValueItem);
- }
- }.bind(this));
- };
- ParameterValue.prototype.toXML = function () {
- var parameterValue = '<item xsi:type="parameterValue">';
- parameterValue += '<name xsi:type="xsd:string">' + SoapHelper.xml_encode(this._name) + '</name>';
- parameterValue += '<value xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="bus:parmValueItem[]">';
- _.each(this._parmValueItems, function (parmValueItem) {
- parameterValue += parmValueItem.toXML('item');
- });
- parameterValue += '</value>';
- parameterValue += '</item>';
- return parameterValue;
- };
- return ParameterValue;
- });
|