richter     02/03/05 00:07:23

  Modified:    .        Tag: Embperl2c Changes.pod Makefile.PL
                        embpcgi.bat.templ embpexec.bat.templ
                        embpexec.pl.templ embpfastcgi.pl.templ
                        embpmsgid.pl.templ epcfg.h epdat2.h epdom.c
                        epinit.c epmain.c epocgi.bat.templ epocgi.pl.templ
                        epocgi.test.pl.templ epparse.c test.pl
               test/conf Tag: Embperl2c httpd.conf.src startup.pl
               xsbuilder/maps Tag: Embperl2c ep_structure.map
  Added:       test     Tag: Embperl2c testapp.pl
               test/cmp Tag: Embperl2c i18n.htm
               test/html/app Tag: Embperl2c i18n.htm
  Log:
  i18n
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.129.4.48 +30 -10    embperl/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Changes.pod,v
  retrieving revision 1.129.4.47
  retrieving revision 1.129.4.48
  diff -u -r1.129.4.47 -r1.129.4.48
  --- Changes.pod       27 Feb 2002 11:58:23 -0000      1.129.4.47
  +++ Changes.pod       5 Mar 2002 08:07:20 -0000       1.129.4.48
  @@ -2,31 +2,48 @@
   
   =head1 2.0b6
   
  +   - Embperl have move from the namespace HTML::Embperl to Embperl.
  +     This is because Embperl is no longer only a HTML framework,
  +     but is suitable for other formats like XML too. Also this allows
  +     to install Embperl 1.x and 2.x on the same machine without
  +     conflicts, to make a smooth upgrade.
      - Rewrote Embperl internal data structures. The Embperl request
        structure is now splitted into thread, application, request
        and component structure. 
      - Moved nearly all of the per request/component initialization code
        from Perl to C. Together with the optimized data structures, this
        speeds up request/component initialization, which is especialy a
  -     performance improvmenet for pages that call do a lot calls to
  -     Execute.
  +     performance improvement for pages that  do a lot calls to
  +     Execute (up to 50% for small includes).
      - All members of these structures now available form Perl
        which avoids using mod_perl Apache object and enviroment 
        variables in most cases, makeing the resulting pages more 
        independend from the environment they run under. On the other
        side this gives quite a few new possibilities to influence
        what Embperl is doing, especialy together with Embperl::Object.
  -   - Introduced new idea of an application which holds together a set
  +   - Introduced new application object which holds together a set
        of pages and allows to configure the Embperl logfile and session
        handling different for each application.
  -   - Added [= foo =] block and $r -> gettext method for page localization. 
  -     When the page is executed the 'foo' is replaced with a localizied
  -     message for the current language.
      - Added Embperl::Object application object, which is invoked during
        request initialization. Any application code can now go there.
        This allows a proper separation of Code and Design and building of
        MVC (Model, Controller, View), 2-Tier and 3-Tier applications
        with Embperl.
  +   - Added EMBPERL_APP_HANDLER_CLASS to set the application object
  +     for Embperl pages, when not using Embperl::Object
  +   - Added [= foo =] block and $r -> gettext method for page localization. 
  +     When the page is executed the 'foo' is replaced with a localizied
  +     message for the current language.
  +   - Added methods r -> messages and r -> default_messages to define current
  +     message set for current language during application init.
  +   - Added embpmsgid.pl utility to extrcat message ids from Embperl pages and
  +     put them in a Data::Dumper or dbm file.
  +   - Simplified the definition of the recipe structure. This allows much more
  +     intuitiv definition of a new recipe.
  +   - A recipe struture can now also be passed directly to the Execute function
  +     as parameter.
  +   - The get_recipe function now can be overriden by a custom application
  +     object.
      - Enhanced POD parser. Now generates a similar output as pod2xml,
        which is better suitable for XSLT processing. Also the POD
        parser now can pasers POD out of other Embperl files.
  @@ -200,11 +217,11 @@
        terminated with a semikolon. To let old code work, just wrap it into a do
        e.g. [+ do { my $a = $b + 5 ; $a } +]
   
  -=head1 1.3.4_dev 
  +=head1 1.3.4 (RELEASE)   5. Dec 2001
   
      - Added method $r -> Espace for html & url escaping
      - URL escpage # to %23
  -   - use Content-Lenght HTTP Header instead of $ENV{CONTENT_LENGTH}
  +   - use Content-Length HTTP Header instead of $ENV{CONTENT_LENGTH}
        when running under mod_perl and win32. This fixes a bug
        with POSTed data reported by Lukas Zapletal.
      - Display correct Apache module name in Makefile.PL when
  @@ -222,7 +239,7 @@
      - Make sure the HTML::Embperl::Mail generates correct line endings
      - If Perl's STDOUT and/or STDIN are tied to any package, Embperl now
        calls the Perl methods PRINT and READ for doing I/O. This currently
  -     only works, when not running under mod_perl.
  +     only works when not running under mod_perl.
      - Embperl can now run under FastCGI. Use embpfastcgi.pl instead of
        embpcgi.pl.
      - Delete unnecessary PerlFixupHandler from httpd.conf.src for make test.
  @@ -242,7 +259,10 @@
      - Added optShowBacktrace to enable backtrace of filename in error messages
      - Removed obsolete debug flags dbgDisableCache, dbgWatchScalar,
        dbgEarlyHttpHeader
  -
  +   - Fixed problem with changing to page directory on win32. Reported by
  +     Hans de Groot.
  +   - Fixed problems with mod_perl environement handling with ActiveState Perl 
  +     on win32.
   
   =head1 1.3.3 (RELEASE)   6. Juni 2001
   
  
  
  
  1.31.4.50 +2 -2      embperl/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /home/cvs/embperl/Makefile.PL,v
  retrieving revision 1.31.4.49
  retrieving revision 1.31.4.50
  diff -u -r1.31.4.49 -r1.31.4.50
  --- Makefile.PL       16 Feb 2002 23:31:32 -0000      1.31.4.49
  +++ Makefile.PL       5 Mar 2002 08:07:20 -0000       1.31.4.50
  @@ -3,7 +3,7 @@
   #
   # (C) 1997-2001 G.Richter ([EMAIL PROTECTED]) / ECOS
   #
  -# $Id: Makefile.PL,v 1.31.4.49 2002/02/16 23:31:32 richter Exp $
  +# $Id: Makefile.PL,v 1.31.4.50 2002/03/05 08:07:20 richter Exp $
   #
   
   
  @@ -1212,7 +1212,7 @@
   
   @bins = ('embpexec.pl','embpexec.bat', 
            'embpcgi.pl', 'embpcgi.test.pl', 'embpcgi.bat',
  -      'embpfastcgi.pl',
  +      'embpfastcgi.pl', 'embpmsgid.pl',
            'epocgi.pl', 'epocgi.test.pl', 'epocgi.bat') ;
   
   
  
  
  
  1.1.4.2   +11 -5     embperl/embpcgi.bat.templ
  
  Index: embpcgi.bat.templ
  ===================================================================
  RCS file: /home/cvs/embperl/embpcgi.bat.templ,v
  retrieving revision 1.1.4.1
  retrieving revision 1.1.4.2
  diff -u -r1.1.4.1 -r1.1.4.2
  --- embpcgi.bat.templ 27 Mar 2001 11:52:01 -0000      1.1.4.1
  +++ embpcgi.bat.templ 5 Mar 2002 08:07:20 -0000       1.1.4.2
  @@ -17,15 +17,19 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: embpcgi.bat.templ,v 1.1.4.1 2001/03/27 11:52:01 richter Exp $
  -#
  +#   $Id: embpcgi.bat.templ,v 1.1.4.2 2002/03/05 08:07:20 richter Exp $
  +#
   ###################################################################################
   
  -use HTML::Embperl;
   
  +BEGIN 
  +    {
  +    %Embperl::initparam = (use_env => 1, use_redirect_env => 1) ;
  +    }        
   
  -my $rc = HTML::Embperl::runcgi ;
  +use Embperl;
   
  +my $rc = Embperl::Execute ({use_env => 1, use_redirect_env => 1}) ;
   
   if ($rc)
       {
  @@ -39,11 +43,13 @@
   <BODY bgcolor=\"#FFFFFF\">
   <H1>embpcgi Server Error: $rc</H1>
   Please contact the server administrator, $ENV{SERVER_ADMIN} and inform them of the 
time the error occurred, and anything you might have done that may have caused the 
error.<P><P>
  -$ENV{SERVER_SOFTWARE} HTML::Embperl $HTML::Embperl::VERSION [$time]<P>
  +$ENV{SERVER_SOFTWARE} Embperl $Embperl::VERSION [$time]<P>
   </BODY></HTML>
   
   EOT
       }
  +
  +
   
   
   __END__
  
  
  
  1.1.4.2   +12 -6     embperl/embpexec.bat.templ
  
  Index: embpexec.bat.templ
  ===================================================================
  RCS file: /home/cvs/embperl/embpexec.bat.templ,v
  retrieving revision 1.1.4.1
  retrieving revision 1.1.4.2
  diff -u -r1.1.4.1 -r1.1.4.2
  --- embpexec.bat.templ        27 Mar 2001 11:52:03 -0000      1.1.4.1
  +++ embpexec.bat.templ        5 Mar 2002 08:07:20 -0000       1.1.4.2
  @@ -17,16 +17,22 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#
  -#   $Id: embpexec.bat.templ,v 1.1.4.1 2001/03/27 11:52:03 richter Exp $
  -#
  +#
  +#   $Id: embpexec.bat.templ,v 1.1.4.2 2002/03/05 08:07:20 richter Exp $
  +#
   ###################################################################################
   
  -use HTML::Embperl;
  +BEGIN
  +    {
  +    DB::parse_options("NonStop=1") if (defined (&DB::parse_options)) ;
  +    }
   
  -die "Do not use as CGI script. Use 'embpcgi.bat' instead" if 
($ENV{PATH_TRANSLATED}) ;
  +use Embperl;
  +use Embperl::Run ;
   
  -HTML::Embperl::run (@ARGV) ;
  +die "Do not use as CGI script. Use 'embpcgi.pl' instead" if 
($ENV{GATEWAY_INTERFACE}) ;
  +
  +Embperl::Run::run (@ARGV) ;
   
   __END__
   :endofperl
  
  
  
  1.1.4.5   +6 -7      embperl/embpexec.pl.templ
  
  Index: embpexec.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/embpexec.pl.templ,v
  retrieving revision 1.1.4.4
  retrieving revision 1.1.4.5
  diff -u -r1.1.4.4 -r1.1.4.5
  --- embpexec.pl.templ 4 Mar 2002 11:44:49 -0000       1.1.4.4
  +++ embpexec.pl.templ 5 Mar 2002 08:07:20 -0000       1.1.4.5
  @@ -11,10 +11,8 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: embpexec.pl.templ,v 1.1.4.4 2002/03/04 11:44:49 richter Exp $
  -
  +#   $Id: embpexec.pl.templ,v 1.1.4.5 2002/03/05 08:07:20 richter Exp $
   #
  -
   ###################################################################################
   
   BEGIN
  @@ -22,17 +20,18 @@
       DB::parse_options("NonStop=1") if (defined (&DB::parse_options)) ;
       }
   
  -use HTML::Embperl;
  +use Embperl;
  +use Embperl::Run ;
   
   die "Do not use as CGI script. Use 'embpcgi.pl' instead" if 
($ENV{GATEWAY_INTERFACE}) ;
   
  -HTML::Embperl::run (@ARGV) ;
  +Embperl::Run::run (@ARGV) ;
   
   __END__
   
   =head1 NAME
   
  -embpexec.pl - Run an HTML::Embperl file offline
  +embpexec.pl - Run an Embperl file offline
   
   =head1 SYNOPSIS
   
  @@ -76,7 +75,7 @@
   
   =head1 SEE ALSO
   
  -L<HTML::Embperl>
  +L<Embperl>
   
   =head1 AUTHOR
   
  
  
  
  1.1.2.2   +11 -6     embperl/embpfastcgi.pl.templ
  
  Index: embpfastcgi.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/embpfastcgi.pl.templ,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- embpfastcgi.pl.templ      2 Nov 2001 11:34:26 -0000       1.1.2.1
  +++ embpfastcgi.pl.templ      5 Mar 2002 08:07:20 -0000       1.1.2.2
  @@ -11,17 +11,23 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: embpfastcgi.pl.templ,v 1.1.2.1 2001/11/02 11:34:26 richter Exp $
  +#   $Id: embpfastcgi.pl.templ,v 1.1.2.2 2002/03/05 08:07:20 richter Exp $
   #
   ###################################################################################
   
  +
  +BEGIN 
  +    {
  +    %Embperl::initparam = (use_env => 1, use_redirect_env => 1) ;
  +    }        
  +
   use FCGI ;
  -use HTML::Embperl;
  +use Embperl;
   
   my $request = FCGI::Request ;
   while ($request -> Accept() >= 0)
       {
  -    my $rc = HTML::Embperl::runcgi ;
  +    my $rc = Embperl::Execute ({use_env => 1, use_redirect_env => 1}) ;
   
       if ($rc)
           {
  @@ -35,13 +41,12 @@
       <BODY bgcolor=\"#FFFFFF\">
       <H1>embpcgi Server Error: $rc</H1>
       Please contact the server administrator, $ENV{SERVER_ADMIN} and inform them of 
the time the error occurred, and anything you might have done that may have caused the 
error.<P><P>
  -    $ENV{SERVER_SOFTWARE} HTML::Embperl $HTML::Embperl::VERSION [$time]<P>
  +    $ENV{SERVER_SOFTWARE} Embperl $Embperl::VERSION [$time]<P>
       </BODY></HTML>
   
  -EOT
  +    EOT
           }
       }
  -
   
   
   
  
  
  
  1.1.2.2   +100 -1    embperl/Attic/embpmsgid.pl.templ
  
  Index: embpmsgid.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/embpmsgid.pl.templ,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- embpmsgid.pl.templ        4 Mar 2002 20:01:30 -0000       1.1.2.1
  +++ embpmsgid.pl.templ        5 Mar 2002 08:07:20 -0000       1.1.2.2
  @@ -11,7 +11,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: embpmsgid.pl.templ,v 1.1.2.1 2002/03/04 20:01:30 richter Exp $
  +#   $Id: embpmsgid.pl.templ,v 1.1.2.2 2002/03/05 08:07:20 richter Exp $
   #
   ###################################################################################
   
  @@ -24,6 +24,78 @@
   
   use Embperl;
   use Data::Dumper ;
  +use Getopt::Long ;
  +
  +
  +if (!@ARGV)
  +    {
  +    print qq{
  +Extract message ids from Embperl files
  +
  +usage: $0 [options] [files]
  +
  +options:
  +    --datadumper (-d) <file>    Use the given file to read and 
  +                                store message ids. Must be valid 
  +                                Perl code which defines $msgids
  +    --dbm (-b) <file>           Use the given file to read and
  +                                store message ids. Must be a dbm 
  +                                file.
  +    --languages (-l) <code>     Specify language code to generate
  +                                Can be given multiple times
  +} ;    
  +    exit (1) ;
  +    } ;
  +
  +
  +my $ret = GetOptions ("datadumper|d=s", "dbm|b=s", 'languages|l=s@') ; 
  +
  +exit (1) if (!$ret) ;
  +
  +if ($opt_datadumper && -f $opt_datadumper)
  +    {
  +    $msgids = do $opt_datadumper ;
  +    die $@ if ($@) ;
  +
  +    if (!ref $msgid eq 'HASH')
  +        {
  +        print SDTERR "File $opt_datadumper doesn't defines a hashref of message 
ids\n" ;
  +        exit (1) ;
  +        }
  +
  +    }
  +elsif ($opt_dbm)
  +    {
  +    tie %msghash,  'DB_File', $opt_dbm, O_CREAT|O_RDWR or die "Cannot open $opt_dbm 
($!)" ;
  +    
  +    $msgids = \%msghash ;
  +    }
  +
  +if (keys %$msgids)
  +    {
  +    print "Found languages: " ;
  +    foreach (sort keys %$msgids)
  +        {
  +        print $_, ' ' ;
  +        }
  +    print "\n" ;
  +    }
  +
  +if (@opt_languages)
  +    {
  +    print "Add languages: " ;
  +    foreach (sort @opt_languages)
  +        {
  +        print $_, ' ' ;
  +        $msgids -> {$_} ||= {} ;
  +        }
  +    print "\n" ;
  +    }
  +elsif (!keys %$msgids)
  +    {
  +    $msgids -> {'en'} = {} ;
  +    }
  +
   
   foreach my $fn (@ARGV)
       {
  @@ -40,7 +112,34 @@
           }
       }
   
  -print Dumper (\%Embperl::Syntax::MsgIdExtract::Ids) ;
  +
  +
  +print Data::Dumper -> Dump ([\%Embperl::Syntax::MsgIdExtract::Ids], ['msgids']) ;
  +
  +if ($opt_datadumper || $opt_dbm)
  +    {
  +    if (keys %$msgids)
  +        {
  +        foreach my $lang (sort keys %$msgids)
  +            {
  +            foreach my $k (keys %Embperl::Syntax::MsgIdExtract::Ids)
  +                {
  +                $msgids -> {$lang}{$k} = '' if (!exists $msgids -> {$lang}{$k}) ;
  +                }
  +            }
  +        }
  +
  +    if ($opt_datadumper)
  +        {
  +        rename $opt_datadumper, "$opt_datadumper.bak" ;
  +        open FH, ">$opt_datadumper" or die "Cannot open $opt_datadumper ($!)" ;
  +        $Data::Dumper::Indent = 1 ;
  +        $Data::Dumper::Useqq  = 1 ;
  +        print FH Data::Dumper -> Dump  ([$msgids], ['msgids']) ;
  +        close FH ;
  +        }
  +    }
  +
   
   
   
  
  
  
  1.1.2.12  +2 -1      embperl/Attic/epcfg.h
  
  Index: epcfg.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epcfg.h,v
  retrieving revision 1.1.2.11
  retrieving revision 1.1.2.12
  diff -u -r1.1.2.11 -r1.1.2.12
  --- epcfg.h   27 Feb 2002 11:58:23 -0000      1.1.2.11
  +++ epcfg.h   5 Mar 2002 08:07:20 -0000       1.1.2.12
  @@ -41,7 +41,8 @@
   /* tAppConfig */
   
   EPCFG_STR(AppConfig,     char *,  sAppName,         APPNAME) 
  -EPCFG_STR(AppConfig,     char *,  sSessionHandlerClass,  SESSION_HANDLER_CLASS)
  +EPCFG_STR(AppConfig,     char *,  sAppHandlerClass,     APP_HANDLER_CLASS)
  +EPCFG_STR(AppConfig,     char *,  sSessionHandlerClass, SESSION_HANDLER_CLASS)
   EPCFG_HV (AppConfig,     HV *,    pSessionArgs,     SESSION_ARGS) 
   EPCFG_AV (AppConfig,     AV *,    pSessionClasses,  SESSION_CLASSES, " ,")
   EPCFG_STR(AppConfig,     char *,  sSessionConfig,   SESSION_CONFIG) 
  
  
  
  1.1.2.32  +2 -1      embperl/Attic/epdat2.h
  
  Index: epdat2.h
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdat2.h,v
  retrieving revision 1.1.2.31
  retrieving revision 1.1.2.32
  diff -u -r1.1.2.31 -r1.1.2.32
  --- epdat2.h  4 Mar 2002 11:44:49 -0000       1.1.2.31
  +++ epdat2.h  5 Mar 2002 08:07:20 -0000       1.1.2.32
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epdat2.h,v 1.1.2.31 2002/03/04 11:44:49 richter Exp $
  +#   $Id: epdat2.h,v 1.1.2.32 2002/03/05 08:07:20 richter Exp $
   #
   
###################################################################################*/
   
  @@ -129,6 +129,7 @@
       char *  sAppName ;
       bool        bUseEnv ;           /**< Take configuration values out of the 
environment */
       bool        bUseRedirectEnv ;   /**< Take configuration values out of the 
environment. Remove REDIRECT_ prefix. */
  +    char *  sAppHandlerClass ;
       char *  sSessionHandlerClass ;
       HV *    pSessionArgs ;
       AV *    pSessionClasses ;
  
  
  
  1.4.2.83  +5 -5      embperl/Attic/epdom.c
  
  Index: epdom.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdom.c,v
  retrieving revision 1.4.2.82
  retrieving revision 1.4.2.83
  diff -u -r1.4.2.82 -r1.4.2.83
  --- epdom.c   27 Feb 2002 11:58:23 -0000      1.4.2.82
  +++ epdom.c   5 Mar 2002 08:07:20 -0000       1.4.2.83
  @@ -9,7 +9,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epdom.c,v 1.4.2.82 2002/02/27 11:58:23 richter Exp $
  +#   $Id: epdom.c,v 1.4.2.83 2002/03/05 08:07:20 richter Exp $
   #
   
###################################################################################*/
   
  @@ -1512,7 +1512,7 @@
           }
        {
           tNodeData * pCompileNode = Node_selfLevel (a, pDomTree, 
pCheckpoints[nCompileCheckpoint].xNode, r -> Component.nCurrRepeatLevel) ;
  -        tNodeData * pRunNode     = Node_selfLevel (a, pDomTree, 
pCheckpoints[nRunCheckpoint].xNode, r -> Component.nCurrRepeatLevel+1) ;
  +        tNodeData * pRunNode     = Node_selfLevel (a, pDomTree, 
pCheckpoints[nRunCheckpoint].xNode, (tRepeatLevel)(r -> Component.nCurrRepeatLevel+1)) 
;
           tNodeData * pPrevNode    = Node_selfPreviousSibling (a, pDomTree, 
pCompileNode, r -> Component.nCurrRepeatLevel) ;
           
           tNodeData * pCompileParent = NodeAttr_selfParentNode (pDomTree, 
pCompileNode, r -> Component.nCurrRepeatLevel) ;
  @@ -2359,7 +2359,7 @@
        struct tAttrData *  pNew  ;
        tIndex              xNdx ;
   
  -     pParent = Node_selfExpand (a, pDomTree, pParent, -1, pParent -> numAttr + 1) ;
  +     pParent = Node_selfExpand (a, pDomTree, pParent, (tUInt16)-1, 
(tUInt16)(pParent -> numAttr + 1)) ;
   
        pNew = ((struct tAttrData * )(pParent + 1)) + pParent -> numAttr ;
   
  @@ -3348,14 +3348,14 @@
                char * s ;
                int    l ;
                Ndx2StringLen (pNode -> nText,s,l) ;
  -                OutputEscape (r, s, l, Char2XML, (pNode -> bFlags & 
nflgEscChar)?'\\':0) ;
  +                OutputEscape (r, s, l, Char2XML, (char)((pNode -> bFlags & 
nflgEscChar)?'\\':0)) ;
                }
            else if (pNode -> nType == ntypTextHTML)
                {
                char * s ;
                int    l ;
                Ndx2StringLen (pNode -> nText,s,l) ;
  -                OutputEscape (r, s, l, (pNode -> bFlags & 
nflgEscXML)?Char2XML:(pNode -> bFlags & nflgEscUrl)?Char2Url:Char2Html, (pNode -> 
bFlags & nflgEscChar)?'\\':0) ;
  +                OutputEscape (r, s, l, (pNode -> bFlags & 
nflgEscXML)?Char2XML:(pNode -> bFlags & nflgEscUrl)?Char2Url:Char2Html, (char)((pNode 
-> bFlags & nflgEscChar)?'\\':0)) ;
                }
            else 
                {
  
  
  
  1.1.2.36  +27 -1     embperl/Attic/epinit.c
  
  Index: epinit.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epinit.c,v
  retrieving revision 1.1.2.35
  retrieving revision 1.1.2.36
  diff -u -r1.1.2.35 -r1.1.2.36
  --- epinit.c  4 Mar 2002 11:44:49 -0000       1.1.2.35
  +++ epinit.c  5 Mar 2002 08:07:21 -0000       1.1.2.36
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epinit.c,v 1.1.2.35 2002/03/04 11:44:49 richter Exp $
  +#   $Id: epinit.c,v 1.1.2.36 2002/03/05 08:07:21 richter Exp $
   #
   
###################################################################################*/
   
  @@ -521,6 +521,13 @@
                }
               }
   
  +        if (pApp -> Config.sAppHandlerClass)
  +            {
  +            HV * stash = gv_stashpv(pApp -> Config.sAppHandlerClass, TRUE) ;
  +            sv_bless(pApp -> _perlsv, stash) ;
  +            }
  +        
  +
           embperl_SetupSessionObjects (pApp) ;
           }
   
  @@ -1339,6 +1346,25 @@
       getcwd (r -> sInitialCWD, PATH_MAX * 2 - 1) ;
   
       *ppReq = r ;
  +
  +    if (pApp -> Config.sAppHandlerClass)
  +        {
  +        tainted = 0 ;
  +        PUSHMARK(sp);
  +     XPUSHs(pApp -> _perlsv); 
  +     PUTBACK;                        
  +     perl_call_method ("init", G_EVAL) ;
  +        tainted = 0 ;
  +
  +        if (SvTRUE (ERRSV))
  +         {
  +            STRLEN l ;
  +            LogErrorParam (pApp, rcEvalErr, SvPV (ERRSV, l), " while calling 
APP_HANDLER_CLASS -> init") ;
  +            sv_setpv(ERRSV,"");
  +            return rcEvalErr ;
  +            }
  +        }
  +
       tainted = 0 ;
       
       return ok ;
  
  
  
  1.75.4.109 +4 -3      embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.75.4.108
  retrieving revision 1.75.4.109
  diff -u -r1.75.4.108 -r1.75.4.109
  --- epmain.c  4 Mar 2002 11:44:49 -0000       1.75.4.108
  +++ epmain.c  5 Mar 2002 08:07:21 -0000       1.75.4.109
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epmain.c,v 1.75.4.108 2002/03/04 11:44:49 richter Exp $
  +#   $Id: epmain.c,v 1.75.4.109 2002/03/05 08:07:21 richter Exp $
   #
   
###################################################################################*/
   
  @@ -1377,14 +1377,15 @@
   
       {
       int rc ;
  -    tReq * r ;
  +    tReq * r = NULL ;
   
       rc = embperl_InitRequestComponent (aTHX_ pApacheReqSV, pPerlParam, &r) ;
   
       if (rc == ok)
           rc = embperl_RunRequest (r) ;
   
  -    embperl_CleanupRequest (r) ;
  +    if (r)
  +        embperl_CleanupRequest (r) ;
   
   
       return rc ;
  
  
  
  1.2.2.2   +25 -40    embperl/epocgi.bat.templ
  
  Index: epocgi.bat.templ
  ===================================================================
  RCS file: /home/cvs/embperl/epocgi.bat.templ,v
  retrieving revision 1.2.2.1
  retrieving revision 1.2.2.2
  diff -u -r1.2.2.1 -r1.2.2.2
  --- epocgi.bat.templ  18 May 2001 08:35:43 -0000      1.2.2.1
  +++ epocgi.bat.templ  5 Mar 2002 08:07:21 -0000       1.2.2.2
  @@ -1,10 +1,10 @@
  -@rem = '--*-Perl-*--
  -@echo off
  -/usr/bin/perl -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
  -goto endofperl
  -@rem ';
  -#!/usr/bin/perl --
  -#line 8
  +@rem = '--*-Perl-*--
  +@echo off
  +/usr/bin/perl -x %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
  +goto endofperl
  +@rem ';
  +#!/usr/bin/perl --
  +#line 8
   ###################################################################################
   #
   #   Embperl - Copyright (c) 1997-2001 Gerald Richter / ECOS
  @@ -17,38 +17,23 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epocgi.bat.templ,v 1.2.2.1 2001/05/18 08:35:43 richter Exp $
  +#   $Id: epocgi.bat.templ,v 1.2.2.2 2002/03/05 08:07:21 richter Exp $
   #
   ###################################################################################
  -
  -use HTML::Embperl ;
  -use HTML::EmbperlObject ;
  -
  -my $Logfile    = $ENV{EMBPERL_LOG} || $HTML::Embperl::DefaultLog ;
  -my $rc  ; 
  -my $ioType ;
  -my %req ;
  -
  -HTML::EmbperlObject::ScanEnvironment (\%req) ;
  -
  -$req{'inputfile'} = $ENV{PATH_TRANSLATED} ;
  -$ioType = HTML::Embperl::epIOCGI ;
  -
  -HTML::Embperl::XS_Init ($ioType, $Logfile, $DebugDefault) ;
  -
  -tie *LOG, 'HTML::Embperl::Log' ;
  -
  -$req{'uri'} = $ENV{SCRIPT_NAME} ;
  -
  -$req{'cleanup'} = 0 ;
  -$req{'cleanup'} = -1 if (($req{'options'} & HTML::Embperl::optDisableVarCleanup)) ;
  -$req{'options'} |= HTML::Embperl::optSendHttpHeader ;
  -
  -$rc = HTML::EmbperlObject::Execute (\%req) ;
  -
  -#close LOG ;
  -HTML::Embperl::XS_Term () ;
  -
  +
  +
  +BEGIN 
  +    {
  +    %Embperl::initparam = (use_env => 1, use_redirect_env => 1) ;
  +    }        
  +
  +use Embperl;
  +use Embperl::Object ;
  +
  +$^W = 1;
  +
  +my $rc = Embperl::Object::Execute ({use_env => 1, use_redirect_env => 1}) ;
  +
   if ($rc)
       {
       $time = localtime ;
  @@ -68,7 +53,7 @@
       }
   
   
  +__END__
  +
  +:endofperl
   
  -
  -__END__
  -:endofperl
  
  
  
  1.2.2.3   +3 -3      embperl/epocgi.pl.templ
  
  Index: epocgi.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/epocgi.pl.templ,v
  retrieving revision 1.2.2.2
  retrieving revision 1.2.2.3
  diff -u -r1.2.2.2 -r1.2.2.3
  --- epocgi.pl.templ   4 Mar 2002 11:44:49 -0000       1.2.2.2
  +++ epocgi.pl.templ   5 Mar 2002 08:07:21 -0000       1.2.2.3
  @@ -11,14 +11,14 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epocgi.pl.templ,v 1.2.2.2 2002/03/04 11:44:49 richter Exp $
  +#   $Id: epocgi.pl.templ,v 1.2.2.3 2002/03/05 08:07:21 richter Exp $
   #
   ###################################################################################
   
   
   BEGIN 
       {
  -    %Embperl::initparam = (use_env => 1, use_redirect_env => 1, debug => 
0x7ffffffd) ;
  +    %Embperl::initparam = (use_env => 1, use_redirect_env => 1) ;
       }        
   
   use Embperl;
  @@ -26,7 +26,7 @@
   
   $^W = 1;
   
  -my $rc = Embperl::Object::Execute ({use_env => 1, use_redirect_env => 1, debug => 
0x7ffffffd}) ;
  +my $rc = Embperl::Object::Execute ({use_env => 1, use_redirect_env => 1}) ;
   
   if ($rc)
       {
  
  
  
  1.2.2.4   +3 -3      embperl/epocgi.test.pl.templ
  
  Index: epocgi.test.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/epocgi.test.pl.templ,v
  retrieving revision 1.2.2.3
  retrieving revision 1.2.2.4
  diff -u -r1.2.2.3 -r1.2.2.4
  --- epocgi.test.pl.templ      4 Mar 2002 11:44:49 -0000       1.2.2.3
  +++ epocgi.test.pl.templ      5 Mar 2002 08:07:21 -0000       1.2.2.4
  @@ -11,7 +11,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epocgi.test.pl.templ,v 1.2.2.3 2002/03/04 11:44:49 richter Exp $
  +#   $Id: epocgi.test.pl.templ,v 1.2.2.4 2002/03/05 08:07:21 richter Exp $
   #
   ###################################################################################
   
  @@ -25,7 +25,7 @@
           $INC[$i] = "$cwd/$_" if (/^(\.\/)?blib/) ;
           $i++ ;
           }
  -    %Embperl::initparam = (use_env => 1, use_redirect_env => 1, debug => 
0x7ffffffd) ;
  +    %Embperl::initparam = (use_env => 1, use_redirect_env => 1) ;
       }        
   
   use Embperl ;
  @@ -33,7 +33,7 @@
   
   $^W = 1;
   
  -my $rc = Embperl::Object::Execute ({use_env => 1, use_redirect_env => 1, debug => 
0x7ffffffd}) ;
  +my $rc = Embperl::Object::Execute ({use_env => 1, use_redirect_env => 1}) ;
   
   
   if ($rc)
  
  
  
  1.4.2.53  +3 -3      embperl/Attic/epparse.c
  
  Index: epparse.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epparse.c,v
  retrieving revision 1.4.2.52
  retrieving revision 1.4.2.53
  diff -u -r1.4.2.52 -r1.4.2.53
  --- epparse.c 25 Feb 2002 11:20:26 -0000      1.4.2.52
  +++ epparse.c 5 Mar 2002 08:07:21 -0000       1.4.2.53
  @@ -9,7 +9,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epparse.c,v 1.4.2.52 2002/02/25 11:20:26 richter Exp $
  +#   $Id: epparse.c,v 1.4.2.53 2002/03/05 08:07:21 richter Exp $
   #
   
###################################################################################*/
   
  @@ -856,7 +856,7 @@
                                }
                                
                            /* add as cdata*/
  -                         if (!(xNewNode = Node_appendChild (r -> pApp, pDomTree, 
xParentNode, 0, pTokenTable -> nDefNodeType, 0, pCurrStart, pCurr - pCurrStart, level, 
GetLineNoOf (r, pCurrStart), NULL)))
  +                         if (!(xNewNode = Node_appendChild (r -> pApp, pDomTree, 
xParentNode, 0, (tNodeType)pTokenTable -> nDefNodeType, 0, pCurrStart, pCurr - 
pCurrStart, level, GetLineNoOf (r, pCurrStart), NULL)))
                                return 1 ;
                            }
                        else if (rc != rcNotFound)
  @@ -1120,7 +1120,7 @@
   
       pTokenTableSave = r -> Component.pTokenTable ;
       
  -    if ((rc = ParseTokens (r, &pStart, pEnd, r -> Component.pTokenTable, "", NULL, 
r -> Component.pTokenTable -> nDefNodeType, 0, 0, 0, 0, String2Ndx (r -> pApp, "root", 
4), xDocNode2, 0, NULL, NULL, 0)) != ok)
  +    if ((rc = ParseTokens (r, &pStart, pEnd, r -> Component.pTokenTable, "", NULL, 
(tNodeType)r -> Component.pTokenTable -> nDefNodeType, 0, 0, 0, 0, String2Ndx (r -> 
pApp, "root", 4), xDocNode2, 0, NULL, NULL, 0)) != ok)
        return rc ; 
       
       /* Add one child node end the end to catch loops that end at the very last node 
*/
  
  
  
  1.70.4.122 +12 -1     embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.70.4.121
  retrieving revision 1.70.4.122
  diff -u -r1.70.4.121 -r1.70.4.122
  --- test.pl   4 Mar 2002 11:44:49 -0000       1.70.4.121
  +++ test.pl   5 Mar 2002 08:07:21 -0000       1.70.4.122
  @@ -11,7 +11,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: test.pl,v 1.70.4.121 2002/03/04 11:44:49 richter Exp $
  +#   $Id: test.pl,v 1.70.4.122 2002/03/05 08:07:21 richter Exp $
   #
   ###################################################################################
   
  @@ -39,6 +39,7 @@
   # xsltstylesheet =>
   # syntax =>
   # msg =>
  +# app_handler_class =>
   
   @testdata = (
       'ascii' => { },
  @@ -874,6 +875,10 @@
           'condition'  => '$XALANPATH', 
           'msg'        => ' xalan',
           },
  +    'app/i18n.htm' => { 
  +        'version'    => 2,
  +        'app_handler_class' => 'Embperl::TEST::App',
  +        },
   ) ;
   
   for ($i = 0 ; $i < @testdata; $i += 2)
  @@ -1088,6 +1093,8 @@
   $vmhttpdsize = 0 ;
   $vmhttpdinitsize = 0 ;
   
  +require 'test/testapp.pl' ;
  +
   
   #####################################################
   #
  @@ -1723,6 +1730,10 @@
                $ENV{EMBPERL_COMPARTMENT} = $test -> {compartment} if (defined ($test 
-> {compartment})) ;
                delete $ENV{EMBPERL_PACKAGE}  if (defined (delete 
$ENV{EMBPERL_PACKAGE})) ;
                $ENV{EMBPERL_PACKAGE}     = $test -> {'package'} if (defined ($test -> 
{'package'})) ;
  +             delete $ENV{EMBPERL_APP_HANDLER_CLASS}  if (defined (delete 
$ENV{EMBPERL_APP_HANDLER_CLASS})) ;
  +             $ENV{EMBPERL_APP_HANDLER_CLASS}     = $test -> {'app_handler_class'} 
if (defined ($test -> {'app_handler_class'})) ;
  +             delete $ENV{EMBPERL_APPNAME}  if (defined (delete 
$ENV{EMBPERL_APPNAME})) ;
  +             $ENV{EMBPERL_APPNAME}     = $test -> {'app_handler_class'} if (defined 
($test -> {'app_handler_class'})) ;
                @testargs = ( '-o', $outfile ,
                              '-l', $logfile,
                              '-d', $debug,
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +46 -0     embperl/test/Attic/testapp.pl
  
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +70 -0     embperl/test/cmp/Attic/i18n.htm
  
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.24.4.52 +107 -287  embperl/test/conf/httpd.conf.src
  
  Index: httpd.conf.src
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v
  retrieving revision 1.24.4.51
  retrieving revision 1.24.4.52
  diff -u -r1.24.4.51 -r1.24.4.52
  --- httpd.conf.src    4 Mar 2002 11:44:50 -0000       1.24.4.51
  +++ httpd.conf.src    5 Mar 2002 08:07:23 -0000       1.24.4.52
  @@ -58,6 +58,15 @@
   #EMBPERL_VIRTLOG /embperl/log
   EMBPERL_LOG \"$EPPATH/test/tmp/test.log\"
   
  +ErrorLog tmp/httpd.err.log
  +PidFile tmp/httpd.pid
  +AccessConfig conf/null
  +ResourceConfig conf/null
  +TypesConfig conf/null
  +LockFile tmp/httpd.lock
  +LogFormat \"%h %l %u %t \\"%r\\" %s %b %{connection}o pid=%P %Tsec\" std
  +
  +
   EOD
   
   
  @@ -108,13 +117,13 @@
   Alias /embperldbg/ \"$EPPATH/test/html/\"
   Alias /registrydbg/ \"$EPPATH/test/html/registry/\"
   
  -<Location /embperl/sub>
  +<Location /embperl>
   SetHandler perl-script
   PerlHandler Embperl
   Options ExecCGI
   </Location>
   
  -<Location /embperl>
  +<Location /embperl/sub>
   SetHandler perl-script
   PerlHandler Embperl
   Options ExecCGI
  @@ -133,10 +142,6 @@
   EMBPERL_OPTIONS 4
   </Location>
   
  -
  -
  -
  -
   <Location /embperl/libxslt>
   EMBPERL_RECIPE EmbperlLibXSLT
   EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/podold.xsl\"
  @@ -148,27 +153,17 @@
   EMBPERL_SYNTAX POD
   </Location>
   
  -
  -
   <Location /embperl/xalan>
   EMBPERL_RECIPE EmbperlXalanXSLT
   EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/podold.xsl\"
   </Location>
   
  -
  -
   <Location /embperl/ascxalan>
   EMBPERL_RECIPE EmbperlXalanXSLT
   EMBPERL_XSLTSTYLESHEET \"$EPPATH/test/html/xml/pod.xsl\"
   EMBPERL_SYNTAX POD
   </Location>
   
  -
  -
  -
  -
  -
  -
   <Location /embperl/opmask>
   SetHandler perl-script
   PerlHandler Embperl
  @@ -243,8 +238,6 @@
   ErrorDocument 500 /embperl/errmsg2.htm
   </Location>
   
  -
  -
   <Location /embperl/match>
   SetHandler perl-script
   PerlHandler Embperl
  @@ -252,67 +245,87 @@
   EMBPERL_URIMATCH \\.htm\$
   </Location>
   
  -#<Location /embperl/ifunc>
  -#SetHandler perl-script
  -#PerlHandler Embperl
  -#Options ExecCGI
  -#EMBPERL_INPUT_FUNC \"ProxyInput, /embperl/ifunc, 
http://localhost:$EPPORT/embperl/ifuncsrc\";
  -#</Location>
  -
  -
  -#<Location /embperl/ifuncsrc>
  -#SetHandler server-parsed
  -#Options +Includes
  -#</Location>
  -
  -AddType text/html .ehtml
  -
  -#<FilesMatch \".*\.ehtml\$\">
  -#SetHandler perl-script
  -#PerlHandler Embperl
  -#Options ExecCGI
  -#EMBPERL_INPUT_FUNC \"ProxyInput, , http://localhost:8529/src\";
  -#</FilesMatch>
  -
  -<Location /src>
  -SetHandler server-parsed
  -Options +Includes
  +<Location /embperl/registry>
  +SetHandler perl-script
  +PerlHandler Apache::Registry
  +Options ExecCGI
   </Location>
   
  -#
  -# Configuration for mod_inlcude via ProxyInput on two ports
  -#
  -#Listen $EPPORT
  -#Listen $EPPORT2
  -#
  -#<VirtualHost www:$EPPORT>
  -#
  -#<FilesMatch \".*\\.ehtml\$\">
  -#SetHandler perl-script
  -#PerlHandler Embperl
  -#Options ExecCGI
  -#EMBPERL_INPUT_FUNC \"ProxyInput, , http://www:$EPPORT2\";
  -#</FilesMatch>
  -#
  -#</VirtualHost>
  -#
  -#
  -#<VirtualHost www:$EPPORT2>
  -#
  -#AddType text/html .ehtml
  -#AddHandler server-parsed .ehtml
  -#Options +Includes
  -#
  -#</VirtualHost>
  -#
  +<Location /embperl/EmbperlObject>
  +EMBPERL_APPNAME epo1
  +EMBPERL_OBJECT_BASE epobase.htm
  +EMBPERL_OBJECT_FALLBACK epofallback.htm
  +EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  +SetHandler perl-script
  +PerlHandler Embperl::Object 
  +Options ExecCGI
  +</Location>
   
  -#<Location /embperl/ofunc>
  -#SetHandler perl-script
  -#PerlHandler Embperl
  -#Options ExecCGI
  -#EMBPERL_OUTPUT_FUNC \"LogOutput, $EPPATH/test/tmp/log.out\"
  -#</Location>
  +<Location /embperl/EmbperlObject/base3>
  +EMBPERL_APPNAME epo3
  +EMBPERL_OBJECT_BASE epobase3.htm
  +EMBPERL_OBJECT_STOPDIR \"$EPPATH/test/html/EmbperlObject\"
  +EMBPERL_OBJECT_ADDPATH \"$EPPATH/test/html/EmbperlObject/lib\"
  +EMBPERL_OBJECT_FALLBACK epofallback.htm
  +EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  +SetHandler perl-script
  +PerlHandler Embperl::Object 
  +Options ExecCGI
  +</Location>
   
  +<Location /embperl/EmbperlObject/base2>
  +EMBPERL_APPNAME epo2
  +EMBPERL_OBJECT_BASE epobase2.htm
  +EMBPERL_OBJECT_STOPDIR \"$EPPATH/test/html/EmbperlObject\"
  +EMBPERL_OBJECT_ADDPATH \"$EPPATH/test/html/EmbperlObject/lib\"
  +EMBPERL_OBJECT_FALLBACK epofallback.htm
  +EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  +SetHandler perl-script
  +PerlHandler Embperl::Object 
  +Options ExecCGI
  +</Location>
  +
  +<Location /embperl/SSI/>
  +EMBPERL_SYNTAX SSI
  +</Location>
  +
  +<Location /embperl/SSIEP/>
  +EMBPERL_SYNTAX "Embperl SSI"
  +</Location>
  +
  +<Location /embperl/pod/>
  +EMBPERL_SYNTAX POD
  +</Location>
  +
  +<Location /embperl/app/>
  +EMBPERL_APPNAME TestApp
  +EMBPERL_APP_HANDLER_CLASS Embperl::TEST::App
  +</Location>
  +
  +<Location /embperl/sidurl>
  +SetHandler perl-script
  +PerlHandler Embperl
  +Options ExecCGI
  +EMBPERL_SESSION_MODE 0x20
  +</Location>
  +
  +<Location /embperl/uidurl>
  +SetHandler perl-script
  +PerlHandler Embperl
  +Options ExecCGI
  +EMBPERL_SESSION_MODE 0x02
  +</Location>
  +
  +<Location /embperl/suidurl>
  +SetHandler perl-script
  +PerlHandler Embperl
  +Options ExecCGI
  +EMBPERL_SESSION_MODE 0x22
  +</Location>
  +
  +
  +
  +### CGI setup ###
   
   Alias /cgi-bin/uidurl/ \"$EPPATH/test/html/sidurl/\"
   Alias /cgi-bin/suidurl/ \"$EPPATH/test/html/sidurl/\"
  @@ -326,7 +339,6 @@
   Options ExecCGI
   EOD
   
  -
   if ($EPSESSIONVERSION && ($EPSESSIONVERSION > 1))
       {
   print OFH <<EOD ;
  @@ -384,7 +396,6 @@
   Options ExecCGI
   SetEnv EMBPERL_OBJECT_BASE epobase.htm
   SetEnv EMBPERL_OBJECT_FALLBACK epofallback.htm
  -
   </Location>
   
   
  @@ -393,127 +404,54 @@
   Options ExecCGI
   </Location>
   
  -<Location /perl-status>
  -SetHandler perl-script
  -PerlHandler Apache::Status
  -</Location>
  -
  -<Location /server-status>
  -SetHandler server-status
  -</Location>
   
  -<Location /server-info>
  -SetHandler server-info
  +<Location /cgi-bin/SSI/>
  +SetEnv EMBPERL_SYNTAX SSI
   </Location>
   
  -
  -<Location /embperl/registry>
  -SetHandler perl-script
  -PerlHandler Apache::Registry
  -Options ExecCGI
  +<Location /cgi-bin/SSIEP/>
  +SetEnv EMBPERL_SYNTAX "Embperl SSI"
   </Location>
   
  -#<Location /registrydbg/>
  -#PerlFixupHandler Apache::DB
  -#SetHandler perl-script
  -#PerlHandler Apache::Registry
  -#Options ExecCGI
  -#</Location>
  -#
  -#<Location /embperldbg/>
  -#PerlFixupHandler Apache::DB
  -#SetHandler perl-script
  -#PerlHandler Embperl
  -#Options ExecCGI
  -#</Location>
  -
  -<Location /embperl/EmbperlObject>
  -EMBPERL_APPNAME epo1
  -EMBPERL_OBJECT_BASE epobase.htm
  -EMBPERL_OBJECT_FALLBACK epofallback.htm
  -EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  -SetHandler perl-script
  -PerlHandler Embperl::Object 
  -Options ExecCGI
  +<Location /cgi-bin/pod/>
  +SetEnv EMBPERL_SYNTAX POD
   </Location>
   
   
  -<Location /embperl/EmbperlObject/base3>
  -EMBPERL_APPNAME epo3
  -EMBPERL_OBJECT_BASE epobase3.htm
  -EMBPERL_OBJECT_STOPDIR \"$EPPATH/test/html/EmbperlObject\"
  -EMBPERL_OBJECT_ADDPATH \"$EPPATH/test/html/EmbperlObject/lib\"
  -EMBPERL_OBJECT_FALLBACK epofallback.htm
  -EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  -SetHandler perl-script
  -PerlHandler Embperl::Object 
  -Options ExecCGI
  -</Location>
  +### Status ###
   
  -<Location /embperl/EmbperlObject/base2>
  -EMBPERL_APPNAME epo2
  -EMBPERL_OBJECT_BASE epobase2.htm
  -EMBPERL_OBJECT_STOPDIR \"$EPPATH/test/html/EmbperlObject\"
  -EMBPERL_OBJECT_ADDPATH \"$EPPATH/test/html/EmbperlObject/lib\"
  -EMBPERL_OBJECT_FALLBACK epofallback.htm
  -EMBPERL_URIMATCH \"\\.htm.?\$|\\.epl\$\"
  +<Location /perl-status>
   SetHandler perl-script
  -PerlHandler Embperl::Object 
  -Options ExecCGI
  -</Location>
  -
  -<Location /embperl/SSI/>
  -EMBPERL_SYNTAX SSI
  -
  +PerlHandler Apache::Status
   </Location>
   
  -<Location /embperl/SSIEP/>
  -EMBPERL_SYNTAX "Embperl SSI"
  -
  +<Location /server-status>
  +SetHandler server-status
   </Location>
   
  -<Location /embperl/pod/>
  -EMBPERL_SYNTAX POD
  -
  +<Location /server-info>
  +SetHandler server-info
   </Location>
   
   
   
  -<Location /cgi-bin/SSI/>
  -SetEnv EMBPERL_SYNTAX SSI
  -</Location>
  -
  -<Location /cgi-bin/SSIEP/>
  -SetEnv EMBPERL_SYNTAX "Embperl SSI"
  -</Location>
  -
  -<Location /cgi-bin/pod/>
  -SetEnv EMBPERL_SYNTAX POD
  -</Location>
   
   
   #
  -
   # Configuration for example access
  -
   #
   
   <Location /eg>
   EMBPERL_XSLTPROC libxslt
   </Location>
   
  -
   <Location /eg/x>
   SetHandler perl-script
   PerlHandler Embperl
   Options ExecCGI
   </Location>
   
  -
  -
  -
   <Location /eg/web>
  -
   EMBPERL_APPNAME EmbperlWeb
   EMBPERL_OPTIONS 16
   EMBPERL_ALLOW .
  @@ -534,17 +472,6 @@
   perlhandler Embperl
   </Location>
   
  -#Alias /eg/web/xml/ \"$EPPATH/eg/web/conf/\"
  -#<Location /eg/web/xml>
  -#SetEnv EMBPERL_RECIPE Embperl
  -#EMBPERL_RECIPE Embperl
  -#ForceType text/xml
  -#PerlEMBPERL_SYNTAX POD
  -#sethandler perl-script
  -#perlhandler Embperl
  -#</Location>
  -
  -
   <Location /eg/xml>
   SetHandler perl-script
   PerlHandler Embperl
  @@ -554,24 +481,11 @@
   EMBPERL_RECIPE XSLT
   </Location>
   
  -
  -
   <Files NEWS.xml>
   EMBPERL_XSLTSTYLESHEET \"$EPPATH/eg/xml/NEWS.xsl\"
   </Files>
   
   
  -
  -#<LocationMatch \"xalan\$\">
  -#EMBPERL_RECIPE XalanXSLT
  -#</LocationMatch>
  -#
  -#<LocationMatch \"libxslt\$\">
  -#EMBPERL_RECIPE LibXSLT
  -#</LocationMatch>
  -
  -
  -
   <Location /eg/images/aim>
   
   PerlSetVar AIMParameter \"pointsize=14 font=$EPPATH/../fonts/OCRAEXT.ttf\"
  @@ -585,26 +499,9 @@
   
   
   
  -
  -
  -<Location /mp>
  -SetHandler perl-script
  -PerlHandler "sub { print 'Hello' }"
  -Options ExecCGI
  -</Location>
  -
  -ErrorLog tmp/httpd.err.log
  -PidFile tmp/httpd.pid
  -AccessConfig conf/null
  -ResourceConfig conf/null
  -TypesConfig conf/null
  -#TransferLog $EPNULL
  -#ScoreBoardFile $EPNULL
  -LockFile tmp/httpd.lock
  -LogFormat \"%h %l %u %t \\"%r\\" %s %b %{connection}o pid=%P %Tsec\" std
  -
   CustomLog tmp/httpd.acc.log std
   
  +### misc ###
   
   <IfModule apache_ssl.c>
   SSLDisable
  @@ -612,6 +509,11 @@
   SSLCacheServerPath \"$EPAPACHESRC/modules/ssl/gcache\"
   </IfModule>
   
  +<IfModule mod_jserv.c>
  +ApJServManual on
  +ApJServSecretKey DISABLED
  +ApJServLogFile /dev/null
  +</IfModule>
   
   EOD
   
  @@ -626,89 +528,7 @@
   EOD
       }
   
  -if ($EPSESSIONVERSION)
  -
  -     {
  -
  -print OFH <<EOD ;
   
  -
  -
  -
  -
  -<Location /embperl/sidurl>
  -SetHandler perl-script
  -PerlHandler Embperl
  -Options ExecCGI
  -EMBPERL_SESSION_MODE 0x20
  -</Location>
  -
  -
  -
  -<Location /embperl/uidurl>
  -SetHandler perl-script
  -PerlHandler Embperl
  -Options ExecCGI
  -EMBPERL_SESSION_MODE 0x02
  -</Location>
  -
  -
  -
  -<Location /embperl/suidurl>
  -SetHandler perl-script
  -PerlHandler Embperl
  -Options ExecCGI
  -EMBPERL_SESSION_MODE 0x22
  -</Location>
  -
  -
  -
  -
  -
  -
  -
  -EOD
  -
  -
  -
  -       }
  -
  -
  -
  -
  -print OFH <<EOD ;
  -<IfModule mod_jserv.c>
  -ApJServManual on
  -ApJServSecretKey DISABLED
  -ApJServLogFile /dev/null
  -</IfModule>
  -EOD
  -
  -print OFH <<EOD ;
  -
  -<Location /embperl/hw>
  -SetHandler perl-script
  -PerlHandler Embperl
  -Options ExecCGI
  -EMBPERL_OPTIONS 8083
  -EMBPERL_DEBUG 0
  -</Location>
  -
  -<Location /embperl/asp>
  -SetHandler perl-script
  -PerlHandler Apache::ASP
  -PerlSetVar Global  \"$EPPATH/test/tmp\"
  -PerlSetVar Debug  0
  -PerlSetVar CookiePath  /
  -PerlSetVar NoState 1
  -PerlSetVar StatScripts 0
  -#PerlSetVar DynamicIncludes 1
  -#PerlSetVar SessionTimeout  .5
  -#PerlSetVar AllowSessionState  1 
  -</Location>
  -
  -
  -EOD
   
   
   
  
  
  
  1.9.6.12  +2 -0      embperl/test/conf/startup.pl
  
  Index: startup.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/startup.pl,v
  retrieving revision 1.9.6.11
  retrieving revision 1.9.6.12
  diff -u -r1.9.6.11 -r1.9.6.12
  --- startup.pl        27 Feb 2002 15:42:51 -0000      1.9.6.11
  +++ startup.pl        5 Mar 2002 08:07:23 -0000       1.9.6.12
  @@ -20,6 +20,8 @@
   use Embperl ;
   use Embperl::Object ;
   
  +require "$ENV{EMBPERL_SRC}/test/testapp.pl" ;
  +
   $cp = Embperl::Util::AddCompartment ('TEST') ;
   
   $cp -> deny (':base_loop') ;
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +59 -0     embperl/test/html/app/Attic/i18n.htm
  
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.24  +1 -0      embperl/xsbuilder/maps/Attic/ep_structure.map
  
  Index: ep_structure.map
  ===================================================================
  RCS file: /home/cvs/embperl/xsbuilder/maps/Attic/ep_structure.map,v
  retrieving revision 1.1.2.23
  retrieving revision 1.1.2.24
  diff -u -r1.1.2.23 -r1.1.2.24
  --- ep_structure.map  4 Mar 2002 11:44:51 -0000       1.1.2.23
  +++ ep_structure.map  5 Mar 2002 08:07:23 -0000       1.1.2.24
  @@ -81,6 +81,7 @@
    <tAppConfig>
   !   _perlsv
      sAppName | app_name
  +   sAppHandlerClass | app_handler_class
      pSessionArgs | session_args
      pSessionClasses | session_classes
      sSessionConfig | session_config
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to