diff --git a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts
index 602039246f1b76c10535104186fc25b028669175..7011d9f2c2ed746b7b07589da38f0fc57aea8d0b 100644
--- a/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts
+++ b/src/app/p_services/admin/lifeCycleManagement/service-rule-design/service-rule-design.component.ts
@@ -70,30 +70,31 @@ export class ServiceRuleDesignComponent implements OnInit {
charsListText: ServiceSpecCharacteristic[];
charsListLongText: ServiceSpecCharacteristic[];
charsListTimestamp: ServiceSpecCharacteristic[];
+ charsListSecret: ServiceSpecCharacteristic[];
serviceSpecRel: ServiceSpecRelationship[];
resourceserviceSpecRef: ResourceSpecificationRef[];
-
+
generatedCode: string;
blocklyCode: string;
constructor(
- private activatedRoute: ActivatedRoute,
+ private activatedRoute: ActivatedRoute,
private router: Router,
- bs: BlocklyJavaService,
+ bs: BlocklyJavaService,
private toast: ToastrService,
private lcmRulesService: LcmRuleSpecificationService,
private specService: ServiceSpecificationService) {
-
+
this.blocklyJavaService = bs;
this.title = 'Create LCM Rule';
this.activatedRoute.params.subscribe(params => {
this.programName = params['programName'];
-
+
console.log(
'creating/editing the program - '
);
-
+
console.log( this.activatedRoute.snapshot.queryParams['specid'] );
});
@@ -115,21 +116,21 @@ export class ServiceRuleDesignComponent implements OnInit {
if (this.activatedRoute.snapshot.queryParams['specid']){
- this.specID = this.activatedRoute.snapshot.queryParams['specid'];
+ this.specID = this.activatedRoute.snapshot.queryParams['specid'];
this.blocklyJavaService.createJava(this.workspace, Blockly);
- this.createOpensliceJava(this.workspace, Blockly);
- this.retrieveServiceSpec();
+ this.createOpensliceJava(this.workspace, Blockly);
+ this.retrieveServiceSpec();
} else {
this.initializeLCMRuleSpec();
}
-
-
-
-
-
+
+
+
+
+
// if (this.program.xmlData) {
// this.workspace.clear();
// Blockly.Xml.domToWorkspace(
@@ -137,34 +138,34 @@ export class ServiceRuleDesignComponent implements OnInit {
// this.workspace
// );
// }
-
+
this.workspace.addChangeListener(() => {
// var code = Blockly.JavaScript.workspaceToCode(this.workspace);
// console.log(code);
-
+
// var code2 = Blockly.Xml.domToText(
// Blockly.Xml.workspaceToDom(this.workspace)
// );
// console.log(code2);
-
+
var code3 = Blockly.Java.workspaceToCode(this.workspace);
console.log(code3)
this.generatedCode = code3;
this.lcmRuleSpec.code = code3;
this.blocklyCode = Blockly.Xml.domToText( Blockly.Xml.workspaceToDom(this.workspace) );
-
+
});
-
-
+
+
}
-
+
initializeLCMRuleSpec() {
- if (this.activatedRoute.snapshot.params.id)
+ if (this.activatedRoute.snapshot.params.id)
{
this.lcmRuleSpecID = this.activatedRoute.snapshot.params.id
this.retrieveLCMRuleSpec();
-
+
}
else {
this.newLCMRuleSpecification = true;
@@ -174,22 +175,22 @@ export class ServiceRuleDesignComponent implements OnInit {
description: 'new description',
serviceSpecs: serviceSpecsList
};
-
+
this.editForm.patchValue(this.lcmRuleSpec)
this.editForm.markAsPristine()
-
-
- var serviceSpecRef: ServiceSpecificationRef ;
+
+
+ var serviceSpecRef: ServiceSpecificationRef ;
var serviceSpecsList: ServiceSpecificationRef[] = [];
serviceSpecRef = { id: this.spec.id, name: this.spec.name } ;
- serviceSpecsList.push(serviceSpecRef);
- this.lcmRuleSpec.serviceSpecs = serviceSpecsList;
+ serviceSpecsList.push(serviceSpecRef);
+ this.lcmRuleSpec.serviceSpecs = serviceSpecsList;
this.lcmRuleSpec.name = "LCM Rule " + this.spec.name;
this.lcmRuleSpec.description = "LCM Rule for specification " + this.spec.name;
-
+
this.editForm.patchValue(this.lcmRuleSpec)
- this.editForm.markAsPristine()
-
+ this.editForm.markAsPristine()
+
}
}
@@ -198,21 +199,21 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Variables.createVariableButtonHandler( ws, null, 'String');
//Blockly.Variables.createVariable( ws, null, 'panda');
}
-
-
+
+
retrieveServiceSpec() {
this.specService.retrieveServiceSpecification({id: this.specID}).subscribe(
data => this.spec = data,
error => console.error(error),
() => {
-
-
+
+
// valueTypes = ['INTEGER', '', '', 'FLOAT', 'BINARY', 'BOOLEAN', 'ARRAY', 'SET', 'TEXT', 'LONGTEXT', 'ENUM', 'TIMESTAMP']
//populate Specification Characteristic Panel Info
// filter Spec Characteristic that does not have defined Value Type (parent spec char)
this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType)
-
+
this.workspace.charsListAllSpecs = this.spec.serviceSpecCharacteristic;
// this.dataSource.paginator = this.paginator;
this.charsListInteger= this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType == 'INTEGER');
@@ -227,18 +228,20 @@ export class ServiceRuleDesignComponent implements OnInit {
this.charsListText= this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType == 'TEXT');
this.charsListLongText= this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType == 'LONGTEXT');
this.charsListTimestamp= this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType == 'TIMESTAMP');
+ this.charsListSecret = this.spec.serviceSpecCharacteristic.filter(specCharacteristic => specCharacteristic.valueType == 'SECRET');
this.serviceSpecRel= this.spec.serviceSpecRelationship;
this.workspace.serviceSpecRel = this.serviceSpecRel;
-
+
this.resourceserviceSpecRef= this.spec.resourceSpecification;
this.workspace.resourceserviceSpecRef = this.resourceserviceSpecRef;
this.workspace.charsListText = this.charsListText;
this.workspace.charsListText = this.workspace.charsListText.concat( this.charsListLongText );
-
+ this.workspace.charsListText = this.workspace.charsListText.concat( this.charsListSecret );
+
this.workspace.charsListNumber = this.charsListSmallint;
this.workspace.charsListNumber = this.workspace.charsListNumber.concat( this.charsListEnum );
this.workspace.charsListNumber = this.workspace.charsListNumber.concat( this.charsListInteger );
@@ -261,8 +264,8 @@ export class ServiceRuleDesignComponent implements OnInit {
this.workspace.registerToolboxCategoryCallback( 'SPECCHARVARIABLES_SET', this.charvarsSetFunction);
this.workspace.registerToolboxCategoryCallback( 'SPECSERVICE_RELS', this.serviceSpecRelsFunction);
this.workspace.registerToolboxCategoryCallback( 'SPECRESOURCE_RELS', this.resourceSpecRelsFunction);
-
-
+
+
this.title = 'Create LCM Rule for ' + this.spec.name;
//the spec is loaded, so proceed to load the LCM Rule spec
@@ -275,7 +278,7 @@ export class ServiceRuleDesignComponent implements OnInit {
}
-
+
retrieveLCMRuleSpec() {
this.lcmRulesService.retrieveLCMRuleSpecification ({id: this.lcmRuleSpecID}).subscribe(
data => this.lcmRuleSpec = data,
@@ -290,7 +293,7 @@ export class ServiceRuleDesignComponent implements OnInit {
this.workspace
);
}
-
+
this.editForm.patchValue(this.lcmRuleSpec)
this.editForm.markAsPristine()
@@ -301,14 +304,14 @@ export class ServiceRuleDesignComponent implements OnInit {
)
}
-
+
/**
* Construct the blocks required by the flyout for the colours category.
* @param {!Blockly.Workspace} workspace The workspace this flyout is for.
* @return {!Array.} Array of XML block elements.
*/
charvarsAllFunction = function(workspace: any) {
- var xmlList = [];
+ var xmlList = [];
var chars: ServiceSpecCharacteristic[] = workspace.charsListAllSpecs ;
var options = [];
@@ -321,11 +324,11 @@ export class ServiceRuleDesignComponent implements OnInit {
if (n1 > n2) {
return 1;
}
-
+
if (n1 < n2) {
return -1;
}
-
+
return 0;
});
@@ -336,7 +339,7 @@ export class ServiceRuleDesignComponent implements OnInit {
.appendField("Get Value as String", "TXTLBL")
.appendField(new Blockly.FieldLabelSerializable(""), "NAMELBL")
.appendField(new Blockly.FieldDropdown( sortedArray ), "OPTIONEDVALUE");
-
+
this.setOutput(true, 'String');
this.setColour(160);
this.setTooltip("");
@@ -344,18 +347,18 @@ export class ServiceRuleDesignComponent implements OnInit {
}
};
-
+
if (Blockly.Blocks['getcharacteristicvalueAsString']) {
var blockText = '' + '';
var block = Blockly.Xml.textToDom(blockText);
xmlList.push(block);
- }
+ }
blockText = '';
block = Blockly.Xml.textToDom(blockText);
- xmlList.push(block);
-
+ xmlList.push(block);
+
return xmlList;
};
/**
@@ -364,7 +367,7 @@ export class ServiceRuleDesignComponent implements OnInit {
* @return {!Array.} Array of XML block elements.
*/
charvarsTextFunction = function(workspace: any) {
- var xmlList = [];
+ var xmlList = [];
var chars: ServiceSpecCharacteristic[] = workspace.charsListText;
if (Blockly.Blocks['getcharval_string_type']) {
@@ -376,10 +379,10 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
blockText = '';
block = Blockly.Xml.textToDom(blockText);
- xmlList.push(block);
+ xmlList.push(block);
if (Blockly.Blocks['setcharval_string_type']) {
for (var i = 0; i < chars.length; i++) {
@@ -390,21 +393,21 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
return xmlList;
};
-
-
-
+
+
+
charvarsNumberFunction = function(workspace: any) {
// Returns an array of hex colours, e.g. ['#4286f4', '#ef0447']
-
+
var charsList: ServiceSpecCharacteristic[] = workspace.charsListNumber;
-
+
var xmlList = [];
-
-
+
+
if (Blockly.Blocks['getcharval_number']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -414,10 +417,10 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
blockText = '';
block = Blockly.Xml.textToDom(blockText);
- xmlList.push(block);
+ xmlList.push(block);
if (Blockly.Blocks['setcharval_number']) {
@@ -429,17 +432,17 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
return xmlList;
};
-
-
+
+
charvarsBoolFunction = function(workspace: any) {
// Returns an array of hex colours, e.g. ['#4286f4', '#ef0447']
var charsList: ServiceSpecCharacteristic[] = workspace.charsListBoolean;
var xmlList = [];
-
-
+
+
if (Blockly.Blocks['getcharval_bool_type']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -449,7 +452,7 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
if (Blockly.Blocks['setcharval_bool_type']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -459,18 +462,18 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
return xmlList;
};
-
-
+
+
charvarsSetFunction = function(workspace: any) {
// Returns an array of hex colours, e.g. ['#4286f4', '#ef0447']
-
+
var charsList: ServiceSpecCharacteristic[] = workspace.charsListSet;
var xmlList = [];
-
-
+
+
if (Blockly.Blocks['getcharval_set_type']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -480,7 +483,7 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
if (Blockly.Blocks['setcharval_set_type']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -490,8 +493,8 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
-
+
+
if (Blockly.Blocks['setcharval_sadd']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -501,7 +504,7 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
+
if (Blockly.Blocks['setcharval_sremove']) {
for (var i = 0; i < charsList.length; i++) {
var blockText = '' +
@@ -511,23 +514,23 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
}
-
-
-
+
+
+
return xmlList;
};
-
-
+
+
/**
* Construct the blocks required by the flyout for the colours category.
* @param {!Blockly.Workspace} workspace The workspace this flyout is for.
* @return {!Array.} Array of XML block elements.
*/
serviceSpecRelsFunction = function(workspace: any) {
- var xmlList = [];
+ var xmlList = [];
var chars: ServiceSpecRelationship[] = workspace.serviceSpecRel;
-
+
if (Blockly.Blocks['getServiceRefName']) {
for (var i = 0; i < chars.length; i++) {
@@ -543,7 +546,7 @@ export class ServiceRuleDesignComponent implements OnInit {
if (Blockly.Blocks['getServiceRefProps']) {
for (var i = 0; i < chars.length; i++) {
-
+
var blockText = '' +
'' + chars[i].name + '' +
'';
@@ -555,9 +558,9 @@ export class ServiceRuleDesignComponent implements OnInit {
blockText = '';
block = Blockly.Xml.textToDom(blockText);
- xmlList.push(block);
+ xmlList.push(block);
+
-
@@ -571,27 +574,27 @@ export class ServiceRuleDesignComponent implements OnInit {
// workspace.specService.retrieveServiceSpecification({id: servRef.id, servRef , xmlList }).subscribe(
// data => serviceRefSpec = data,
// error => console.error(error),
- // () => {
-
- // var xmlx = xmlList;
- // var serviceRefChars: ServiceSpecCharacteristic[] = serviceRefSpec.serviceSpecCharacteristic;
+ // () => {
+
+ // var xmlx = xmlList;
+ // var serviceRefChars: ServiceSpecCharacteristic[] = serviceRefSpec.serviceSpecCharacteristic;
// for (var j = 0; j < serviceRefChars.length; j++) {
// options.push([ serviceRefChars[j].name, serviceRefChars[j].name ]);
// }
// console.log(servRef);
-
+
// var sortedArray: string[] = options.sort((n1,n2) => {
// if (n1 > n2) {
// return 1;
// }
-
+
// if (n1 < n2) {
// return -1;
// }
-
+
// return 0;
// });
-
+
// Blockly.Blocks['setServiceRefProps'] = {
// init: function() {
// this.appendDummyInput()
@@ -600,25 +603,25 @@ export class ServiceRuleDesignComponent implements OnInit {
// this.appendDummyInput()
// .appendField(new Blockly.FieldLabelSerializable(""), "ASERVICEREFUUID")
// .appendField(new Blockly.FieldLabelSerializable(""), "NAMELBL")
- // .appendField(new Blockly.FieldDropdown( sortedArray ), "OPTIONEDVALUE");
-
-
+ // .appendField(new Blockly.FieldDropdown( sortedArray ), "OPTIONEDVALUE");
+
+
// this.appendValueInput("AVALUE")
// .setCheck("String")
// .setAlign(Blockly.ALIGN_RIGHT)
- // .appendField("value");
-
-
- // this.setInputsInline( true );
+ // .appendField("value");
+
+
+ // this.setInputsInline( true );
// this.setPreviousStatement(true, null);
// this.setNextStatement(true, null);
// this.setColour(160);
// this.setTooltip("Set values to characteristics of a refernced service.");
// this.setHelpUrl("");
-
- // },
-
- // };
+
+ // },
+
+ // };
// }
// )
@@ -628,7 +631,7 @@ export class ServiceRuleDesignComponent implements OnInit {
// '';
// var block = Blockly.Xml.textToDom(blockText);
// xmlList.push(block);
-
+
// }
// }
@@ -638,7 +641,7 @@ export class ServiceRuleDesignComponent implements OnInit {
if (Blockly.Blocks['setServiceRefCharacteristicValues']) {
for (var i = 0; i < chars.length; i++) {
-
+
var blockText = '' +
'' + chars[i].name + '' +
'' + chars[i].uuid + '' +
@@ -659,20 +662,20 @@ export class ServiceRuleDesignComponent implements OnInit {
xmlList.push(block);
}
-
+
return xmlList;
};
-
-
+
+
/**
* Construct the blocks required by the flyout for the colours category.
* @param {!Blockly.Workspace} workspace The workspace this flyout is for.
* @return {!Array.} Array of XML block elements.
*/
resourceSpecRelsFunction = function(workspace: any) {
- var xmlList = [];
+ var xmlList = [];
var chars: ResourceSpecificationRef[] = workspace.resourceserviceSpecRef;
if (Blockly.Blocks['getResourceRefName']) {
@@ -687,15 +690,15 @@ export class ServiceRuleDesignComponent implements OnInit {
blockText = '';
block = Blockly.Xml.textToDom(blockText);
- xmlList.push(block);
+ xmlList.push(block);
return xmlList;
};
createOpensliceJava(workspace: any, Blockly: any) {
-
-
+
+
workspace.registerButtonCallback( 'CREATE_STRING_VARIABLE' , this.myFirstButtonPressed );
// workspace.createVariable('Area of Service: Region specification', 'set');
// workspace.createVariable('Region panda1', 'Panda', null);
@@ -705,14 +708,14 @@ export class ServiceRuleDesignComponent implements OnInit {
// workspace.registerToolboxCategoryCallback( 'SPECCHARVARIABLES_NUM', this.charvarsNum);
// workspace.registerToolboxCategoryCallback( 'SPECCHARVARIABLES_BOOL', this.charvarsBool);
// workspace.registerToolboxCategoryCallback( 'SPECCHARVARIABLES_SET', this.charvarsSet);
-
+
Blockly.Java['literal_text_multiline'] = function(block: { getFieldValue: (arg0: string) => any; }) {
// Text value.
var code = '"""\n' + block.getFieldValue('TEXT') + '\n"""\n';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['text_format_multi'] = function(block: { getFieldValue: (arg0: string) => any; }) {
// Text value.
@@ -727,7 +730,7 @@ export class ServiceRuleDesignComponent implements OnInit {
var code = 'String.format(' + atext + ', ' + objects + ')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['changecharacteristicvalue'] = function (block: any) {
// Print statement.
var argument0 = Blockly.Java.valueToCode(block, 'spec',
@@ -737,8 +740,8 @@ export class ServiceRuleDesignComponent implements OnInit {
console.log( argument0 );
return 'changeCharacteristicValue(' + argument0 + ', ' + argument1 + ')';
};
-
-
+
+
Blockly.Java['getcharacteristicvalueAsString'] = function(block: any) {
var dropdown_name = block.getFieldValue('OPTIONEDVALUE');
var comment_name = block.getFieldValue('NAMELBL');
@@ -746,89 +749,89 @@ export class ServiceRuleDesignComponent implements OnInit {
var code = 'getCharValAsString(' + argument0 + ')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setcharacteristicvalue'] = function (block: any) {
// Print statement.
-
+
var dropdown_name = block.getFieldValue('NAME');
var argument0 = Blockly.Java.quote_( dropdown_name );
var argument1 = Blockly.Java.valueToCode(block, 'NAME',
Blockly.Java.ORDER_NONE) || '""';
-
+
return 'setcharacteristicvalue(' + argument0 + ', ' + argument1 + ')';
};
-
-
+
+
Blockly.Java['getcharval_string_type'] = function(block: any) {
var dropdown_name = block.getFieldValue('AVALUE');
var argument0 = Blockly.Java.quote_( dropdown_name );
var code = 'getCharValFromStringType(' + argument0 + ')' ;
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setcharval_string_type'] = function (block: any) {
// Print statement.
-
+
var dropdown_name = block.getFieldValue('NAMELBL');
var argument0 = Blockly.Java.quote_( dropdown_name );
var argument1 = Blockly.Java.valueToCode(block, 'AVALUE',
Blockly.Java.ORDER_NONE) || '""';
-
+
var code: String = 'setCharValFromStringType(' + argument0 + ', ' + argument1 + ');\n';
return code;
};
-
+
Blockly.Java['getcharval_number'] = function(block: any) {
var dropdown_name = block.getFieldValue('AVALUE');
var argument0 = Blockly.Java.quote_( dropdown_name );
var code = 'getCharValNumber(' + argument0 + ')' ;
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setcharval_number'] = function (block: any) {
// Print statement.
-
+
var dropdown_name = block.getFieldValue('NAMELBL');
var argument0 = Blockly.Java.quote_( dropdown_name );
var argument1 = Blockly.Java.valueToCode(block, 'AVALUE',
Blockly.Java.ORDER_NONE) || '""';
-
+
return 'setCharValNumber(' + argument0 + ', ' + argument1 + ');\n';
};
-
-
+
+
Blockly.Java['getcharval_bool_type'] = function(block: any) {
var dropdown_name = block.getFieldValue('AVALUE');
var argument0 = Blockly.Java.quote_( dropdown_name );
var code = 'getCharValFromBooleanType(' + argument0 + ')' ;
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setcharval_bool_type'] = function (block: any) {
// Print statement.
-
+
var dropdown_name = block.getFieldValue('NAMELBL');
var argument0 = Blockly.Java.quote_( dropdown_name );
var argument1 = Blockly.Java.valueToCode(block, 'AVALUE',
Blockly.Java.ORDER_NONE) || '""';
-
+
var code: String = 'setCharValFromBooleanType(' + argument0 + ', ' + argument1 + ');\n';
return code;
};
-
+
Blockly.Java['getcharval_set_type'] = function(block: any) {
var dropdown_name = block.getFieldValue('AVALUE');
var argument0 = Blockly.Java.quote_( dropdown_name );
var code = 'getCharValFromSetType(' + argument0 + ')' ;
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setcharval_set_type'] = function (block: any) {
// Print statement.
-
+
var dropdown_name = block.getFieldValue('NAMELBL');
var argument0 = Blockly.Java.quote_( dropdown_name );
var argument1 = Blockly.Java.valueToCode(block, 'AVALUE',
@@ -840,7 +843,7 @@ export class ServiceRuleDesignComponent implements OnInit {
var additionalParamsAsObject= [];
var dd = JSON.parse( argument1 );
dd.forEach( e => {
-
+
var element = JSON.parse( e); //each element is a json String which describes the key value element
var ename = element.paramname;
var evalue = element.paramvalue;
@@ -850,22 +853,22 @@ export class ServiceRuleDesignComponent implements OnInit {
additionalParamsAsObject.push( newelem );
console.log('Variable additionalParams newelem = ' + newelem );
});
-
+
var a1 = JSON.stringify( additionalParamsAsObject, null );
a1 = '"' + textEscape (a1) + '"';
/**
- * it generates for example:
- * setCharValFromSetType("cirros_2vnf_nsd::Primitive::fsetup",
+ * it generates for example:
+ * setCharValFromSetType("cirros_2vnf_nsd::Primitive::fsetup",
* "[{\"value\":\"1\",\"alias\":\"member_vnf_index\"},{\"value\":\"fsetup\",\"alias\":\"primitive\"},{\"value\":\"{ \\\"tvg\\\": { \\\"ip\\\": \\\"\\\", \\\"channel1\\\": { \\\"mode\\\": \\\"0\\\" } } }\",\"alias\":\"confjson\"}]");
- * );
+ * );
*/
-
+
return 'setCharValFromSetType(' + argument0 + ', ' + a1 + ');\n';
};
-
-
+
+
Blockly.Java['logic_set_contains_string'] = function (block: { getFieldValue: (arg0: string) => string }) {
-
+
var argument0 = Blockly.Java.valueToCode(block, 'A', Blockly.Java.ORDER_NONE) || '0';
var argument1 = Blockly.Java.valueToCode(block, 'B', Blockly.Java.ORDER_NONE) || '0';
@@ -876,19 +879,19 @@ export class ServiceRuleDesignComponent implements OnInit {
};
-
+
Blockly.Java['so_log_string'] = function (block: any) {
// Print statement.
-
+
var argument0 = Blockly.Java.valueToCode(block, 'txtlog',
Blockly.Java.ORDER_NONE) || null;
-
+
var code: String = 'logtext(' + argument0 + ');\n';
return code;
};
-
-
+
+
Blockly.Java['osm_nsd_config'] = function(block: any) {
var NSDID = Blockly.Java.valueToCode(block, 'NSDID',
Blockly.Java.ORDER_NONE) || '""';
@@ -896,14 +899,14 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java.ORDER_NONE) || '""';
var config = Blockly.Java.valueToCode(block, 'config',
Blockly.Java.ORDER_NONE) || null;
-
+
var osmconfig: any = { nsdId:'zzz' };
osmconfig.nsdId = NSDID.replaceAll('"', '');
osmconfig.vimAccountId = VIMID.replaceAll('"', '');
var code = JSON.stringify( osmconfig, null );
-
+
code = '"' + textEscape( code ) + '"' ;
if (config){
//it will replace all
@@ -916,34 +919,34 @@ export class ServiceRuleDesignComponent implements OnInit {
code = config;
}
-
+
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
-
+
+
Blockly.Java['osm_nsd_config_detailed'] = function(block: any) {
var NSDID = Blockly.Java.valueToCode(block, 'NSDID',
Blockly.Java.ORDER_NONE) || '""';
var VIMID = Blockly.Java.valueToCode(block, 'VIMID',
Blockly.Java.ORDER_NONE) || '""';
-
+
var VNF = Blockly.Java.valueToCode(block, 'VNF',
Blockly.Java.ORDER_NONE) || null;
-
+
var VLD = Blockly.Java.valueToCode(block, 'VLD',
Blockly.Java.ORDER_NONE) || null;
var additionalParamsForVnf = Blockly.Java.valueToCode(block, 'additionalParamsForVnf',
Blockly.Java.ORDER_NONE) || null;
-
+
var k8snamespace = Blockly.Java.valueToCode(block, 'k8s-namespace',
Blockly.Java.ORDER_NONE) || null;
-
+
var additionalParamsForNs = Blockly.Java.valueToCode(block, 'additionalParamsForNs',
Blockly.Java.ORDER_NONE) || null;
-
+
var ssh_keys = Blockly.Java.valueToCode(block, 'ssh_keys',
Blockly.Java.ORDER_NONE) || null;
@@ -956,9 +959,9 @@ export class ServiceRuleDesignComponent implements OnInit {
osmconfig.nsdId = NSDID.replaceAll('"', '');
osmconfig.vimAccountId = VIMID.replaceAll('"', '');
-
- if (VNF){
+
+ if (VNF){
osmconfig.vnf =JSON.parse(VNF) ;
}
if (VLD){
@@ -969,25 +972,25 @@ export class ServiceRuleDesignComponent implements OnInit {
}
if (additionalParamsForNs){
osmconfig.additionalParamsForNs = JSON.parse(additionalParamsForNs) ;
- }
+ }
if (ssh_keys){
osmconfig.ssh_keys = JSON.parse(ssh_keys) ;
}
var code = '"' + textEscape( JSON.stringify( osmconfig, null) ) + '"' ;
-
+
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
-
-
+
+
+
Blockly.Java['osm_nsd_config_vnf'] = function(block: any) {
var membervnfindex = Blockly.Java.valueToCode(block, 'member-vnf-index',
Blockly.Java.ORDER_NONE) || '"1"';
var vdu = Blockly.Java.valueToCode(block, 'vdu',
- Blockly.Java.ORDER_NONE) || null;
+ Blockly.Java.ORDER_NONE) || null;
var vimAccountId = Blockly.Java.valueToCode(block, 'VIMID',
Blockly.Java.ORDER_NONE) || null;
-
+
var code: any = { "member-vnf-index":membervnfindex.replaceAll('"', '') };
if ( vimAccountId ){
@@ -1001,15 +1004,15 @@ export class ServiceRuleDesignComponent implements OnInit {
code = JSON.stringify( code, null );
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['osm_nsd_config_vld'] = function(block: any) {
var name = Blockly.Java.valueToCode(block, 'name',
Blockly.Java.ORDER_NONE) || '""';
var vimnetworkname = Blockly.Java.valueToCode(block, 'vim-network-name',
- Blockly.Java.ORDER_NONE) || null;
+ Blockly.Java.ORDER_NONE) || null;
var config = Blockly.Java.valueToCode(block, 'config',
Blockly.Java.ORDER_NONE) || null;
-
+
var code: any = { "name":name.replaceAll('"', '') };
if ( vimnetworkname ){
@@ -1022,7 +1025,7 @@ export class ServiceRuleDesignComponent implements OnInit {
config = config.substring(0, config.length-1);
code = JSON.parse( config );
}
-
+
code = JSON.stringify( code, null, 4 );
return [code, Blockly.Java.ORDER_ATOMIC];
};
@@ -1032,12 +1035,12 @@ export class ServiceRuleDesignComponent implements OnInit {
var membervnfindex = Blockly.Java.valueToCode(block, 'member-vnf-index',
Blockly.Java.ORDER_NONE) || '"1"';
var additionalParams = Blockly.Java.valueToCode(block, 'additionalParams',
- Blockly.Java.ORDER_NONE) || null;
+ Blockly.Java.ORDER_NONE) || null;
var additionalParamsForKdu = Blockly.Java.valueToCode(block, 'additionalParamsForKdu',
- Blockly.Java.ORDER_NONE) || null;
-
-
+ Blockly.Java.ORDER_NONE) || null;
+
+
var config = Blockly.Java.valueToCode(block, 'config',
Blockly.Java.ORDER_NONE) || null;
@@ -1047,8 +1050,8 @@ export class ServiceRuleDesignComponent implements OnInit {
if (additionalParams){
var dd = JSON.parse( additionalParams);
dd.forEach( e => {
-
-
+
+
var element = JSON.parse( e); //each element is a json String which describes the key value element
var evalue = element.paramvalue;
@@ -1059,22 +1062,22 @@ export class ServiceRuleDesignComponent implements OnInit {
additionalParamsAsObject = '"' + element.paramname + '" : "' + evalue + '"';
}
});
-
+
additionalParamsAsObject = "{" + additionalParamsAsObject + "}";
code.additionalParams = JSON.parse( additionalParamsAsObject ) ;
}
var additionalParamsForKduAsObject= null;
-
+
console.log('Variable additionalParamsForKdu = ' + additionalParamsForKdu );
code.additionalParamsForKdu = JSON.parse( additionalParamsForKdu ) ;
// if (additionalParamsForKdu){
// var dd = JSON.parse( additionalParamsForKdu);
- // dd.forEach( e => {
-
+ // dd.forEach( e => {
+
// var element = JSON.parse( e); //each element is a json String which describes the key value element
// if ( element ){
// var evalue = element.paramvalue;
@@ -1086,9 +1089,9 @@ export class ServiceRuleDesignComponent implements OnInit {
// additionalParamsForKduAsObject = '"' + element.paramname + '" : "' + evalue + '"';
// }
// }
-
+
// });
-
+
// if (additionalParamsForKduAsObject){
// additionalParamsForKduAsObject = "{" + additionalParamsForKduAsObject + "}";
// code.additionalParamsForKdu = JSON.parse( additionalParamsForKduAsObject ) ;
@@ -1107,16 +1110,16 @@ export class ServiceRuleDesignComponent implements OnInit {
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['osm_nsd_config_kdu'] = function(block: any) {
var kdu_name = Blockly.Java.valueToCode(block, 'kdu_name',
- Blockly.Java.ORDER_NONE) || '"1"';
+ Blockly.Java.ORDER_NONE) || '"1"';
var k8snamespace = Blockly.Java.valueToCode(block, 'k8s-namespace',
Blockly.Java.ORDER_NONE) || null;
var additionalParams = Blockly.Java.valueToCode(block, 'additionalParams',
- Blockly.Java.ORDER_NONE) || null;
-
+ Blockly.Java.ORDER_NONE) || null;
+
var code: any = { "kdu_name":kdu_name.replaceAll('"', '') };
if ( k8snamespace ){
@@ -1129,26 +1132,26 @@ export class ServiceRuleDesignComponent implements OnInit {
additionalParams = additionalParams.substring(0, additionalParams.length-1);
code.additionalParams = JSON.parse( additionalParams ) ;
}
-
+
code = JSON.stringify( code, null);
// code = textEscape( JSON.stringify( code, null) );
// code = '"' + code + '"';
-
+
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['param_value_tuple'] = function(block: any) {
var paramname = Blockly.Java.valueToCode(block, 'paramname',
Blockly.Java.ORDER_NONE) || '""';
-
+
var paramvalue = Blockly.Java.valueToCode(block, 'paramvalue',
- Blockly.Java.ORDER_NONE) || '""';
-
- //paramvalue = paramvalue.replaceAll('"', '')
+ Blockly.Java.ORDER_NONE) || '""';
+
+ //paramvalue = paramvalue.replaceAll('"', '')
paramvalue = paramvalue.replace('"', ''); //remove only first and last quote
paramvalue = paramvalue.substring(0, paramvalue.length-1);
-
+
var code: any = { "paramname":paramname.replaceAll('"', ''), "paramvalue": paramvalue , };
code = textEscape( JSON.stringify( code, null) );
code = '"' + code + '"';
@@ -1158,9 +1161,9 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java['computeVariable'] = function(block: any) {
var paramvariable = Blockly.Java.valueToCode(block, 'paramvariable',
Blockly.Java.ORDER_NONE) || '""';
-
-
-
+
+
+
paramvariable = paramvariable.replaceAll('"', '$$QUOTESTR$$')
var code: any = '$$XVALS_' + paramvariable+ '_XVALE$$';
@@ -1186,25 +1189,25 @@ export class ServiceRuleDesignComponent implements OnInit {
return [code, Blockly.Java.ORDER_ATOMIC]
}
-
+
// If the code is not a literal (e.g., it's a method call)
code = "escapeText(" + code + ")";
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
-
+
+
Blockly.Java['valueFromJsonPath'] = function(block: any) {
var jsoninput: string = Blockly.Java.valueToCode(block, 'jsoninput',
Blockly.Java.ORDER_NONE) || '""';
-
+
var jsonpath: any = Blockly.Java.valueToCode(block, 'jsonpath',
Blockly.Java.ORDER_NONE) || '""';
-
+
jsoninput = jsoninput.replace('"', '');
jsoninput = jsoninput.substring(0, jsoninput.length-1);
- jsoninput = '"' + textEscape(jsoninput) + '"';
-
+ jsoninput = '"' + textEscape(jsoninput) + '"';
+
jsonpath = jsonpath.replaceAll("\\\'", "'");
console.log('jsoninput = ' + jsoninput );
@@ -1214,34 +1217,34 @@ export class ServiceRuleDesignComponent implements OnInit {
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['rest_config_client'] = function (block: any) {
// Print statement.
-
+
var xbaseurl = Blockly.Java.valueToCode(block, 'baseurl',
Blockly.Java.ORDER_NONE) || null;
-
-
-
+
+
+
var xOAUTH2CLIENTID = Blockly.Java.valueToCode(block, 'aOAUTH2CLIENTID',
Blockly.Java.ORDER_NONE) || null;
-
+
var xOAUTHSECRET = Blockly.Java.valueToCode(block, 'aOAUTHSECRET',
Blockly.Java.ORDER_NONE) || null;
-
+
var xscopes = Blockly.Java.valueToCode(block, 'scopes',
Blockly.Java.ORDER_NONE) || null;
-
+
var xTOKEURI = Blockly.Java.valueToCode(block, 'aTOKENURI',
Blockly.Java.ORDER_NONE) || null;
-
+
var xUSERNAME = Blockly.Java.valueToCode(block, 'aUSERNAME',
Blockly.Java.ORDER_NONE) || null;
-
+
var xPASSWORD = Blockly.Java.valueToCode(block, 'aPASSWORD',
Blockly.Java.ORDER_NONE) || null;
-
+
var code: any = { baseurl: xbaseurl };
code.aOAUTH2CLIENTID = xOAUTH2CLIENTID;
@@ -1250,7 +1253,7 @@ export class ServiceRuleDesignComponent implements OnInit {
code.aTOKENURI = xTOKEURI;
code.aUSERNAME = xUSERNAME;
code.aPASSWORD = xPASSWORD;
-
+
code = JSON.stringify( code, null
);
@@ -1270,15 +1273,15 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java.ORDER_NONE) || null;
var apayload = Blockly.Java.valueToCode(block, 'payload',
Blockly.Java.ORDER_NONE) || null;
-
-
-
-
+
+
+
+
var code: String = 'rest_block(' + argumentVERBOPTION + ',' + aurl + ',' + aheaders + ',' + apayload + ')';
- if ( argument0 ){
+ if ( argument0 ){
argument0 = JSON.parse(argument0);
- code = 'rest_block(' + argumentVERBOPTION
+ code = 'rest_block(' + argumentVERBOPTION
+', ' + aurl
+', ' + aheaders
+', ' + apayload
@@ -1292,77 +1295,77 @@ export class ServiceRuleDesignComponent implements OnInit {
+ ')';
}
-
+
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['currentServiceOrder'] = function(block: any) {
// Variable getter.
console.log('Variable getter currentServiceOrder')
-
+
var dropdown_name = block.getFieldValue('VERBOPTION');
var argumentVERBOPTION = Blockly.Java.quote_( dropdown_name );
-
+
// var apayload = Blockly.Java.nameDB_.getName(block.getFieldValue('payload'),
// Blockly.Variables.NAME_TYPE);
var code = 'getCurrentServiceOrderPropValue(' + argumentVERBOPTION +')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['currentService'] = function(block: any) {
// Variable getter.
console.log('currentService')
-
+
//var acharname='""';
var dropdown_name = block.getFieldValue('VERBOPTION');
var argumentVERBOPTION = Blockly.Java.quote_( dropdown_name );
-
-
+
+
var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
var code = 'getCurrentServicePropValue(' + argumentVERBOPTION +', '+acharname +')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['setCharacteristicOfCurrentService'] = function(block: any) {
// Variable getter.
console.log('setCharacteristicOfCurrentService')
-
+
var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
var avalue = Blockly.Java.valueToCode(block, 'avalue',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
var code = 'setCharacteristicOfCurrentService(' + acharname +', '+ avalue +');\n';
return code;
};
-
+
Blockly.Java['payloadToService'] = function(block: any) {
// Variable getter.
console.log('payloadToService')
-
+
//var acharname='""';
var dropdown_name = block.getFieldValue('VERBOPTION');
var argumentVERBOPTION = Blockly.Java.quote_( dropdown_name );
-
+
var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
var ajsonpayload = Blockly.Java.valueToCode(block, 'jsonpayload',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
var code = 'getFromPayloadServicePropValue(' + ajsonpayload +', '+argumentVERBOPTION +', '+ acharname +')';
@@ -1371,19 +1374,19 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java['createServiceOrder'] = function(block: any) {
-
+
console.log('createServiceOrder')
-
+
var serviceOrder: ServiceOrderCreate= {
orderItem:[]
};
-
+
var serviceSpecificationid = Blockly.Java.valueToCode(block, 'serviceSpecificationid',
Blockly.Java.ORDER_NONE) || null;
var aserviceCharacteristics = Blockly.Java.valueToCode(block, 'serviceCharacteristics',
- Blockly.Java.ORDER_NONE) || null;
-
-
+ Blockly.Java.ORDER_NONE) || null;
+
+
let newOrderItem: ServiceOrderItem ;
newOrderItem = { service: {
serviceSpecification: {
@@ -1400,21 +1403,21 @@ export class ServiceRuleDesignComponent implements OnInit {
console.log('dd = ' + dd );
dd.forEach (e => {
if ( e ){
-
+
var element = JSON.parse( e); //each element is a json String which describes the key value element
var evalue = element.paramvalue;
- var evalue = element.paramvalue;
+ var evalue = element.paramvalue;
newOrderItem.service.serviceCharacteristic.push({
name: element.paramname,
value: { value: evalue }
})
- }
+ }
});
}
serviceOrder.orderItem.push(newOrderItem);
-
+
var acode = '"' + textEscape( JSON.stringify( serviceOrder, null ) )+ '"';
var code = 'createServiceOrder(' + acode + ')';
@@ -1424,7 +1427,7 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java['askAgent'] = function(block: any) {
// Variable getter.
console.log('askAgent')
-
+
var agentName = Blockly.Java.valueToCode(block, 'agentName',
Blockly.Java.ORDER_NONE) || null;
var chattext = Blockly.Java.valueToCode(block, 'text',
@@ -1433,24 +1436,23 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java.ORDER_NONE) || null;
var timeOut = Blockly.Java.valueToCode(block, 'timeOut',
Blockly.Java.ORDER_NONE) || null;
-
+
var code = 'askAgent(' + agentName + ',' + chattext + ',' + defaultText + ',' + timeOut + ')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
Blockly.Java['createServiceOrderJson'] = function(block: any) {
// Variable getter.
console.log('createServiceOrderJson')
-
+
var jsonpayload = Blockly.Java.valueToCode(block, 'jsonpayload',
Blockly.Java.ORDER_NONE) || null;
-
+
var code = 'createServiceOrder(' + jsonpayload + ')';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['variables_get'] = function(block: any) {
// Variable getter.
console.log('Variable getter CUSTOM')
@@ -1459,7 +1461,7 @@ export class ServiceRuleDesignComponent implements OnInit {
//code = '$EVAL_' + code + '_EVAL$';
return [code, Blockly.Java.ORDER_ATOMIC];
};
-
+
Blockly.Java['variables_set'] = function(block: any) {
// Variable setter.
console.log('Variable setter CUSTOM')
@@ -1484,7 +1486,7 @@ export class ServiceRuleDesignComponent implements OnInit {
variable0 , Blockly.Variables.NAME_TYPE);
//branch = Blockly.Java.INDENT + variable0 + ' = ' +
// argument0 + '[' + indexVar + '];\n' + branch;
-
+
branch = Blockly.Java.INDENT + branch;
var code = 'for ( String ' + variable0 + ': ' + argument0 + ') {\n' +
branch + '}\n';
@@ -1492,16 +1494,16 @@ export class ServiceRuleDesignComponent implements OnInit {
};
-
+
Blockly.Java['createServiceRefIf'] = function(block: any) {
var serviceName = Blockly.Java.valueToCode(block, 'SERVICE_NAME',
Blockly.Java.ORDER_NONE) || '""';
-
-
+
+
var avalue = Blockly.Java.valueToCode(block, 'CONDITION',
Blockly.Java.ORDER_ASSIGNMENT) || 'true';
- var charvalsVarName = 'charvals';
+ var charvalsVarName = 'charvals';
//put it in braces so to ensure the scope of the hashmap variable
var code = '{\n';
@@ -1516,7 +1518,7 @@ export class ServiceRuleDesignComponent implements OnInit {
if (objects){
objects.forEach(element => {
var charname = element.charname;
- var avalue = element.charvalue;
+ var avalue = element.charvalue;
code += charvalsVarName + '.put(' + charname + ',' +avalue + ');\n';
});
}
@@ -1530,12 +1532,12 @@ export class ServiceRuleDesignComponent implements OnInit {
Blockly.Java['createResourceRefIf'] = function(block: any) {
var resourceName = Blockly.Java.valueToCode(block, 'RESOURCE_NAME',
Blockly.Java.ORDER_NONE) || '""';
-
-
+
+
var avalue = Blockly.Java.valueToCode(block, 'CONDITION',
Blockly.Java.ORDER_ASSIGNMENT) || 'true';
-
- var charvalsVarName = 'charvals';
+
+ var charvalsVarName = 'charvals';
//put it in braces so to ensure the scope of the hashmap variable
var code = '{\n';
@@ -1550,7 +1552,7 @@ export class ServiceRuleDesignComponent implements OnInit {
if (objects){
objects.forEach(element => {
var charname = element.charname;
- var avalue = element.charvalue;
+ var avalue = element.charvalue;
code += charvalsVarName + '.put(' + charname + ',' +avalue + ');\n';
});
}
@@ -1561,7 +1563,7 @@ export class ServiceRuleDesignComponent implements OnInit {
return code;
};
-
+
Blockly.Java['getServiceRefName'] = function(block: any) {
var dropdown_name = block.getFieldValue('AVALUE');
var argument0 = Blockly.Java.quote_( dropdown_name );
@@ -1585,18 +1587,18 @@ export class ServiceRuleDesignComponent implements OnInit {
// Variable getter.
console.log('getServiceRefProps')
-
+
//var acharname='""';
var dropdown_name = block.getFieldValue('VERBOPTION');
var servicename = block.getFieldValue('AVALUE');
servicename = Blockly.Java.quote_( servicename );
var argumentVERBOPTION = Blockly.Java.quote_( dropdown_name );
-
-
+
+
var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
var code = 'getServiceRefPropValue(' + servicename +', '+ argumentVERBOPTION +', '+acharname +')';
@@ -1604,30 +1606,30 @@ export class ServiceRuleDesignComponent implements OnInit {
};
-
+
// Blockly.Java['setServiceRefProps'] = function(block: any) {
// // Variable getter.
// console.log('setServiceRefProps');
-
+
// //var acharname='""';
// var servicename = block.getFieldValue('ASERVICEREFNAME');
// servicename = Blockly.Java.quote_( servicename );
// var servicerefuuid = block.getFieldValue('ASERVICEREFUUID');
// servicerefuuid = Blockly.Java.quote_( servicerefuuid );
-
+
// console.log( servicename );
-
+
// // var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
// // Blockly.Java.ORDER_ASSIGNMENT) || '""';
// var acharname = block.getFieldValue('OPTIONEDVALUE');
// console.log( acharname );
-
-
+
+
// var aVALUE = Blockly.Java.valueToCode(block, 'AVALUE',
// Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
// console.log( aVALUE );
// var code = 'setServiceRefPropValue(' + servicename +', '+acharname +', '+aVALUE +');\n';
@@ -1637,7 +1639,7 @@ export class ServiceRuleDesignComponent implements OnInit {
// };
-
+
Blockly.Java['serviceRefCharacteristic'] = function(block: any) {
// Variable getter.
console.log('serviceRefCharacteristic');
@@ -1648,7 +1650,7 @@ export class ServiceRuleDesignComponent implements OnInit {
var aVALUE = Blockly.Java.valueToCode(block, 'AVALUE',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
console.log( aVALUE );
var code: any = { "charname" : acharname, "charvalue" : aVALUE };
@@ -1661,22 +1663,22 @@ export class ServiceRuleDesignComponent implements OnInit {
// Variable getter.
console.log('setServiceRefCharacteristicValues');
-
+
//var acharname='""';
var servicename = block.getFieldValue('ASERVICEREFNAME');
servicename = Blockly.Java.quote_( servicename );
var servicerefuuid = block.getFieldValue('ASERVICEREFUUID');
servicerefuuid = Blockly.Java.quote_( servicerefuuid );
-
+
console.log( servicename );
-
+
var acharname = Blockly.Java.valueToCode(block, 'characteristicName',
Blockly.Java.ORDER_ASSIGNMENT) || '""';
-
+
console.log( acharname );
-
-
+
+
var cvs = Blockly.Java.valueToCode(block, 'CHARVALUES', Blockly.Java.ORDER_NONE) || null ;
console.log( cvs );
var objects = JSON.parse( cvs );
@@ -1693,7 +1695,7 @@ export class ServiceRuleDesignComponent implements OnInit {
if (objects){
objects.forEach(element => {
var charname = element.charname;
- var avalue = element.charvalue;
+ var avalue = element.charvalue;
code += charvalsVarName + '.put(' + charname + ',' +avalue + ');\n';
});
}
@@ -1706,15 +1708,15 @@ export class ServiceRuleDesignComponent implements OnInit {
};
-
+
}
-
-
-
-
-
-
-
+
+
+
+
+
+
+
saveProgram(): void {
// this.program.xmlData = Blockly.Xml.domToText(
// Blockly.Xml.workspaceToDom(this.workspace)
@@ -1737,25 +1739,25 @@ export class ServiceRuleDesignComponent implements OnInit {
this.lcmRulesService .createLCMRuleSpecification(updateObj).subscribe(
data => { this.lcmRuleSpec = data },
error => console.error(error),
- () => {
+ () => {
this.newLCMRuleSpecification = false
this.toast.success("Service Specification was successfully created")
this.router.navigate(['services', 'service_spec_update', this.specID])
-
-
+
+
}
)
-
+
} else
{
this.lcmRulesService.patchLCMRuleSpecification({id: this.lcmRuleSpec.id, body: updateObj}).subscribe(
data => console.log(data),
error => console.error(error),
- () => {
+ () => {
this.toast.success("Service Specification was successfully updated");
this.router.navigate(['services', 'service_spec_update', this.specID])
-
+
}
)
}
@@ -1766,31 +1768,31 @@ export class ServiceRuleDesignComponent implements OnInit {
}
-
+
addBlock(): void {
-
+
this.workspace;
-
+
// console.log('saving the program - ', JSON.stringify(this.program));
}
-
+
cancelProgram(): void {
-
-
+
+
console.log('cancelProgram the program - ' );
this.router.navigate(['services', 'service_spec_update', this.specID])
}
-
-
+
+
}
function textEscape(avalue: any): any {
-
+
// Check if the value is an object (including arrays)
if (typeof avalue === 'object' && avalue !== null) {
// Convert object or array to a JSON string