GlideScriptedExtensionPoint - Did not get the extensions from the Extension point . Please help !

Raji10
Tera Contributor

Hi All,

Please find the Extension Point and the Script Include below:

1. Name: MySortAlgorithmExt 

   Type : Extension Point

var MySortAlgorithmExt = Class.create();
MySortAlgorithmExt.prototype = {
    initialize: function() {
    },

    process: function(/*array*/ data) {
        data.sort();
		data.reverse();
        return data;
    },

    type: 'MySortAlgorithmExt'
};

2. Name: MyScript_ScriptedExtPoints

    Type: Script Include

var MyScript_ScriptedExtPoints = Class.create();
MyScript_ScriptedExtPoints.prototype = {
    initialize: function(data) {
		this.DATA = data;
    },
	
	process: function()
	{
		gs.info('Before: '+this.DATA);
		
		try{
		var epArr = new GlideScriptedExtensionPoint().getExtensions("x_bn.MySortAlgorithmExt");
		gs.info("EPS output: "+epArr+":"+epArr[0]+epArr[1]+epArr.length);
		if(epArr.length > 0)
			{
				var ep = epArr[0];
				gs.info("If statement ran");
				this.DATA = ep.process(this.DATA);
			}
		
		else {	gs.info("Else statement ran");
				this.DATA.sort();}
		
		return this.DATA;
			}
		catch(ex)
			{
				gs.info("ERROR: +"+ex);
			}
	},

    type: 'MyScript_ScriptedExtPoints'
};

GlideScriptedExtensionPoint - Did not get the extensions from the Extension point . Please help !

3. It gives me the below output when I run from background script:

var data = [];
for(i=4;i>=0;i--)
{
data.push(i);
}

var ms = new x_bn.MyScript_ScriptedExtPoints(data);
var result = ms.process();

gs.info(result);

Output: 

x_bn (MyScript_ScriptedExtPoints): Before: 4,3,2,1,0
x_bn (MyScript_ScriptedExtPoints): EPS output: :undefinedundefined0
x_bn (MyScript_ScriptedExtPoints): Else statement ran
x_bn: 0,1,2,3,4

Issue: The epArr gives undefined at below line:

var epArr = new GlideScriptedExtensionPoint().getExtensions("x_bn.MySortAlgorithmExt");

Please help what is wrong over here!

Thanks & Regards,

Rajalakshmi.

1 REPLY 1

Raji10
Tera Contributor

Hi All,

I missed creating the Implementation. It works now!

 

Thank you All!