イントラマートのContentオブジェクトを使って、別のソースファイルにある関数を呼び分ける
イントラマートのContentオブジェクトを使って、別のソースファイルにある関数を呼び分ける方法です。
イントラマートとは
株式会社NTTデータイントラマート社が開発・販売している、Webアプリケーションシステムのシステム共通基盤(統合型フレームワーク)で、国内の著名企業を中心に6,000社以上に導入されています。
イントラマートを導入することにより、Webシステム開発における短納期・低コスト・標準化推進・品質向上を実現できます。
詳しくはこちらをご覧ください。
イントラマートのContentオブジェクトを使って、別のソースファイルにある関数を呼び分ける
イントラマートのContentオブジェクトを使って、別のソースファイルにある「disp_log()」という関数を呼び分けます。
まずは呼び出し側から。
var logger = Logger.getLogger();
function init( request )
{
var ret ;
//別のソースファイル(common1.jsにある「disp_log」という関数を呼びます
ret = Content.executeFunction( "common1", "disp_log", "abc", "123", 456 ) ;
logger.debug( "common1 disp_log()の戻り値[" + ret + "]" ) ;
//別のソースファイル(common2.jsにある「disp_log」という関数を呼びます
ret = Content.executeFunction( "common2", "disp_log", "123", "abc", 321 ) ;
logger.debug( "common2 disp_log()の戻り値[" + ret.ret + "]" ) ;
}
common1.jsです。
var logger = Logger.getLogger();
function disp_log( para1, para2, para3 )
{
logger.debug( "my filename=[common1.js] para1=[" + para1 + "] para2=[" + para2 + "] para3=[" + para3 + "]") ;
return "12345" ;
}
common2.jsです。(戻り値をObject型にしてみました。)
var logger = Logger.getLogger();
function disp_log( para1, para2, para3 )
{
logger.debug( "my filename=[common2.js] para1=[" + para1 + "] para2=[" + para2 + "] para3=[" + para3 + "]") ;
var ret = new Object() ;
ret.ret = "abcd" ;
return ret ;
}
上手く使えばデザインパターンの「Template Methodパターン」なんかも実装できるかも知れません。






