From: Jan T. <de...@us...> - 2003-05-29 16:02:30
|
Update of /cvsroot/net-script/netscript2/src/perl/NetScript In directory sc8-pr-cvs1:/tmp/cvs-serv28111 Modified Files: Interpreter.pm Log Message: * implemented DAL Index: Interpreter.pm =================================================================== RCS file: /cvsroot/net-script/netscript2/src/perl/NetScript/Interpreter.pm,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** Interpreter.pm 4 Dec 2002 19:23:14 -0000 1.15 --- Interpreter.pm 29 May 2003 16:02:27 -0000 1.16 *************** *** 125,129 **** use NetScript::Util::FileRetriever; use NetScript::Util::UIDGenerator; ! use XML::DOM2::DOMParser; use XML::DOM2::DOMWriter; use XML::DOM2::XMLDOMWriterStyle; --- 125,129 ---- use NetScript::Util::FileRetriever; use NetScript::Util::UIDGenerator; ! #use XML::DOM2::DOMParser; use XML::DOM2::DOMWriter; use XML::DOM2::XMLDOMWriterStyle; *************** *** 140,146 **** my $configFile = $request -> dir_config( "NetScriptConfigFile" ); $CONFIGURATION = $configFile; ! my $interpreter = NetScript::Interpreter -> new( $request ); ! $interpreter -> run(); ! return OK; } --- 140,146 ---- my $configFile = $request -> dir_config( "NetScriptConfigFile" ); $CONFIGURATION = $configFile; ! my $interpreter = NetScript::Interpreter -> new( $request ); ! $interpreter -> run(); ! return OK; } *************** *** 174,178 **** $this -> { m_currentState }; $this -> { m_ScriptURL } = undef; ! $this -> { m_DOMParser } = XML::DOM2::DOMParser -> new(); $this -> { m_Config } = $config; --- 174,178 ---- $this -> { m_currentState }; $this -> { m_ScriptURL } = undef; ! $this -> { m_Config } = $config; *************** *** 188,191 **** --- 188,205 ---- $this -> { m_Cookies } = \@cookieList; + # find out which DAL to use + my $dalName = $config -> getSetting( "DAL" ); + unless ( defined( eval { + eval "require $dalName;1;" or die $@; + eval "import $dalName;1;" or die $@; + 1; + } ) ) { + $this -> getEventRelay() -> createAndRaiseEvent( + $FATAL_EVENT, "Unable to load DOM Abstraction Layer: ". $dalName . "\n" . $@ ); + } + + $this -> { m_DAL } = $dalName -> new(); + + # initialize libdir my $libdir = $config -> getSetting( "LIBDIR" ); unless ( -e $libdir ) { *************** *** 233,239 **** # Returns an instance of XML::DOM2::DOMParser. #*/ ! sub getDOMParser { my ( $this ) = @_; ! $this -> { m_DOMParser }; } --- 247,253 ---- # Returns an instance of XML::DOM2::DOMParser. #*/ ! sub getDAL { my ( $this ) = @_; ! $this -> { m_DAL }; } *************** *** 380,384 **** # start input file parsing ! my $domparser = $this -> { m_DOMParser }; my $dom = undef; unless ( eval { --- 394,398 ---- # start input file parsing ! my $domparser = $this -> getDAL(); my $dom = undef; unless ( eval { |