Thu Dec 30 13:44:39 2004 PDT suhler

update: groovy/GroovyServerTemplate.java
minor doc fixes
Thu Dec 30 13:30:34 2004 PDT suhler

update: docs/Makefile, docs/html/roadmap.html, docs/html/todo.html, docs/packages/sunlabs.brazil.groovy.package.html
minor doc improvements
Thu Dec 30 13:04:20 2004 PDT suhler

update: Makefile.common
propagate JVM_VERSION to sub-makefiles
Thu Dec 30 13:01:46 2004 PDT suhler

update: util/LexML.java, handlers/ExprPropsHandler.java, handlers/ResourceHandler.java, handlers/templates/BSLTemplate.java, handlers/templates/QueueTemplate.java, handlers/templates/TemplateHandler.java, filter/TemplateFilter.java, sunlabs/ClockFormat.java, sunlabs/ListTemplate.java, sunlabs/XmlTree.java, sunlabs/DigestAuthHandler.java
javadoc fixes
Thu Dec 30 13:00:04 2004 PDT suhler

update: util/regexp/Regexp.java, util/regexp/Regsub.java
better diagnostics, allow Regsub to return its Regexp object
Fri Dec 17 14:28:32 2004 PDT suhler

update: groovy/GroovyServerTemplate.java
Defer starting the groovy intepreter until the first time it's needed
Fri Dec 17 11:52:44 2004 PDT suhler

create: samples/simple/config.groovy, samples/simple/groovy.html, samples/simple/init.groovy
simple groovy example
Thu Dec 16 21:00:04 2004 PDT suhler

create: groovy/GroovyServerTemplate.java, groovy/Makefile, docs/packages/sunlabs.brazil.groovy.package.html
update: Makefile
Added <groovy>...</groovy> for Rinaldo.
Wed Dec 15 13:18:58 2004 PDT suhler

update: samples/simple/config.form, samples/simple/form.html
updated to match MultipartSetTemplate
Wed Dec 15 13:12:22 2004 PDT suhler

update: handlers/templates/MultipartSetTemplate.java
Implemented new mechanism for automatically saving uploaded files
to disk:
savePattern=[glob pattern] is used to specify which files on the form
   are automaticaly written to disk.
saveName=[file name with ${..}]
   is used to define the name used to save the file; field values
   can be used as part of the name
This is safer than the previous strategy, as it prevents malicious users
from creating arbitrary files.
Wed Dec 15 12:38:26 2004 PDT suhler

update: handlers/SimpleSessionHandler.java
make inner class static
Wed Dec 15 12:30:40 2004 PDT suhler

update: handlers/templates/BSLTemplate.java
When using <foreach ... list="stuff" delim=[regexp] sort=no>
then the matched delimiter and all of its sub-matches are made 
available in the scope of the foreach.
Tue Dec 7 09:47:24 2004 PDT suhler

update: sunlabs/SourceTemplate.java
Added name=xxx attribute to save source'd content to a property instead of
always incorporating it inline
Tue Nov 30 19:31:31 2004 PDT suhler

update: server/ChainHandler.java
better handling of invalid class errors for handlers
Tue Nov 30 15:27:18 2004 PDT suhler

create: docs/scripts/fix-version.tcl
script to fix the version strings in all the source files
Tue Nov 30 15:21:55 2004 PDT suhler

update: util/Calculator.java, util/Base64.java, util/SocketFactory.java, util/Format.java, util/Glob.java, util/Guid.java, util/LexHTML.java, util/LexML.java, util/StringMap.java, util/Sort.java, util/http/HttpInputStream.java, util/http/HttpUtil.java, util/http/MimeHeaders.java, util/regexp/Regexp.java, util/regexp/Regsub.java, properties/PropertiesList.java, server/ChainHandler.java, server/Connection.java, server/FileHandler.java, server/Handler.java, server/Main.java, server/Request.java, server/Server.java, request/HttpSocketPool.java, request/HttpRequest.java, filter/CopyContentFilter.java, filter/ExecFilter.java, filter/Filter.java, filter/FilterHandler.java, filter/MD5Filter.java, filter/PlainFilter.java, filter/ReFilter.java, filter/ReplaceFilter.java, filter/SessionFilter.java, filter/TemplateFilter.java, filter/UrlSessionFilter.java, proxy/HistoryFilter.java, proxy/CookieFilter.java, proxy/ProxyHandler.java, proxy/SunProxy.java, proxy/UseProxy.java, sql/SqlTemplate.java, tcl/TclFilter.java, tcl/TclRePollHandler.java, tcl/TclHandler.java, tcl/TclServerTemplate.java, tcl/TclTemplateChannel.java, tcl/TclUtil.java, python/PythonServerTemplate.java, beanshell/BeanShellServerTemplate.java, beanshell/BeanShellHandler.java, beanshell/BeanShellTemplate.java, sunlabs/DigestTemplate.java, sunlabs/ChownHandler.java, sunlabs/ExpContentTemplate.java, sunlabs/ExecTemplate.java, sunlabs/ResourceLimitHandler.java, sunlabs/ListTemplate.java, sunlabs/ServerProcess.java, sunlabs/SnarfTemplate.java, sunlabs/SubstAllTemplate.java, sunlabs/UrlMapFilter.java, sunlabs/RemoteHostTemplate.java, sunlabs/SubstPropsHandler.java, ldap/LDAPTemplate.java, servlet/BServletServerSocket.java, servlet/BServletRequest.java, servlet/BServletSocket.java, servlet/BrazilServlet.java, email/EmailTemplate.java, velocity/VelocityFilter.java, javascript/JavaScriptTemplate.java, ssl/CertHandler.java, ssl/SslHandler.java
fixed @version strings
Tue Nov 30 11:05:43 2004 PDT suhler

update: samples/simple/config.form, samples/simple/form.html, samples/simple/vote.html
sync samples/simple
- format updates
Tue Nov 30 11:01:15 2004 PDT suhler

update: handlers/Makefile, handlers/templates/AddHeaderTemplate.java, handlers/templates/MultipartSetTemplate.java, sunlabs/RestartHandler.java, ssl/SslHandler.java
sync everything (except samples)
- unified version handling for java versions in Makefiles
- direct file uploads and saves for MultiPartSetTemplate
- add "keep" flag for RestartHandler
- minor doc fixes
Mon Nov 29 16:10:27 2004 PDT suhler

update: sunlabs/Makefile
add RestartHandler to Makefile, after checking java version
Wed Nov 24 16:02:52 2004 PDT suhler

create: sunlabs/RestartHandler.java, samples/simple/restart.html, samples/simple/config.restart
Allow a server to restart when it gets a sigHUP.
This causes all the handlers to be reinitialized.
The restarted configuration can be supplied either by an external
configuration file, or the existing server.props can be reused.
Tue Nov 23 16:09:09 2004 PDT suhler

update: sunlabs/DigestAuthHandler.java
Credentials file can be re-read, allowing for the dynamic addition
of credentials.
Thu Nov 18 15:47:13 2004 PDT suhler

update: util/Glob.java
Allow null patterns in Glob.match() [always returns false]
Thu Nov 18 12:23:32 2004 PDT suhler

update: util/LexML.java
Initialze token type to STRING so getAttributes doesn't crash
if called before nextToken
Wed Nov 3 11:14:11 2004 PDT suhler

update: README
minor update (and test of the putback email distribution [1])
Wed Nov 3 10:36:03 2004 PDT suhler

update: sunlabs/DigestAuthHandler.java
use url.orig instead of request.url for uri checking
Wed Nov 3 08:36:20 2004 PDT suhler

update: handlers/HomeDirHandler.java, handlers/UrlMapperHandler.java, handlers/VirtualHostHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/SetTemplate.java, server/Request.java
request.url is modified by various handlers to change the current notion
of what the current url is.  However, sometimes (as in redirects or
authentication), the original url is required.  For historical reasons,
"request.props("url.orig")" is the original URL, and request.url is the
current "virtual" url.
 
This changes has "url.orig" set when the request is first created, so
handlers/templates that change request.url don't have to check for it
first. Oh well.
Thu Oct 28 12:48:38 2004 PDT suhler

update: handlers/SMTPHandler.java, handlers/templates/DirectoryTemplate.java
update documentation to better reflect reality
Wed Oct 27 13:34:32 2004 PDT suhler

update: handlers/SMTPHandler.java
- better diagnostics (log level=5 displays xactionwith smtp server)
- better documentation
- proper handling of <param> and </sendmail> tag debugging
Tue Oct 26 11:30:37 2004 PDT suhler

create: sunlabs/AsteriskTemplate.java
update: sunlabs/Makefile, sunlabs/SubstPropsHandler.java
Add AsteriskTemplate, a simple interface to the Asterisk (pbx) management interface
doc fixes
Tue Oct 26 11:29:38 2004 PDT suhler

update: handlers/UrlMapperHandler.java, handlers/templates/BSLTemplate.java
UrlMapperHandler.java: Make sure "export" ends with '.' (bug fix)
BSLTemplate.java: doc updates
Sun Oct 24 17:33:26 2004 PDT suhler

update: handlers/VirtualHostHandler.java, handlers/templates/TemplateHandler.java
- VirtualHostHandler.java sets "url.orig" property
- TemplateHandler.java nos sets "fileName" not "FileName"
Tue Sep 14 13:48:29 2004 PDT suhler

update: server/Server.java
added "restart" method to enable server restarts with new configuration.
Mon Aug 30 10:30:01 2004 PDT suhler

update: handlers/templates/IncludeTemplate.java
don't emit inline post data into output stream
Mon Aug 30 09:03:07 2004 PDT suhler

update: handlers/ConfigFileHandler.java, handlers/PollHandler.java, handlers/PropertiesHandler.java, handlers/ProxyPropertiesHandler.java, server/Main.java, sql/SqlTemplate.java
"enum" became a reserved word, change to "enumer".
Fri Aug 13 09:20:43 2004 PDT suhler

update: handlers/templates/DirectoryTemplate.java
doc updates
Mon Jun 28 11:12:37 2004 PDT suhler

update: sunlabs/ListTemplate.java
<list max=nnn front=true> will trim items from the front of
the list instead of the end ("front" is new)
Wed Jun 9 15:16:41 2004 PDT suhler

update: handlers/templates/QueueTemplate.java
- bug fix: timeout=0 was waiting forever (now it waits for 1 ms)
- changed System.out.print... messages to log()
Fri May 28 10:34:21 2004 PDT suhler

update: handlers/templates/MacroTemplate.java, handlers/templates/ScriptEvalTemplate.java
- Macros in the "init" file can use ${..} substitutions from server.props
  in their definitions
- The ScriptEvalTemplate now handles both <script> and <style>, and
  allows for optional "\X" substitutions
Mon May 24 15:24:49 2004 PDT suhler

update: sunlabs/DelayHandler.java, sunlabs/IncludeTemplate.java, sunlabs/DigestAuthHandler.java
doc fixes (we can build the pdf docs again)
Mon May 24 15:22:29 2004 PDT suhler

update: samples/simple/README, samples/simple/config.vote, samples/simple/macro.html
doc fixes.  Fix to config.vote so the calculator now works
Mon May 24 15:16:50 2004 PDT suhler

update: docs/Makefile, docs/packages/sunlabs.brazil.javascript.package.html, docs/packages/sunlabs.brazil.python.package.html, docs/packages/sunlabs.brazil.sql.package.html, docs/packages/sunlabs.brazil.ssl.package.html, docs/packages/sunlabs.brazil.velocity.package.html
- remove files in scripts/exclude.txt from generated documentation
- doc fixes so the xml checker doesn't barf
Mon May 24 15:13:47 2004 PDT suhler

update: handlers/templates/BSLTemplate.java, handlers/templates/MacroTemplate.java
- added map= attribute to M<extract>
- remove spurious diagostics from MacroTemplate
Mon May 24 14:54:15 2004 PDT suhler

create: docs/scripts/exclude.txt
update: docs/scripts/README, docs/scripts/fixJavadocHtml.tcl
- added "exclude.txt" to exclude listed files from a distribution.
- Some scripts contain references to absolute file paths, that were
  pointing to non-existant files.
Mon May 24 14:51:26 2004 PDT suhler

update: handlers/ExprProps.java, handlers/ExprPropsHandler.java
Updated docs to explain how to use the calculator with <if> ... </if>
Fri May 21 12:28:50 2004 PDT suhler

update: handlers/templates/MacroTemplate.java
- The initial macros file is now interpreted as an xml template, and not
  a java properties format file [WARNING: backward un-compatibility]
- main() may be used to convert the old style macro initialization tables
  (which no one used 'cause they were too hadr to generate) into the new
  format.
Tue May 18 15:52:28 2004 PDT suhler

update: handlers/templates/IncludeTemplate.java
add diagnostics so we can track remote fetches at level 4
Mon May 3 11:58:25 2004 PDT suhler

update: handlers/templates/AddHeaderTemplate.java
doc fixes for previous putback
Mon May 3 11:48:40 2004 PDT suhler

update: handlers/templates/AddHeaderTemplate.java
in "location" headers, all reasonable url's are properly converted
into absolute url's
Wed Apr 28 16:20:58 2004 PDT suhler

update: contrib/Makefile


Wed Apr 28 16:17:38 2004 PDT suhler

update: docs/Makefile, docs/html/todo.html, docs/packages/sunlabs.brazil.servlet.package.html, docs/packages/sunlabs.brazil.ssl.package.html, docs/scripts/fixJavadocHtml.tcl, docs/scripts/label.tcl, docs/scripts/ps.template
-doc formatting fixes
-install path fixes
-date updates
Wed Apr 28 16:11:15 2004 PDT suhler

update: beanshell/BeanShellTemplate.java
doc fixes
Wed Apr 28 16:09:42 2004 PDT suhler

update: handlers/templates/IncludeTemplate.java
added attributes to facilitate sending query data
Wed Apr 28 16:09:19 2004 PDT suhler

update: handlers/templates/AddHeaderTemplate.java, handlers/templates/DeCommentTemplate.java
doc fixes
Wed Apr 28 16:08:40 2004 PDT suhler

update: handlers/templates/QueueTemplate.java
add methods to allow handler/templates to access queues directly
Wed Apr 28 16:06:14 2004 PDT suhler

update: handlers/HtmlRewriter.java
Change quoting rules (again) to always add quotes.  This is
more XMLish bahavior
Wed Apr 28 16:01:09 2004 PDT suhler

update: sunlabs/Makefile
Added additional handler/template
Wed Apr 28 16:00:31 2004 PDT suhler

update: util/StringMap.java
doc format fixes
Wed Apr 28 15:59:40 2004 PDT suhler

update: util/LexML.java
Added methods to allow for better error diagnostics (e.g. line #'s)
Wed Apr 28 15:58:45 2004 PDT suhler

update: util/Format.java
\s maps to [space] and \v maps to ' (\q was already taken)
Wed Apr 28 15:57:25 2004 PDT suhler

update: sql/SqlTemplate.java
added "na" and "zeroindex" attributes for specifying n/a values, and
either 0 or 1 based indexing for the table results
Wed Apr 28 15:51:58 2004 PDT suhler

update: session/CacheManager.java, session/SessionManager.java
Changed the default implementation of SessionManager from a
hashtable of hashtables to a concatenated key, using the CacheManager
key generation algorithm
Wed Apr 28 14:55:22 2004 PDT suhler

create: sunlabs/IncludeTemplate.java
Version of the IncludeTemplate that automatically handles
re-directs and ssl (but requires jdk1.4+)
Wed Apr 28 14:54:52 2004 PDT suhler

update: handlers/templates/PropsTemplate.java, handlers/templates/SetTemplate.java, sunlabs/DelayHandler.java, sunlabs/SubstPropsHandler.java, servlet/BrazilServlet.java
documentation formating fixes
Wed Apr 28 13:55:26 2004 PDT suhler

update: properties/PropertiesList.java, handlers/templates/BSLTemplate.java
Bug fix:  namespaces imported inside of <foreach> loops were being
lost after the </foreach>.
Tue Apr 27 14:55:20 2004 PDT suhler

create: sunlabs/SubstPropsHandler.java
A "smart properties" handler that allows pluggable mappings
of property dereferences.  For example, if ${foo} exists, then
${cnvt(foo)} will filter ${foo} through the "cnvt" filter to
obtain the value.  Multiple filters may be installed, and the
format of the filter syntax is configurable.
Fri Apr 23 15:28:47 2004 PDT suhler

create: sunlabs/DigestAuthHandler.java
update: sunlabs/Makefile
Added DigestAuthHandler.java that supports digest authentication
in (modern) versions of IE and mozilla.
Mon Apr 19 16:53:15 2004 PDT suhler

update: handlers/templates/DirectoryTemplate.java
> Forgot to remove once-only check; it doesn't make sense now
> that we have an "directory" attribute.  Added a "select=[!]<glob>"
> attribute fo file selection
> 
<
Mon Apr 19 15:19:02 2004 PDT suhler

update: handlers/templates/DirectoryTemplate.java
Fixed how the "directory" attribute is resolved:
- if it starts with "/", relative to the doc root
- otherwise, relative to the current directory
Fri Apr 2 10:06:50 2004 PDT suhler

create: sunlabs/checkbsl
update: sunlabs/XmlTree.java
Added better error checking to XmlTree
included sample "bsl checker" script
Fri Mar 26 10:48:22 2004 PDT suhler

create: sunlabs/RemoteHostTemplate.java
update: sunlabs/Makefile
Added template to convert remote host to a hostname (reverse DNS)
[needed for new experimentalstuff-dlc integration
]
Mon Mar 22 15:41:09 2004 PDT suhler

create: sunlabs/XmlTree.java, sunlabs/XmlTreeTemplate.java
update: sunlabs/StunnelHandler.java
added template to manipulate xml DOM's
fixes to StunnelHandler
Mon Mar 22 15:08:34 2004 PDT suhler

update: sunlabs/Makefile
added more templates
Mon Mar 22 15:05:12 2004 PDT suhler

create: sunlabs/SourceTemplate.java
New template to "source" documents into an existing template
<source src=xxxx eval=true|false [encoding=xxx]>
Wed Feb 18 09:30:01 2004 PDT suhler

update: handlers/VirtualHostHandler.java
Made this one more useful (The multiHostHandler is too complicated)
Tue Jan 27 17:21:54 2004 PDT suhler

update: sunlabs/ListTemplate.java
- bug fix: setting a max size never increases the size
- backward test when reading back sessions from PropertiesCacheManager
Tue Jan 27 17:20:11 2004 PDT suhler

update: ldap/LDAPTemplate.java
- fixed limit=nnn so it works
- fixed off-by-one error in "rows" property
- added rowCount property
- added errorCode property
Mon Oct 6 09:20:13 2003 PDT suhler

update: handlers/templates/BSLTemplate.java
bug fix for NPE when an extract is not found
Wed Sep 10 10:45:56 2003 PDT suhler

create: sunlabs/DelayHandler.java
update: sunlabs/ListTemplate.java, sunlabs/Makefile
- fixed bug in list handler:  max=n was broken
- added "DelayHandler" to intoduce latency into request handling
Fri Aug 1 16:36:54 2003 PDT suhler

update: docs/scripts/ps.template, docs/scripts/props2.tcl, docs/scripts/explode.tcl, docs/Makefile, docs/overview.html, docs/html/intro.html, docs/html/samples.html, docs/html/roadmap.html
update files for generating documentation for release 2.1
Fri Aug 1 16:32:44 2003 PDT suhler

update: README_EXPORT
changed to reflext removal of BasePRoperties
Fri Aug 1 16:27:43 2003 PDT suhler

update: samples/simple/config.bean, samples/simple/bean.html, samples/simple/form.html
change PUT to POST in form demo (for mozilla 1.4)
add dynamic beanshell tag to beanshell example
Fri Aug 1 16:24:36 2003 PDT suhler

create: tests/tcl.jar
add our modified version of "tcl.jar" to the tests to make
them possible to run outside of Sun
Fri Aug 1 16:22:19 2003 PDT suhler

update: util/Base64.java, util/Format.java, util/LexML.java, util/http/HttpUtil.java, server/Request.java, server/FileHandler.java, request/HttpRequest.java, handlers/SMTPHandler.java, handlers/ResourceHandler.java, handlers/NotFoundHandler.java, handlers/DefaultFileHandler.java, handlers/MapPage.java, handlers/BasicAuthHandler.java, handlers/templates/MultipartSetTemplate.java, handlers/templates/TemplateInterface.java, handlers/templates/AllowGtTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/TemplateHandler.java, handlers/templates/RewriteContext.java, proxy/CookieFilter.java, proxy/SunProxy.java, tcl/TclServerTemplate.java, python/PythonServerTemplate.java, beanshell/BeanShellServerTemplate.java, sunlabs/StunnelHandler.java, javascript/JavaScriptTemplate.java, tests/README, tests/Makefile, ssl/SslHandler.java
documentation fixes to remove javadoc warnings.
- add "protocol" option to StunnelHandler
- fix typo in SslHandler
Thu Jul 31 11:57:32 2003 PDT suhler

create: docs/packages/scrape.tcl
update: docs/packages/sunlabs.brazil.beanshell.package.html, docs/packages/sunlabs.brazil.email.package.html, docs/packages/tcl.lang.package.html, docs/packages/sunlabs.brazil.python.package.html, docs/packages/sunlabs.brazil.servlet.package.html, docs/packages/sunlabs.brazil.sql.package.html, docs/packages/sunlabs.brazil.ssl.package.html, docs/packages/sunlabs.brazil.tcl.package.html, docs/packages/sunlabs.brazil.velocity.package.html, docs/packages/sunlabs.brazil.javascript.package.html
* update package documentation for javadocs
* create script to auromatically extract external references
  in package descriptions.  This will be integrated into the Makefile
  someday to auto-generate the readme files in the distribution
Mon Jul 28 09:39:36 2003 PDT suhler

update: server/Handler.java, handlers/ExprPropsHandler.java, handlers/RolesHandler.java, handlers/templates/DebugTemplate.java, handlers/templates/DirectoryTemplate.java, handlers/templates/NoImageTemplate.java, handlers/templates/QueueTemplate.java, handlers/templates/TemplateHandler.java, filter/TemplateFilter.java, beanshell/BeanShellTemplate.java, sunlabs/Makefile, sunlabs/SubstAllTemplate.java, sunlabs/StunnelHandler.java, velocity/VelocityFilter.java, ssl/SslHandler.java
Document updates for all files, plus:
DirectoryTemplate:
  added directory=xxx attribute
Makefile
  PageTemplate removed (superceded by ListTemplate)
SSLHandler
  Add fingerprint to cert properties
Sat Jul 26 16:55:24 2003 PDT drach

update: proxy/ProxyHandler.java
Move return out of finally clause to eliminate warning about finally clause not able
to return normally.
Sat Jul 26 16:51:58 2003 PDT drach

create: exportbuild.xml
update: Makefile, exportMakefile.back, exportMakefile.front, README_EXPORT
Fix up export to handle non-versioned PropertiesList.  Also add a build.xml file
to build with ant if desired.
Fri Jul 25 16:38:26 2003 PDT drach

update: Makefile, Makefile.common
Make sure compiler is at least 1.2, but generate code for 1.1 VMs
Stop the build if a 1.1 compiler is used.  Change default tools to use
1.3.  Along the way, redid the versioning macro and the tests, as well
as add some output comments.
Fri Jul 25 16:36:48 2003 PDT drach

update: properties/Makefile, properties/PropertiesList.java
rename: properties/BasePropertiesList.java -> properties/PropertiesList.java
Remove need for versioned PropertiesList files.  Now there is only
one file.  Note, since it contains Java 2 API, it can only be
compiled with Java 2 compilers, but it can run on Java 1 VMs
if compiled with the "-target 1.1" option.
Fri Jul 25 16:31:20 2003 PDT drach

delete: properties/version1.1/PropertiesList.java, properties/version1.2/PropertiesList.java
Delete versioned PropertiesList.java files
Wed Jul 23 16:00:44 2003 PDT suhler

update: servlet/BrazilServlet.java
Stupid edditing error on last putback
Wed Jul 23 13:14:22 2003 PDT suhler

update: servlet/BrazilServlet.java, servlet/BServletRequest.java, servlet/Makefile
The servlet prefix is now stripped off the url at the beggining, and
added back for all text/html content (whose length is now recomputed
properly)
Thu Jul 17 10:44:45 2003 PDT suhler

update: servlet/BrazilServlet.java
Changed the way the servlet finds its config file and document root, by
viewing the "web.xml" file as a replacement for ...server.Main [args] and
modelling it the same way.
 
Always use the servlet context root to resolve "cwd()" as the directory
of the script that started the web container is almost never useful
Thu Jul 17 10:41:02 2003 PDT suhler

update: handlers/HtmlRewriter.java
change the quoting rules in quote() to err on the side of adding
quotes.
Thu Jul 10 09:25:33 2003 PDT suhler

update: util/Calculator.java, util/Format.java, handlers/templates/Template.java, handlers/templates/RewriteContext.java, handlers/templates/BSLTemplate.java
- Bug fix:  classes we all defining their own, inconsistant notions of
  what "true" and "false" meant.  They've all been consolidated into
  a single location: Format.isTrue()/Format.isFalse().
- Template.java checks for a debug flag using the template runner's prefix
  if "debug" is not found in the template's prefix.  This is now consistent
  with the behaviour of "tagPrefix"
Wed Jul 9 14:19:59 2003 PDT suhler

update: request/HttpRequest.java, handlers/DirectoryHandler.java, handlers/HtmlRewriter.java, handlers/ExprProps.java, handlers/templates/DebugTemplate.java, handlers/templates/MacroTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/QueueTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/RewriteContext.java, handlers/templates/BSLTemplate.java, sql/SqlTemplate.java, tcl/TclServerTemplate.java, python/PythonServerTemplate.java, beanshell/BeanShellServerTemplate.java, sunlabs/DateTemplate.java, sunlabs/PlainTemplate.java, sunlabs/StunnelHandler.java, javascript/JavaScriptTemplate.java
- fixed "tagPrefix" property so all Brazil tags may be prefixed properly.  This
  allows easy disambiguation of server/client evaluation for UCML examples.  Templates
  should no longer explicitly look for their closing tag.  Instead they should use
  RewriteContext.isClosingFor(), and RewriteContext.addClosingTag()
- no changes (or lint) made to: DateTemplate.java, HttpRequest.java, DirectoryHandler.java,
  ExprProps.java, 
- Minor bug fixes to: StunnelHandler.java
Thu May 29 16:47:39 2003 PDT drach

update: servlet/BrazilServlet.java
The server socket was not initialized.  It is now set to the server's
listen socket.
Tue May 13 16:34:54 2003 PDT suhler

update: handlers/templates/MacroTemplate.java
rewrite to new semantics
(I'm not sure why this wasn't put back a long time ago)
Tue May 13 14:01:34 2003 PDT suhler

update: sunlabs/ListTemplate.java
cosmetic changes
Mon May 12 16:36:47 2003 PDT suhler

create: sunlabs/PlainTemplate.java, sunlabs/StunnelHandler.java
update: sunlabs/Makefile
- added StunnelHandler to allow Brazil to use stunnel as an ssl gateway, 
  by "fixing" the protocol field of all redirects from sll gateways.  This
  uses the "serverProtocol" variable that was just added to Request.java
- added PlainTemplate to allow html pages to contain HTML to be displayed as
  HTML, without having to escape each special character.
Mon May 12 16:28:03 2003 PDT suhler

update: server/Request.java
added a "serverProtocol" variable to allow handlers to change the
protocol (e.g. http) the server claims to be using on a per-request basis.
If "serverProtocol" is unchanged (the default), then the Server.protocol
is used instead.
 
This is useful when fronting Brazil servers with ssl gateways; the protocol
can be changed from "http" to "https" to allow redirects to work
properly
Tue Apr 15 17:31:41 2003 PDT drach

update: request/HttpRequest.java
Add protected modifier to variable connected so subclasses outside
of package can access it.
Mon Jan 6 12:24:50 2003 PDT suhler

update: sunlabs/ListTemplate.java
New implementation uses a hashtable (in addition to a Vector) for
long lists to make isMember() checks fast
Thu Dec 19 11:41:08 2002 PDT suhler

update: sunlabs/ExecTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/SetTemplate.java
Bug fixes for Joe/Rinaldo:
ExecTemplate:
 process.exec(command) does not allow white space in arguments.  There
 is a new "usesh" flag that (on unix) will exec: /bin/sh -c "command"
 as a workaround
FormTemplate
 the "size" attribute of input tags gets processed through format.subst now
SetTemplate
 <namespace remove> is added.  It has the original semantices of
 <namespace clear>, that is the namespace is completely removed, instead
 of just having its elements cleared.  This allows namespaces to be
 generated dynamically (without bound) without overflowing memory
Mon Dec 2 15:47:43 2002 PDT suhler

create: slim/html/admin/admingroups.html, slim/html/fetchMIDP.html, slim/html/infoMIDP.html, slim/html/registerMIDP.html, slim/html/groups.html
update: slim/alice/s1.tcl, slim/html/admin/adminmain.html, slim/html/admin/adminnav.html, slim/html/admin/adminbot.html, slim/html/bottom.html, slim/html/chat.html, slim/html/chatwpref.html, slim/html/fetchBrowser.html, slim/html/index.html, slim/html/info.html, slim/html/prefs.html, slim/html/process.html, slim/html/register.html, slim/html/right.html, slim/html/sound_pref.html, slim/html/stats.html, slim/html/top.html, slim/html/config, slim/html/userprefs.html, slim/html/chatgroup.html, slim/html/about.html, slim/html/chatw.html, slim/Makefile, slim/run, slim/client-phone/im.tcl, slim/client-phone/im.pgm
Sync with workspace.
- this should be the current "Joe Ferrill" demo
- redo group operation; groups now owned by admins (more like chat rooms)
- redo group and bot variables to deal with scalability issues (e.g. don't import userd namespace)
- use new "Q" closed flag for more efficient Q management
 
About to redo user and group management to use the "ListTemplate".  Hopefully this will
increase the scalability by ~10x.
 
Hopefully the new bot stuff (from leo) didn't break in the process - I didn't test it.
Mon Dec 2 15:20:16 2002 PDT suhler

update: sunlabs/Makefile, sunlabs/ListTemplate.java
added the PageTemplate capability to the ListTemplate
PageTemplate is now obsolete
Wed Nov 27 10:58:28 2002 PDT suhler

update: sunlabs/Makefile, sunlabs/PageTemplate.java, sunlabs/ListTemplate.java
rename: slim/PageTemplate.java -> sunlabs/PageTemplate.java, slim/ListTemplate.java -> sunlabs/ListTemplate.java
Move PageTemplate and ListTemplate into "sunlabs" package from "slim" so
they appear in the docs.  Neither are SLIM specific.
Mon Nov 25 15:55:04 2002 PDT suhler

update: slim/ListTemplate.java
The PropertiesCacheManager now exports a "Saveable" interface to allow
 session objects other than "Properties" to have their state saved and 
 restored in a portable ASCII format.
Mon Nov 25 15:51:17 2002 PDT suhler

update: session/PropertiesCacheManager.java
The PropertiesCacheManager now exports a "Saveable" interface to allow
session objects other than "Properties" to have their state saved and 
restored in a portable ascii format
Mon Nov 25 13:35:39 2002 PDT drach

update: properties/BasePropertiesList.java
Minor cosmetic changes to BasePropertiesList
Mon Nov 25 12:36:43 2002 PDT suhler

create: slim/ListTemplate.java
update: slim/Makefile
first pass at a list "smart properties" to permit list manipulations
in html templates
Mon Nov 25 12:31:11 2002 PDT suhler

update: properties/BasePropertiesList.java
changed the semantics of getProperty() and getNames() to treat all wrapped dictionaries
as if they are properties objects, using get() and keys() instead of getProperty() and getNames() if the
wrapped object isn't a properties
Fri Nov 15 16:43:36 2002 PDT suhler

create: slim/PageTemplate.java
update: slim/Makefile
Added "PageTemplate".  This allows easy paging through long lists
of items, in anticipation of chat scaling issues
Thu Nov 14 14:50:57 2002 PDT suhler

create: beanshell/BeanShellTemplate.java
update: beanshell/Makefile, beanshell/BeanShellServerTemplate.java
Add the ability to create new template tags on-the-fly using beanshell
Thu Nov 14 14:29:32 2002 PDT suhler

update: handlers/templates/ContentTemplate.java, handlers/templates/MacroTemplate.java
bug fix: empty Html bodies were causing null pointer exceptions
Wed Nov 6 10:06:59 2002 PDT drach

update: Makefile
Use only one versioning mechanism to decide which dirs to include.
Tue Nov 5 15:15:38 2002 PDT suhler

create: samples/simple/config.macro, samples/simple/macro.html
update: handlers/templates/MacroTemplate.java, samples/simple/README
New macro template with examples.  This one should work a lot better
Tue Nov 5 11:19:58 2002 PDT suhler

update: contrib/RunAsHandler.java
Must do "setGid" before "setUid", or the "setGid" will fail.
doh!
Tue Nov 5 10:44:24 2002 PDT suhler

update: filter/SessionFilter.java
Remove diagnostic output
Mon Nov 4 14:02:21 2002 PDT suhler

update: handlers/PollHandler.java
fixed previous putback (sorry)
Mon Nov 4 13:56:08 2002 PDT suhler

update: handlers/PollHandler.java
move check for redundant poll into the right place
Mon Nov 4 13:54:03 2002 PDT suhler

update: handlers/templates/SetTemplate.java
don't try to clear a non-existant namespace
Mon Oct 28 22:40:22 2002 PDT lc138592

update: slim/html/admin/adminbot.html, slim/AliceHandler.java, slim/AliceResponse.java
Adds further support for dynamic creation and deletion of bots, also allows login and logout of existing bots.
Thu Oct 24 15:37:23 2002 PDT suhler

update: handlers/templates/SetTemplate.java
- <namespace clear> now "clears" the table, but does not un-link it
- better attribute checking in corner cases
Mon Oct 21 21:48:38 2002 PDT lc138592

update: slim/html/admin/adminbot.html, slim/AliceResponse.java
Putback the basic stuff I have for getting bot create and delete to work, still have to work out the bugs with the new bots not actually having any data scripting files to work with, its a bit tricky.
Mon Oct 21 14:02:25 2002 PDT suhler

update: Makefile
Add jdk1.1 conditional include for "ssl"
Fri Oct 18 16:38:06 2002 PDT drach

update: Makefile
Build slim only if using a 1.4 compiler
Fri Oct 18 15:04:59 2002 PDT drach

update: server/Request.java
Add shared props after Request.props rather than before server.props
Tue Oct 1 16:43:44 2002 PDT suhler

update: beanshell/BeanShellServerTemplate.java, beanshell/Makefile, beanshell/test.bsh, beanshell/BeanShellHandler.java, contrib/README, contrib/Makefile, contrib/ApplyXslServerTemplate.java, contrib/LDAPTemplate.java, contrib/RunAs.c, contrib/RunAsHandler.java, contrib/libsunlabs_brazil_sunlabs_RunAsHandler.so-solaris, contrib/ReXXShell.java, docs/packages/README, docs/packages/sunlabs.brazil.handler.package.html, docs/packages/sunlabs.brazil.server.package.html, docs/packages/sunlabs.brazil.template.package.html, docs/packages/sunlabs.brazil.util.package.html, docs/packages/tcl.lang.package.html, docs/packages/sunlabs.brazil.util.regexp.package.html, docs/packages/com.sun.server.package.html, docs/packages/link-doc.tcl, docs/packages/sunlabs.brazil.beanshell.package.html, docs/packages/sunlabs.brazil.email.package.html, docs/packages/sunlabs.brazil.filter.package.html, docs/packages/sunlabs.brazil.ldap.package.html, docs/packages/sunlabs.brazil.properties.package.html, docs/packages/sunlabs.brazil.proxy.package.html, docs/packages/sunlabs.brazil.python.package.html, docs/packages/sunlabs.brazil.servlet.package.html, docs/packages/sunlabs.brazil.session.package.html, docs/packages/sunlabs.brazil.sql.package.html, docs/packages/sunlabs.brazil.ssl.package.html, docs/packages/sunlabs.brazil.sunlabs.package.html, docs/packages/sunlabs.brazil.tcl.package.html, docs/packages/sunlabs.brazil.util.http.package.html, docs/packages/sunlabs.brazil.velocity.package.html, docs/packages/sunlabs.brazil.contrib.package.html, docs/packages/sunlabs.brazil.javascript.package.html, docs/scripts/convert.tcl, docs/scripts/explode.tcl, docs/scripts/link-doc.tcl, docs/scripts/list_packages.tcl, docs/scripts/gen-apidocs, docs/scripts/README, docs/scripts/props.tcl, docs/scripts/props2.tcl, docs/scripts/jImport, docs/scripts/history.tcl, docs/scripts/protect_code.tcl, docs/scripts/label.tcl, docs/scripts/classpath.tcl, docs/scripts/diff.tcl, docs/scripts/fixJavadocHtml.tcl, docs/scripts/ps.template, docs/scripts/Main.txt, docs/scripts/TERMS.moz, docs/scripts/Jindent.properties, docs/images/brazilicon.gif, docs/README, docs/overview.html, docs/Makefile, docs/FAQ, docs/package-lists/servlet/package-list, docs/package-lists/activation/package-list, docs/package-lists/jdk1.2/package-list, docs/package-lists/README, docs/package-lists/velocity/package-list, docs/html/README, docs/html/todo.html, docs/html/bsl.html, docs/html/build.html, docs/html/intro.html, docs/html/javasource.html, docs/html/tut.template, docs/html/samples.html, docs/html/roadmap.html, docs/html/use-guide.html, docs/html/tut/README, docs/html/tut/SampleHandler1.java, docs/html/tut/SampleHandler2.java, docs/html/tut/sample1.config, docs/html/tut/sample1.template, email/Makefile, email/EmailTemplate.java, filter/doc/index.html, filter/doc/sample.txt, filter/doc/a.html, filter/doc/b.html, filter/doc/h1.html, filter/doc/missing.html, filter/doc/line1.jpg, filter/doc/logo.gif, filter/doc/de-link.tcl, filter/Filter.java, filter/Makefile, filter/README, filter/PlainFilter.java, filter/config, filter/config2, filter/TemplateFilter.java, filter/config-session, filter/config3, filter/ReplaceFilter.java, filter/config-large, filter/config.copy, filter/CopyContentFilter.java, filter/FilterHandler.java, filter/UrlSessionFilter.java, filter/SessionFilter.java, filter/ReFilter.java, filter/ExecFilter.java, filter/MD5Filter.java, handlers/AclSwitchHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/PollHandler.java, handlers/HomeDirHandler.java, handlers/ReflectHandler.java, handlers/MultiProxyHandler.java, handlers/SupplyHandler.java, handlers/HtmlRewriter.java, handlers/PushHandler.java, handlers/Makefile, handlers/ProxyPropertiesHandler.java, handlers/PublishHandler.java, handlers/RolesHandler.java, handlers/ChainSawHandler.java, handlers/README, handlers/SMTPHandler.java, handlers/SunNetAuthHandler.java, handlers/DialogHandler.java, handlers/ExprProps.java, handlers/LogHandler.java, handlers/SimpleSessionHandler.java, handlers/MapPage.java, handlers/NotFoundHandler.java, handlers/DirectoryHandler.java, handlers/RePollHandler.java, handlers/VirtualHostHandler.java, handlers/BasicAuthHandler.java, handlers/ConfigFileHandler.java, handlers/PropertiesHandler.java, handlers/ResourceHandler.java, handlers/MatchString.java, handlers/MultiHostHandler.java, handlers/UrlMapperHandler.java, handlers/DefaultFileHandler.java, handlers/DynamicConfigHandler.java, handlers/CookieSessionHandler.java, handlers/DeferredHandler.java, handlers/RestrictClientHandler.java, handlers/ExprPropsHandler.java, handlers/templates/UrlNavBarTemplate.java, handlers/templates/ChangedTemplate.java, handlers/templates/README, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/NoImageTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/BSLTemplate.java, handlers/templates/Template.java, handlers/templates/TemplateHandler.java, handlers/templates/SetTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/QueueTemplate.java, handlers/templates/RewriteContext.java, handlers/templates/DirectoryTemplate.java, handlers/templates/HighlightTemplate.java, handlers/templates/DebugTemplate.java, handlers/templates/ModifiedTemplate.java, handlers/templates/TemplateInterface.java, handlers/templates/MacroTemplate.java, handlers/templates/TemplateTemplate.java, handlers/templates/ScriptEvalTemplate.java, handlers/templates/MultipartSetTemplate.java, handlers/templates/DeCommentTemplate.java, handlers/templates/AllowGtTemplate.java, javascript/Makefile, javascript/JavaScriptTemplate.java, ldap/LDAPTemplate.java, ldap/Makefile, properties/Makefile, properties/BasePropertiesList.java, properties/version1.1/PropertiesList.java, properties/version1.2/PropertiesList.java, proxy/ProxyHandler.java, proxy/UseProxy.java, proxy/SunProxy.java, proxy/Makefile, proxy/CookieFilter.java, proxy/HistoryFilter.java, proxy/JunkBusterHandler.java, python/python.html, python/config.python, python/PythonServerTemplate.java, python/Makefile, request/HttpSocket.java, request/HttpRequest.java, request/HttpSocketPool.java, request/Makefile, samples/README, samples/Makefile, samples/email/body.html, samples/email/pref.html, samples/email/compose.html, samples/email/headers.html, samples/email/config, samples/email/colors.html, samples/email/index.html, samples/email/Makefile, samples/email/run, samples/email/README, samples/email/config.pref, samples/email/debug.html, samples/email/filter-list.html, samples/email/filter.html, samples/email/frameset.html, samples/email/menubar.html, samples/email/kill_filters.html, samples/email/process.html, samples/email/msgwindow.html, samples/email/welcome.html, samples/email/props.html, samples/email/reply.html, samples/email/pref-list.html, samples/email/search.html, samples/email/timeout.html, samples/email/checkpoint.html, samples/email/aliases.html, samples/simple/README, samples/simple/form.html, samples/simple/config.form, samples/simple/config.proxy, samples/simple/proxy.html, samples/simple/bean.html, samples/simple/config.builtin, samples/simple/config.cgi, samples/simple/config.bean, samples/simple/calendar.html, samples/simple/config.calendar, samples/simple/config.extract, samples/simple/sql.html, samples/simple/config.resource, samples/simple/config.sql, samples/simple/extract.html, samples/simple/resource.html, samples/simple/config.vote, samples/simple/vote.html, samples/simple/config.sort, samples/simple/sort.html, samples/simple/Makefile, samples/simple/config.translate, samples/simple/translate.html, samples/simple/config.rexx, samples/simple/rexx.html, samples/stock/config, samples/stock/README, samples/stock/config.stock, samples/stock/index.html, samples/stock/select.html, samples/stock/stock.html, samples/stock/value.html, samples/stock/Makefile, samples/stock-basic/config, samples/stock-basic/README, samples/stock-basic/config.stock, samples/stock-basic/index.html, samples/stock-basic/my_reauth.html, samples/stock-basic/my_select.html, samples/stock-basic/my_stock.html, samples/stock-basic/my_value.html, samples/stock-basic/register.html, samples/stock-basic/Makefile, samples/template/images/b.gif, samples/template/images/brazilicon.gif, samples/template/images/Makefile, samples/template/dir/index.html, samples/template/dir/Makefile, samples/template/exp/index.html, samples/template/exp/Makefile, samples/template/config.map, samples/template/index.html, samples/template/customize.html, samples/template/meta.html, samples/template/notfound.html, samples/template/see.html, samples/template/main.template, samples/template/printing.template, samples/template/config, samples/template/README, samples/template/config.persist, samples/template/Makefile, samples/template/data/Makefile, samples/im/Makefile, samples/im/config, samples/im/bottom.html, samples/im/README, samples/im/chat.html, samples/im/index.html, samples/im/info.html, samples/im/logout.html, samples/im/notify.java, samples/im/prefs.html, samples/im/process.html, samples/im/register.html, samples/im/right.html, samples/im/stats.html, samples/im/top.html, samples/im/admin/Makefile, samples/im/data/cowbell.au, samples/im/data/bark.au, samples/im/data/bird.au, samples/im/data/bong.au, samples/im/data/break.au, samples/im/data/clink.au, samples/im/data/cow.au, samples/im/data/cuckoo.au, samples/im/data/duck.au, samples/im/data/frog.au, samples/im/data/gong.au, samples/im/data/ouch.au, samples/im/data/splat.au, samples/im/data/Makefile, samples/im/data/BrazilPowered.gif, server/ChainHandler.java, server/Connection.java, server/FileHandler.java, server/Handler.java, server/Main.java, server/Request.java, server/Server.java, server/README, server/Makefile, servlet/BServletRequest.java, servlet/BServletServerSocket.java, servlet/BServletSocket.java, servlet/BrazilServlet.java, servlet/Makefile, session/SerialPersist.java, session/Makefile, session/SessionManager.java, session/PJamaSessionManager.java, session/CacheManager.java, session/SerializableCacheManager.java, session/PropertiesCacheManager.java, slim/alice/conf/jetty.xml, slim/alice/conf/startup.xml, slim/alice/conf/predicates.xml, slim/alice/conf/sentence-splitters.xml, slim/alice/conf/substitutions.xml, slim/alice/aiml/JavaONE.aiml, slim/alice/aiml/yopy-IM.aiml, slim/alice/aiml/SearchBot.aiml, slim/alice/aiml/standard/std-65percent.aiml, slim/alice/aiml/standard/std-atomic.aiml, slim/alice/aiml/standard/std-botmaster.aiml, slim/alice/aiml/standard/std-brain.aiml, slim/alice/aiml/standard/std-connect.aiml, slim/alice/aiml/standard/std-dictionary.aiml, slim/alice/aiml/standard/std-disconnect.aiml, slim/alice/aiml/standard/std-dont.aiml, slim/alice/aiml/standard/std-errors.aiml, slim/alice/aiml/standard/std-gender.aiml, slim/alice/aiml/standard/std-geography.aiml, slim/alice/aiml/standard/std-gossip.aiml, slim/alice/aiml/standard/std-hello.aiml, slim/alice/aiml/standard/std-inactivity.aiml, slim/alice/aiml/standard/std-inventions.aiml, slim/alice/aiml/standard/std-knowledge.aiml, slim/alice/aiml/standard/std-login.aiml, slim/alice/aiml/standard/std-numbers.aiml, slim/alice/aiml/standard/std-personality.aiml, slim/alice/aiml/standard/std-pickup.aiml, slim/alice/aiml/standard/std-profile.aiml, slim/alice/aiml/standard/std-robot.aiml, slim/alice/aiml/standard/std-sports.aiml, slim/alice/aiml/standard/std-srai.aiml, slim/alice/aiml/standard/std-suffixes.aiml, slim/alice/aiml/standard/std-that.aiml, slim/alice/aiml/standard/std-turing.aiml, slim/alice/aiml/standard/std-yesno.aiml, slim/alice/README, slim/alice/explain.tcl, slim/alice/google.tcl, slim/alice/j1search.tcl, slim/alice/server.properties, slim/alice/s1.tcl, slim/html/admin/adminmain.html, slim/html/admin/adminnav.html, slim/html/admin/bot.html, slim/html/admin/clean.html, slim/html/admin/index.html, slim/html/admin/props.html, slim/html/admin/adminbot.html, slim/html/admin/adminaudio.html, slim/html/alice_query.html, slim/html/audio_trans.html, slim/html/blank.html, slim/html/bottom.html, slim/html/chat.html, slim/html/chatwpref.html, slim/html/fetchBrowser.html, slim/html/fetchTCL.html, slim/html/index.html, slim/html/info.html, slim/html/logout.html, slim/html/pref_message.html, slim/html/prefs.html, slim/html/process.html, slim/html/register.html, slim/html/right.html, slim/html/sound_pref.html, slim/html/stats.html, slim/html/top.html, slim/html/config, slim/html/userprefs.html, slim/html/chatgroup.html, slim/html/about.html, slim/html/chatw.html, slim/html/registerTcl.html, slim/html/data/Bell.au, slim/html/data/Creak.au, slim/html/data/Gun.au, slim/html/data/Knock.au, slim/html/data/Lamb.au, slim/html/data/Mortar.au, slim/html/data/bark.au, slim/html/data/Toaster.au, slim/html/data/bird.au, slim/html/data/bong.au, slim/html/data/break.au, slim/html/data/clink.au, slim/html/data/cow.au, slim/html/data/cow2.au, slim/html/data/cowbell.au, slim/html/data/cuckoo.au, slim/html/data/dog.au, slim/html/data/duck.au, slim/html/data/frog.au, slim/html/data/gong.au, slim/html/data/msg.au, slim/html/data/op.au, slim/html/data/ouch.au, slim/html/data/owl.au, slim/html/data/splat.au, slim/html/data/toot.au, slim/html/data/zoom.au, slim/html/data/slim.jpg, slim/html/data/BrazilPowered.gif, slim/INSTALL, slim/README, slim/ATHandler.java, slim/AliceHandler.java, slim/AliceResponse.java, slim/BasicAudioTools.java, slim/MenuTemplate.java, slim/TTSHandler.java, slim/Makefile, slim/TTSServerHandler.java, slim/SLIM-Client-HOWTO, slim/robot-notes, slim/run, slim/client-tcl/bin/playlin, slim/client-tcl/bin/playmu, slim/client-tcl/bin/recordmu, slim/client-tcl/sounds/msg.au, slim/client-tcl/sounds/op.au, slim/client-tcl/sounds/bark.au, slim/client-tcl/README, slim/client-tcl/im.tcl, slim/client-tcl/im-tts.tcl, slim/client-tcl/im.ui.tcl, slim/client-tcl/login.ui.tcl, slim/client-tcl/pref.ui.tcl, slim/client-phone/sounds/clink.au, slim/client-phone/greeting.tcl, slim/client-phone/ans.pgm, slim/client-phone/Makefile, slim/client-phone/record.pgm, slim/client-phone/audio.c, slim/client-phone/stdin.tcl, slim/client-phone/ivr_stim.tcl, slim/client-phone/im.tcl, slim/client-phone/im.pgm, slim/client-phone/README, slim/client-phone/b2i.c, slim/client-phone/http.tcl, slim/client-phone/run, slim/client-phone/stim.tcl, slim/client-phone/xgetidle.c, slim/client-phone/INSTALL, slim/client-phone/README-demo, slim/client-phone/TODO, slim/client-test/README, slim/client-test/stdin.tcl, slim/client-test/auto.tcl, sql/Makefile, sql/README, sql/config, sql/SqlTemplate.java, sql/index.html, ssl/Makefile, ssl/README, ssl/config, ssl/SslHandler.java, ssl/index.html, ssl/run-ssl, ssl/CertHandler.java, ssl/req.html, sunlabs/UrlMapFilter.java, sunlabs/README, sunlabs/Makefile, sunlabs/ClockFormat.java, sunlabs/DateTemplate.java, sunlabs/ServerProcess.java, sunlabs/libcom_sun_server_ServerProcess.so, sunlabs/ChownHandler.java, sunlabs/SnarfTemplate.java, sunlabs/SubstAllTemplate.java, sunlabs/ExecTemplate.java, sunlabs/ExpContentTemplate.java, sunlabs/ClockScan.java, sunlabs/DigestTemplate.java, sunlabs/ResourceLimitHandler.java, tcl/TclHandler.java, tcl/test.tcl, tcl/subst.tcl, tcl/Makefile, tcl/README, tcl/TclFilter.java, tcl/index.html, tcl/switch.tcl, tcl/testSwitch.html, tcl/count.tcl, tcl/stock.tcl, tcl/virtual.tcl, tcl/virtual2.tcl, tcl/TclRePollHandler.java, tcl/TclTemplateChannel.java, tcl/TclServerTemplate.java, tcl/TclUtil.java, tests/README, tests/Makefile, tests/all, tests/TestHandler.java, tests/TestServer.java, tests/TestInputStream.java, tests/defs, tests/sunlabs.brazil.util.http.HttpInputStream.test, tests/sunlabs.brazil.server.Connection.test, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.Glob.test, tests/sunlabs.brazil.util.http.HttpUtil.test, tests/sunlabs.brazil.util.regexp.Regexp.test, tests/TestRequest.java, tests/sunlabs.brazil.util.http.MimeHeaders.test, tests/sunlabs.brazil.util.StringMap.test, tests/sunlabs.brazil.server.FileHandler.test, tests/sunlabs.brazil.server.ChainHandler.test, tests/sunlabs.brazil.handler.BasicAuthHandler.test, tests/sunlabs.brazil.template.PropsTemplate.test, tests/sunlabs.brazil.template.BSLTemplate.test, tests/TestTemplate.java, tests/sunlabs.brazil.sunlabs.DateTemplate.test, tests/sunlabs.brazil.sunlabs.SnarfTemplate.test, tests/sunlabs.brazil.template.TemplateRunner.test, tests/sunlabs.brazil.util.Format.test, tests/sunlabs.brazil.template.SetTemplate.test, tests/sunlabs.brazil.template.SetTemplate.compat.test, tests/sunlabs.brazil.templates.ScriptEval.test, tests/sunlabs.brazil.handler.MatchString.test, tests/sunlabs.brazil.handler.RePollHandler.test, tests/sunlabs.brazil.properties.ExprProps.test, tests/sunlabs.brazil.email.EmailTemplate.test-broken, tini/DecodeGe.java, tini/Makefile, tini/PT.java, tini/Ge.java, tini/README, tini/Random.java, tini/Run.java, tini/Server.java, tini/Split.java, tini/Tini.java, tini/DecodeGe2.java, tini/PTServe.java, tini/camera.a51, tini/camera.java, tini-env/tini/README, tini-env/tini/kill.html, tini-env/tini/chmod.html, tini-env/tini/getext.html, tini-env/tini/ls.html, tini-env/tini/ps.html, tini-env/tini/mkdir.html, tini-env/tini/put.html, tini-env/tini/ram.html, tini-env/tini/rm.html, tini-env/tini/version.html, tini-env/micro/README, tini-env/micro/Tini.java, tini-env/micro/Server.java, tini-env/README, tini-env/dops.html, tini-env/bottom.html, tini-env/config.tini, tini-env/put.html, tini-env/index.html, tini-env/middle.html, tini-env/run, tini-env/top.html, tools/README, tools/jImport, tools/jMkdirs, util/Makefile, util/README, util/Glob.java, util/Sort.java, util/Format.java, util/StringMap.java, util/regexp.test, util/defs, util/LexHTML.java, util/SocketFactory.java, util/LexML.java, util/Base64.java, util/ErrorMsg.java, util/Guid.java, util/Calculator.java, util/regexp/Regexp.java, util/regexp/Regsub.java, util/http/MimeHeaders.java, util/http/HttpInputStream.java, util/http/HttpUtil.java, velocity/Makefile, velocity/VelocityFilter.java
Updated the version numbers of all files to 2.1
Wed Sep 11 16:49:15 2002 PDT suhler

update: slim/client-phone/ivr_stim.tcl, slim/client-phone/im.tcl, slim/client-phone/im.pgm
- refresh user list as needed
- stop playing when a tone is recvd
- play message for incorrect password
- don't play incoming messages while recording
- remove "after nnn" attempts to fix a bug introduced by closing
  the wrong files
- fix up messages a bit
Wed Sep 11 09:15:32 2002 PDT suhler

create: slim/run, slim/client-phone/INSTALL, slim/client-phone/README-demo, slim/client-phone/TODO
update: slim/html/admin/adminmain.html, slim/html/bottom.html, slim/html/fetchBrowser.html, slim/html/process.html, slim/html/config, slim/html/userprefs.html, slim/INSTALL, slim/README, slim/client-phone/ivr_stim.tcl, slim/client-phone/README, slim/client-phone/run
Integrated changes from SunNetworkDemo version
- added log level, altavista enable from "admin" console
- use environemt variables to set servers and proxies
- added additional documentation
- cleaned up debugging messages
Tue Sep 10 11:55:22 2002 PDT suhler

create: slim/html/registerTcl.html, slim/robot-notes, slim/client-test/README, slim/client-test/stdin.tcl, slim/client-test/auto.tcl
update: slim/alice/conf/startup.xml, slim/alice/conf/predicates.xml, slim/alice/aiml/JavaONE.aiml, slim/alice/aiml/SearchBot.aiml, slim/alice/README, slim/alice/explain.tcl, slim/alice/google.tcl, slim/alice/j1search.tcl, slim/alice/server.properties, slim/alice/s1.tcl, slim/html/admin/adminmain.html, slim/html/admin/adminnav.html, slim/html/admin/index.html, slim/html/admin/adminbot.html, slim/html/admin/adminaudio.html, slim/html/bottom.html, slim/html/chat.html, slim/html/fetchBrowser.html, slim/html/index.html, slim/html/info.html, slim/html/process.html, slim/html/register.html, slim/html/top.html, slim/html/config, slim/html/userprefs.html, slim/INSTALL, slim/README, slim/ATHandler.java, slim/MenuTemplate.java, slim/client-phone/im.tcl, slim/client-phone/README, slim/client-phone/run
- added "testing" client for load testing
- merged in sun one demo changes
Mon Aug 26 14:30:03 2002 PDT suhler

create: slim/alice/s1.tcl
update: slim/alice/google.tcl
fixed google, add "sun1 network site search
Mon Aug 26 09:35:05 2002 PDT suhler

update: slim/html/bottom.html, slim/html/fetchBrowser.html, slim/html/top.html
bottom.html: send "message.replace" and not "message" to TTS
fetchBrowser.html: lost <script>...</script> around focus() call
top.html: add "admin" link
Sat Aug 24 18:16:39 2002 PDT lc138592

create: slim/html/admin/adminaudio.html
forgot to add to workspace (sau)
Fri Aug 23 17:59:27 2002 PDT lc138592

create: slim/html/admin/adminbot.html
adminbot was not part of the sccs files for some unknown reason
Fri Aug 23 16:11:09 2002 PDT lc138592

update: slim/html/about.html
Not much - merely a change in about
Wed Aug 21 18:31:33 2002 PDT suhler

update: tests/README
Added testing release notes that indicate:
-tests work on 1.1 and 1.2
-tests break on 1.3
-tests mostly work on 1.4
Wed Aug 21 18:26:22 2002 PDT suhler

update: docs/html/todo.html, tests/sunlabs.brazil.util.http.HttpUtil.test, server/Request.java, slim/README
Misc:
- doc changes to Request.java, Readme, todo
- test fixes for jdk 1.4
Wed Aug 21 15:38:13 2002 PDT suhler

update: handlers/templates/TemplateHandler.java, filter/TemplateFilter.java
add "outputEncoding" parameter to specify the String -> byte[] conversions
This allows for the handling of non-western character sets.
Tue Aug 20 12:13:50 2002 PDT suhler

create: slim/client-phone/sounds/clink.au, slim/client-phone/greeting.tcl, slim/client-phone/ans.pgm, slim/client-phone/Makefile, slim/client-phone/record.pgm, slim/client-phone/audio.c, slim/client-phone/stdin.tcl, slim/client-phone/ivr_stim.tcl, slim/client-phone/im.tcl, slim/client-phone/im.pgm, slim/client-phone/README, slim/client-phone/b2i.c, slim/client-phone/http.tcl, slim/client-phone/run, slim/client-phone/stim.tcl, slim/client-phone/xgetidle.c
telephone client for SLIM
Thu Aug 15 14:52:59 2002 PDT lc138592

create: slim/client-tcl/bin/playlin, slim/client-tcl/bin/playmu, slim/client-tcl/bin/recordmu, slim/client-tcl/sounds/msg.au, slim/client-tcl/sounds/op.au, slim/client-tcl/sounds/bark.au, slim/client-tcl/README, slim/client-tcl/im.tcl, slim/client-tcl/im-tts.tcl, slim/client-tcl/im.ui.tcl, slim/client-tcl/login.ui.tcl, slim/client-tcl/pref.ui.tcl
update: slim/html/config, slim/ATHandler.java, slim/AliceHandler.java, slim/AliceResponse.java
Fixed some stuff with voicing and SLIM.
Added the tcl client in the client-tcl subdirectory.
Wed Aug 14 10:23:25 2002 PDT lc138592

create: contrib/ReXXShell.java, samples/simple/config.rexx, samples/simple/rexx.html
update: contrib/README, contrib/Makefile, samples/simple/README
Added the ReXXShell template to the contrib directory.  Also added a (very) simple
example to the samples/simple directory of how to use the rexxshell template.
Mon Aug 12 15:37:11 2002 PDT lc138592

update: slim/html/config, slim/TTSServerHandler.java
Changed TTSServerHandler to a more sensical configuation schema.  Changed the config file to match this new schema.  Added Javadocs to TTSServerHandler.  Fixed the PCM16 audio issues with TSServerHandler.  Fixed the wave header issues in TTSServerHandler.
Mon Aug 12 13:30:47 2002 PDT suhler

update: handlers/ProxyPropertiesHandler.java
process ${...} constructs in the URL on a per-request basis
Wed Aug 7 16:38:16 2002 PDT lc138592

update: slim/html/config, slim/BasicAudioTools.java, slim/TTSServerHandler.java
Added the ability to scale the mulaw sound level dynamically
Wed Aug 7 14:51:22 2002 PDT lc138592

update: slim/html/config, slim/BasicAudioTools.java, slim/TTSServerHandler.java
Minor changes, PCM works again with .au, still uncertain with .wav
PCM8 no longer a encoding option, sampling is specified in the config file at
server start for the TTSServerHandler, configure multiple such for different
sampling rates (this fits with the FreeTTS multiple diphone database structure)
Tue Aug 6 17:57:10 2002 PDT lc138592

create: slim/SLIM-Client-HOWTO
update: slim/BasicAudioTools.java, slim/TTSServerHandler.java
Added the HOWTO file.
Attempt to Fix the Wav transmission - doesn't work.  Wav and Au in ML8 work fine, but
nothing but garbage for PCM8 and PCM16.  Tried byte swapping and whatnot - no use.
Tue Aug 6 11:25:22 2002 PDT suhler

update: slim/ATHandler.java, slim/AliceResponse.java, slim/BasicAudioTools.java, slim/MenuTemplate.java, slim/Makefile, slim/TTSServerHandler.java, slim/AliceHandler.java, slim/TTSHandler.java
rename: slim/TTSHandle.java -> slim/TTSHandler.java
- remove "*" imports
- fix typos
- rename ..Handle to ..Handler
- add "mustHave" option to TTSServerHandler
Tue Aug 6 10:08:55 2002 PDT suhler

update: slim/AliceHandler.java
rename: slim/AliceHandle.java -> slim/AliceHandler.java
delete: slim/AliceHandler.java
fixed (i hope) ws to reflect the AliceHandle to AliceHandler name change
Tue Aug 6 09:48:28 2002 PDT lc138592

create: slim/AliceHandler.java
update: slim/html/bottom.html, slim/html/chat.html, slim/html/top.html, slim/html/config, slim/html/userprefs.html, slim/html/chatgroup.html, slim/ATHandler.java, slim/AliceResponse.java, slim/BasicAudioTools.java, slim/MenuTemplate.java, slim/TTSHandle.java, slim/Makefile, slim/TTSServerHandler.java
Some minor bug changes.  AliceHandler from AliceHandle.  Javadocs added
Mon Aug 5 15:12:30 2002 PDT suhler

update: tests/sunlabs.brazil.handler.RePollHandler.test, tests/sunlabs.brazil.util.http.HttpUtil.test
All tests are now working (with Solaris_JDK_1.2.2_07a)
Mon Aug 5 14:20:52 2002 PDT suhler

update: docs/Makefile
another attempt at getting the tutorial to end up in the correct location
Mon Aug 5 12:39:38 2002 PDT suhler

update: util/Sort.java, util/Base64.java, util/LexML.java, proxy/ProxyHandler.java, tcl/TclHandler.java, tcl/TclFilter.java, sunlabs/UrlMapFilter.java, sunlabs/SnarfTemplate.java, sunlabs/ExpContentTemplate.java, sunlabs/ChownHandler.java, sunlabs/ClockScan.java, tests/TestServer.java, tests/TestRequest.java, tests/TestTemplate.java, server/Main.java, server/FileHandler.java, filter/ReplaceFilter.java, filter/SessionFilter.java, filter/FilterHandler.java, filter/PlainFilter.java, session/SessionManager.java, session/PropertiesCacheManager.java, slim/alice/google.tcl, slim/Makefile
entirely doc fixes, except
slim google script works again (for now)
Mon Aug 5 11:59:48 2002 PDT suhler

create: docs/html/roadmap.html
update: docs/Makefile, docs/overview.html, docs/html/tut.template
- try to make the tutorial build in the right place
- add the beginnings of a "class roadmap"
Thu Aug 1 13:47:59 2002 PDT suhler

update: handlers/VirtualHostHandler.java, handlers/RePollHandler.java, handlers/MultiProxyHandler.java, handlers/NotFoundHandler.java, handlers/RolesHandler.java, handlers/DirectoryHandler.java, handlers/PushHandler.java, handlers/LogHandler.java, handlers/HtmlRewriter.java, handlers/PropertiesHandler.java, handlers/GenericProxyHandler.java, handlers/BasicAuthHandler.java, handlers/ConfigFileHandler.java, handlers/templates/DebugTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/DirectoryTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/DeCommentTemplate.java, handlers/templates/MacroTemplate.java, handlers/templates/UrlNavBarTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/QueueTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java
lots of little documentation fixes
Wed Jul 31 14:01:06 2002 PDT lc138592

create: slim/TTSServerHandler.java
update: slim/alice/aiml/SearchBot.aiml, slim/html/bottom.html, slim/html/config, slim/BasicAudioTools.java, slim/Makefile
Added WAV and RAW file support for the Brazil based TTS Server.  Also fixed a minor change in bottom.html (SLIM package) to properly remove state regarding the existence of a new message.  <br/> was made into <br /> in the aiml files.
Tue Jul 30 16:23:01 2002 PDT suhler

update: handlers/PollHandler.java
Polling failed when using certain combinations of "match", "format", and
"interval"
Tue Jul 30 12:06:15 2002 PDT suhler

update: slim/html/bottom.html
remove bogus addheader directive
Mon Jul 29 15:32:55 2002 PDT suhler

update: handlers/PollHandler.java, handlers/templates/IncludeTemplate.java, util/http/HttpUtil.java
calls to HttpRequest were sending bogus (or no) "Host:" header.
if no "host" header is found, derive one from the URL
- Added utilities for extracting portions of URL's to HttpUtil
Fri Jul 26 21:45:05 2002 PDT suhler

create: slim/alice/aiml/standard/std-65percent.aiml, slim/alice/aiml/standard/std-atomic.aiml, slim/alice/aiml/standard/std-botmaster.aiml, slim/alice/aiml/standard/std-brain.aiml, slim/alice/aiml/standard/std-connect.aiml, slim/alice/aiml/standard/std-dictionary.aiml, slim/alice/aiml/standard/std-disconnect.aiml, slim/alice/aiml/standard/std-dont.aiml, slim/alice/aiml/standard/std-errors.aiml, slim/alice/aiml/standard/std-gender.aiml, slim/alice/aiml/standard/std-geography.aiml, slim/alice/aiml/standard/std-gossip.aiml, slim/alice/aiml/standard/std-hello.aiml, slim/alice/aiml/standard/std-inactivity.aiml, slim/alice/aiml/standard/std-inventions.aiml, slim/alice/aiml/standard/std-knowledge.aiml, slim/alice/aiml/standard/std-login.aiml, slim/alice/aiml/standard/std-numbers.aiml, slim/alice/aiml/standard/std-personality.aiml, slim/alice/aiml/standard/std-pickup.aiml, slim/alice/aiml/standard/std-profile.aiml, slim/alice/aiml/standard/std-robot.aiml, slim/alice/aiml/standard/std-sports.aiml, slim/alice/aiml/standard/std-srai.aiml, slim/alice/aiml/standard/std-suffixes.aiml, slim/alice/aiml/standard/std-that.aiml, slim/alice/aiml/standard/std-turing.aiml, slim/alice/aiml/standard/std-yesno.aiml, slim/html/chatw.html
update: slim/html/about.html, slim/MenuTemplate.java, slim/Makefile
files missing from distribution:
 - alice std aiml files
 - chatw.html
MenuTemplate was using String.replaceAll() a 1.4 feature, breaking
  compatibility with jdk1.1 gatuitously
Makefile dependancy ordering was incorrect
run script is missing
Fri Jul 26 15:52:30 2002 PDT lc138592

update: slim/html/admin/adminnav.html, slim/html/admin/index.html, slim/html/index.html, slim/html/process.html, slim/html/right.html, slim/html/config, slim/html/userprefs.html, slim/html/chatgroup.html, slim/AliceResponse.java, slim/MenuTemplate.java, slim/Makefile
New Features: 
   Beanshell Support for new Admin Pages
   Audio Tasks in Admin
   Chat Groups
   Fixed MenuTemplate
   Fixed Audio Transmission Support
   Added ability to edit bot predicates in the admin pages.. more to come
Wed Jul 24 10:52:17 2002 PDT suhler

update: Makefile
Add "javascript" to the list of dependencies
Tue Jul 23 08:31:32 2002 PDT suhler

update: request/HttpRequest.java
check for missing content-type header
Mon Jul 22 15:58:20 2002 PDT drach

update: docs/Makefile
Remove bogus destination for tutorial.html
Mon Jul 22 14:00:53 2002 PDT suhler

create: docs/package-lists/velocity/package-list
velocity external class links for javadoc
Mon Jul 22 12:04:39 2002 PDT suhler

create: docs/html/tut.template
template for creating the (unfinished) tutorial
Mon Jul 22 12:04:03 2002 PDT suhler

create: README_EXPORT
README installed in srcs directory of release
Mon Jul 22 11:24:26 2002 PDT suhler

create: license.terms.spl
sun public license terms
Fri Jul 19 17:01:57 2002 PDT drach

update: javascript/JavaScriptTemplate.java
Fixed up some errors in the documentation.
Fri Jul 19 16:39:21 2002 PDT suhler

create: docs/packages/sunlabs.brazil.javascript.package.html
update: docs/Makefile
Added javascript package to the makfile
Created a "stub" describing the javascript package (needs to be filled out still).
Fri Jul 19 16:18:37 2002 PDT suhler

create: slim/html/about.html
update: slim/html/index.html
add an "about" link
Fri Jul 19 16:13:03 2002 PDT drach

create: javascript/Makefile, javascript/JavaScriptTemplate.java
Add JavaScript via Rhino to template capability.  Have fun!
JavaScript is cool.  Especially with the LiveConnect feature.
Fri Jul 19 15:52:51 2002 PDT lc138592

create: slim/alice/conf/jetty.xml, slim/alice/conf/startup.xml, slim/alice/conf/predicates.xml, slim/alice/conf/sentence-splitters.xml, slim/alice/conf/substitutions.xml, slim/alice/aiml/JavaONE.aiml, slim/alice/aiml/yopy-IM.aiml, slim/alice/aiml/SearchBot.aiml, slim/alice/README, slim/alice/explain.tcl, slim/alice/google.tcl, slim/alice/j1search.tcl, slim/alice/server.properties, slim/html/admin/adminmain.html, slim/html/admin/adminnav.html, slim/html/admin/bot.html, slim/html/admin/clean.html, slim/html/admin/index.html, slim/html/admin/props.html, slim/html/alice_query.html, slim/html/audio_trans.html, slim/html/blank.html, slim/html/bottom.html, slim/html/chat.html, slim/html/chatwpref.html, slim/html/fetchBrowser.html, slim/html/fetchTCL.html, slim/html/index.html, slim/html/info.html, slim/html/logout.html, slim/html/pref_message.html, slim/html/prefs.html, slim/html/process.html, slim/html/register.html, slim/html/right.html, slim/html/sound_pref.html, slim/html/stats.html, slim/html/top.html, slim/html/config, slim/html/userprefs.html, slim/html/chatgroup.html, slim/html/data/Bell.au, slim/html/data/Creak.au, slim/html/data/Gun.au, slim/html/data/Knock.au, slim/html/data/Lamb.au, slim/html/data/Mortar.au, slim/html/data/bark.au, slim/html/data/Toaster.au, slim/html/data/bird.au, slim/html/data/bong.au, slim/html/data/break.au, slim/html/data/clink.au, slim/html/data/cow.au, slim/html/data/cow2.au, slim/html/data/cowbell.au, slim/html/data/cuckoo.au, slim/html/data/dog.au, slim/html/data/duck.au, slim/html/data/frog.au, slim/html/data/gong.au, slim/html/data/msg.au, slim/html/data/op.au, slim/html/data/ouch.au, slim/html/data/owl.au, slim/html/data/splat.au, slim/html/data/toot.au, slim/html/data/zoom.au, slim/html/data/slim.jpg, slim/html/data/BrazilPowered.gif, slim/INSTALL, slim/README, slim/ATHandler.java, slim/AliceHandle.java, slim/AliceResponse.java, slim/BasicAudioTools.java, slim/MenuTemplate.java, slim/TTSHandle.java, slim/Makefile
First pass entry of SLIM (Sun Labs Instant Messenger).  Basic Functionality.
Fri Jul 19 14:24:58 2002 PDT suhler

update: beanshell/BeanShellServerTemplate.java
Request object reference wasn't being reset on each request
Thu Jul 18 14:06:39 2002 PDT suhler

update: python/PythonServerTemplate.java
"eval" only does ${...} substitutions, but leaves \X's alone
Thu Jul 18 14:03:59 2002 PDT suhler

update: beanshell/BeanShellServerTemplate.java
Make the "eval" attribute do ${...} substitutions, but leave all\X's alone
Thu Jul 11 15:37:46 2002 PDT suhler

update: request/HttpRequest.java
add encoding diagnostics to displayAllHeaders
Thu Jul 11 15:04:37 2002 PDT suhler

update: tcl/TclRePollHandler.java, request/HttpRequest.java, handlers/RePollHandler.java, handlers/PollHandler.java, handlers/templates/IncludeTemplate.java
- Added getEncoding() and getContent() methods to HttpRequest to
  deal with HTTP charset encodings
- Changed PollHandler.fillProps() sig. to pass HttpRequest object instead of
  an inputstream, so enable access to the new convenience methods
- Changed RePollHandler and IncludeTemplate to use the getContent() convenience
  method in HttpRequest, for unified charset encoding treatment
- fixed TclRePollHandler to use new fillProps() sig.
Wed Jul 10 11:33:09 2002 PDT suhler

update: server/ChainHandler.java, server/Request.java
- fixed misleading diagnostic message in ChainHandler
- Don't override content type in sendHeaders() if it is already set.
Wed Jul 10 11:29:41 2002 PDT suhler

create: contrib/libsunlabs_brazil_sunlabs_RunAsHandler.so-solaris
update: contrib/Makefile, contrib/RunAs.c, contrib/README
Add "RunAs" handler.  This supercedes the "ChownHandler".
The RunAs handler contains native code for invoking setuid() and setgid().
the native code library the "ChownHandler" uses stopped working
(and I don't have the sources)
Wed Jul 10 11:28:15 2002 PDT suhler

update: handlers/RePollHandler.java, handlers/ExprProps.java, handlers/PollHandler.java, handlers/templates/TemplateHandler.java, handlers/templates/IncludeTemplate.java, sunlabs/ExecTemplate.java, filter/TemplateFilter.java
Added "encoding" option to be applied when converting bytes into
Strings.  This is the 1st pass attempt to handle other than default
language encodings; its incomplete
Mon Jun 24 15:51:41 2002 PDT suhler

update: handlers/templates/TemplateRunner.java, handlers/templates/TemplateHandler.java, handlers/templates/QueueTemplate.java, filter/SessionFilter.java
- Better diagnostics when Template class is bogus
- QueueTemplate handles multiple recipients
- SessionFilter does set-cookie header paths properly
Tue Jun 18 11:34:01 2002 PDT suhler

create: docs/scripts/Jindent.properties
update: Makefile
Added a rule "reindent" to reindent the export sources using Jindent
Mon Jun 17 11:03:04 2002 PDT suhler

update: handlers/templates/QueueTemplate.java
-Make QueueItem public, so other classes can interact with the Queues
-Add "meta" data field to the queue item, in anticipation of multi-language
 support
Sun Jun 16 10:33:32 2002 PDT suhler

create: contrib/RunAs.c, contrib/RunAsHandler.java
update: contrib/README, contrib/Makefile
The "ChownHandler" doesn't work on Solaris9.  Create a
"RunAsHandler" as a replacement, that includes the sources for the
nativve code.  It should be fairly straight forward to make this
work on most flavors of Unix
Thu Jun 13 18:00:00 2002 PDT suhler

update: sunlabs/ExpContentTemplate.java
bug fix: wasn't calling super.init() properly
Thu Jun 13 17:58:14 2002 PDT suhler

update: handlers/SimpleSessionHandler.java, handlers/PollHandler.java
- SimpleSessionHAndler extract= does ${..} substitutions by looking
  in http headers first, and then in request props
- removed bogus poll interval startup messages
Thu Jun 13 10:49:38 2002 PDT suhler

create: samples/simple/config.translate, samples/simple/translate.html
update: samples/simple/README
Added sample "screen scraping" demo that uses google to do language
translation
Tue Jun 11 17:47:20 2002 PDT suhler

update: handlers/SimpleSessionHandler.java, handlers/templates/IncludeTemplate.java, sunlabs/ChownHandler.java
- add inverse match to SimpleSessionHandler.  This makes it easier
  to detect robots (e.g. NOT IE|Mozilla|Opera...)
- add "status" pseudo header to "getheaders" (IncludeTemplate) to
  make it easier to do error recovery
- fixed a typo in the ChownHandler (GrooupName - groupName)
Fri Jun 7 09:19:47 2002 PDT suhler

update: handlers/templates/IncludeTemplate.java
- added "addheaders" attribute to permit the additon of http headers
  to the target request
- added "getheaders" attribute to permit the extraction and return
  of all htt response headers
This premits a (clumbsy) mechanism of negotiating session or login
state with a server (such as dealing with redirects and cookie
requests) using only BSL.
Thu Jun 6 20:55:29 2002 PDT suhler

update: handlers/templates/IncludeTemplate.java
Added "post" attribute to IncludeTemplate, to make it easier
to use for the IM language translation services
Wed Jun 5 16:15:54 2002 PDT suhler

update: session/PropertiesCacheManager.java, session/CacheManager.java
Added "defer" option to PropertiesCacheManager.java that allows the
loading of saved sessions as needed instead of at server startup
Wed Jun 5 14:37:27 2002 PDT suhler

update: samples/simple/bean.html, samples/simple/config.bean, beanshell/BeanShellServerTemplate.java
A new bsh.Interp was beeing created for each new session weather it
was being used or not.  Only create one if actually used.
Update bsh example to demo per-session persistence
Wed Jun 5 13:43:52 2002 PDT suhler

create: samples/im/data/cowbell.au, samples/im/data/bark.au, samples/im/data/bird.au, samples/im/data/bong.au, samples/im/data/break.au, samples/im/data/clink.au, samples/im/data/cow.au, samples/im/data/cuckoo.au, samples/im/data/duck.au, samples/im/data/frog.au, samples/im/data/gong.au, samples/im/data/ouch.au, samples/im/data/splat.au, samples/im/data/Makefile, samples/im/data/BrazilPowered.gif
update: samples/im/Makefile
More files that got left out, sorry
Wed Jun 5 13:36:55 2002 PDT suhler

create: samples/im/config, samples/im/bottom.html, samples/im/README, samples/im/chat.html, samples/im/index.html, samples/im/info.html, samples/im/logout.html, samples/im/notify.java, samples/im/prefs.html, samples/im/process.html, samples/im/register.html, samples/im/right.html, samples/im/stats.html, samples/im/top.html
These files got lost somehow
Wed Jun 5 15:36:29 2002 EDT rinaldo
- deleted more unused files
- added "contrib" to list of "other" files included in the release
- minor doc updates
Tue Jun 4 18:53:01 2002 PDT suhler

create: tools/README, tools/jImport, tools/jMkdirs
update: Makefile, proxy/SunProxy.java, contrib/README, contrib/Makefile
delete: samples/email/.deleted/bye.html, samples/email/.deleted/folders.html, samples/email/.deleted/goodbye.html, samples/email/.deleted/headerMenu.html, samples/email/.deleted/error.html, samples/email/.deleted/oops.html
- deleted more unused files
- added "contrib" to list of "other" files included in the release
- minor doc updates
Fri May 31 16:40:48 2002 PDT suhler

delete: .deleted/docs/new.gif, .deleted/docs/sample.html, .deleted/docs/seen.gif, .deleted/docs/b.html, .deleted/docs/never.gif, .deleted/docs/index.html, .deleted/docs/a.html, .deleted/docs/touch.cgi, .deleted/diff.tcl, .deleted/Makefile, .deleted/config, .deleted/config.bookmark, .deleted/run-save, .deleted/README, .deleted/config.cookie, .deleted/tutorial.html, .deleted/tutorial-frame.html, .deleted/brazilserver.template, .deleted/config.hack, .deleted/config.proxy, .deleted/de-log.tcl, .deleted/fixJavadocHtml.tcl, .deleted/label.tcl, .deleted/protect.tcl, .deleted/TERMS, .deleted/cgi-scripts/README, .deleted/cgi-scripts/jserv.cgi, .deleted/cgi-scripts/reflect.cgi, .deleted/cgi-scripts/av2xml.cgi, .deleted/cgi-scripts/stock.cgi, .deleted/cgi-scripts/stock2.cgi, .deleted/explode/samples.html, .deleted/explode/props.tcl
more workspace cleanup
All "deleted" files are now in the .deleted_files directory
Fri May 31 16:37:59 2002 PDT suhler

delete: handlers/bsl.html, handlers/bsl2.html, handlers/bsl3.html, handlers/bsl4.html, handlers/mail.html, handlers/push.html, handlers/data.credentials, handlers/dir.template, handlers/config.bsl, handlers/config.cgi, handlers/config.clientTemplate, handlers/config.config, handlers/config.dialog, handlers/config.forbade, handlers/config.formTemplate, handlers/config.host, handlers/config.includeTemplate, handlers/config.mail, handlers/config.mapSite, handlers/config.new, handlers/config.new_dir, handlers/config.publish, handlers/config.push, handlers/config.sample, handlers/config.virtual, sunlabs/.deleted/Main.java, sunlabs/.deleted/FrameSetTemplate.java, tcl/config.tclserver, tcl/config.virtual2, tcl/browser-hj.gif, tcl/browser-ie.gif, tcl/browser-ns.gif, tcl/config, tcl/run, ge/doc_root/preferences/README, ge/doc_root/preferences/default.cfg, ge/doc_root/graph.html, ge/doc_root/conf.html, ge/doc_root/README, ge/doc_root/what.html, ge/doc_root/test.html, ge/doc_root/agenda.html, ge/doc_root/schematic.html, ge/doc_root/care.pdf, ge/doc_root/init.tcl, ge/doc_root/program.html, ge/doc_root/register.html, ge/doc_root/status.html, ge/doc_root/set.html, ge/doc_root/ge.tcl, ge/doc_root/fridge/ge/GetStatusState.html, ge/doc_root/fridge/ge/README, ge/doc_root/fridge/ge/GetStatusX.html, ge/doc_root/fridge/ge/GetStatus.html, ge/doc_root/fridge/ge/GetStatusL.html, ge/README, ge/gemeeting.ppt, ge/config.ge, ge/Makefile, handlers/config-test/README, handlers/config-test/form2.html, handlers/config-test/index.html, handlers/config-test/test.cfg, handlers/config-test/ok.html, handlers/config-test/form1.html
more workspace cleanup
Fri May 31 11:41:17 2002 PDT suhler

rename: FAQ -> docs/FAQ
delete: diff.tcl, brazilserver.template, config.hack, config.proxy, de-log.tcl, fixJavadocHtml.tcl, label.tcl, protect.tcl, TERMS, cgi-scripts/README, cgi-scripts/jserv.cgi, cgi-scripts/reflect.cgi, cgi-scripts/av2xml.cgi, cgi-scripts/stock.cgi, cgi-scripts/stock2.cgi, explode/samples.html, explode/props.tcl
workspace cleanup
Fri May 31 11:22:02 2002 PDT suhler

create: docs/scripts/TERMS.moz, docs/html/tut/README, docs/html/tut/SampleHandler1.java, docs/html/tut/SampleHandler2.java, docs/html/tut/sample1.config, docs/html/tut/sample1.template
update: Makefile, docs/scripts/protect_code.tcl, docs/scripts/label.tcl, docs/overview.html, handlers/templates/BSLTemplate.java
documentation fixes.
1st pass at the new "tutorial"
Wed May 29 16:30:49 2002 PDT suhler

create: docs/scripts/Main.txt, docs/Makefile
update: Makefile, docs/scripts/label.tcl, docs/scripts/fixJavadocHtml.tcl, docs/overview.html, docs/html/todo.html, handlers/templates/TemplateHandler.java, samples/simple/config.vote, samples/simple/vote.html, samples/template/images/Makefile, velocity/VelocityFilter.java
delete: docs/html/tutorial.html, docs/html/tutorial-frame.html
Added Makefile in docs to generate pdf documentation
Added "make release" target in Main makefile to build a release
added minor doc corrections
Fri May 24 17:02:35 2002 PDT suhler

rename: ps.template -> docs/scripts/ps.template
left out of previous putback
Fri May 24 17:01:23 2002 PDT suhler

create: exportMakefile.back, exportMakefile.front
update: Makefile, Makefile.common, tests/Makefile
The makefile in "docs" almost builds all the documentation automagically now
Fri May 24 15:42:56 2002 PDT suhler

create: docs/scripts/classpath.tcl, docs/scripts/diff.tcl, docs/scripts/fixJavadocHtml.tcl
update: docs/scripts/README
more script consolodation in preparation for integrating the pfd
file generation into the workspace
Thu May 23 11:53:02 2002 PDT suhler

create: tests/README, samples/Makefile, samples/simple/Makefile, samples/im/Makefile, samples/im/admin/Makefile, samples/email/Makefile, samples/stock/Makefile, samples/stock-basic/Makefile, samples/template/data/Makefile, samples/template/images/Makefile, samples/template/dir/Makefile, samples/template/exp/Makefile, samples/template/Makefile
update: Makefile, Makefile.common, util/Makefile, proxy/Makefile, tcl/Makefile, request/Makefile, sunlabs/Makefile, tests/Makefile, handlers/Makefile, handlers/templates/QueueTemplate.java, ssl/Makefile, sql/Makefile, server/Makefile, contrib/Makefile, filter/Makefile, session/Makefile, session/SessionManager.java, ldap/Makefile, python/Makefile, properties/Makefile, properties/version1.1/PropertiesList.java, servlet/Makefile, email/Makefile, beanshell/Makefile, velocity/Makefile
delete: persistent-server/docs/new.gif, persistent-server/docs/sample.html, persistent-server/docs/seen.gif, persistent-server/docs/b.html, persistent-server/docs/never.gif, persistent-server/docs/index.html, persistent-server/docs/a.html, persistent-server/docs/touch.cgi, persistent-server/Makefile, persistent-server/config, persistent-server/config.bookmark, persistent-server/run-save, persistent-server/README, persistent-server/config.cookie
More Makefile cleanup.  This include Makefiles to make it easier to
  distribute the tests and samples
removed more "dead" subprojects
created better diagnostic messages
Tue May 21 11:50:38 2002 PDT drach

update: ldap/Makefile, proxy/Makefile, python/Makefile, request/Makefile, session/Makefile, sql/Makefile, tcl/Makefile
This is a continuation of previous change.  Neglected to update these
make files in that change.  All fixed now.
Mon May 20 14:59:12 2002 PDT drach

create: Makefile.common
update: Makefile, tests/Makefile, filter/Makefile, handlers/Makefile, server/Makefile, util/Makefile, sunlabs/Makefile, servlet/Makefile, email/Makefile, properties/Makefile, ssl/Makefile, beanshell/Makefile, velocity/Makefile, contrib/Makefile
Put Makefile.common under workspace and SCCS.  Fix all Makefiles to point
to it.  Force use of Gnumake.
Mon May 20 13:38:07 2002 PDT suhler

update: Makefile, tests/Makefile
- add "tests" to DEPENDS
- running the tests in tests/Makefile is now a separate step (from
  building the test java files), and doesn't depend on jacl being installed:
  (it uses tcl.jar directly)
Fri May 17 09:44:27 2002 PDT drach

update: properties/BasePropertiesList.java, properties/version1.1/PropertiesList.java, velocity/VelocityFilter.java
Minor fixes so Brazil can still be compiled under Java 1.1
Thu May 16 11:18:16 2002 PDT suhler

create: docs/packages/sunlabs.brazil.contrib.package.html, docs/scripts/protect_code.tcl, docs/scripts/label.tcl, .deleted_files/.deleted/orgtool/index.html, .deleted_files/.deleted/orgtool/simple.html
update: Makefile, docs/scripts/history.tcl, docs/html/samples.html, sunlabs/DateTemplate.java, sunlabs/ExpContentTemplate.java, sunlabs/DigestTemplate.java, samples/simple/bean.html
delete: .deleted/Chars.java, .deleted/Token.java, .deleted/PJwrapper.java, docs/html/overview.html, .deleted/CountTemplate.java, tests/config.rewrite, config, config.easton, .deleted/assemble-doc/Makefile, .deleted/assemble-doc/README, .deleted/assemble-doc/pkgs-sts, .deleted/assemble-doc/overview.html, .deleted/assemble-doc/package-list, .deleted/assemble-doc/pkgs-server, .deleted/assemble-doc/srcs-sts, .deleted/assemble-doc/srcs-applets, .deleted/assemble-doc/srcs-server, .deleted/assemble-doc/extra/images/brazilicon.gif, .deleted/assemble-doc/extra/build.html, .deleted/assemble-doc/extra/tutorial.html, .deleted/assemble-doc/extra/javasource.html, .deleted/assemble-doc/extra/tutorial-frame.html, .deleted/assemble-doc/extra/tutorial/GenericX10Handler.html, .deleted/assemble-doc/extra/tutorial/GenericX10Handler.java, .deleted/assemble-doc/extra/tutorial/Makefile.txt, .deleted/assemble-doc/extra/tutorial/README, .deleted/assemble-doc/extra/tutorial/TwoWayHandler.html, .deleted/assemble-doc/extra/tutorial/TwoWayHandler.java, .deleted/assemble-doc/extra/tutorial/config.txt, .deleted/assemble-doc/extra/tutorial/control.html, .deleted/assemble-doc/extra/tutorial/pull.class, .deleted/assemble-doc/extra/tutorial/pull.html, .deleted/assemble-doc/extra/tutorial/pull.java, .deleted/assemble-doc/bin/README, .deleted/neil/Makefile, .deleted/neil/README, .deleted/neil/NeilPushHandler.java, .deleted/neil/config, .deleted/neil/push.html, pJama/Makefile, pJama/README, pJama/config.broken, pJama/config, pJama/index.html, pJama/default.cfg, pJama/run, pJama/Main.java, pJama/SessionManager.java, pJama/broken.html, services/asp/oleupi/server/doc/push.html, services/asp/oleupi/server/comole-src/COMAuthInfo.java, services/asp/oleupi/server/comole-src/COMBSTR.java, services/asp/oleupi/server/comole-src/COMExcepInfo.java, services/asp/oleupi/server/comole-src/COMClassObject.java, services/asp/oleupi/server/comole-src/COMDispParams.java, services/asp/oleupi/server/comole-src/COMException.java, services/asp/oleupi/server/comole-src/COMHResult.java, services/asp/oleupi/server/comole-src/COMIDispatch.java, services/asp/oleupi/server/comole-src/COMIMultiQI.java, services/asp/oleupi/server/comole-src/COMIUnknown.java, services/asp/oleupi/server/comole-src/COMSafeArray.java, services/asp/oleupi/server/comole-src/COMVariant.java, services/asp/oleupi/server/comole-src/GUID.java, services/asp/oleupi/server/DocToPDF.java, services/asp/oleupi/server/comco.jar, services/asp/oleupi/server/MSWordHandler.java, services/asp/oleupi/server/config.oleword, services/asp/oleupi/server/Makefile, services/signjar/Makefile, services/signjar/SignJarHandler.java, services/ci/doc/frcontent.html, services/ci/doc/index.html, services/ci/doc/main.html, services/ci/doc/run/index.html, services/ci/doc/run/runindexer.html, services/ci/doc/run/stopindexserver.html, services/ci/doc/run/runindexerstatus.html, services/ci/config, services/ci/Makefile, services/ci/RunProgramsHandler.java, services/ci/startindexer, services/util/ParseMultiPartForm.java, services/util/Makefile, services/pkcs/PKCSHandler.java, services/pkcs/SSLServer.java, services/pkcs/Makefile, services/pkcs/config, services/pkcs/config.test, services/pkcs/doc/q1, services/pkcs/doc/PKCSHandler.java.html, services/pkcs/doc/index.html, services/pkcs/doc/overview.html, services/pkcs/doc/p11src.zip, services/pkcs/doc/spec.html, services/pkcs/doc/JavaCardRSA.java.html, pcsdemo/dist/install.htm, pcsdemo/dist/brazilall.iap, pcsdemo/dist/solaris/configure, pcsdemo/dist/solaris/setpcsport, pcsdemo/dist/solaris/chmodtty, pcsdemo/dist/docs/brazilintro.txt, pcsdemo/dist/docs/README.txt, pcsdemo/dist/docs/installdirections.txt, pcsdemo/dist/images/brazilinstall.gif, pcsdemo/dist/images/brazilallclient.gif, pcsdemo/dist/images/brazilallserver.gif, pcsdemo/killpcs, pcsdemo/s, pcsdemo/Makefile.pcsdemo, pcsdemo/c, pcsdemo/config.demo-devices-client.darwin, pcsdemo/config.demo-server, pcsdemo/config.demo-devices-server, pcsdemo/config.smartcards, pcsdemo/runpcs, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-client, pcsdemo/Makefile, pcsdemo/doc/demo/commerce/index.form, pcsdemo/doc/demo/commerce/pay.html, pcsdemo/doc/demo/commerce/pay.form, pcsdemo/doc/demo/commerce/ship.html, pcsdemo/doc/demo/commerce/shipupdate.form, pcsdemo/doc/demo/commerce/receipt.form, pcsdemo/doc/demo/atm/README, pcsdemo/doc/demo/atm/index.html, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/c1/accounts.txt, pcsdemo/doc/demo/download/frloader.html, pcsdemo/doc/demo/download/loader.html, pcsdemo/doc/demo/download/loaderfinalstatus.html, pcsdemo/doc/demo/download/loaderstatus.html, pcsdemo/doc/demo/javahome.html, pcsdemo/doc/demo/BrazilWorkingPrototypes.html, pcsdemo/doc/demo/main.form, pcsdemo/doc/demo/Ubiquitous.html, pcsdemo/doc/demo/bannerrightatr.html, pcsdemo/doc/demo/bannerrightother.html, pcsdemo/doc/demo/frbannerright.html, pcsdemo/doc/demo/frcontent.form, pcsdemo/doc/demo/index.html, pcsdemo/doc/demo/main.html, pcsdemo/doc/demo/supplierlogin.form, pcsdemo/doc/demo/update.form, pcsdemo/doc/demo/DEMO.html, pcsdemo/doc/demo/frbannerleft.form, pcsdemo/doc/demo/frbanner.html, pcsdemo/doc/demo/JINI/lib/reggie-dl.jar, pcsdemo/doc/demo/JINI/frindex.html, pcsdemo/doc/demo/JINI/result.html, pcsdemo/doc/demo/JINI/jiniintro.html, pcsdemo/doc/demo/JINI/index.html, pcsdemo/doc/demo/slb/access.html, pcsdemo/doc/demo/c2/accounts.txt, pcsdemo/doc/demo/personalize/result.html, pcsdemo/doc/demo/personalize/webcard.html, pcsdemo/doc/demo/personalize/index.html, pcsdemo/doc/demo/pin/changepin.html, pcsdemo/doc/demo/pin/frchangepin.html, pcsdemo/doc/demo/pin/frnewpin.html, pcsdemo/doc/demo/pin/newpin.html, pcsdemo/doc/demo/pin/result.html, pcsdemo/doc/demo/cyberflex/access.html, pcsdemo/doc/demo/cyberflex/fraccess.html, pcsdemo/doc/demo/cyberflex/apduresult.html, pcsdemo/doc/demo/test/echotest.html, pcsdemo/doc/demo/test/generic.html, pcsdemo/doc/demo/test/frccapdus.html, pcsdemo/doc/demo/test/frechotest.html, pcsdemo/doc/demo/test/frgeneric.html, pcsdemo/doc/demo/test/result.html, pcsdemo/doc/demo/test/ccapdus.html, pcsdemo/doc/demo/test/sts/decrypt.html, pcsdemo/doc/demo/test/sts/encrypt.html, pcsdemo/doc/demo/test/sts/frsignature.html, pcsdemo/doc/demo/test/sts/generateresult.html, pcsdemo/doc/demo/test/sts/validateresult.html, pcsdemo/doc/demo/test/sts/validateresultlocal.html, pcsdemo/doc/demo/test/sts/generatesignature.html, pcsdemo/doc/demo/test/sts/validatesignature.html, pcsdemo/doc/demo/test/sts/validatesignaturelocal.html, pcsdemo/doc/demo/test/sts/decryptresult.html, pcsdemo/doc/demo/test/sts/encryptresult.html, pcsdemo/doc/demo/test/sts/frciphers.html, pcsdemo/doc/demo/test/rsa/frindexrsa.html, pcsdemo/doc/demo/test/rsa/frrsa.html, pcsdemo/doc/demo/test/rsa/rsa.html, pcsdemo/doc/demo/test/rsa/set.html, pcsdemo/doc/applets/README, pcsdemo/doc/applets/Makefile, pcsdemo/doc/applets/x509.raw, pcsdemo/doc/applets/x509.cacert, pcsdemo/doc/applets/x509.cacert.p12, pcsdemo/doc/cardlets/dallas/CorporateCard.jib33, pcsdemo/doc/cardlets/dallas/CorporateCard.jibjavaone, pcsdemo/doc/cardlets/schlumberger/Echo.bin, pcsdemo/doc/cardlets/schlumberger/CorporateCard.bin, pcsdemo/doc/cardlets/schlumberger/CorporateCard.bin.beforeAccess.for.open16, pcsdemo/doc/cardlets/CreateDNL.java, pcsdemo/doc/cardlets/Makefile, pcsdemo/doc/images/about.jpg, pcsdemo/doc/images/bank.jpg, pcsdemo/doc/images/bye.jpg, pcsdemo/doc/images/error.jpg, pcsdemo/doc/images/devbye.jpg, pcsdemo/doc/images/devcorner.jpg, pcsdemo/doc/images/deverr.jpg, pcsdemo/doc/images/devinsert.jpg, pcsdemo/doc/images/devpin.jpg, pcsdemo/doc/images/Java.gif, pcsdemo/doc/images/insert.gif, pcsdemo/doc/images/sneterror.jpg, pcsdemo/doc/images/splash-small.gif, pcsdemo/doc/images/insert.gif.old, pcsdemo/doc/images/javalogo.gif, pcsdemo/doc/images/partner.jpg, pcsdemo/doc/images/passwd.gif, pcsdemo/doc/images/passwd.gifold, pcsdemo/doc/images/pure_java_logo.gif, pcsdemo/doc/images/sun-webserver1.gif, pcsdemo/doc/images/sun.gif, pcsdemo/doc/images/sun2.gif, pcsdemo/doc/images/sun3.gif, pcsdemo/doc/images/sunlogo.gif, pcsdemo/doc/images/supplierbye.jpg, pcsdemo/doc/images/usa.gif, pcsdemo/doc/images/visaactivationbye.jpg, pcsdemo/doc/images/wc3.gif, pcsdemo/doc/images/whats-hot.gif, pcsdemo/doc/images/homepg3.gif, pcsdemo/doc/images/paid.gif, pcsdemo/doc/images/sun-new-header.gif, pcsdemo/doc/supplier/login.html, pcsdemo/doc/supplier/roles, pcsdemo/doc/supplier/exit/bye.html, pcsdemo/doc/supplier/solectron/Solectron-001-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-001-SL.html, pcsdemo/doc/supplier/solectron/Solectron-001_200_201-SL.html, pcsdemo/doc/supplier/solectron/Solectron-200-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-200-SL.html, pcsdemo/doc/supplier/solectron/Solectron-201-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-201-SL.html, pcsdemo/doc/supplier/solectron/Solectron.html, pcsdemo/doc/supplier/solectron/Solectron_Barno.html, pcsdemo/doc/supplier/solectron/about-inbrief.html, pcsdemo/doc/supplier/solectron/index.html, pcsdemo/doc/supplier/solectron/logo-ani0.gif, pcsdemo/doc/supplier/solectron/selectron.html, pcsdemo/doc/supplier/solectron/sl_dt.html, pcsdemo/doc/supplier/solectron/tbar-logo.gif, pcsdemo/doc/supplier/solectron/tbar-about.gif, pcsdemo/doc/supplier/solectron/Solectron-001_200_201-SL.csv, pcsdemo/doc/js/managecard.js, pcsdemo/doc/oc/index.html, pcsdemo/doc/oc/octest.html, pcsdemo/doc/oc/ocmain.html, pcsdemo/doc/oc/ocleft.html, pcsdemo/doc/oc/octestupper.html, pcsdemo/doc/Overview.jpg, pcsdemo/doc/whatiscardserver.html, pcsdemo/doc/signjarn, pcsdemo/doc/already.html, pcsdemo/doc/index.html, pcsdemo/doc/configure.form, pcsdemo/doc/signjarn.bat, pcsdemo/doc/welcome.html, pcsdemo/doc/certs/digiorgio.cac, pcsdemo/doc/certs/mack.cac, pcsdemo/doc/cv/login.html, pcsdemo/doc/cv/roles, pcsdemo/doc/cv/exit/bye.html, pcsdemo/doc/jini/lib/reggie-dl.jar, .samples-old/old/Palm/nametool/config.nametool, .samples-old/old/Palm/nametool/index.html, .samples-old/old/Palm/nametool/search.html, .samples-old/old/Palm/pqa/config.pqa, .samples-old/old/Palm/pqa/index.html, .samples-old/old/Palm/concept/concept.tcl, .samples-old/old/Palm/concept/file.tcl, .samples-old/old/Palm/concept/config.concept, .samples-old/old/Palm/concept/index.html, .samples-old/old/Palm/run, .samples-old/old/CookieProxy/register/index.html, .samples-old/old/CookieProxy/register/register.html, .samples-old/old/CookieProxy/ad.gif, .samples-old/old/CookieProxy/blockfile, .samples-old/old/CookieProxy/config.cookie, .samples-old/old/CookieProxy/cookies.html, .samples-old/old/CookieProxy/history.html, .samples-old/old/CookieProxy/index.html, .samples-old/old/portal/configure/preferences/default.cfg, .samples-old/old/portal/configure/README, .samples-old/old/portal/configure/set.html, .samples-old/old/portal/configure/default.template, .samples-old/old/portal/configure/print.template, .samples-old/old/portal/configure/configure.html, .samples-old/old/portal/Makefile, .samples-old/old/portal/README, .samples-old/old/portal/config, .samples-old/old/misc/sql.cfg, .samples-old/old/misc/sql.html, .samples-old/old/ldap/config.ldap, .samples-old/old/ldap/data.html, .samples-old/old/ldap/employee.html, .samples-old/old/ldap/index.html, .samples-old/old/ldap/manager.html, .samples-old/old/ldap/orgtool.html, .samples-old/old/ldap/reports.html, .samples-old/old/ldap/results.html, .samples-old/old/ldap/search.html, .samples-old/old/ldap/setup.tcl, .samples-old/old/ldap/blank.xbm, .samples-old/old/ldap/close.xbm, .samples-old/old/ldap/last.xbm, .samples-old/old/ldap/line.xbm, .samples-old/old/ldap/more.xbm, .samples-old/old/ldap/open.xbm, .samples-old/old/ldap/up.xbm, .samples-old/old/ldap/vert.xbm, .samples-old/old/orgtool/iplanet/Makefile, .samples-old/old/orgtool/iplanet/config.orgtool, .samples-old/old/orgtool/iplanet/FakeASessionHandler.java, .samples-old/old/orgtool/iplanet/CacheTemplate.java, .samples-old/old/orgtool/iplanet/docs/reports.html, .samples-old/old/orgtool/iplanet/docs/results.html, .samples-old/old/orgtool/iplanet/docs/search.html, .samples-old/old/orgtool/iplanet/docs/setup.tcl, .samples-old/old/orgtool/iplanet/docs/up.xbm, .samples-old/old/orgtool/iplanet/docs/open.xbm, .samples-old/old/orgtool/iplanet/docs/manager.html, .samples-old/old/orgtool/iplanet/docs/index.html, .samples-old/old/orgtool/iplanet/docs/employee.html, .samples-old/old/orgtool/iplanet/docs/data.html, .samples-old/old/orgtool/iplanet/docs/right.xbm, .samples-old/old/orgtool/iplanet/docs/clear.html, .samples-old/test-cal/config.date, .samples-old/test-cal/extract.html, .samples-old/test-cal/all.html, .samples-old/test-cal/cal.html, .samples-old/test-cal/README, .samples-old/im/bottom.html, .samples-old/im/config, .samples-old/im/index.html, .samples-old/im/top.html, .samples-old/im/README, .samples-old/im/process.html, .samples-old/im/stats.html, .samples-old/im/prefs.html, dist/corehandlers.iap, email/body.html, email/compose.html, email/folders.html, email/goodbye.html, email/headers.html, email/index.html, email/brazilicon.gif, email/folder.gif, email/mailbox.gif, email/config.email
first pass at workspace cleanup.  "delete" lots of old cruft
Wed May 15 11:04:34 2002 PDT suhler

update: contrib/ApplyXslServerTemplate.java
trim() script sent to transformer; it doesn't handle extra whitespace well
Tue May 14 22:22:57 2002 PDT suhler

create: contrib/LDAPTemplate.java
update: contrib/Makefile
Rinaldo's version of LDAPTemplate.
Its here (and not replacing the original one) because it needs
more documentation and cleanup.
Tue May 14 15:50:13 2002 PDT suhler

create: docs/scripts/history.tcl
update: docs/scripts/README
added "history.tcl" to extract the CodeManager history as a web page
Tue May 14 11:43:39 2002 PDT suhler

create: contrib/README, contrib/Makefile, contrib/ApplyXslServerTemplate.java
Started a "contrib" directory"
- started it off with Rinaldos "applyxslt" template
- Still needs work
Mon May 13 11:50:20 2002 PDT suhler

create: samples/simple/config.sort, samples/simple/sort.html
update: handlers/templates/BSLTemplate.java, samples/simple/README
Fixed sorting to look for numeric option when using the "glob" or "match" options.
Added "sample" config to test various sorting options
Mon May 13 10:07:57 2002 PDT suhler

update: handlers/templates/BSLTemplate.java
Fix <foreach glob=> to use the propertyNames(glob) of propertiesList
Fri May 10 15:19:16 2002 PDT suhler

create: util/Guid.java
update: util/Makefile, filter/UrlSessionFilter.java, filter/SessionFilter.java, handlers/CookieSessionHandler.java, handlers/SunNetAuthHandler.java
The "unique" values generated as session tokens aren't unique enough.
(I've had reports of different user's getting assigned to the same
session).
 
Solution:
- create a "GUID" generator everyone can use, and make the default
  implementation more unique than before
- Provide a mechanism to install new GUID generators at deployment time
- change all GUID generators to use the common implementation
Tue May 7 07:06:44 2002 PDT drach

update: server/Request.java, velocity/VelocityFilter.java
Enhance documentation for VelocityFilter.  Add capability for read
only access to public fields of Server and Request by the Velocity
template.
Fri May 3 19:59:36 2002 PDT suhler

update: samples/simple/config.vote, samples/template/config.persist
- doc changes
- typo fixes (the template example works again, with saveing state)
Fri May 3 16:55:52 2002 PDT suhler

create: samples/template/config.persist
update: samples/template/README
Added optional configuration to demonstrate how to use the Properties
CacheManager and the PollHandler to periodically save all session
state to disk
Fri May 3 11:47:12 2002 PDT suhler

create: samples/simple/config.vote, samples/simple/vote.html
update: samples/simple/README
Added new sample that demonstrates:
- how to build a "poll" site that allows users to vote
- how to build an entire site out of a single web page
Thu May 2 14:59:14 2002 PDT drach

update: velocity/Makefile, velocity/VelocityFilter.java, docs/packages/sunlabs.brazil.velocity.package.html
Added more extensive documentation.  Manage the BeanShell interpreter
by session.  Look for the script in the filesystem first, then the
classpath.  Pass the script through Format.subst before handing it to
the interpreter.
Thu May 2 13:09:28 2002 PDT drach

update: properties/version1.1/PropertiesList.java, properties/version1.2/PropertiesList.java, properties/BasePropertiesList.java, handlers/ExprPropsHandler.java
Update/fix documentation.  Hopefully remove EmailTemplate.test for good.
Thu May 2 11:15:48 2002 PDT suhler

update: handlers/CgiHandler.java
Tested auto-cd detection (it works); updated docs
Thu May 2 08:48:55 2002 PDT drach

update: handlers/CgiHandler.java
Choose Runtime.exec method at run time.
Wed May 1 11:31:19 2002 PDT suhler

update: handlers/PropertiesHandler.java, handlers/MapPage.java, handlers/HtmlRewriter.java, handlers/LogHandler.java, handlers/SMTPHandler.java, handlers/MatchString.java, handlers/ExprPropsHandler.java, handlers/templates/FormClientTemplate.java, handlers/templates/UrlNavBarTemplate.java, handlers/templates/ChangedTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/Template.java, handlers/templates/TemplateRunner.java, handlers/templates/NoImageTemplate.java, handlers/templates/RedirectTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/TemplateInterface.java, handlers/templates/MultipartSetTemplate.java
fix SCCS version strings
Wed May 1 11:06:52 2002 PDT drach

update: handlers/ExprPropsHandler.java
Add SCCS keywords back in
Wed May 1 10:32:53 2002 PDT suhler

update: ssl/Makefile
The ADDJARS macro got lost
Wed May 1 10:29:48 2002 PDT suhler

update: handlers/NotFoundHandler.java, handlers/ExprPropsHandler.java
The version of ExprPropsHandler I copied from
~drach/brazil/ws/handlers a few minutes ago (this one compiles)
Wed May 1 09:34:44 2002 PDT drach

update: handlers/ExprPropsHandler.java
Revert to old, stable ExprPropsHandler
Wed May 1 08:55:01 2002 PDT drach

update: properties/BasePropertiesList.java
Changed private methods to protected.
Wed May 1 08:50:29 2002 PDT drach

update: handlers/Makefile, properties/Makefile
rename: properties/ExprProps.java -> handlers/ExprProps.java
Move ExprProps from properties to handler, but leave in properties package.
Mon Apr 29 17:04:56 2002 PDT suhler

update: request/HttpRequest.java
added "public static boolean displayAllHeaders"
to enable http header debugging during development.
 
This can be enable from a script, as in:
<tcl>java::files sunlabs.brazil.util.http.HttpRequest displayAllHeaders true </tcl>
Mon Apr 29 14:16:42 2002 PDT drach

create: properties/version1.1/PropertiesList.java, properties/version1.2/PropertiesList.java
update: Makefile, tests/Makefile, server/Makefile, properties/Makefile
The build should be fixed again.  Several Makefiles changed to cause
properties to be built after util and before server.  This broke
the server "minimum" build.  Add a target to strip unnecessary files
out.  Added "versioned" PropertiesList classes.
Sat Apr 27 12:44:34 2002 PDT drach

update: handlers/ExprPropsHandler.java
rename: properties/ExprPropsHandler.java -> handlers/ExprPropsHandler.java, properties/PropertiesList.java -> properties/BasePropertiesList.java
Move some files around.  Also pass request.props to ExprProps rather
than request in ExprPropsHandler.
Fri Apr 26 15:45:30 2002 PDT suhler

create: sunlabs/ResourceLimitHandler.java
update: sunlabs/Makefile
I was at an arc review today, when I heard that the "resource
monitoring" capability of an (unnamed) web server-like product was going
to be pushed-back to the next release, because there wasn't enough time
to figure out how to do it.
 
Out of curiosity, I wanted to see if I could implement this functionallity
in Brazil in less time than it took to discuss it.
 
So, here it is.
Thu Apr 25 14:35:11 2002 PDT suhler

update: request/HttpRequest.java, handlers/Makefile, handlers/DirectoryHandler.java, handlers/templates/FormClientTemplate.java, handlers/templates/HighlightTemplate.java, handlers/templates/DirectoryTemplate.java, handlers/templates/RedirectTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/DeCommentTemplate.java, handlers/templates/AllowGtTemplate.java, handlers/templates/QueueTemplate.java
delete: handlers/templates/CountTemplate.java
-documentation fixes
-remove CountTemplate
Thu Apr 25 14:11:37 2002 PDT suhler

update: filter/ReplaceFilter.java, handlers/SMTPHandler.java
Replacefilter: looks for "Template" in resource if not found in file system
SMTPHandler: when used as a template, doesn't verify server connection on each page
Thu Apr 25 10:32:33 2002 PDT suhler

update: samples/README, samples/simple/README
rename: samples/configs/README -> samples/simple/README, samples/configs/form.html -> samples/simple/form.html, samples/configs/config.form -> samples/simple/config.form, samples/configs/config.proxy -> samples/simple/config.proxy, samples/configs/proxy.html -> samples/simple/proxy.html, samples/configs/bean.html -> samples/simple/bean.html, samples/configs/config.builtin -> samples/simple/config.builtin, samples/configs/config.cgi -> samples/simple/config.cgi, samples/configs/config.bean -> samples/simple/config.bean, samples/configs/calendar.html -> samples/simple/calendar.html, samples/configs/config.calendar -> samples/simple/config.calendar, samples/configs/config.extract -> samples/simple/config.extract, samples/configs/sql.html -> samples/simple/sql.html, samples/configs/config.resource -> samples/simple/config.resource, samples/configs/config.sql -> samples/simple/config.sql, samples/configs/extract.html -> samples/simple/extract.html, samples/configs/resource.html -> samples/simple/resource.html
directory rename
Wed Apr 24 14:21:45 2002 PDT suhler

create: docs/html/bsl.html, docs/html/build.html, docs/html/intro.html, docs/html/javasource.html, docs/html/overview.html, docs/html/samples.html, docs/html/tutorial-frame.html, docs/html/tutorial.html, docs/html/use-guide.html
The "missing" extra html docs that go with the javadocs
Feel free to update them
Wed Apr 24 14:21:04 2002 PDT suhler

create: docs/html/todo.html
TODO list of noever completed (or started) projects for Brazil
Wed Apr 24 13:41:35 2002 PDT suhler

update: filter/TemplateFilter.java, handlers/RestrictClientHandler.java, handlers/templates/TemplateHandler.java
TemplateFilter.java: defaults to "text/" (was "text/html")
RestrictClientHandler.java: changed log reporting level WARNING -> LOG
TemplateHandler.java: Checks for mime type starting with "text/"
Wed Apr 24 11:14:18 2002 PDT suhler

update: sunlabs/DigestTemplate.java
lost the "public" in front of "public void tag_digest" ..
Tue Apr 23 17:54:54 2002 PDT suhler

update: docs/scripts/gen-apidocs, docs/scripts/props.tcl
auxilliary html files now get added to javadoc output
The following files are now used to generate the javadoc output
- all the javadoc comments in the sources
- overview.html
- html/*.html (extra html file)
- packages/*.html (package documentation files)
Tue Apr 23 16:43:55 2002 PDT suhler

create: docs/images/brazilicon.gif, docs/scripts/gen-apidocs, docs/scripts/README, docs/scripts/props.tcl, docs/scripts/props2.tcl, docs/scripts/jImport, docs/README, docs/overview.html, docs/html/README, docs/package-lists/servlet/package-list, docs/package-lists/activation/package-list, docs/package-lists/jdk1.2/package-list, docs/package-lists/README
update: docs/scripts/explode.tcl
Stuff to generate the api docs
Tue Apr 23 14:56:56 2002 PDT suhler

rename: assemble-doc/bin/convert.tcl -> docs/scripts/convert.tcl, assemble-doc/bin/explode.tcl -> docs/scripts/explode.tcl, assemble-doc/bin/link-doc.tcl -> docs/scripts/link-doc.tcl, assemble-doc/bin/list_packages.tcl -> docs/scripts/list_packages.tcl
This stuff is obsolete.
after "rescuing" the helper scripts, this directory is going away.
The new version will be in the "docs" subdirectory, which will contain
both the procedure for building the javadocs as well as all additional documentation
that is added to the auto-generated stuff
Tue Apr 23 14:19:48 2002 PDT suhler

create: docs/packages/com.sun.server.package.html, docs/packages/link-doc.tcl, docs/packages/sunlabs.brazil.beanshell.package.html, docs/packages/sunlabs.brazil.email.package.html, docs/packages/sunlabs.brazil.filter.package.html, docs/packages/sunlabs.brazil.ldap.package.html, docs/packages/sunlabs.brazil.properties.package.html, docs/packages/sunlabs.brazil.proxy.package.html, docs/packages/sunlabs.brazil.python.package.html, docs/packages/sunlabs.brazil.servlet.package.html, docs/packages/sunlabs.brazil.session.package.html, docs/packages/sunlabs.brazil.sql.package.html, docs/packages/sunlabs.brazil.ssl.package.html, docs/packages/sunlabs.brazil.sunlabs.package.html, docs/packages/sunlabs.brazil.tcl.package.html, docs/packages/sunlabs.brazil.util.http.package.html, docs/packages/sunlabs.brazil.velocity.package.html
update: docs/packages/README, docs/packages/sunlabs.brazil.handler.package.html, docs/packages/sunlabs.brazil.server.package.html, docs/packages/sunlabs.brazil.template.package.html, docs/packages/sunlabs.brazil.util.package.html, docs/packages/tcl.lang.package.html, docs/packages/sunlabs.brazil.util.regexp.package.html
added package documentation files to the workspace.
The procedure for generating the api docs was never in the workspace;
its about to go there
Tue Apr 23 14:05:14 2002 PDT suhler

update: server/Request.java, tests/sunlabs.brazil.handler.BasicAuthHandler.test, tests/sunlabs.brazil.template.BSLTemplate.test
rename: tests/sunlabs.brazil.email.EmailTemplate.test -> tests/sunlabs.brazil.email.EmailTemplate.test-broken
- sync-up code with existing tests in preparation for "release"
- "removed" buggy Email tests (feel free to fix them guym if you like)
Mon Apr 22 17:45:45 2002 PDT suhler

create: .samples-old/test-cal/config.date, .samples-old/test-cal/extract.html, .samples-old/test-cal/all.html, .samples-old/test-cal/cal.html, .samples-old/test-cal/README, .samples-old/im/prefs.html
update: Makefile, explode/props.tcl
rename: .samples-old/old/im/bottom.html -> .samples-old/im/bottom.html, .samples-old/old/im/config -> .samples-old/im/config, .samples-old/old/im/index.html -> .samples-old/im/index.html, .samples-old/old/im/top.html -> .samples-old/im/top.html, .samples-old/old/im/README -> .samples-old/im/README, .samples-old/old/im/process.html -> .samples-old/im/process.html, .samples-old/old/im/stats.html -> .samples-old/im/stats.html
next pass at samples directory update
Mon Apr 22 17:33:23 2002 PDT suhler

create: samples/README
oops
Mon Apr 22 17:21:07 2002 PDT suhler

create: samples/configs/config.proxy, samples/configs/proxy.html, samples/configs/bean.html, samples/configs/config.builtin, samples/configs/config.cgi, samples/configs/config.bean, samples/configs/calendar.html, samples/configs/config.calendar, samples/configs/config.extract, samples/configs/sql.html, samples/configs/config.resource, samples/configs/config.sql, samples/configs/extract.html, samples/configs/resource.html
update: samples/email/README, samples/stock/config, samples/stock/README, samples/stock/config.stock, samples/stock/select.html, samples/stock/stock.html, samples/stock/value.html, samples/configs/README, samples/stock-basic/config, samples/stock-basic/README, testing/old/im/bottom.html, testing/old/im/config, testing/old/im/index.html, testing/old/im/top.html, testing/old/im/README, testing/old/im/process.html, testing/old/im/stats.html
rename: samples/Palm/nametool/config.nametool -> testing/old/Palm/nametool/config.nametool, samples/Palm/nametool/index.html -> testing/old/Palm/nametool/index.html, samples/Palm/nametool/search.html -> testing/old/Palm/nametool/search.html, samples/Palm/pqa/config.pqa -> testing/old/Palm/pqa/config.pqa, samples/Palm/pqa/index.html -> testing/old/Palm/pqa/index.html, samples/Palm/concept/concept.tcl -> testing/old/Palm/concept/concept.tcl, samples/Palm/concept/file.tcl -> testing/old/Palm/concept/file.tcl, samples/Palm/concept/config.concept -> testing/old/Palm/concept/config.concept, samples/Palm/concept/index.html -> testing/old/Palm/concept/index.html, samples/Palm/run -> testing/old/Palm/run, samples/CookieProxy/register/index.html -> testing/old/CookieProxy/register/index.html, samples/CookieProxy/register/register.html -> testing/old/CookieProxy/register/register.html, samples/CookieProxy/ad.gif -> testing/old/CookieProxy/ad.gif, samples/CookieProxy/blockfile -> testing/old/CookieProxy/blockfile, samples/CookieProxy/config.cookie -> testing/old/CookieProxy/config.cookie, samples/CookieProxy/cookies.html -> testing/old/CookieProxy/cookies.html, samples/CookieProxy/history.html -> testing/old/CookieProxy/history.html, samples/CookieProxy/index.html -> testing/old/CookieProxy/index.html, samples/portal/configure/preferences/default.cfg -> testing/old/portal/configure/preferences/default.cfg, samples/portal/configure/README -> testing/old/portal/configure/README, samples/portal/configure/set.html -> testing/old/portal/configure/set.html, samples/portal/configure/default.template -> testing/old/portal/configure/default.template, samples/portal/configure/print.template -> testing/old/portal/configure/print.template, samples/portal/configure/configure.html -> testing/old/portal/configure/configure.html, samples/portal/Makefile -> testing/old/portal/Makefile, samples/portal/README -> testing/old/portal/README, samples/portal/config -> testing/old/portal/config, samples/misc/sql.cfg -> testing/old/misc/sql.cfg, samples/misc/sql.html -> testing/old/misc/sql.html, samples/ldap/config.ldap -> testing/old/ldap/config.ldap, samples/ldap/data.html -> testing/old/ldap/data.html, samples/ldap/employee.html -> testing/old/ldap/employee.html, samples/ldap/index.html -> testing/old/ldap/index.html, samples/ldap/manager.html -> testing/old/ldap/manager.html, samples/ldap/orgtool.html -> testing/old/ldap/orgtool.html, samples/ldap/reports.html -> testing/old/ldap/reports.html, samples/ldap/results.html -> testing/old/ldap/results.html, samples/ldap/search.html -> testing/old/ldap/search.html, samples/ldap/setup.tcl -> testing/old/ldap/setup.tcl, samples/ldap/blank.xbm -> testing/old/ldap/blank.xbm, samples/ldap/close.xbm -> testing/old/ldap/close.xbm, samples/ldap/last.xbm -> testing/old/ldap/last.xbm, samples/ldap/line.xbm -> testing/old/ldap/line.xbm, samples/ldap/more.xbm -> testing/old/ldap/more.xbm, samples/ldap/open.xbm -> testing/old/ldap/open.xbm, samples/ldap/up.xbm -> testing/old/ldap/up.xbm, samples/ldap/vert.xbm -> testing/old/ldap/vert.xbm, samples/orgtool/iplanet/Makefile -> testing/old/orgtool/iplanet/Makefile, samples/orgtool/iplanet/config.orgtool -> testing/old/orgtool/iplanet/config.orgtool, samples/orgtool/iplanet/FakeASessionHandler.java -> testing/old/orgtool/iplanet/FakeASessionHandler.java, samples/orgtool/iplanet/CacheTemplate.java -> testing/old/orgtool/iplanet/CacheTemplate.java, samples/orgtool/iplanet/docs/reports.html -> testing/old/orgtool/iplanet/docs/reports.html, samples/orgtool/iplanet/docs/results.html -> testing/old/orgtool/iplanet/docs/results.html, samples/orgtool/iplanet/docs/search.html -> testing/old/orgtool/iplanet/docs/search.html, samples/orgtool/iplanet/docs/setup.tcl -> testing/old/orgtool/iplanet/docs/setup.tcl, samples/orgtool/iplanet/docs/up.xbm -> testing/old/orgtool/iplanet/docs/up.xbm, samples/orgtool/iplanet/docs/open.xbm -> testing/old/orgtool/iplanet/docs/open.xbm, samples/orgtool/iplanet/docs/manager.html -> testing/old/orgtool/iplanet/docs/manager.html, samples/orgtool/iplanet/docs/index.html -> testing/old/orgtool/iplanet/docs/index.html, samples/orgtool/iplanet/docs/employee.html -> testing/old/orgtool/iplanet/docs/employee.html, samples/orgtool/iplanet/docs/data.html -> testing/old/orgtool/iplanet/docs/data.html, samples/orgtool/iplanet/docs/right.xbm -> testing/old/orgtool/iplanet/docs/right.xbm, samples/orgtool/iplanet/docs/clear.html -> testing/old/orgtool/iplanet/docs/clear.html, samples/im/bottom.html -> testing/old/im/bottom.html, samples/im/config -> testing/old/im/config, samples/im/index.html -> testing/old/im/index.html, samples/im/top.html -> testing/old/im/top.html, samples/im/README -> testing/old/im/README, samples/im/process.html -> testing/old/im/process.html, samples/im/stats.html -> testing/old/im/stats.html
first pass at updateing the samples directory in preparation 
for the next last? Brazil release
Sun Apr 21 17:30:20 2002 PDT drach

update: ssl/Makefile, velocity/Makefile
Minor changes to allow building Brazil when not on local NFS network.
Fri Apr 19 15:39:12 2002 PDT drach

update: velocity/Makefile
Changed location of Velocity jar file
Fri Apr 19 15:26:33 2002 PDT drach

create: velocity/Makefile, velocity/VelocityFilter.java
update: Makefile
Added the Velocity template engine.  This is a first cut.  There is
no documentation yet.
Fri Apr 19 15:03:22 2002 PDT drach

update: server/Makefile, server/Main.java, servlet/BServletServerSocket.java
Removed Main's dependency on BServletServerSocket.java
Thu Apr 18 12:06:32 2002 PDT suhler

update: server/Makefile
added a temporary dependency on "servlet" so naws builds
Thu Apr 18 11:38:49 2002 PDT suhler

create: sunlabs/DigestTemplate.java
update: email/EmailTemplate.java, handlers/MultiHostHandler.java, handlers/PollHandler.java, handlers/templates/SetTemplate.java, handlers/templates/QueueTemplate.java, server/Request.java, server/Connection.java, ssl/SslHandler.java, sunlabs/Makefile, sunlabs/DateTemplate.java, util/http/HttpInputStream.java
lots of little cleanups:
- EmailTemplate: better failure diagnostics.  Added docs demonstrating
  additional (un-fixed) bugs
- MultiHostHandler - revert to previous behavior; glob matching was buggy
- PollHandler: allow ${...} in url names.  Permit additional target headers, 
  rationalize namespace interaction
- SetTemplate
  added "set" option to <get>: values can be converted and copied between
   namespaces
- QueueTemplate: added timestamps
- Request: added support in sendResponse() for head requests [might not
  be 100% yet]
- Connection: log-level changes: level "3" is more useful now
- SSl: added docs
- DateTemplate: doc fixes
- HttpInputStream: changed the semantics of copyTo() to better report the
  number of bytes read from the stream [this shouldn't break any existing uses]
- DigestTemplate: New [this should be an exprProps]
Tue Apr 2 17:51:46 2002 PDT drach

update: server/Main.java, servlet/BrazilServlet.java
Remove duplicate code from BrazilServlet and enhance Main.startServer
so BrazilServlet can use it.
Wed Mar 6 11:14:56 2002 PDT suhler

update: handlers/ChainSawHandler.java
Fixed output format as per Rinaldo's suggestions
Wed Mar 6 09:17:13 2002 PDT suhler

update: handlers/SMTPHandler.java
Bug fix.  When used as a template, <sendmail> was contacting the
server for each page (it doesn't anymore)
Wed Mar 6 09:06:31 2002 PDT suhler

update: email/EmailTemplate.java
Added better diagnostics.  Althought the race condition still exists
that causes sent mail to be lost, this "fix" at least allows the
user to be informed when the system malfunctions
Tue Mar 5 12:44:45 2002 PDT suhler

create: samples/im/bottom.html, samples/im/config, samples/im/index.html, samples/im/top.html, samples/im/README, samples/im/process.html, samples/im/stats.html, handlers/templates/QueueTemplate.java
update: handlers/Makefile, handlers/SimpleSessionHandler.java
Instant Messager client for Brazil example
- samples/im: The sample application
- QueueTemplate.java: the message Q template (should be in samples/im)
- SimpleSessionHandler.java: enhancements to permit multiple sessions/per user
Tue Feb 26 14:42:17 2002 PDT suhler

update: request/HttpRequest.java, handlers/SimpleSessionHandler.java
doc lint
Tue Feb 26 14:26:18 2002 PDT suhler

update: request/HttpRequest.java, handlers/PollHandler.java, handlers/SimpleSessionHandler.java
-added "addHeaders" convenience method for adding http headers from
properties objects (HttpRequest.java)
- added "namespace" property to PollHandler, making it distinct from "prepend"
- added "headers" property to pollHandler, allowing the addition of http headers
- rewrote the SimpleSessionHandler (hopefully) making it easier to use in
  applications such as robot or user-agent detection
Mon Feb 25 11:39:09 2002 PDT suhler

update: email/EmailTemplate.java
Log error on mail transmission failures (this is still a mess).
Mon Feb 25 08:59:06 2002 PDT suhler

update: handlers/CgiHandler.java
use "url.orig" instead of request.url if available to compute proper
environment variables.
Wed Feb 20 16:35:23 2002 PDT suhler

update: servlet/BrazilServlet.java
fix version skew wrt Server.java
Thu Feb 14 15:04:46 2002 PDT suhler

update: handlers/MultiHostHandler.java
fixed bug introduced by last Server.java putback (oops)
Thu Feb 14 15:03:59 2002 PDT suhler

create: beanshell/test.bsh, beanshell/BeanShellHandler.java
update: beanshell/Makefile
Added beanshellhandler
Tue Feb 12 09:18:34 2002 PDT suhler

update: server/Server.java
Bug fix: Server no longer dies quietly if it can't resolve the local
hostname.
Thu Feb 7 16:27:10 2002 PDT suhler

create: filter/MD5Filter.java
update: filter/Makefile
Added "MD5Filter" top add http digest header.
Large file transfers are being corrupted; this allows the
data integrity to be verified by the client.
Thu Feb 7 14:06:23 2002 PDT suhler

update: server/Request.java
sendResponse() now does the "right think" for HEAD requests.
(This is required by "smart" download clients that can fetch a
 large document in pieces using byte-range headers).
Wed Feb 6 13:25:02 2002 PDT drach

update: beanshell/BeanShellServerTemplate.java
Fix example so it displays correctly.
Tue Feb 5 11:42:16 2002 PDT suhler

update: handlers/RestrictClientHandler.java
Added a hostname based "deny" option.  This provides an easy way
of restricting access to portions of a site from "bad guys" with:
   xxx.deny=\\.(ir|iq|af|cu|ly|kp|sy|sd)$
[sigh!]
Mon Feb 4 14:35:14 2002 PDT suhler

create: handlers/templates/AllowGtTemplate.java
update: util/LexML.java, handlers/Makefile, handlers/UrlMapperHandler.java, handlers/templates/SetTemplate.java
REwrote the "allowGt" stuff:
- removed the functionallity from LexML; the behavior is now done
  via overriding findClose()
- Removes allowGt tag from SetTemplate (it doesn't belog there)
- Created AllowGtTemplate to demonstrate how to add new '>' functionality
 
Now "fixing" the "allowGt" behavior should be localized to the AllowGtTemplate
Tue Jan 29 15:08:44 2002 PDT suhler

update: tcl/TclFilter.java, tcl/TclRePollHandler.java, email/EmailTemplate.java, properties/ExprProps.java, properties/ExprPropsHandler.java, properties/PropertiesList.java, ssl/CertHandler.java
More comment updates for automatic documentation generation
Tue Jan 29 15:06:31 2002 PDT suhler

update: handlers/ConfigFileHandler.java, handlers/BasicAuthHandler.java, handlers/MatchString.java, handlers/SimpleSessionHandler.java, handlers/templates/ContentTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/MacroTemplate.java, handlers/templates/MultipartSetTemplate.java, filter/SessionFilter.java, filter/ExecFilter.java, session/PropertiesCacheManager.java
comment fixes for online document updates
Tue Jan 29 14:53:22 2002 PDT drach

update: beanshell/BeanShellServerTemplate.java
Add a simple example to the comments.
Tue Jan 29 14:17:00 2002 PDT suhler

update: change-log, Makefile
merge with beanshell
Tue Jan 29 10:09:29 2002 PDT suhler

update: util/LexML.java, handlers/templates/SetTemplate.java
Made the old behavior of >'s embedded in attributes the default; added
allowGt() [in LexML] to change the behavior on-the-fly.
 
Added <allowgt>...</allowgt> to the SetTemplate to turn on the behavior
in selected regions.  The following whould "work":
 <allowgt>
 <if name="${x > 4}"> ...
 </allowgt>
 <img src="foo.gif> ...
Mon Jan 28 14:43:43 2002 PDT drach

create: beanshell/BeanShellServerTemplate.java, beanshell/Makefile
update: Makefile, change-log
Added BeanShell template processing.
Wed Jan 23 11:50:08 2002 PDT suhler

update: util/LexML.java
Changed the default behavior of LexML to permit unescaped >'s inside
of quoted strings.
 - <set name=foo value="a > b && c > d">
   works as expected
 - <img src="foo.gif>
   which used to work, now breaks.
Both the new and old behaviors are supported.  I've set the
new behavior as the default (for now)  comments?
Fri Dec 7 14:26:45 2001 PDT suhler

update: handlers/templates/TemplateHandler.java
Bug fix:
Images were being delivered as text/html.
- replaced old prefix/suffix matching with MatchString
- Fixed directory and suffix checking so the TemplateHandler may
  be used by itself (bit-rot reduction)
Fri Dec 7 09:14:37 2001 PDT suhler

update: handlers/templates/SetTemplate.java, handlers/templates/IncludeTemplate.java
- fixed documentation in SetTemplate
- added proxy=host:port option to IncludeTemplate
Wed Nov 28 13:09:03 2001 PDT suhler

update: handlers/SMTPHandler.java, handlers/PollHandler.java, handlers/UrlMapperHandler.java, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/IncludeTemplate.java
- doc fixes for pdf file generation
- better docs for UrlMapperHandler
Sun Nov 18 20:23:15 2001 PDT suhler

create: sunlabs/ClockScan.java
update: sunlabs/Makefile, sunlabs/DateTemplate.java
Add date scanning (stolen from jacl) to the DateTemplate.
We need this to generate calendars using BSL for rinaldo
Sun Nov 18 17:27:05 2001 PDT suhler

update: ssl/SslHandler.java
added IAIK copyright notice
Fri Nov 16 14:19:43 2001 PDT suhler

update: handlers/templates/IncludeTemplate.java
added "name=xxx" to include template to direct the result of
an "include" to a property instead of directly inline
Fri Nov 16 13:48:50 2001 PDT suhler

create: filter/ExecFilter.java
update: filter/Makefile
Created "ExecFilter" to call an external program to filter content.
This is required for the FIA project demo to on-the-fly convert
images to a smaller size
Tue Nov 13 11:41:17 2001 PDT suhler

update: handlers/templates/SetTemplate.java, sunlabs/DateTemplate.java
- added <namespace ... load=xxx> and <namespace ... store=xx> to allow
  namespaces to be read/written from files on the server
- added <date ms=nnn> to format times specified in ms (as well as sec) so
  "timestamps" may be used for date arithmetic.
Fri Oct 19 11:13:09 2001 PDT suhler

update: handlers/AclSwitchHandler.java
Rinaldo found a bug - using props prefix instead of url prefix.
Fri Oct 19 09:21:19 2001 PDT suhler

update: samples/email/body.html, samples/email/compose.html, samples/email/headers.html, samples/email/index.html, samples/email/README, samples/email/filter.html, samples/email/menubar.html, samples/email/process.html, samples/email/welcome.html, samples/email/reply.html, samples/email/.deleted/error.html
delete: samples/email/error.html, samples/email/oops.html
- added print button
- changed from "onError" to inline error handling
- consistent with suff on pn17.eng
Tue Oct 16 16:02:51 2001 PDT suhler

update: util/Format.java, ssl/SslHandler.java, ssl/run-ssl, filter/ReFilter.java, email/EmailTemplate.java
Minor cleanups
Sat Oct 6 17:42:33 2001 PDT suhler

update: handlers/SimpleSessionHandler.java
Added options for pulling SessionID out of http headers.
(For the YOPY "thin client" demo)
Wed Oct 3 13:55:00 2001 PDT suhler

update: handlers/templates/TemplateRunner.java, handlers/templates/RewriteContext.java, email/EmailTemplate.java
* added "tag counter" to rewriteContext to aid in debugging
* <folder list...> may be called on an arbitrary directory.
  - make a cursory check for "validity" before returning a folder
  - return folders in a single property to alleviate performance issues
    when querying large directories
  - add "glob=" to gain acceptable performance (the "validity" check on
    each folder can be expensive)
 
* handleFatalError doesn't provide sufficient debugging info for tracking
  down problems
  - added "Exception" argument, to centralize error tracking 
  - Changed "errmsg" on most calls to be more useful
  - moved call to log() into method, to provide better diagnostics
 
* Modified getMessageObjects
  - moved "startmsg" and "msglimit" processing inside, allowing us to add
    new options (such as searching) in only on spot
  - Getting message info for a single message was (sometimes)
    returning an array to lots of message objects, then ignoring all but the
    first.
 
* Not fixed: no check for never-supplied default directory
Thu Sep 27 10:13:41 2001 PDT suhler

update: samples/email/body.html, samples/email/pref.html, samples/email/compose.html, samples/email/headers.html, samples/email/config, samples/email/colors.html, samples/email/error.html, samples/email/oops.html, samples/email/filter.html, samples/email/frameset.html, samples/email/menubar.html, samples/email/process.html, samples/email/msgwindow.html, samples/email/reply.html, samples/email/aliases.html, samples/email/search.html
delete: samples/email/headerMenu.html
Hopefully, this is that last set of revisions for "version 1"
Thu Sep 27 09:53:56 2001 PDT suhler

update: email/EmailTemplate.java
Temporary patches:
- handleFatalError now takes an Exception as a parameter, to permit better
  diagnosing of errors
- Several places are checked for "ReadOnlyFolderExceptions" to prevent
  bogus "lost connection to server" errors
- Code added to detect a refile into a bad folder from tossing a bogus
  "lost connection to mail server" error
 
* Many (if not all) of the "lost connection to mail server" messages
  are erroneous, and could be more accurately detected by examining the
  exceptions.
Tue Sep 25 17:36:14 2001 PDT suhler

update: handlers/GenericProxyHandler.java, handlers/templates/SetTemplate.java, handlers/templates/DeCommentTemplate.java
GenericProxyHandler:  Added config option to add target http headers
SetTemplate: added "imports" config option to auto-import namespaces
DeCommentTemplate.java: "really stupid typo broke this
Tue Sep 25 13:56:03 2001 PDT suhler

update: email/EmailTemplate.java
Forgot to check message array for null before fetching messages
Thu Sep 20 13:38:58 2001 PDT guym

update: tests/sunlabs.brazil.email.EmailTemplate.test, email/EmailTemplate.java
Fixed an off-by-one-error in EmailTemplate.java (prevmsgnum) and also fixed an incorrect result in the test suite for 
EmailTemplate.
Thu Sep 20 11:23:46 2001 PDT guym

update: email/EmailTemplate.java
Rewrote getMessageObjects() - should be clearer, easier to debug, and probably faster.
Wed Sep 19 15:23:06 2001 PDT suhler

update: email/EmailTemplate.java
- Temporary patches to get past message-window bug
- make a "filter" so we can get our SessionID from the SessionFilter
  (this "fixes" the broken attachments)
Mon Sep 17 15:40:52 2001 PDT suhler

update: util/LexML.java
documentation lint
Mon Sep 17 15:39:04 2001 PDT suhler

create: samples/email/pref-list.html, samples/email/aliases.html, samples/email/welcome.html
update: samples/email/body.html, samples/email/pref.html, samples/email/compose.html, samples/email/headers.html, samples/email/index.html, samples/email/config, samples/email/README, samples/email/config.pref, samples/email/colors.html, samples/email/oops.html, samples/email/filter-list.html, samples/email/filter.html, samples/email/frameset.html, samples/email/menubar.html, samples/email/process.html, samples/email/props.html, samples/email/reply.html, samples/email/search.html
rename: samples/email/save_state.html -> samples/email/checkpoint.html
delete: samples/email/bye.html, samples/email/folders.html, samples/email/goodbye.html
Another checkpoint.
Mon Sep 17 14:50:44 2001 PDT guym

create: tests/sunlabs.brazil.email.EmailTemplate.test
update: email/EmailTemplate.java, tests/Makefile
The EmailTemplate has been updated per code review comments and suggestions.  The Makefile for the test suite had to be modified to include the proper JAR files in classpath for the EmailTemplate.
A new test file for the EmailTemplate was built with basic functionality tests only. It is setup to use the test IMAP server on pn17.eng, which answers on port 144.  The test file is fully configurable via properties at the top of the file.
Thu Sep 13 09:30:19 2001 PDT suhler

update: handlers/templates/ContentTemplate.java
added extraction property "all" that contains the entire content.
Thu Sep 13 09:29:40 2001 PDT suhler

update: handlers/templates/Template.java
remove debugging left in inadvertantly
Thu Sep 13 09:28:52 2001 PDT suhler

update: server/Connection.java, server/Request.java, handlers/RePollHandler.java, handlers/templates/RewriteContext.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/MultipartSetTemplate.java, handlers/templates/TemplateTemplate.java, filter/PlainFilter.java, sunlabs/DateTemplate.java, ldap/LDAPTemplate.java
remove unneeded imports
Wed Sep 12 16:41:52 2001 PDT suhler

update: handlers/RestrictClientHandler.java
"match" was being used both for url prefixes and ip addresses (duh).
changed "match" to "restrict" for ip addresses
Mon Sep 10 14:03:16 2001 PDT suhler

update: handlers/templates/Template.java, handlers/templates/FormTemplate.java
Bug fix:
- Keep Template.debug() from emitting nested html comments (which don't work)
- <input value=$...}> should do the right thing this time.
Fri Sep 7 10:52:51 2001 PDT guym

update: email/EmailTemplate.java
Fixed a bug in the getnewheaders functionality, where the last old msg pointer was getting into an inconsistent state.
For the getnewheaders action, you no longer have to pass a 'startmsg' parameter.  That state is being kept internally in the Java code.
Mon Sep 3 22:37:27 2001 PDT suhler

update: samples/email/body.html, samples/email/pref.html, samples/email/headers.html, samples/email/config, samples/email/config.pref, samples/email/colors.html, samples/email/menubar.html, samples/email/msgwindow.html
- re-organized colors and preferences
- got separate message window to work again
- escapded <> properly in <set> tags
Mon Sep 3 20:35:56 2001 PDT suhler

update: util/Format.java, handlers/templates/FormTemplate.java
- bug fix: FormTemplate wasn't processing ${...} properly
- bug fix: Forma wasn't processing \r properly
Fri Aug 31 16:01:06 2001 PDT guym

update: email/EmailTemplate.java
Fixed implementation of refilemsg so that pending messages to refile are actually refiled before a folder action=purge or the selection of a new folder.
Thu Aug 30 15:35:35 2001 PDT guym

update: email/EmailTemplate.java
Added support for alternate ports in the <email> tag - the specification for an alternate port is now 'server:port' in the 'server' paramater of the email tag.  If the port is left off, the default IMAP port will be used.  Also fixed a very annoying bug
that was causing the email client to 'lose' subjects mysteriously.
Wed Aug 29 13:26:38 2001 PDT guym

update: email/EmailTemplate.java
Re-architected the refile msg capability for increased performance and made all performance measurement diagnostics print using the LOG_DIAGNOSTIC type of hr.request.log().
Wed Aug 29 10:42:18 2001 PDT suhler

update: change-log
Added more change entries.  "change-log" is still missing
stuff. "make diffs" from .../brazil/naws should provide a "hint"
as to what is still missing
Wed Aug 29 10:16:50 2001 PDT guym

update: email/EmailTemplate.java
Broke up performance monitoring so that we can see the time it takes to get message objects, prefetch the headers, and populate the return properties.
Wed Aug 29 08:58:14 2001 PDT suhler

update: handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java
- Changed <if ... any> to use the PropertiesList glob enumerator.
  (The <foreach glob> should be similarly modified)
- Added <get ... max=nnn> to limit the length of a value.
Tue Aug 28 21:16:16 2001 PDT suhler

update: server/Makefile
Server now depends on PropertiesList which depends on Glob, so
glob needs to be added to the "required by server" list.
 
So much for building a "small" server these days.  Oh well..
Tue Aug 28 21:06:35 2001 PDT suhler

create: samples/email/bye.html, samples/email/colors.html, samples/email/debug.html, samples/email/error.html, samples/email/filter-list.html, samples/email/filter.html, samples/email/frameset.html, samples/email/headerMenu.html, samples/email/kill_filters.html, samples/email/menubar.html, samples/email/msgwindow.html, samples/email/oops.html, samples/email/process.html, samples/email/props.html, samples/email/reply.html, samples/email/save_state.html, samples/email/search.html, samples/email/timeout.html
update: samples/email/body.html, samples/email/pref.html, samples/email/compose.html, samples/email/headers.html, samples/email/index.html, samples/email/config, samples/email/run, samples/email/README, samples/email/config.pref
Snapshot of the Brazil email reader-sender.
All basic functionality is complete:
reading email with mime attachments
sending email with mime attachments
automatic "filtering" of incoming email
uploading/downloding email filters
 
The GUI still needs lots of work:
- dynamic stylesheets to select colors and highlighting
- re-layout of the preferences
- re-layout of the menubar
 
The key performance issue is refiling messages (~2 seconds/message -
a big deal when you have 1000's of email messages).
Tue Aug 28 21:00:23 2001 PDT suhler

create: handlers/templates/DeCommentTemplate.java, filter/ReFilter.java
update: handlers/Makefile, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/FormTemplate.java, filter/Makefile, filter/FilterHandler.java, tests/sunlabs.brazil.template.BSLTemplate.test, tests/sunlabs.brazil.util.Format.test
- add DeCommentTemplate - strips comments out of html files
- add <if name=[glob pattern] any> ... </if> to see if any propery
  exists that matches a glob pattern
- add ReFilter - processes text-like content through a regsub
- add/fix <namespace name=...> ... </namespace> to SetTemplate.
  This makes it easier to delete entire namespaces
- Format.subst now maps \l\g\a to <>& to make it easier to include
  "funny" characters in values
- FormTemplate now processes value=${..} constructs if the "normal"
  behavior would leave the value un-set
- doc changes to FilterHandler
 
I needed this stuff to make the email reader more rational
Mon Aug 27 18:59:50 2001 PDT suhler

update: handlers/templates/SetTemplate.java
add "clear" option to import to clear a namespace
Mon Aug 27 17:05:38 2001 PDT guym

update: email/EmailTemplate.java
Fixed a problem with onError handling when no connHandle was found
Mon Aug 27 12:00:42 2001 PDT guym

update: handlers/HtmlRewriter.java, email/config.email, email/compose.html, email/EmailTemplate.java
First round of changes to support attachments in the email compose functionality.
Wed Aug 22 16:24:47 2001 PDT drach

update: server/Request.java, properties/PropertiesList.java
Add PropertiesList documentation to Request.  Change some methods in
PropertiesList so they correspond to the new documentation in Request. ;-)
Wed Aug 22 14:48:33 2001 PDT drach

update: properties/ExprPropsHandler.java, properties/PropertiesList.java
Added comments to PropertiesList.  Changed the implementation of a couple
methods.  Changed the signature of one method -- that's why ExprPropsHandler
changed also.
Tue Aug 21 12:22:21 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Added additional javadoc documentation for the <sendmail> tag (handling attachments) and also now correctly keep track locally of user authentication state in EmailTemplate.java
Tue Aug 21 11:40:31 2001 PDT suhler

create: samples/configs/README, samples/configs/form.html, samples/configs/config.form
space for simple cofig files that work with a single
html file/template to demonstrate the operation of a single handler or template
Tue Aug 21 11:27:55 2001 PDT suhler

update: change-log, tests/sunlabs.brazil.server.Server.test, server/Handler.java, server/Request.java, server/Server.java, server/Main.java, handlers/templates/MultipartSetTemplate.java
fixed bug in MultipartSetTemplate.java, added limit on the
max size for form data
Mon Aug 20 20:42:32 2001 PDT suhler

create: handlers/templates/MultipartSetTemplate.java
update: handlers/Makefile, util/Base64.java, change-log
added MultipartSetTemplate, a sub-class of the SetTempalte that
processes form/multipart data and places the results into
the request props, optionally base64 encoding binary files
Fri Aug 17 17:24:47 2001 PDT drach

create: tests/sunlabs.brazil.properties.ExprProps.test
update: util/Calculator.java, properties/ExprProps.java
ExprProps was using a cached version of request.props that it acquired
at construction time, so variables stored by <foreach> weren't found.
The solution is to add a new method to Calculator that allows one to
use a symbol table for duration of calculation, and to have ExprProps
give the most recent request.props to Calculator on every calculation.
Fri Aug 17 16:34:42 2001 PDT suhler

update: tests/defs
bug in "template"; was using wrong value for $port
Thu Aug 16 14:01:33 2001 PDT guym

update: email/EmailTemplate.java
Fine-tuned the exception handling so that if fatal errors are returned from the EmailTemplate, we can guarantee that the user needs to re-authenticate with the email server. 
All other errors are returned in a seperate property.
Wed Aug 15 14:28:21 2001 PDT suhler

create: samples/template/images/b.gif, samples/template/images/brazilicon.gif, samples/template/dir/index.html, samples/template/exp/index.html, samples/template/config.map, samples/template/index.html, samples/template/customize.html, samples/template/meta.html, samples/template/notfound.html, samples/template/see.html, samples/template/main.template, samples/template/printing.template, samples/template/config, samples/template/README
Brazil example ala experimentalstuff that demonstrates re-writing
all content into user customizable templates
Wed Aug 15 13:21:21 2001 PDT suhler

update: tests/sunlabs.brazil.handler.BasicAuthHandler.test
fixes for sessionTable option
Tue Aug 14 17:50:53 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Modified the 'getnewheaders' operation of EmailTemplate.java to return a list of the 'newly arrived' messages, as defined by messages after a certain count.  This operation now makes use of the
'startmsg' parameter to determine where to look in the folder for 'newly arrived' messages. It also returns a property, prefix.lastmsgnum, which can be passed repeatedly to 
the 'getnewheaders' operation to detect these messages.  If 'startmsg' is ommitted or
is the empty string (""), the operation will return *all* headers in this folder, potentially an expensive operation.
Tue Aug 14 16:47:15 2001 PDT suhler

update: handlers/SMTPHandler.java, handlers/SupplyHandler.java, handlers/MatchString.java, handlers/UrlMapperHandler.java, handlers/RePollHandler.java, handlers/SimpleSessionHandler.java, handlers/templates/ContentTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/TemplateTemplate.java
fixed javadoc comments.  The first sentence of every Class comment
*must* end with a period (.) to aid the automatic extraction of
handler summaries
Tue Aug 14 16:44:05 2001 PDT suhler

create: samples/stock-basic/config, samples/stock-basic/README, samples/stock-basic/config.stock, samples/stock-basic/index.html, samples/stock-basic/my_reauth.html, samples/stock-basic/my_select.html, samples/stock-basic/my_stock.html, samples/stock-basic/my_value.html, samples/stock-basic/register.html
update: tcl/TclServerTemplate.java, handlers/BasicAuthHandler.java, handlers/templates/TemplateHandler.java, handlers/templates/AddHeaderTemplate.java
created "stock" portfolio example using basic authentication
- added "eval" option to <tcl>
- modified BasicAuthHandler to interoperate with <set...>
- added <addHeader status=nnn> to change http result code
- fixed bug in TemplateHandler that was resetting the http status code
Mon Aug 13 16:23:15 2001 PDT suhler

update: handlers/PollHandler.java
The documentation for time formats was wrong.  I fixed thd docs by
allowing an option to specify the format used for matching.
Mon Aug 13 12:36:53 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Fixed bug where creating folders in EmailTemplate.java was not working
Mon Aug 13 09:20:47 2001 PDT guym

update: email/EmailTemplate.java
Fixed compilation bug in EmailTemplate.java by changing the reference to hr.setRewriteState to 
hr.abort()
Mon Aug 13 09:12:44 2001 PDT drach

update: server/Request.java, server/Server.java, servlet/BServletRequest.java, properties/ExprPropsHandler.java
Change server.props back to Properties object.  This allows server.props
to be shared amongst Threads.  Created Request.serverProps as a
PropertiesList wrapper for server.props.  Each Request will have a
unique serverProps wrapping the shared server.props.
 
Note, you may need to remove all *.class files before rebuilding.
Fri Aug 10 16:39:14 2001 PDT guym

update: handlers/templates/BSLTemplate.java, tests/sunlabs.brazil.template.BSLTemplate.test
Finished test cases that demonstrate/test bug fixes from code review
Fri Aug 10 14:46:40 2001 PDT guym

update: handlers/templates/BSLTemplate.java, handlers/templates/RewriteContext.java, tests/sunlabs.brazil.template.BSLTemplate.test, tests/sunlabs.brazil.handler.RePollHandler.test
Per code review, changed the Abort, Break, and Continue flags to a single stateFlags enum.
Also fixed a bug where incrementing of the nestingLevel was in the wrong place.  Fixed a bug which was not restoring request.props back to its original state during an <abort>, <break>, or <continue>
Thu Aug 9 21:45:58 2001 PDT suhler

create: samples/stock/config, samples/stock/README, samples/stock/config.stock, samples/stock/index.html, samples/stock/select.html, samples/stock/stock.html, samples/stock/value.html
Stock portfolio example.  Demonstrates:
- RePollHandler
- ExprPropsHandler
Tue Aug 7 14:25:28 2001 PDT drach

update: server/Request.java, server/Server.java, properties/PropertiesList.java
Fix NullPointerException in PropertiesList debug code.  Also make the
code provide correct caller when PropertiesList invokes a PropertiesList
constuctor.  That is, we don't want PropertiesList to be listed as
caller -- we want method that initially invoked PropertiesList.
 
Move PropertiesList debug initiation to earliest possible point, before
the first PropertiesList object is created.
Tue Aug 7 11:47:44 2001 PDT suhler

update: handlers/templates/FormTemplate.java, handlers/DefaultFileHandler.java
minor bug fixes
Tue Aug 7 11:46:49 2001 PDT suhler

update: handlers/templates/Template.java, server/Handler.java, session/SessionManager.java
documentation updates
Mon Aug 6 17:48:28 2001 PDT suhler

update: handlers/RePollHandler.java, tests/Makefile, tests/sunlabs.brazil.handler.RePollHandler.test
Add "key" option to RePollHandler to allow one of the sub-matches to be
used as part of a property name instead of a numerical index
 
add ../properties to the depends list in the "test" directory
Mon Aug 6 16:32:46 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Added support in EmailTemplate.java for per tag error handling (with the onError parameter).
Fri Aug 3 20:22:10 2001 PDT guym

update: handlers/templates/BSLTemplate.java, handlers/templates/RewriteContext.java, tests/sunlabs.brazil.template.BSLTemplate.test
Made BSLTemplate code thread-safe again after adding support for <abort>, <break>
and <continue> tags.
Also finished documentation for the <abort>, <break>, and <continue> tags.
Fri Aug 3 18:25:30 2001 PDT suhler

update: proxy/ProxyHandler.java, handlers/DeferredHandler.java, handlers/templates/TemplateRunner.java, sql/SqlTemplate.java, server/ChainHandler.java, filter/FilterHandler.java
class names in properties files with trailing whitespace are tough to find, 
so trim() all strings befor Class.forname()ing them.
Fri Aug 3 15:52:59 2001 PDT drach

create: properties/PropertiesList.java
update: handlers/templates/BSLTemplate.java, server/Makefile, server/Request.java, server/Server.java, servlet/BServletRequest.java, properties/Makefile, properties/ExprPropsHandler.java
Remove SharedProps and replace with PropertiesList
Fri Aug 3 10:57:47 2001 PDT guym

update: handlers/templates/BSLTemplate.java, tests/sunlabs.brazil.template.BSLTemplate.test
Fixed problems in BSLTemplate tests - don't use <set name=x value=foo> *inside* of
test bodies - use the set props {} tcl instead - this prevents namespace collisions
within tests further downstream.
Thu Aug 2 13:43:45 2001 PDT guym

update: email/index.html, email/headers.html, email/EmailTemplate.java
Added support for a <forcetimeout> tag in the EmailTemplate, to be used in testing/debugging
to allow HTML developers to programatically force a timeout/close event at the IMAP server.
Wed Aug 1 17:39:50 2001 PDT suhler

update: change-log, tests/sunlabs.brazil.templates.ScriptEval.test, tests/sunlabs.brazil.handler.RePollHandler.test, handlers/PollHandler.java, handlers/RePollHandler.java
allow PollHandler to extract to SessionManager properties, 
acessable via <set namespace=xxx>
Wed Aug 1 16:37:07 2001 PDT guym

update: handlers/templates/BSLTemplate.java, tests/sunlabs.brazil.template.BSLTemplate.test, email/config.email, email/EmailTemplate.java
Added support for <abort>, <break>, and <continue> in BSL - warning
only <abort> has passed all of the regression tests - use <break> and <continue> at your own
risk until they finish passing the tests.
Wed Aug 1 14:16:16 2001 PDT suhler

create: tests/sunlabs.brazil.handler.RePollHandler.test
update: handlers/RePollHandler.java
Completely changed the way properties are extracted.
OLD way:  Create a regular expression that turned the content into
          a java properties file, then "loaded" it
NEW way   Matches and sub-matches are automatically extracted into
          properties based on numerical indeces (or names)
 
To Do (still)
- RePollHandler and <extract> should share the same code
- PollHandler should accept session-table for properties, instead
  of dumping everything into server.props
Wed Aug 1 11:12:30 2001 PDT suhler

update: util/LexML.java
Even after nextToken() returns false, calls to getBody()...
return reasonable values instead of throwing exceptions
Wed Aug 1 11:10:00 2001 PDT suhler

create: handlers/SimpleSessionHandler.java
update: util/Base64.java, handlers/Makefile
Added SimpleSessionHandler (as a simple example to describe what
session handlers do).
Wed Aug 1 10:17:27 2001 PDT suhler

update: handlers/CookieSessionHandler.java
documented behavior of "prefix"; it maps to the PATH specifier on
the set-cookie header.
 
The sessionFilter always uses PATH=/ (which is probably a bug) so it
didn't have the same bug
Tue Jul 31 17:50:19 2001 PDT drach

update: handlers/CookieSessionHandler.java
Fix cookie path by adding a url prefix property.
Mon Jul 30 16:25:10 2001 PDT suhler

update: tests/sunlabs.brazil.handler.MatchString.test
rename: tests/sunlabs.brazil.handler.MatchUrl.test -> tests/sunlabs.brazil.handler.MatchString.test
changed MatchUrl to MatchString
Mon Jul 23 15:52:58 2001 PDT suhler

update: handlers/SMTPHandler.java
Changed <param...> implementation to use StringMap instead of Hashtable;
header order is now preservered (some smtp servers *require* mime-version
and content-type to be first, RFC822 non withstanding
Mon Jul 23 14:55:08 2001 PDT suhler

update: server/FileHandler.java, tests/sunlabs.brazil.server.FileHandler.test, change-log
Changed (undocumented) "allow" property to "getOnly" and reversed the
sense: any method is OK by default, specify "getOnly" to accept only
GET requests
Fri Jul 20 12:06:07 2001 PDT suhler

update: handlers/SMTPHandler.java
SMTP template <param> tag was broken
Fri Jul 20 11:45:34 2001 PDT suhler

update: change-log, tcl/TclHandler.java, tests/sunlabs.brazil.template.SetTemplate.test, handlers/PropertiesHandler.java, handlers/CookieSessionHandler.java, handlers/NotFoundHandler.java, handlers/RestrictClientHandler.java, handlers/RolesHandler.java, handlers/Makefile, handlers/AclSwitchHandler.java, handlers/DirectoryHandler.java, handlers/BasicAuthHandler.java, handlers/PushHandler.java, handlers/SMTPHandler.java, handlers/PublishHandler.java, handlers/DialogHandler.java, handlers/ResourceHandler.java, handlers/templates/SetTemplate.java, filter/FilterHandler.java, properties/ExprPropsHandler.java, handlers/MatchString.java
rename: handlers/MatchUrl.java -> handlers/MatchString.java
Changed all occurrences of "MatchUrl" to "MatchString"
Fri Jul 20 10:45:44 2001 PDT suhler

update: change-log, filter/SessionFilter.java, ssl/config, ssl/SslHandler.java, ssl/index.html, handlers/CookieSessionHandler.java
- SsslHandler has an option for asking for a client cert, and can use
  the cert ser# as a session key
- The other sessionHandlers don't ses a session key if it alreay exists,
  allowing cert id's or cookies, or url rewriting in the same server
Thu Jul 19 21:38:00 2001 PDT suhler

update: ssl/SslHandler.java, ssl/index.html, util/Format.java
- Format: fix javadoc warnings
- ssl: provide cert id, and update docs
Thu Jul 19 20:41:59 2001 PDT suhler

create: ssl/CertHandler.java, ssl/req.html
update: ssl/Makefile, ssl/README, ssl/config, ssl/index.html
First pass at the Certificate Authority handler.
Wed Jul 18 16:32:59 2001 PDT suhler

update: handlers/templates/SetTemplate.java
The deck got dropped, and the cards were out of order.  They're
now properly resequenced
Wed Jul 18 14:12:23 2001 PDT suhler

create: samples/email/body.html, samples/email/pref.html, samples/email/compose.html, samples/email/folders.html, samples/email/goodbye.html, samples/email/headers.html, samples/email/index.html, samples/email/config, samples/email/run, samples/email/README, samples/email/config.pref
first pass at an email client
Wed Jul 18 10:44:40 2001 PDT suhler

update: tests/sunlabs.brazil.util.Format.test, tests/sunlabs.brazil.templates.ScriptEval.test, util/Format.java, handlers/templates/ScriptEvalTemplate.java
Changed Format.subst to allow modifying \X behavior on a per-call basis.
Modified ScriptEvalTemplate.java to (mostly) leave \'s alone
Wed Jul 18 10:43:01 2001 PDT suhler

update: ssl/Makefile
Makefile now points to proper classpath
Tue Jul 17 18:42:48 2001 PDT suhler

update: handlers/templates/BSLTemplate.java, properties/ExprPropsHandler.java
doc fixes to remove javadoc warnings
Tue Jul 17 18:24:12 2001 PDT suhler

create: tests/sunlabs.brazil.templates.ScriptEval.test, handlers/templates/ScriptEvalTemplate.java
update: change-log, handlers/Makefile
Added ScriptEvalTemplate.  Allows ${...} substitutions in javascript
programs (<script>...</script>) if eval=true is in the "script" attribute.
Tue Jul 17 17:21:25 2001 PDT suhler

update: email/EmailTemplate.java
RewriteContenxt.hr.get() now has Format.subst() built in
Tue Jul 17 14:48:22 2001 PDT suhler

create: tests/sunlabs.brazil.util.Format.test, tests/sunlabs.brazil.handler.MatchUrl.test, tests/sunlabs.brazil.template.SetTemplate.test, tests/sunlabs.brazil.template.SetTemplate.compat.test, handlers/MatchUrl.java, handlers/templates/TemplateTemplate.java
update: change-log, util/Makefile, util/Format.java, util/Calculator.java, tcl/TclHandler.java, tcl/TclRePollHandler.java, sunlabs/DateTemplate.java, sunlabs/SubstAllTemplate.java, sunlabs/ExecTemplate.java, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.http.HttpUtil.test, tests/sunlabs.brazil.handler.BasicAuthHandler.test, tests/sunlabs.brazil.template.PropsTemplate.test, tests/sunlabs.brazil.template.BSLTemplate.test, handlers/PropertiesHandler.java, handlers/CookieSessionHandler.java, handlers/NotFoundHandler.java, handlers/RestrictClientHandler.java, handlers/RolesHandler.java, handlers/Makefile, handlers/AclSwitchHandler.java, handlers/DirectoryHandler.java, handlers/BasicAuthHandler.java, handlers/PushHandler.java, handlers/SMTPHandler.java, handlers/PublishHandler.java, handlers/MultiHostHandler.java, handlers/DialogHandler.java, handlers/HomeDirHandler.java, handlers/ResourceHandler.java, handlers/SunNetAuthHandler.java, handlers/RePollHandler.java, handlers/templates/ContentTemplate.java, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/Template.java, handlers/templates/NoImageTemplate.java, handlers/templates/RewriteContext.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/MacroTemplate.java, explode/props.tcl, server/Server.java, filter/TemplateFilter.java, filter/FilterHandler.java, session/PJamaSessionManager.java, ldap/LDAPTemplate.java, python/PythonServerTemplate.java, properties/ExprProps.java, properties/ExprPropsHandler.java, email/Makefile
delete: util/Chars.java, handlers/Token.java, util/PJwrapper.java
- Added MatchUrl as a convenience method for handlers to decide if
  the url should be processded.  Changed most handlers to use it.
 
- Changed most Templates to use new convenience methods in RewriteContext
 
- Added TemplateTemplate to allow template processing of properties from
  within a template.
- Added initial definition file to MacroTemplate
- Moved "PropsTemplate" functionality to SetTemplate as "<get...>"
- Added <tag name=x> => <x  in SetTemplate
- Made sure all the existing tests still work; aded tests for
  "Format" and MatchUrl
- Format.subst() now deals with escapes (\) rationally.
- Moved several classes inside of their only consumers so they are
  not needlessly exposed in the filesystem.
Mon Jul 16 16:16:24 2001 PDT drach

update: properties/ExprProps.java, properties/ExprPropsHandler.java
Add comments to both.  Add get method to ExprProps.
Fri Jul 13 16:42:14 2001 PDT drach

update: util/Calculator.java, servlet/BrazilServlet.java
Add comments and a main program test driver to Calculator.
 
Fix spelling error in documentation in BrazilServlet.
Thu Jul 12 14:26:03 2001 PDT suhler

update: handlers/SMTPHandler.java
added the capability to do:
 <sendmail ...>
    <param name=.. value=...> ...
 </sendmail>
Thu Jul 12 14:09:26 2001 PDT guym

update: email/headers.html, email/body.html, email/EmailTemplate.java
Made the 'folder parameter a consistent name (foldername) within the <message> and
<folder> tags - also changed the implementation of the refilemsg, deletemsg, and
undeletemsg functionality - these now send requests to the server in one chunk - 
hopefully improving performance.
Thu Jul 12 11:59:37 2001 PDT suhler

update: email/EmailTemplate.java
use jdk1.1 compatible methods of Vector()
Wed Jul 11 20:16:56 2001 PDT suhler

create: handlers/templates/MacroTemplate.java
update: Makefile, change-log
Added a session based macro-processing template.
Wed Jul 11 16:02:32 2001 PDT drach

create: properties/Makefile, properties/ExprProps.java, properties/ExprPropsHandler.java
update: Makefile
Creation of properties directory and content, including ExprProps facility.
Wed Jul 11 09:39:52 2001 PDT suhler

update: handlers/PollHandler.java
make fields public so they may be accessed from tcl or python
Tue Jul 10 19:30:08 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Added getnewheaders and undeletemsg operations to the <message> tag
Tue Jul 10 10:40:08 2001 PDT drach

update: server/Request.java
Changed SharedProps.addDict() and SharedProps.removeDict() to account for
semantic change to Dictionary.equals() between Java 1 and Java 2.
Fri Jun 29 13:29:56 2001 PDT guym

update: email/index.html, email/headers.html, email/body.html, email/EmailTemplate.java
Added support for a folder parameter in the <message> tag to allow for multiple windows to operate on different folders at the same time.  Also added support for  a new mode in the <message> tag - the ability retrieve only the new headers.
Fri Jun 29 11:25:15 2001 PDT suhler

update: handlers/SMTPHandler.java
The SMTPHandler will now work as a template:
  <sendmail from= to= body= subject= cc=>
Fri Jun 29 11:09:53 2001 PDT drach

create: util/Chars.java, util/Calculator.java
update: util/Format.java, util/Makefile
Changed variable substitution algorithm in Format to, hopefully, make
it easier to understand and to allow future additions.
   
Added Calculator class for general purpose arithmetic expression and
statement evaluation.
Thu Jun 28 11:46:58 2001 PDT suhler

update: email/EmailTemplate.java
changed timespamps from "ms" to "sec"
Mon Jun 25 20:26:35 2001 PDT guym

update: email/EmailTemplate.java
Added fix for the parturl property (attachment handling) so that a proper filename is 
provided for the 
'Save As' dialog - Also added fix for the msglimit 'off-by-one' bug.
Mon Jun 25 10:05:03 2001 PDT suhler

update: email/EmailTemplate.java
getMessages returns additional fields, making it easier to use in
the common cases.
Thu Jun 21 13:53:35 2001 PDT guym

update: email/headers.html, email/body.html, email/EmailTemplate.java
Added support for message ranges in deletemsg,refilemsg.  Fixed msgindex property to accurately reflect message number, put in support for pre-parsing addresses into rcf822 and
personal parts.  Implemented a msgcount in the folder tag to return total messages and new message counts. Put in support for pre-parsing date fields to return a string representation, as well as the number of seconds since the epoch for that date.
Mon Jun 18 08:43:05 2001 PDT suhler

update: email/EmailTemplate.java
<message action=getheaders startmsg="" ...> should do the right thing
Fri Jun 15 17:00:33 2001 PDT guym

update: email/body.html, email/EmailTemplate.java
Fixed support for multipart/ALTERNATIVE and multipart/DIGEST in message viewing.
Fri Jun 15 15:11:35 2001 PDT guym

update: email/index.html, email/headers.html, email/EmailTemplate.java
Added support for multiple open folder connections, and added a reconnect() routine to EmailTemplate.java to be used in case of FolderClosedExceptions.
Wed Jun 13 15:37:18 2001 PDT guym

update: email/EmailTemplate.java
Fixed performance problem in header retrieval and added support for querying the entire list of message headers.
Wed Jun 13 09:30:51 2001 PDT suhler

update: server/ChainHandler.java, handlers/HomeDirHandler.java
added url Prefix options, for consistency (and I needed them)
Tue Jun 12 17:24:47 2001 PDT guym

update: email/headers.html, email/EmailTemplate.java
Added support for 'D' and 'R' msg status flags in EmailTemplate.java
Tue Jun 12 12:46:36 2001 PDT guym

update: email/config.email, email/headers.html, email/body.html, email/EmailTemplate.java
Fixed various email example html files, plus fixed EmailTemplate.java's javadoc source.
Mon Jun 11 17:13:50 2001 PDT guym

update: util/http/HttpUtil.java
Fixed HttpUtil.java to correctly handle &#13; within convert=html
Mon Jun 11 17:08:09 2001 PDT suhler

update: Makefile
added "email" to depends list
Mon Jun 11 17:07:38 2001 PDT suhler

update: servlet/BServletRequest.java, servlet/BServletServerSocket.java, servlet/BServletSocket.java, servlet/BrazilServlet.java
fix javadoc warnings
Thu Jun 7 13:16:16 2001 PDT guym

create: email/config.email, email/Makefile, email/folder.gif, email/brazilicon.gif, email/mailbox.gif, email/index.html, email/goodbye.html, email/folders.html, email/compose.html, email/headers.html, email/body.html, email/EmailTemplate.java
First revision of the EmailTemplate and supporting HTML examples.
Wed Jun 6 12:45:39 2001 PDT suhler

create: ssl/Makefile, ssl/README, ssl/config, ssl/SslHandler.java, ssl/index.html, ssl/run-ssl
1st pass at integrating the old ssl stuff into the new server.
It is quite incomplete, but what's there works OK
 
The Certificate Authority handler and the Server Certificate Generating
code has yet to be integrated in
Tue Jun 5 22:40:59 2001 PDT drach

update: server/Main.java, server/Request.java, server/Server.java, servlet/BServletRequest.java, servlet/BrazilServlet.java
Move all Brazil Servlet classes into the sunlabs.brazil.servlet package.
Mon Jun 4 14:44:27 2001 PDT suhler

update: change-log, Makefile, sunlabs/SubstAllTemplate.java, handlers/PollHandler.java, handlers/RePollHandler.java, handlers/templates/BSLTemplate.java, sql/config, sql/SqlTemplate.java, ldap/LDAPTemplate.java, python/PythonServerTemplate.java, servlet/BServletRequest.java, servlet/BServletServerSocket.java, servlet/BServletSocket.java, servlet/BrazilServlet.java
edits to build javadocs for java-one snapshot
- moved servlet code from package brazil.net to brazil.servlet
- moved SqlTemplate to brazil.sql
minor stuff for snapshot
Mon Jun 4 07:35:09 2001 PDT drach

create: servlet/BServletRequest.java, servlet/BServletServerSocket.java, servlet/BServletSocket.java, servlet/BrazilServlet.java, servlet/Makefile
update: Makefile, change-log
Brazil can now run under any web/app server that supports the 2.2 Servlet
API.  This is a bidirectional Brazil Servlet interface.
Wed May 30 08:41:56 2001 PDT drach

update: server/Main.java, server/Request.java
Reduce access control on selected fields and methods either to make the
class "subclassable" or to expose generally useful methods.
Fri May 25 13:08:08 2001 PDT suhler

create: sunlabs/UrlMapFilter.java, sunlabs/ExpContentTemplate.java
update: sunlabs/Makefile
Extra stuff needed to get the experimentalstuff.com site working.
- UrlMapFilter.java rewrites url's from local content for all url's that
  refer to "web mounted" resources (via the multiproxyhandler)
- ExpContentTemplate.java extends the ContentTemplate to further
  filter the "content" property using regular expressions
Thu May 24 19:55:27 2001 PDT drach

update: server/Request.java, python/PythonServerTemplate.java
(1) Count all bytes written out in Request.java
(2) <python> always needs a match </python> but it only was looking
    for match on first time trough the server
Thu May 24 10:45:55 2001 PDT suhler

update: tests/sunlabs.brazil.template.BSLTemplate.test, change-log, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/PropsTemplate.java
- allow <foreach delim=xx> were "xx" is a regular expression
- fixed memory leak in SetTemplate
- removed over enthusiastic diagnostic generation from <property>
Wed May 23 09:21:57 2001 PDT suhler

update: change-log, handlers/templates/SetTemplate.java
SetTemplate was failing to chain namespaces onto the request properties
when they were non-existant when first encountered, but created
during a page.
Tue May 22 16:59:06 2001 PDT suhler

update: change-log, handlers/templates/BSLTemplate.java
added "all" attribute to <extract> to permit the extraction into
properties of all matches to a particular regular expression
Mon May 21 16:45:31 2001 PDT suhler

create: sunlabs/ExecTemplate.java
update: change-log, sunlabs/Makefile
Added new template "ExecTemplate" to run arbitrary "shell" command
Fri May 18 09:11:57 2001 PDT suhler

update: handlers/ConfigFileHandler.java
now works with SessionFilter as well as Cookie Handler.  There should be
a better way of "session generators" to let "session consumers" know
the status of the session.
Tue May 15 16:52:34 2001 PDT suhler

update: handlers/Makefile
I forgo to add TemplateInterface to the makefile
Tue May 15 16:49:36 2001 PDT suhler

update: change-log
added stuff
Tue May 15 16:42:02 2001 PDT suhler

update: handlers/templates/Template.java
make "debug" protected so it may be used!
Tue May 15 10:09:38 2001 PDT suhler

create: sunlabs/SubstAllTemplate.java
update: sunlabs/Makefile
added SubstAllTemplate
Mon May 14 09:02:26 2001 PDT drach

update: change-log, python/PythonServerTemplate.java
Last putback of change-log was incomplete.
Fri May 11 15:00:51 2001 PDT suhler

create: handlers/templates/TemplateInterface.java
update: handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/ModifiedTemplate.java, handlers/templates/Template.java, handlers/templates/DirectoryTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/PropsTemplate.java
Added "TemplateInterface", so templates aren't required to subclass Template.
Added convenience method in Template, debug() fo putting diagnostic info
   in the html output as comments
Changed templates to use debug() method. [Now that templates can have their
  own configuration prefixes, "debug" may be turned on/off selectively].
Fri May 11 10:42:24 2001 PDT suhler

update: handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java
"compareToIgnoreCase" doesn't exist in jdk1.1
Wed May 9 07:47:54 2001 PDT drach

update: change-log
Template tokens added.
Tue May 8 15:26:49 2001 PDT cstevens

update: handlers/templates/BSLTemplate.java
case-insensitive sorting
Mon May 7 11:24:30 2001 PDT suhler

update: handlers/templates/SetTemplate.java
Bug fix.  If no namespace was specified, then "" was used instead of the sessionID
Wed May 2 15:52:04 2001 PDT drach

create: tests/sunlabs.brazil.template.TemplateRunner.test
update: filter/TemplateFilter.java, handlers/templates/RewriteContext.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java
Added Template specific tokens, so Templates can be named and have their
own properties in a similar way to handlers and filters.

- Comments updated in TemplateFilter and TemplateHandler to say the following
  about the templates property:

  <code>templates</code>

  A list of template names.  For each name in the list, the property
  <code><i>name</i>.class</code> is examined to determine which class to
  use for each template.  Then <code>name</code> is used as the prefix
  for other template specific properties if any.  If
  <code><i>name</i>.class</code> does not exist, then <code>name</code>
  is assumed to be the class name, and there are no template specific
  properties for the template.  Methods in the template classes will be
  invoked to process the XML/HTML tags present in the content.

- TemplateFilter and TemplateHandler changed to handle the new signatures
  for TemplateRunner.<init> and TemplateRunner.process.

- Added server and prefix args to signature of TemplateRunner constructor.
  Created private instance variables to store server and prefix.  Removed
  server and prefix from TemplateRunner.process signature.  Updated
  comments.

- Added a String field to TemplateRunner.Dispatch to store the template
  specific prefix.

- Changed processing of TemplateRunner's names argument to handle tokens
  as well as class names.

- Changed TemplateRunner.process to set hr.prefix to template specific
  prefix before processing each template.

- Added comment to RewriteContext.prefix indicating that it is assigned
  a new value before processing each template.

- Added sunlabs.brazil.template.TemplateRunner.test.  It demonstrates
  that template tokens didn't work before and now work.
Tue May 1 11:03:22 2001 PDT suhler

update: session/PJamaSessionManager.java, session/PropertiesCacheManager.java, session/CacheManager.java, session/SessionManager.java
New api's for SessionManagers:
- The underlying methods are now getObj, putObj and removeObj.
- The static method getSession() is rewritten to use getObj and putObj.
- The static methods get(), put() and remove() are exposed for cases
  where getSession is not appropriate.
- Existing uses of getSession() should work without modification
Thu Apr 12 11:52:54 2001 PDT suhler

update: change-log
added changes to log
Thu Apr 12 11:35:23 2001 PDT suhler

update: tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.server.ChainHandler.test, tests/defs, tests/sunlabs.brazil.server.FileHandler.test, tests/sunlabs.brazil.server.Connection.test, tests/sunlabs.brazil.sunlabs.DateTemplate.test, server/Server.java
removed getHostname() call from server added at version1.17 for logging).
It does a reverse DNS lookup on every request, causing significant
performance degradation
Mon Apr 9 18:44:56 2001 PDT suhler

update: handlers/templates/TemplateRunner.java, handlers/templates/NoImageTemplate.java, filter/PlainFilter.java
S. Drach bugs
- Template runner mishandled _xx constructs in method names
- Typo in NoImageTemplate
- Plain filter now uses utility method instead of private one
Fri Apr 6 09:44:52 2001 PDT suhler

update: util/http/HttpUtil.java, tests/sunlabs.brazil.util.http.HttpUtil.test, tests/sunlabs.brazil.template.PropsTemplate.test, python/python.html, python/PythonServerTemplate.java
fixed htmlEncode to match the documentation.  &<>" now encode as entity references instead of #xxx;
 
<python> now has an "eval" option to allow ${..} substitutions.  The ${..} doen't conflict with python syntax, 
and this makes it consistent with <sql>
Thu Apr 5 14:49:48 2001 PDT suhler

update: handlers/templates/SetTemplate.java
bug fix in SetTemplate
Thu Apr 5 10:14:24 2001 PDT suhler

update: change-log
SnarfTemplate
Thu Apr 5 10:07:57 2001 PDT suhler

update: sunlabs/Makefile
errant source file reference removed
Thu Apr 5 10:02:16 2001 PDT suhler

update: handlers/templates/SetTemplate.java
Don't create empty sessionManager sessions
Wed Apr 4 16:58:31 2001 PDT suhler

create: sunlabs/SnarfTemplate.java, tests/sunlabs.brazil.sunlabs.DateTemplate.test, tests/sunlabs.brazil.sunlabs.SnarfTemplate.test
update: change-log, sunlabs/Makefile, sunlabs/ClockFormat.java, sunlabs/DateTemplate.java, tests/defs, tests/Makefile, handlers/templates/BSLTemplate.java, handlers/templates/DirectoryTemplate.java, session/PropertiesCacheManager.java
- merge with colins changes
- added "SnarfTemplate" for Charles so he can control content extraction
  at a finer grain
- changed the time-base back to sec from ms
- minor doc and diagnostic message changes
Mon Apr 2 12:29:31 2001 PDT cstevens

create: samples/orgtool/iplanet/CacheTemplate.java, samples/orgtool/iplanet/docs/right.xbm, samples/orgtool/iplanet/docs/clear.html, tests/TestTemplate.java
update: change-log, samples/orgtool/iplanet/config.orgtool, samples/orgtool/iplanet/Makefile, tests/Makefile, tests/defs, tests/sunlabs.brazil.server.FileHandler.test, tests/sunlabs.brazil.template.PropsTemplate.test, tests/sunlabs.brazil.template.BSLTemplate.test, handlers/templates/BSLTemplate.java, samples/orgtool/iplanet/docs/reports.html, samples/orgtool/iplanet/docs/manager.html, samples/orgtool/iplanet/docs/employee.html
rename: samples/orgtool/iplanet/reports.html -> samples/orgtool/iplanet/docs/reports.html, samples/orgtool/iplanet/results.html -> samples/orgtool/iplanet/docs/results.html, samples/orgtool/iplanet/search.html -> samples/orgtool/iplanet/docs/search.html, samples/orgtool/iplanet/setup.tcl -> samples/orgtool/iplanet/docs/setup.tcl, samples/orgtool/iplanet/up.xbm -> samples/orgtool/iplanet/docs/up.xbm, samples/orgtool/iplanet/open.xbm -> samples/orgtool/iplanet/docs/open.xbm, samples/orgtool/iplanet/manager.html -> samples/orgtool/iplanet/docs/manager.html, samples/orgtool/iplanet/index.html -> samples/orgtool/iplanet/docs/index.html, samples/orgtool/iplanet/employee.html -> samples/orgtool/iplanet/docs/employee.html, samples/orgtool/iplanet/data.html -> samples/orgtool/iplanet/docs/data.html
BSLTemplate.java: When glob or regexp pattern had more than 20 subexpressions,
a limit was being exceeded that should have been detected, but instead was
causing an ArrayOutOfBoundsException due to an off-by-one programming error.
  
BSLTemplate.java: Add server property "${prefix}.limit" to the <while> tag to
prevent excessive recursion.  It's a server property not a request property so
accidental or malicious HTML cannot change the limit.
  
BSLTemplate.java: The <foreach> tag now creates temporary variables in a new
Properties object rather than in the main request.properties.  Seems to be a
cleaner implementation.  It took longer to (A) save any old values, set the
temporary values, and then restore the old values than to (B) push a new
Properties object that lives for the body of the <foreach>.
  
-----
iplanet orgtool:
Has some of its own utility classes (a cache) rather than just using Brazil
core classes, so it must be built and run in its directory where it can find
the utility classes.
  
Cache class used in user interface to show whether a person's reports have
further reports of their own.  Otherwise, it takes about 2 seconds/report to
fill in the reports frame.
  
-----
tests/defs: 
"array {set,get}" was not object aware, so added wrapper.
Other procedures to make writing tests easier: squish, hash.
  
tests/BSLTemplate.test: new tests for <while>, <if>, and <foreach>.
Tue Mar 27 14:52:33 2001 PDT suhler

update: handlers/templates/SetTemplate.java
> Added the ability to set and use values from alternate session tables
> with <set namespace=xxx> and <import namespace=xxx>
Mon Mar 26 11:19:36 2001 PDT suhler

update: change-log, tests/sunlabs.brazil.template.PropsTemplate.test, handlers/templates/PropsTemplate.java
added convert=html and convert=url options to <property> in the 
PropsTemplate.  Convert=html protects ", <, >, and &.  Convert=url
makes the substituted value safe for url's or query parameters
Fri Mar 23 15:06:27 2001 PDT cstevens

create: samples/orgtool/iplanet/Makefile, samples/orgtool/iplanet/FakeASessionHandler.java
update: change-log, samples/orgtool/iplanet/employee.html, samples/orgtool/iplanet/reports.html, samples/orgtool/iplanet/index.html, samples/orgtool/iplanet/manager.html, samples/orgtool/iplanet/results.html, samples/orgtool/iplanet/search.html, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java, util/Format.java, samples/orgtool/iplanet/config.orgtool
rename: samples/orgtool/iplanet/config.ldap -> samples/orgtool/iplanet/config.orgtool
Latest changes to iPlanet orgtool.
  
BSLTemplate.java: <while> tag added to allow iterating until a property
or other condition is met.
  
SetTemplate.java:
Add "default" option to set template, based on observed usage.  <property>
has "default" option, but this is only useful if the property is going to
be substituted into HTML.  Adding "default" to <set> allows easier use of a
possibly-undefined property whose value is going to be passed to another
tag via ${...}.
  
iplanet/FakeASessionHandler.java: 
Q&D.  Evades chokepoint due to all templates mutexing on a single session
ID (previous implementation) w/o requiring that clients provided a session
ID (cookie).
Fri Mar 23 15:00:44 2001 PDT cstevens

update: ldap/LDAPTemplate.java
LDAPTemplate.java:
NullPointerException when storing LDAP information in hash table.
Theory: looking up a non-existent employee returns null.
Practice: it seems a non-null entry can be returned, but all the fields
in the entry will be null.
Fri Mar 23 14:59:59 2001 PDT cstevens

create: tests/sunlabs.brazil.template.BSLTemplate.test
update: tests/defs, tests/sunlabs.brazil.template.PropsTemplate.test
More tests.
  
defs:
Crash in Template code.  SessionManager state is accessible across Servers
if multiple Servers instantiated in same process.  New Server was getting
old Server's Templates.  Workaround provided for testing purposes, but
not a real solution.
Fri Mar 16 14:42:24 2001 PDT cstevens

create: tests/sunlabs.brazil.template.PropsTemplate.test
update: change-log, tests/all, tests/defs, handlers/templates/PropsTemplate.java, util/LexHTML.java
PropsTemplate.java:
<property name=foo default=${bar}> was inserting the literal string "${bar}"
rather than the value of the variable "bar" if the variable "foo" was 
undefined.
   
LexHTML.java:
Use Vector.indexOf() rather than iterating over the elements of a Vector
manually.
Fri Mar 16 09:05:45 2001 PDT suhler

update: README, change-log
README was hopelessly out of date
Thu Mar 15 10:49:36 2001 PDT suhler

update: handlers/HomeDirHandler.java, handlers/UrlMapperHandler.java, handlers/templates/PropsTemplate.java
Currently, if any handler changes request.url, the original url is lost, 
which is unfortunate if you want to refer to the original url.
 
Until I can figure out a better scheme, handlers that change the original url
should set the property "url.orig" if its not already set, so url "consumers"
can access either the current (request.url) or original url's.
 
The "propsTemplate" has been modified to reflect the original url instead of
the current url, which (I hope) is the right behavior most of the time.
 
(This *temporary* change will allow the research.sun.com site to work
 properly when using the HomeDirectoryHandler)
Thu Mar 15 10:18:45 2001 PDT suhler

update: session/PropertiesCacheManager.java
Don't save out empty sessions, prune them instead
Tue Mar 13 15:35:54 2001 PDT cstevens

update: change-log, util/LexHTML.java
re: Tags with special body syntax (like <script> or <style>)
-- Given "<script></script>" (with nothing between the "<script>"
   and the "</script>"), parser was not seeing "</script>" and
   it was grabbing the entire rest of the document as the body of
   the script tag.
-- Singleton "<script src=foo />" will now also work.
Tue Mar 13 15:14:41 2001 PDT cstevens

create: tests/sunlabs.brazil.handler.BasicAuthHandler.test
update: tests/all, tests/defs, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.server.FileHandler.test, handlers/BasicAuthHandler.java
Documentation for test suite in defs file.
  
BasicAuthHandler.java - test suite found a bug!
Tue Mar 13 15:12:52 2001 PDT cstevens

update: samples/ldap/employee.html, samples/ldap/setup.tcl
base orgtool, not iplanet version.  Should be moved to a different place.
Tue Mar 13 15:11:52 2001 PDT cstevens

update: tcl/TclServerTemplate.java
Extra debuging information if there is a problem running the init script.
Tue Mar 13 09:46:23 2001 PDT suhler

update: handlers/CgiHandler.java
added comments to show how to fix "CHDIR" bug when running under jdk1.3
Tue Mar 13 09:19:12 2001 PDT suhler

update: handlers/CgiHandler.java
Return "server error" upon cgi failure
Mon Mar 12 17:40:26 2001 PDT cstevens

create: tests/TestRequest.java
update: server/Connection.java, server/FileHandler.java, server/Request.java, server/Server.java, change-log, tests/Makefile, tests/all, tests/defs, tests/sunlabs.brazil.util.http.HttpInputStream.test, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.http.MimeHeaders.test, tests/sunlabs.brazil.util.StringMap.test, tests/sunlabs.brazil.server.FileHandler.test
New testing style: creating handler objects and calling methods directly 
(instead of creating a server and having it create the handler object) so
I can then access the methods and fields of the handler object directly.
Thu Mar 8 16:02:14 2001 PDT cstevens

update: handlers/HtmlRewriter.java, util/LexML.java
Handle singleton HTML tags like <br/> or <a name=foo/>.  Before, these 
forms were interpreted incorrectly as the "br/" tag or the value "foo/".
Tue Mar 6 16:33:28 2001 PDT suhler

update: change-log
added entries for latest putback
Tue Mar 6 11:27:08 2001 PDT suhler

create: tcl/TclRePollHandler.java, handlers/RePollHandler.java
update: Makefile, fixJavadocHtml.tcl, tcl/Makefile, tcl/TclServerTemplate.java, sunlabs/ClockFormat.java, sunlabs/DateTemplate.java, handlers/RestrictClientHandler.java, handlers/Makefile, handlers/PollHandler.java, handlers/templates/TemplateHandler.java, explode/props.tcl
- Modified ClockFormat/DateTemplate to accept an optional
  timezone argument
- Changed TclServerTemplate to accept <tcl>...</tcl> and to
  start the interp on first use (instead of at init time)
- Added RePollHandler and TclRePoll handler to experiment with
  modifying remotely retrieved content
- Added a "redirect" capability to RestrictClientHandler
- TemplateHandler checks to insure the url suffix is a valid mime type
- Fixes to documentation generation
Tue Mar 6 11:17:11 2001 PDT suhler

update: server/Request.java
ChangedVector.add() to Vector.addElement() for compatibility with java 1.1.
Tue Mar 6 10:43:22 2001 PDT cstevens

delete: deleted_files/handlers/templates/NewTemplate.java, deleted_files/handlers/templates/NewTemplate2.java, experimentalstuff/html/dir/another/deep/index.html, experimentalstuff/html/dir/another/index.html, experimentalstuff/html/dir/data.html, experimentalstuff/html/dir/index.html, experimentalstuff/html/index.html, experimentalstuff/html/init.tcl, experimentalstuff/html/help.html, experimentalstuff/html/admin/customize.html, experimentalstuff/html/admin/favorites.html, experimentalstuff/html/admin/main.template, experimentalstuff/html/admin/missing.html, experimentalstuff/html/admin/highlight.html, experimentalstuff/html/technology/index.html, experimentalstuff/html/projects/index.html, experimentalstuff/html/downloads/bits.tar, experimentalstuff/html/downloads/download.html, experimentalstuff/html/downloads/index.html, experimentalstuff/html/images/b.gif, experimentalstuff/html/images/crayol2.gif, experimentalstuff/html/images/home07.gif, experimentalstuff/html/images/exp_stuff1.jpg, experimentalstuff/html/images/exp_stuff2.jpg, experimentalstuff/html/images/exp_stuff3.jpg, experimentalstuff/html/images/exp_stuff4.jpg, experimentalstuff/html/images/exp_stuff5.jpg, experimentalstuff/html/images/exp_stuff6.jpg, experimentalstuff/html/images/keybord1.gif, experimentalstuff/html/images/notepad.gif, experimentalstuff/html/images/palett1.gif, experimentalstuff/html/images/rolodex1.gif, experimentalstuff/html/images/search.gif, experimentalstuff/html/images/sunlogo.gif, experimentalstuff/html/images/writit1.gif, experimentalstuff/html/images/main.css, experimentalstuff/html/images/logo-small.gif, experimentalstuff/html/testing/debug.html, experimentalstuff/html/testing/index.html, experimentalstuff/html/testing/download.html, experimentalstuff/html/testing/headers.html, experimentalstuff/html/testing/test.html, experimentalstuff/config, experimentalstuff/config.log, deleted_files/alphaworks/html/config
admin/favorites.html
.deleted_files/experimentalstuff/html/admin/highlight.html
.deleted_files/experimentalstuff/html/admin/customize.html
.deleted_files/experimentalstuff/html/admin/main.template
.deleted_files/experimentalstuff/html/admin/missing.html
.deleted_files/experimentalstuff/html/technology
.deleted_files/experimentalstuff/html/technology/index.html
.deleted_files/experimentalstuff/html/index.html
.deleted_files/experimentalstuff/html/init.tcl
.deleted_files/experimentalstuff/html/help.html
.deleted_files/experimentalstuff/html/projects
.deleted_files/experimentalstuff/html/projects/index.html
.deleted_files/experimentalstuff/html/downloads
.deleted_files/experimentalstuff/html/downloads/index.html
.deleted_files/experimentalstuff/html/downloads/bits.tar
.deleted_files/experimentalstuff/html/downloads/download.html
.deleted_files/experimentalstuff/html/images
.deleted_files/experimentalstuff/html/images/palett1.gif
.deleted_files/experimentalstuff/html/images/search.gif
.deleted_files/experimentalstuff/html/images/b.gif
.deleted_files/experimentalstuff/html/images/crayol2.gif
.deleted_files/experimentalstuff/html/images/home07.gif
.deleted_files/experimentalstuff/html/images/exp_stuff1.jpg
.deleted_files/experimentalstuff/html/images/exp_stuff2.jpg
.deleted_files/experimentalstuff/html/images/exp_stuff3.jpg
.deleted_files/experimentalstuff/html/images/exp_stuff4.jpg
.deleted_files/experimentalstuff/html/images/exp_stuff5.jpg
.deleted_files/experimentalstuff/html/images/keybord1.gif
.deleted_files/experimentalstuff/html/images/exp_stuff6.jpg
.deleted_files/experimentalstuff/html/images/rolodex1.gif
.deleted_files/experimentalstuff/html/images/sunlogo.gif
.deleted_files/experimentalstuff/html/images/notepad.gif
.deleted_files/experimentalstuff/html/images/main.css
.deleted_files/experimentalstuff/html/images/logo-small.gif
.deleted_files/experimentalstuff/html/images/writit1.gif
.deleted_files/experimentalstuff/html/testing
.deleted_files/experimentalstuff/html/testing/download.html
.deleted_files/experimentalstuff/html/testing/debug.html
.deleted_files/experimentalstuff/html/testing/test.html
.deleted_files/experimentalstuff/html/testing/index.html
.deleted_files/experimentalstuff/html/testing/headers.html
.deleted_files/experimentalstuff/config.log
.deleted_files/experimentalstuff/config
.deleted_files/alphaworks
.deleted_files/alphaworks/html
.deleted_files/alphaworks/html/config
Mon Mar 5 16:21:36 2001 PDT cstevens

update: server/ChainHandler.java, server/Request.java, server/Server.java, tests/Makefile, tests/defs, tests/sunlabs.brazil.util.http.HttpInputStream.test, tests/sunlabs.brazil.server.Connection.test, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.http.HttpUtil.test, tests/sunlabs.brazil.util.StringMap.test, tests/sunlabs.brazil.server.FileHandler.test, tests/sunlabs.brazil.server.ChainHandler.test
Test suite:
1. Timeout during request gave error "null 408 Timeout".  Should be
"HTTP/1.1 408 Timeout"
2. "make" in tests directory makes brazil and runs tests suite.
Mon Mar 5 13:56:46 2001 PDT cstevens

update: samples/orgtool/iplanet/setup.tcl
Suggested changes:
Allow search for "A B" to mean employee whose records contain both A and B.
(Previously, no boolean searching, and "A B" meant literal "A" "space" "B".)
  
Don't show AOL or SUN employee numbers in search results.
Tue Feb 27 10:58:49 2001 PDT suhler

update: sunlabs/Makefile, sunlabs/ClockFormat.java, sunlabs/DateTemplate.java
Put ClockFormat and DateTemplate back into "makefile"
added "timezone" option to ClockFormat
added timezone option to DateTemplate
Tue Feb 27 10:55:08 2001 PDT suhler

update: handlers/templates/DirectoryTemplate.java
- tag attribute syntax changed <filelist prefix=nnn stats>
- aded "Stats" attribute to provide last mod and file size info
Tue Feb 20 17:27:53 2001 PDT cstevens

update: samples/orgtool/iplanet/employee.html
handle "file:/foo" as a valid URL type in employee record.
Tue Feb 20 17:07:51 2001 PDT cstevens

update: server/Request.java, handlers/ConfigFileHandler.java, handlers/DynamicConfigHandler.java, handlers/templates/BSLTemplate.java, handlers/templates/SetTemplate.java
Remove RechainableProperties from Request.  In order to insert shared 
Properties objects, use request.addSharedProps() instead of manually 
rechaining the properties using props.setDefaults().
Tue Feb 20 17:03:47 2001 PDT cstevens

update: tini/PTServe.java, tini/Server.java
PTServe.java: PickleTalk (in progress).
Tue Feb 20 17:00:48 2001 PDT cstevens

create: samples/orgtool/iplanet/data.html, samples/orgtool/iplanet/config.ldap, samples/orgtool/iplanet/employee.html, samples/orgtool/iplanet/reports.html, samples/orgtool/iplanet/index.html, samples/orgtool/iplanet/manager.html, samples/orgtool/iplanet/open.xbm, samples/orgtool/iplanet/setup.tcl, samples/orgtool/iplanet/results.html, samples/orgtool/iplanet/search.html, samples/orgtool/iplanet/up.xbm
update: ldap/LDAPTemplate.java
LDAPTemplate.java: 
explicitly release LDAP connection rather than waiting for GC to
get it, or can run out of file descriptors.
  
samples/orgtool/iplanet/*: iPlanet's orgtool.
Mon Feb 19 10:49:57 2001 PDT suhler

update: change-log, handlers/HomeDirHandler.java, filter/ReplaceFilter.java
fix handling of "root" property:
  HomeDirHandler can specify name of root property
  ReplaceFilter looks in "prefix.root", then "root".
Wed Jan 24 11:57:50 2001 PDT cstevens

create: tini/DecodeGe2.java, tini/PTServe.java, tini/camera.a51, tini/camera.java
update: tini/Makefile, tini/README
PickleTalk: avoids slush and ready to put on open network.
See README for uploading and IP instructions.
Tue Jan 16 17:52:28 2001 PDT suhler

update: util/LexML.java, server/Main.java, handlers/GenericProxyHandler.java
- fixed bug in LexML.java with unterminated comments
- Fixed bug in GenericProxyHandler.java that was causing the thread to hang.
Sun Jan 14 15:04:21 2001 PDT suhler

update: change-log


Sun Jan 14 14:55:01 2001 PDT suhler

update: handlers/SMTPHandler.java, handlers/LogHandler.java, handlers/templates/BSLTemplate.java, filter/FilterHandler.java, filter/SessionFilter.java, ldap/LDAPTemplate.java
- doc fixes
- make more fields public, for easier scripting
Fri Jan 12 17:52:41 2001 PDT suhler

create: ldap/Makefile
You forgot to checkin the ldap Makefile
Fri Jan 12 16:51:25 2001 PDT cstevens

update: Makefile, samples/ldap/config.ldap, handlers/Makefile, ldap/LDAPTemplate.java
rename: handlers/templates/LDAPTemplate.java -> ldap/LDAPTemplate.java
Documentation for LDAPTemplate, and moved it to sunlabs.brazil.ldap package.
Fri Jan 12 08:25:49 2001 PDT suhler

update: handlers/BasicAuthHandler.java, handlers/templates/LDAPTemplate.java
- BasicAuthHandler.java: make map table public, to allow scipting
- LDAPTemplate.java: remove wildcard imports
Thu Jan 11 18:44:16 2001 PDT cstevens

update: handlers/templates/BSLTemplate.java
<extract> tag for BSL
Thu Jan 11 17:34:37 2001 PDT cstevens

create: samples/ldap/config.ldap, samples/ldap/data.html, samples/ldap/employee.html, samples/ldap/index.html, samples/ldap/manager.html, samples/ldap/orgtool.html, samples/ldap/reports.html, samples/ldap/results.html, samples/ldap/search.html, samples/ldap/setup.tcl, samples/ldap/blank.xbm, samples/ldap/close.xbm, samples/ldap/last.xbm, samples/ldap/line.xbm, samples/ldap/more.xbm, samples/ldap/open.xbm, samples/ldap/up.xbm, samples/ldap/vert.xbm, handlers/templates/LDAPTemplate.java
update: Makefile, samples/CookieProxy/config.cookie, tini/PT.java, tini/Makefile, tini/Ge.java, handlers/Makefile, util/Format.java
LDAPTemplate and the samples/ldap directory.
Tue Jan 9 22:26:40 2001 PDT suhler

update: change-log, Makefile
updated change-log
Sun Jan 7 22:36:31 2001 PDT suhler

update: server/FileHandler.java, server/Makefile
FileHandler now supports simple byte ranges of the form:
   range:bytes=start-end
where either start or end may be missing
Sun Jan 7 19:25:27 2001 PDT suhler

update: util/Format.java, util/Base64.java
- Escape ${...} with $\{...\} in Format.subst()
- add a rudimentary base64 decoder to Base64.java
Fri Jan 5 11:56:33 2001 PDT suhler

update: handlers/AclSwitchHandler.java, handlers/BasicAuthHandler.java
documentation fixes
Wed Dec 27 12:24:02 2000 PDT suhler

update: handlers/MapPage.java, handlers/HtmlRewriter.java, handlers/templates/ContentTemplate.java
- doc fixes to MapPage
- HtmlRewriter.accumulate() now returns previous setting
- ContentTemplate rewrite
Sat Dec 23 13:33:35 2000 PDT suhler

update: handlers/MultiProxyHandler.java, handlers/MapPage.java
Make the MultiProxy url mapping table public, and allow
MapPage to take a (null) prefix.  These minor changes allow
a filter to be written easily that will apply the Proxy url rewriting
on non-proxied content.
Fri Dec 22 10:44:57 2000 PDT suhler

update: change-log
added RestrictClientHandler
Thu Dec 21 11:35:29 2000 PDT suhler

create: handlers/RestrictClientHandler.java
update: handlers/Makefile, handlers/UrlMapperHandler.java
- New handler to allow conditional access to URL's based on client ip addresses
- Allow ${...} substitutions in replacement strings for the UrlMapperHandler,
  permitting sessionbased rewriting of url's
Thu Dec 14 17:49:20 2000 PDT suhler

update: handlers/PollHandler.java
Added the ability to fetch as url on a cron-like schedule
Wed Dec 13 12:43:57 2000 PDT suhler

create: handlers/PollHandler.java
update: change-log, handlers/Makefile
added PollHandler to periodically fetch java/properties from a remote
web site and stuff them into the server properties
Tue Dec 12 13:05:08 2000 PDT suhler

create: explode/props.tcl, experimentalstuff/html/testing/index.html
update: Makefile, util/Format.java, proxy/ProxyHandler.java, proxy/CookieFilter.java, proxy/HistoryFilter.java, proxy/JunkBusterHandler.java, handlers/templates/SetTemplate.java, experimentalstuff/html/index.html, experimentalstuff/html/init.tcl, experimentalstuff/html/help.html, experimentalstuff/html/downloads/download.html, experimentalstuff/config, experimentalstuff/html/testing/debug.html, experimentalstuff/html/testing/download.html, experimentalstuff/html/testing/headers.html, experimentalstuff/html/admin/customize.html, experimentalstuff/html/admin/favorites.html, experimentalstuff/html/admin/main.template, experimentalstuff/html/admin/highlight.html
rename: experimentalstuff/html/debug.html -> experimentalstuff/html/testing/debug.html, experimentalstuff/html/download.html -> experimentalstuff/html/testing/download.html, experimentalstuff/html/headers.html -> experimentalstuff/html/testing/headers.html, experimentalstuff/html/test.html -> experimentalstuff/html/testing/test.html, experimentalstuff/html/customize.html -> experimentalstuff/html/admin/customize.html, experimentalstuff/html/favorites.html -> experimentalstuff/html/admin/favorites.html, experimentalstuff/html/main.template -> experimentalstuff/html/admin/main.template, experimentalstuff/html/missing.html -> experimentalstuff/html/admin/missing.html, experimentalstuff/html/highlight.html -> experimentalstuff/html/admin/highlight.html
Changed the default behavior of the SetTemplate to use
a persistent namespace.
- "persist" is gone, its now the default
- "local" is used to set a variable for the duration of the request only
Mon Dec 11 20:26:53 2000 PDT suhler

update: handlers/ChainSawHandler.java, handlers/SunNetAuthHandler.java, handlers/DirectoryHandler.java, handlers/LogHandler.java, handlers/templates/FormClientTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/DirectoryTemplate.java, handlers/templates/HighlightTemplate.java
fix typos in javadocs.
The java-doc generators now create:
   /handler_options.html
which is an alphabetized summary of all handler options.
Mon Dec 11 13:34:50 2000 PDT suhler

update: handlers/AclSwitchHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/HomeDirHandler.java, handlers/SupplyHandler.java, handlers/PublishHandler.java, handlers/BasicAuthHandler.java, handlers/ChainSawHandler.java, handlers/ResourceHandler.java, handlers/UrlMapperHandler.java, handlers/NotFoundHandler.java, handlers/SunNetAuthHandler.java, handlers/DialogHandler.java, handlers/DirectoryHandler.java, handlers/PushHandler.java, handlers/ConfigFileHandler.java, handlers/MultiHostHandler.java, handlers/SMTPHandler.java, handlers/ProxyPropertiesHandler.java, handlers/DynamicConfigHandler.java, handlers/CookieSessionHandler.java, handlers/DeferredHandler.java, handlers/LogHandler.java, handlers/DefaultFileHandler.java, handlers/PropertiesHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TemplateHandler.java, handlers/templates/DirectoryTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java, handlers/templates/ChangedTemplate.java, handlers/templates/UrlNavBarTemplate.java, handlers/templates/HighlightTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/DebugTemplate.java, handlers/templates/ModifiedTemplate.java, server/ChainHandler.java, server/FileHandler.java, sunlabs/ServerProcess.java, sunlabs/ChownHandler.java, sql/SqlTemplate.java, tcl/TclHandler.java, tcl/TclServerTemplate.java, tcl/TclFilter.java, python/PythonServerTemplate.java, session/SerialPersist.java, session/CacheManager.java, session/PropertiesCacheManager.java, filter/PlainFilter.java, filter/TemplateFilter.java, filter/ReplaceFilter.java, filter/CopyContentFilter.java, filter/FilterHandler.java, filter/SessionFilter.java
All handler properties are now described in the class
javadoc comments with syntax of the form:
   <dl class=props>   ....... </dl>
to allow automatic extraction of properties options
Fri Dec 8 16:49:55 2000 PDT suhler

update: change-log, handlers/ChainSawHandler.java, handlers/UrlMapperHandler.java, handlers/SunNetAuthHandler.java, handlers/CookieSessionHandler.java, handlers/LogHandler.java, filter/TemplateFilter.java, filter/FilterHandler.java, filter/UrlSessionFilter.java, session/SessionManager.java, session/PropertiesCacheManager.java, session/SerializableCacheManager.java
- added exitOnError flag to TemplateFilter
- doc fixes
Tue Dec 5 13:38:11 2000 PDT suhler

create: experimentalstuff/config.log
Sample config file to demonstrate how the LogHandler works
Tue Dec 5 13:18:54 2000 PDT suhler

create: handlers/LogHandler.java
update: change-log, server/Request.java, util/Format.java, handlers/Makefile, handlers/ChainSawHandler.java, handlers/templates/SetTemplate.java
- added LogHandler to generate custom log files
  + added accessor methods to Request for logging
  + changed Format.subst to take Dictionary instead of PRoperties
  + changed bytesWritten to per request instead of per connection
- lint
Mon Dec 4 09:19:51 2000 PDT suhler

update: change-log
added stuff
Mon Dec 4 08:58:41 2000 PDT suhler

update: server/Main.java
Added -S flag to Main.java to permit ${..} substitutions on property values
Mon Dec 4 08:46:48 2000 PDT suhler

update: handlers/MapPage.java, handlers/templates/ContentTemplate.java, experimentalstuff/html/main.template, experimentalstuff/html/customize.html, experimentalstuff/html/index.html, experimentalstuff/html/favorites.html, experimentalstuff/config
bug fixes to ContentTemplate and MapPage
new color processing for exp stuff
Tue Nov 28 10:16:29 2000 PDT suhler

update: handlers/templates/PropsTemplate.java, handlers/templates/TemplateHandler.java, filter/TemplateFilter.java
- added client ip address to PropsTemplate
- Changed log-level for filter init failures
Mon Nov 27 22:44:20 2000 PDT suhler

rename: alphaworks/html/dir/another/deep/index.html -> experimentalstuff/html/dir/another/deep/index.html, alphaworks/html/dir/another/index.html -> experimentalstuff/html/dir/another/index.html, alphaworks/html/dir/data.html -> experimentalstuff/html/dir/data.html, alphaworks/html/dir/index.html -> experimentalstuff/html/dir/index.html, alphaworks/html/main.template -> experimentalstuff/html/main.template, alphaworks/html/debug.html -> experimentalstuff/html/debug.html, alphaworks/html/customize.html -> experimentalstuff/html/customize.html, alphaworks/html/index.html -> experimentalstuff/html/index.html, alphaworks/html/favorites.html -> experimentalstuff/html/favorites.html, alphaworks/html/highlight.html -> experimentalstuff/html/highlight.html, alphaworks/html/missing.html -> experimentalstuff/html/missing.html, alphaworks/html/test.html -> experimentalstuff/html/test.html, alphaworks/html/init.tcl -> experimentalstuff/html/init.tcl, alphaworks/html/download.html -> experimentalstuff/html/download.html, alphaworks/html/help.html -> experimentalstuff/html/help.html, alphaworks/html/headers.html -> experimentalstuff/html/headers.html, alphaworks/html/technology/index.html -> experimentalstuff/html/technology/index.html, alphaworks/html/projects/index.html -> experimentalstuff/html/projects/index.html, alphaworks/html/downloads/bits.tar -> experimentalstuff/html/downloads/bits.tar, alphaworks/html/downloads/download.html -> experimentalstuff/html/downloads/download.html, alphaworks/html/downloads/index.html -> experimentalstuff/html/downloads/index.html, alphaworks/html/images/b.gif -> experimentalstuff/html/images/b.gif, alphaworks/html/images/crayol2.gif -> experimentalstuff/html/images/crayol2.gif, alphaworks/html/images/home07.gif -> experimentalstuff/html/images/home07.gif, alphaworks/html/images/exp_stuff1.jpg -> experimentalstuff/html/images/exp_stuff1.jpg, alphaworks/html/images/exp_stuff2.jpg -> experimentalstuff/html/images/exp_stuff2.jpg, alphaworks/html/images/exp_stuff3.jpg -> experimentalstuff/html/images/exp_stuff3.jpg, alphaworks/html/images/exp_stuff4.jpg -> experimentalstuff/html/images/exp_stuff4.jpg, alphaworks/html/images/exp_stuff5.jpg -> experimentalstuff/html/images/exp_stuff5.jpg, alphaworks/html/images/exp_stuff6.jpg -> experimentalstuff/html/images/exp_stuff6.jpg, alphaworks/html/images/keybord1.gif -> experimentalstuff/html/images/keybord1.gif, alphaworks/html/images/notepad.gif -> experimentalstuff/html/images/notepad.gif, alphaworks/html/images/palett1.gif -> experimentalstuff/html/images/palett1.gif, alphaworks/html/images/rolodex1.gif -> experimentalstuff/html/images/rolodex1.gif, alphaworks/html/images/search.gif -> experimentalstuff/html/images/search.gif, alphaworks/html/images/sunlogo.gif -> experimentalstuff/html/images/sunlogo.gif, alphaworks/html/images/writit1.gif -> experimentalstuff/html/images/writit1.gif, alphaworks/html/images/main.css -> experimentalstuff/html/images/main.css, alphaworks/html/images/logo-small.gif -> experimentalstuff/html/images/logo-small.gif, alphaworks/config -> experimentalstuff/config
rename alphaworks to experimentalstuff
Mon Nov 27 22:38:35 2000 PDT suhler

create: deleted_files/alphaworks/html/config, alphaworks/html/images/main.css, alphaworks/html/images/logo-small.gif
update: filter/SessionFilter.java, alphaworks/html/main.template, alphaworks/html/customize.html, alphaworks/html/index.html, alphaworks/html/favorites.html, alphaworks/html/highlight.html, alphaworks/html/missing.html, alphaworks/html/help.html, alphaworks/html/images/b.gif, alphaworks/html/images/crayol2.gif, alphaworks/html/images/home07.gif, alphaworks/html/images/exp_stuff1.jpg, alphaworks/html/images/exp_stuff2.jpg, alphaworks/html/images/exp_stuff3.jpg, alphaworks/html/images/notepad.gif, alphaworks/html/images/rolodex1.gif, alphaworks/html/images/search.gif, alphaworks/html/images/writit1.gif, alphaworks/config
- changed SessionFilter to handle htmlified plain text files
- fixed up alphaworks
Tue Nov 21 13:29:26 2000 PDT suhler

create: alphaworks/html/dir/another/deep/index.html, alphaworks/html/dir/another/index.html, alphaworks/html/dir/data.html, alphaworks/html/dir/index.html, alphaworks/html/download.html, alphaworks/html/help.html, alphaworks/html/headers.html, alphaworks/html/technology/index.html, alphaworks/html/projects/index.html, alphaworks/html/downloads/bits.tar, alphaworks/html/downloads/download.html, alphaworks/html/downloads/index.html
update: change-log, handlers/templates/AddHeaderTemplate.java, handlers/templates/TemplateRunner.java, alphaworks/html/main.template, alphaworks/html/customize.html, alphaworks/html/index.html, alphaworks/html/favorites.html, alphaworks/html/highlight.html, alphaworks/html/missing.html, alphaworks/config
- AddHeader template works with "location headers", allowing in-page
  redirects
- TemplateRunner generates better diagnostics
- next "pass" at alphaworks site sample
Mon Nov 20 13:35:09 2000 PDT suhler

update: filter/SessionFilter.java, session/PropertiesCacheManager.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/HighlightTemplate.java, handlers/templates/SetTemplate.java, handlers/templates/DebugTemplate.java, handlers/templates/ModifiedTemplate.java, server/Request.java, util/http/HttpUtil.java
Documnetation fixes only
see http://hack.eng:8082/ for the lastest version
Sun Nov 19 10:33:52 2000 PDT suhler

create: handlers/templates/ModifiedTemplate.java
update: handlers/Makefile, handlers/templates/DebugTemplate.java, change-log, server/FileHandler.java, util/http/HttpUtil.java
Added "ModifiedTemplate" to allow template re-writing to keep track
of last-modified times of documents better.
Fri Nov 17 09:45:03 2000 PDT suhler

update: filter/SessionFilter.java
remove spurious debug printf's
Fri Nov 17 09:42:24 2000 PDT suhler

create: handlers/templates/DebugTemplate.java
update: handlers/Makefile, handlers/templates/AddHeaderTemplate.java, change-log
- new template to allow printf like debugging of html templates
- better support for mime header manipulation from html templates
Thu Nov 16 11:56:56 2000 PDT suhler

update: session/PropertiesCacheManager.java
Fixed typo (duh!)
Thu Nov 16 11:28:30 2000 PDT suhler

update: handlers/templates/HighlightTemplate.java
performance enhancement.  Allow all processing to be skipped
if no highlighting is required
Thu Nov 16 10:40:47 2000 PDT suhler

create: session/PropertiesCacheManager.java
update: change-log, handlers/Makefile, handlers/templates/HighlightTemplate.java, handlers/templates/SetTemplate.java, session/CacheManager.java, session/SerializableCacheManager.java
- Highlight template supports finer control over highlightable regions
- SetTemplate now works in conjuction with the SetTemplate installed
  as a handler, mostly obsoleting the functionallity of the ConfigFileHandler, 
  especiall when used with one of the persistent session thinkies
- PropertiesCacheManager, a new handler/sessionManager, provides 
  rudimentary persistence for session state stored in java Properties
Wed Nov 15 09:59:00 2000 PDT suhler

create: alphaworks/html/main.template, alphaworks/html/debug.html, alphaworks/html/customize.html, alphaworks/html/index.html, alphaworks/html/favorites.html, alphaworks/html/highlight.html, alphaworks/html/missing.html, alphaworks/html/test.html, alphaworks/html/init.tcl, alphaworks/html/images/b.gif, alphaworks/html/images/crayol2.gif, alphaworks/html/images/home07.gif, alphaworks/html/images/exp_stuff1.jpg, alphaworks/html/images/exp_stuff2.jpg, alphaworks/html/images/exp_stuff3.jpg, alphaworks/html/images/exp_stuff4.jpg, alphaworks/html/images/exp_stuff5.jpg, alphaworks/html/images/exp_stuff6.jpg, alphaworks/html/images/keybord1.gif, alphaworks/html/images/notepad.gif, alphaworks/html/images/palett1.gif, alphaworks/html/images/rolodex1.gif, alphaworks/html/images/search.gif, alphaworks/html/images/sunlogo.gif, alphaworks/html/images/writit1.gif, alphaworks/config
update: tcl/TclServerTemplate.java, handlers/templates/HighlightTemplate.java, handlers/templates/SetTemplate.java, server/Request.java, filter/ReplaceFilter.java, filter/FilterHandler.java, filter/SessionFilter.java
- first pass at alphaworks website setup
- start-of-request timestamps added
- replace filter gets "debug flag": it rereades the template each request
- filterHandler gets better diagnostics
- SessionFilter re-do
- SetTemplate is also a handler - persistent properties may be shared
Tue Nov 14 14:58:04 2000 PDT suhler

update: handlers/ProxyPropertiesHandler.java
Added primitive URL mapping.
Mon Nov 13 22:20:51 2000 PDT suhler

update: handlers/MapPage.java
added <layer src=...> to the list of html entries that are urls
Mon Nov 6 10:56:24 2000 PDT suhler

create: session/SerializableCacheManager.java
update: Makefile, change-log, util/regexp/Regexp.java, util/Base64.java, proxy/ProxyHandler.java, sunlabs/ChownHandler.java, handlers/CgiHandler.java, handlers/Makefile, handlers/UrlMapperHandler.java, handlers/DirectoryHandler.java, handlers/HtmlRewriter.java, handlers/ProxyPropertiesHandler.java, handlers/PropertiesHandler.java, handlers/templates/FormTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/HighlightTemplate.java, server/ChainHandler.java, server/Server.java, session/SerialPersist.java, session/CacheManager.java
- lots of little doc fixes
- make more templates serializable
- added SerializableCacheManager.java, which combines CacheManager and
  SerialPersist.  The integration of Persistence and Session managers
  needs to be re-thought
Sun Nov 5 20:35:07 2000 PDT suhler

update: filter/SessionFilter.java
Added better redirect behavior; its now invisible to browser users.
If the user accepts the cookie, the normal stuff happens.  If not, the
sessionId gets tacked onto the url instead
Sat Nov 4 19:32:53 2000 PDT suhler

create: filter/SessionFilter.java
update: filter/Makefile, filter/PlainFilter.java, filter/config-session
> Added SessionFilter, which is a combination of the CookieSessionHandler
> and UrlSessionFilter.  It tries to use browser cookies to manage
> sessions (like the CookieSessionHandler), but if cookies don't work,
> it encodes and extract the session id's from the urls
>
> see config-session for a simple config file to test this out
Fri Oct 27 09:35:40 2000 PDT suhler

update: session/SerialPersist.java
added "save" option to serialPersist
Fri Oct 27 08:31:58 2000 PDT suhler

create: FAQ
update: change-log, handlers/templates/PropsTemplate.java, handlers/templates/BSLTemplate.java, handlers/templates/ChangedTemplate.java, handlers/templates/SetTemplate.java
made more templates serializable so they work with the serial-persist
session manager
Wed Oct 25 20:34:43 2000 PDT suhler

create: handlers/templates/SetTemplate.java
update: handlers/Makefile, handlers/templates/TemplateHandler.java, change-log
Fixed bug in TemplateHandler that caused it not to find the session ids, 
preventing each session from getting its own template instance.
 
Added SetTemplate, that supports <set name=xxx value=yyy [persist]>
to allow templates to set properties, possibly persisting across sessions.
For general purpose programming, a scripting language should be used.
This is for common simple cases.
Fri Oct 20 15:46:44 2000 PDT suhler

update: handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, filter/TemplateFilter.java, change-log
There was a race condition in TemplateRunner.  After calling process()
and before calling getContent(), another thread could blow away the
content.
 
Removed getContent(), and make process() return the content (or null)
Tue Oct 17 21:39:18 2000 PDT suhler

update: handlers/templates/HighlightTemplate.java
bug fixes
Tue Oct 17 09:37:13 2000 PDT suhler

update: server/ChainHandler.java, server/FileHandler.java, server/Server.java, change-log, sunlabs/ChownHandler.java
- Added "exitOnError" property that causes the server to exit if any
  handlers fail to initialize.  This aids in debugging complex
  server configurations, where the failure of a single handler to start
  is easy to overlook.
- Added "prefix" property to fileHandler.  For some reason, it was missing.
  This provides the equivalent functionallity to the apache "alias"
  function
Mon Oct 16 13:40:38 2000 PDT suhler

create: handlers/templates/HighlightTemplate.java
update: handlers/Makefile, handlers/templates/TemplateRunner.java, change-log
- modified TemplateRunner to enhance method access to document
- Added HighlightTemplate to rewrite html/xml based on regular expressions
Mon Oct 9 11:56:06 2000 PDT suhler

create: diff.tcl, change-log
update: Makefile
Created a change-log file to document all significant changes made to 
Brazil/naws since the "public" release.  *Please* keep this file up to date.
 
Added a make target and tcl script to make it easier to extract info for
the change-log file from the sccs files.
Mon Oct 9 11:03:48 2000 PDT suhler

update: handlers/templates/UrlNavBarTemplate.java
added includeDir option to include a nav bar entry for url's that
end in /
Fri Oct 6 16:04:42 2000 PDT suhler

update: python/PythonServerTemplate.java
Fixed init bug that caused a failure on 1st request.
- if log=5, tracebacks are generated on python internal errors
Fri Oct 6 15:14:34 2000 PDT suhler

update: proxy/CookieFilter.java
removed dead code
Fri Oct 6 11:11:01 2000 PDT suhler

update: fixJavadocHtml.tcl, tini/Makefile, handlers/BasicAuthHandler.java, handlers/ResourceHandler.java, handlers/bsl3.html, handlers/config-test/form1.html, server/Request.java, session/CacheManager.java
Integrate Colin's changes
- BasicAuthHandler - subst() move
- ResourceHandler - subst() move
- Request.java - remove dead code
- CachManager - remove printf's
Thu Oct 5 21:18:32 2000 PDT suhler

update: handlers/CgiHandler.java
fix "array out of bounds" exception when cgi script generates 
bogus output
Thu Oct 5 21:14:34 2000 PDT suhler

create: de-log.tcl
Tcl script that changes log messages (level 4 and 5) into comments, 
thus removing the overhead of computing the log messages
Thu Oct 5 15:48:18 2000 PDT cstevens

create: tini/PT.java
update: tcl/TclServerTemplate.java, samples/CookieProxy/blockfile, filter/UrlSessionFilter.java, tini/DecodeGe.java, tini/Makefile, tini/Server.java, tests/Makefile, sql/SqlTemplate.java, handlers/ResourceHandler.java, handlers/UrlMapperHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/BSLTemplate.java, util/Format.java
PropsTemplate.subst() and PropsTemplate.getProperty() moved to the Format
class.
Thu Oct 5 14:48:02 2000 PDT suhler

update: filter/TemplateFilter.java
added "subtype" parameter to allow other mime subtypes other than html to
be processed (still needs to be text/?? though).
Thu Oct 5 11:15:58 2000 PDT suhler

update: handlers/templates/ContentTemplate.java
ContentTemplate now looks at HTTP-EQUIV meta tags, and places the 
corrosponding entry into the request headers
Thu Oct 5 11:09:55 2000 PDT suhler

update: handlers/ConfigFileHandler.java, handlers/UrlMapperHandler.java, handlers/AclSwitchHandler.java
Misc. handler updates
- ConfigFileHandler can update properties that match a pattern, even if
  they are not in the default config file (which is now optional)
- UrlMapperHandler can export sub-matches of the url to request props
- AclSwitchHandler can use regular expression patterns instead of url
  prefixes to match credentials
Thu Oct 5 09:28:12 2000 PDT suhler

update: Makefile
add "sunlabs" to list of buildable directories.
This contains the ChownHandler that uses the native code from the
JavaWebServer(tm) to allow the server to chown() and chgrp() itself
Thu Oct 5 09:19:44 2000 PDT suhler

update: server/FileHandler.java
fixed bug delivering non-readable files
Thu Oct 5 09:03:59 2000 PDT suhler

create: sunlabs/ChownHandler.java
update: sunlabs/Makefile, sunlabs/ServerProcess.java
Moved sunlabs required functionallity out of the special "main" program,
and into the "ChownHandler", so the sunlabs web site can use the 
standard jar file
Wed Sep 13 14:53:02 2000 PDT suhler

update: Makefile
Added build for python
Wed Sep 13 14:50:22 2000 PDT suhler

create: python/Makefile
update: tcl/Makefile, python/python.html, python/config.python, python/PythonServerTemplate.java
rename: tcl/python.html -> python/python.html, tcl/config.python -> python/config.python, tcl/PythonServerTemplate.java -> python/PythonServerTemplate.java
Moved python template into python directory
note: still has unresolved initilaization issues
Fri Sep 8 19:41:33 2000 PDT suhler

update: tcl/config.python, tcl/PythonServerTemplate.java, tcl/Makefile, tcl/python.html
- added python handler to Makefile
- fixed handler so "print" statements in the python code are interted into the html document
- changed example (python.config python.html) to demonstrate getting and setting server properties
Fri Sep 8 18:16:29 2000 PDT suhler

create: tcl/config.python, tcl/PythonServerTemplate.java
see previous putback (I can't type)
This is *TEMPORARILY* in the TCL directory 'cause I copied the implementation from the
TCL template
Fri Sep 8 18:14:40 2000 PDT suhler

create: tcl/python.html
update: tcl/Makefile
first pass at a python template.
- need to hack python jar file to capture the return value
- uses the jpython.jar file in jarslibsdlls
Mon Aug 28 08:36:27 2000 PDT suhler

create: handlers/PropertiesHandler.java
update: handlers/Makefile
Added PropertiesHandler.
Returns selected request properties as text/plain documents
Fri Aug 25 14:39:03 2000 PDT suhler

create: session/CacheManager.java
update: handlers/Makefile
New SessionManager (installable as a handler)
that uses a pool of hashtables to prevent the number of sessions
from growing without bound.
 
It uses a simplified toss-least-used algorithm
Wed Aug 16 12:14:00 2000 PDT suhler

create: handlers/DefaultFileHandler.java
update: handlers/Makefile
New handler to deal with url's that end in '/'
Mon Jul 17 16:04:18 2000 PDT suhler

create: tini/DecodeGe.java, tini/Ge.java, tini/Makefile, tini/README, tini/Random.java, tini/Run.java, tini/Server.java, tini/Split.java, tini/Tini.java
delete: tini/ExtensionFileFilter.java, tini/JavaKit.java
Added java code for tini board:
- fridge.eng code
- sample tini web based development environment
Wed Jul 12 15:52:35 2000 PDT cstevens

update: proxy/CookieFilter.java
Put documentation in the code describing the problem with the Cookie header:
   
> Blank characters at end of "Cookie" HTTP header were causing some HTTP servers
> to be confused and generate an error return.  Specifically, this seemed to
> happen to Microsoft-IIS HTTP servers when issuing a POST to an .asp file.
Wed Jul 12 14:11:00 2000 PDT cstevens

update: proxy/CookieFilter.java
Blank characters at end of "Cookie" HTTP header were causing some HTTP servers
to be confused and generate an error return.  Specifically, this seemed to
happen to Microsoft-IIS HTTP servers when issuing a POST to an .asp file.
Tue Jul 11 11:18:40 2000 PDT cstevens

update: request/HttpRequest.java
Some servers send "HTTP/1.0 100 Continue" in response to an HTTP/1.1 POST!
Mon Jul 10 15:47:50 2000 PDT cstevens

update: server/Main.java, handlers/ResourceHandler.java
delete: blockfile, ad.gif
Main.main() and ResourceHandler.getResourceStream() didn't work under
Windows due to platform-dependant file names.  Class.getResourceAsStream()
requires '/' as separator, while File.getParent() requires '\'.  Added code
to turn '/' into '\' and vice versa as necessary.  Both methods now accept
either '\' or '/' in file names and/or resource names.
Fri Jul 7 17:03:15 2000 PDT suhler

update: proxy/CookieFilter.java, tcl/TclFilter.java, sunlabs/Makefile, handlers/RolesHandler.java, handlers/MapPage.java, handlers/SMTPHandler.java, handlers/templates/NoImageTemplate.java, handlers/templates/ChangedTemplate.java, sql/SqlTemplate.java, server/Request.java, filter/UrlSessionFilter.java
removed  System.out.println(s)
Fri Jul 7 15:33:59 2000 PDT suhler

update: handlers/templates/DirectoryTemplate.java, handlers/templates/UrlNavBarTemplate.java, sql/SqlTemplate.java
doc changes (mostly)
Fri Jul 7 10:19:47 2000 PDT suhler

create: handlers/bsl4.html
Added sample demonstrating BSL using ${} on if and foreach, and sort key
Thu Jul 6 18:00:44 2000 PDT suhler

update: handlers/templates/DirectoryTemplate.java
bug fix - only worked on 1st page
Also works as a handler
Thu Jul 6 16:05:20 2000 PDT suhler

update: tcl/TclServerTemplate.java, handlers/DirectoryHandler.java, handlers/templates/RewriteContext.java, handlers/templates/DirectoryTemplate.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java, sql/SqlTemplate.java, server/Request.java
doc fixes for [] -> ${} change
Thu Jul 6 14:58:32 2000 PDT cstevens

update: request/HttpRequest.java
Although HTTP/1.1 chunking spec says that there is one "\r\n" between
chunks, some servers (for example, maps.yahoo.com) may send more than one
blank line between chunks.  So, read and skip all the blank lines seen
between chunks.
Thu Jul 6 13:08:54 2000 PDT suhler

create: handlers/bsl3.html
update: samples/misc/sql.html
- fixed sql test case to use new ${} syntax
- added test case for the DirectoryTemplate
Thu Jul 6 11:32:08 2000 PDT cstevens

update: samples/Palm/nametool/search.html, samples/CookieProxy/cookies.html, samples/CookieProxy/history.html, samples/misc/sql.html, sql/index.html, handlers/templates/PropsTemplate.java, handlers/templates/BSLTemplate.java
Replace "[xxx]" syntax for embedded property names with "${xxx}" syntax,
since "[" and "]" were already used by "glob=" and "match=" in BSL.  Escaping
the "[" characters was uglier than expected, and "${}" syntax matches how
the csh, sh, Tcl, and make parsers reference variables.
Wed Jul 5 16:30:29 2000 PDT suhler

create: handlers/templates/DirectoryTemplate.java
update: handlers/Makefile
Added a "DirectoryTemplate" that (hopefully) obsoletes the DirectoryHandler
and works better with BSL
Wed Jul 5 14:17:27 2000 PDT cstevens

update: server/Server.java, tcl/TclServerTemplate.java, samples/CookieProxy/register/register.html, samples/CookieProxy/blockfile, samples/CookieProxy/config.cookie, filter/TemplateFilter.java, handlers/BasicAuthHandler.java, handlers/ResourceHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/RewriteContext.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java
Server object is in RewriteContext used by templates, so templates (such as
the TclServerTemplate) can be initialized with the server and prefix, similar
to how Handlers are initialized.
  
BasicAuthHandler was giving misleading error message indicating that it
couldn't load the mapfile even if no mapfile was specified.
  
PropsTemplate and BSLTemplate allow '[' and ']' to specify a variable
substitution wherever a constant was used before.  For example, as in
'<if name=stock value="[favorite]">' to compare the value of property "stock"
not to the constant "[favorite]", but to the value of the property "favorite".
In order to include a literal "[" in an option, use "\[" -- a backslash
escapes the following character, whatever it is.
  
TclServerTemplate can load init script from resource fork or file system.
TclServerTemplate passes "server" and "prefix" to init script.
Thu Jun 29 11:46:56 2000 PDT suhler

create: protect.tcl, explode/samples.html
update: Makefile, label.tcl, tcl/TclServerTemplate.java, sunlabs/FrameSetTemplate.java, sunlabs/Makefile, sunlabs/DateTemplate.java, handlers/Makefile, handlers/ChainSawHandler.java, handlers/UrlMapperHandler.java, handlers/templates/RewriteContext.java, handlers/templates/BSLTemplate.java, server/Request.java, samples/misc/sql.cfg
interim changes
Wed Jun 28 16:18:59 2000 PDT cstevens

update: handlers/templates/PropsTemplate.java
If "name=" was misspelled in <property> tag, NullPointerException.
Tue Jun 20 09:00:30 2000 PDT suhler

update: handlers/templates/PropsTemplate.java
added a couple more properties by default, including the url and the method
Tue Jun 20 07:39:45 2000 PDT suhler

update: tcl/TclServerTemplate.java
expose handler prefix.
expose request and prefix to init script
Mon Jun 5 11:23:18 2000 PDT suhler

update: handlers/UrlMapperHandler.java, handlers/BasicAuthHandler.java
doc fixes
Fri Jun 2 14:58:36 2000 PDT suhler

create: handlers/config.publish
new sample config
Fri Jun 2 14:21:59 2000 PDT suhler

create: samples/misc/sql.cfg, samples/misc/sql.html
added sample sql config
Fri Jun 2 09:21:20 2000 PDT suhler

create: label.tcl, TERMS, ge/doc_root/program.html
update: util/regexp/Regexp.java, util/PJwrapper.java, util/LexHTML.java, util/LexML.java, util/Base64.java, proxy/UseProxy.java, proxy/SunProxy.java, proxy/Makefile, proxy/CookieFilter.java, proxy/HistoryFilter.java, proxy/JunkBusterHandler.java, tcl/TclHandler.java, tcl/TclTemplateChannel.java, tcl/TclServerTemplate.java, tcl/TclFilter.java, handlers/AclSwitchHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/HomeDirHandler.java, handlers/ReflectHandler.java, handlers/PublishHandler.java, handlers/Makefile, handlers/ResourceHandler.java, handlers/DialogHandler.java, handlers/config.sample, handlers/DirectoryHandler.java, handlers/PushHandler.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/SMTPHandler.java, handlers/CookieSessionHandler.java, handlers/templates/CountTemplate.java, handlers/templates/README, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/NoImageTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/Template.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java, handlers/templates/ChangedTemplate.java, handlers/templates/UrlNavBarTemplate.java, ge/doc_root/preferences/default.cfg, ge/doc_root/ge.tcl, ge/doc_root/set.html, ge/doc_root/register.html, ge/doc_root/status.html, ge/doc_root/fridge/ge/GetStatus.html, ge/doc_root/fridge/ge/GetStatusL.html, ge/doc_root/fridge/ge/GetStatusX.html, ge/doc_root/fridge/ge/GetStatusState.html, ge/Makefile, ge/config.ge, sql/SqlTemplate.java, server/Request.java, server/Server.java, samples/CookieProxy/blockfile, samples/CookieProxy/config.cookie, samples/portal/configure/README, samples/portal/configure/configure.html, samples/portal/Makefile, samples/portal/README, samples/portal/config, filter/Filter.java, filter/PlainFilter.java, filter/TemplateFilter.java, filter/ReplaceFilter.java, filter/CopyContentFilter.java, filter/UrlSessionFilter.java, session/SerialPersist.java, session/PJamaSessionManager.java, handlers/BasicAuthHandler.java, handlers/templates/RewriteContext.java
rename: handlers/BasicSessionHandler.java -> handlers/BasicAuthHandler.java, handlers/templates/HtmlRewriter.java -> handlers/templates/RewriteContext.java
- cleaned up lots of documentation
- renamed HtmlRewrite ->RewriteContext and BasicSessionHandler->BasicAuthHandler
- rewrote PublishHandler, restoring the old semantics
Thu Jun 1 15:16:14 2000 PDT suhler

update: Makefile
moved stuff out of makefile.common to here
Thu Jun 1 15:15:15 2000 PDT suhler

update: fixJavadocHtml.tcl


Wed May 24 11:36:50 2000 PDT suhler

create: handlers/templates/UrlNavBarTemplate.java
update: util/Makefile, util/LexHTML.java, handlers/AclSwitchHandler.java, handlers/CgiHandler.java, handlers/Makefile, handlers/ResourceHandler.java, handlers/PushHandler.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/UrlMapperHandler.java, handlers/MultiHostHandler.java, handlers/BasicSessionHandler.java, handlers/DeferredHandler.java, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/HtmlRewriter.java, handlers/templates/TemplateHandler.java, handlers/templates/BSLTemplate.java
- filters were processing content type incorrectly, by not handling (options)
  trailing parameters.
- Changed the way the TOC and UrlNavBar templates return properties, for
  better integration with BSL
- added javadoc comments
- added better logging diagnostics
Fri May 19 11:55:45 2000 PDT suhler

update: handlers/AclSwitchHandler.java, handlers/RolesHandler.java, handlers/ResourceHandler.java, handlers/UrlMapperHandler.java, handlers/BasicSessionHandler.java, handlers/templates/FormTemplate.java, tcl/TclFilter.java, sql/SqlTemplate.java, sql/index.html
- doc fixes.  JavaDocs now build with no warnings
- BasicSessionHandler, AclSwitchHandler, and Roles handler work again
Wed May 17 10:39:27 2000 PDT suhler

update: server/Main.java, server/Server.java
Main:
- documentation for "root" resolution behavior
- the "jar" file is searched for config files if not found in filesystem
- The server class can be specified as a property
Server
- null constructor allows servers to be created with newInstance()
Mon May 15 15:36:17 2000 PDT cstevens

update: server/Main.java
"root" property was being resolved w.r.t. the wrong base path.  The 
"root" property is now combined with the base path of the config file that
specified that "root", not with the base path of the last config file seen
(which might be in a different directory).
  
If the "root" property is specified on the command line after the config file,
then that property still wins and is used as is.
Mon May 15 12:05:00 2000 PDT suhler

update: server/Connection.java, server/Request.java, server/Makefile, handlers/ConfigFileHandler.java, handlers/UrlMapperHandler.java
Fixed chaining in ConfigFileHandler (needed to change Connection,Request too)
Removed unneeded server dependencies
Mon May 15 10:14:09 2000 PDT suhler

update: handlers/NotFoundHandler.java, server/FileHandler.java, handlers/templates/TemplateHandler.java
added diagnostics to indicate where files are found
removed options from filehandler
 - deny: use UrlMapperHandler
 - request: use FilterHandler
removed unused bufSize from sendFile
Fri May 12 16:20:02 2000 PDT suhler

create: handlers/DeferredHandler.java
update: handlers/Makefile
created new "deferred handler" that initializes another handler, but
only when it is first needed.  Also provides for class dependency
checking, eliminating Class Not Found errors.
Fri May 12 15:25:24 2000 PDT suhler

update: handlers/ConfigFileHandler.java
Removed property chaining, restoring the old copying behaviour.
until I can figure out whats broken
Fri May 12 10:58:22 2000 PDT suhler

update: handlers/templates/TemplateHandler.java
- removed cookie processing cofde: usa a sessionHandler instead
- removed undocumented "handler" option: use the TemplateFilter instead
Wed May 10 16:31:55 2000 PDT suhler

create: handlers/dir.template, handlers/config.new_dir
update: handlers/DirectoryHandler.java, handlers/ConfigFileHandler.java, handlers/ProxyPropertiesHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/BSLTemplate.java
- added "setProps" option to DirectoryHandler to allow results
  to be placed in the request properties (see config.new_dir)
- Added "delim=" option to BSL <foreach list|property..> to specify
  token delimiters in property lists
- Changed PRoxyProperties handler to allow prefixes to be added before
  data is placed into properties
- Changed configFileHandler to use ChainedPRoperties
- Added config file to test new DirectoryHandler properties
Wed May 10 10:48:01 2000 PDT suhler

update: sql/config, sql/SqlTemplate.java, sql/index.html
updated documentation, added connection re-tries
Mon May 8 17:38:35 2000 PDT suhler

create: sql/Makefile, sql/README, sql/config, sql/SqlTemplate.java, sql/index.html
1st pass SQL template using jdbc and mySql
Mon May 8 13:37:58 2000 PDT cstevens

update: samples/Palm/pqa/index.html, samples/Palm/concept/config.concept
stuff for running samples for Palm.
Wed May 3 11:33:00 2000 PDT cstevens

update: filter/TemplateFilter.java
bugs when converting from using "Cookie" header to using Session ID.
Mon May 1 14:55:43 2000 PDT suhler

update: proxy/HistoryFilter.java, handlers/ProxyPropertiesHandler.java
doc fixes so pdf generation succeeds
Fri Apr 28 11:35:38 2000 PDT suhler

create: samples/portal/configure/preferences/default.cfg, samples/portal/configure/README, samples/portal/configure/set.html, samples/portal/configure/default.template, samples/portal/configure/print.template, samples/portal/configure/configure.html, samples/portal/Makefile, samples/portal/README, samples/portal/config
added sample portal configuration
Fri Apr 28 10:04:03 2000 PDT suhler

update: handlers/BasicSessionHandler.java, handlers/CookieSessionHandler.java, handlers/templates/FormTemplate.java
the "gotCookie" property, used by the ConfigFileHandler got lost
in the shuffle, I added it back in.
 
FormTemplate wasn't handling radio buttons properly
Thu Apr 27 16:02:38 2000 PDT cstevens

update: handlers/templates/PropsTemplate.java, handlers/templates/BSLTemplate.java
sorting properties in <foreach> tag.  Not currently documented, putback so
people can try it.
Thu Apr 27 13:24:15 2000 PDT suhler

update: filter/Makefile, filter/TemplateFilter.java
doc fixes
Wed Apr 26 16:49:11 2000 PDT suhler

update: util/Format.java, tcl/Makefile, handlers/templates/PropsTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/BSLTemplate.java
fixed DEPENDS in Makefiles, added javadoc comments
Mon Apr 24 15:55:23 2000 PDT cstevens

create: tcl/TclUtil.java
update: proxy/CookieFilter.java, proxy/HistoryFilter.java, Makefile, server/FileHandler.java, tcl/TclHandler.java, tcl/Makefile, samples/Palm/nametool/config.nametool, samples/Palm/nametool/search.html, samples/CookieProxy/config.cookie, filter/Filter.java, filter/Makefile, filter/TemplateFilter.java, tests/TestHandler.java, tests/TestServer.java, tests/TestInputStream.java, handlers/ResourceHandler.java, handlers/CookieSessionHandler.java, tcl/TclFilter.java, filter/UrlSessionFilter.java
rename: filter/TclFilter.java -> tcl/TclFilter.java, filter/SessionFilter.java -> filter/UrlSessionFilter.java
delete: samples/Palm/nametool/NametoolHandler.java
CookieFilter:
A separate "Cookie" header was sent for each cookie being sent to the target.
Yahoo Mail requires all cookies sent in a request to concatenated together in
a single "Cookie" header.
  
TclFilter, TclHandler:
Moved to sunlabs.brazil.tcl package.
  
SessionFilter -> UrlSessionFilter
  
UrlSessionFilter:
correctly handles returning URLs with "#" in them.
  
Palm/nametool: eliminate NametoolHandler.java, which was just to grep the
"nameslistx" file for matching employees.  Do search directly from the
<server language=tcl> script.
Fri Apr 21 10:36:06 2000 PDT suhler

update: handlers/Makefile
delete: handlers/templates/NewTemplate.java, handlers/templates/NewTemplate2.java
removed redundant templates
Fri Apr 21 10:07:35 2000 PDT suhler

update: Makefile, sunlabs/Makefile, handlers/Makefile, handlers/DialogHandler.java, ge/Makefile
minor fixes to Makefiles to account for new name changes
Thu Apr 20 13:14:28 2000 PDT cstevens

update: Makefile, tcl/TclServerTemplate.java, samples/Palm/nametool/config.nametool, samples/CookieProxy/config.cookie, handlers/AclSwitchHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/PushHandler.java, handlers/HomeDirHandler.java, handlers/ReflectHandler.java, handlers/MultiProxyHandler.java, handlers/SupplyHandler.java, handlers/ProxyPropertiesHandler.java, handlers/config.sample, handlers/NotFoundHandler.java, handlers/RolesHandler.java, handlers/Makefile, handlers/DialogHandler.java, handlers/DirectoryHandler.java, handlers/PublishHandler.java, handlers/ChainSawHandler.java, handlers/ConfigFileHandler.java, handlers/VirtualHostHandler.java, handlers/ResourceHandler.java, handlers/SMTPHandler.java, handlers/UrlMapperHandler.java, util/Base64.java, samples/Palm/nametool/NametoolHandler.java, handlers/BasicSessionHandler.java, handlers/CookieSessionHandler.java
rename: handlers/NametoolHandler.java -> samples/Palm/nametool/NametoolHandler.java, handlers/AuthHandler.java -> handlers/BasicSessionHandler.java, handlers/SessionHandler.java -> handlers/CookieSessionHandler.java
1. Restore MapPage.java
  
2. Add copyright notices to (most of) the handlers.
  
3. Rename AuthHandler to BasicSessionHandler.
   Rename SessionHandler to CookieSessionHandler.
   (update your config files.)
Wed Apr 19 12:16:33 2000 PDT cstevens

update: handlers/Makefile
Don't compile SerialPersist unless sun.misc classes needed are available
Mon Apr 17 16:43:44 2000 PDT cstevens

create: proxy/CookieFilter.java, proxy/HistoryFilter.java, proxy/JunkBusterHandler.java, blockfile, ad.gif, samples/Palm/nametool/config.nametool, samples/Palm/nametool/index.html, samples/Palm/nametool/search.html, samples/Palm/pqa/config.pqa, samples/Palm/pqa/index.html, samples/Palm/concept/concept.tcl, samples/Palm/concept/file.tcl, samples/Palm/concept/config.concept, samples/Palm/concept/index.html, samples/CookieProxy/register/index.html, samples/CookieProxy/register/register.html, samples/CookieProxy/ad.gif, samples/CookieProxy/blockfile, samples/CookieProxy/config.cookie, samples/CookieProxy/cookies.html, samples/CookieProxy/history.html, samples/CookieProxy/index.html, .deleted_files/proxy/BookMarkHandler.java, session/PJamaSessionManager.java, util/Format.java, util/Base64.java
update: proxy/ProxyHandler.java, proxy/ProxyHandler.java, proxy/SunProxy.java, proxy/Makefile, Makefile, config.proxy, server/ChainHandler.java, server/Main.java, server/Request.java, server/Server.java, server/Makefile, tcl/TclHandler.java, tcl/Makefile, tcl/TclServerTemplate.java, tests/defs, tests/sunlabs.brazil.server.FileHandler.test, tests/sunlabs.brazil.server.ChainHandler.test, ge/config.ge, handlers/AclSwitchHandler.java, handlers/AuthHandler.java, handlers/GenericProxyHandler.java, handlers/PushHandler.java, handlers/HomeDirHandler.java, handlers/ReflectHandler.java, handlers/SunNetAuthHandler.java, handlers/Makefile, handlers/PublishHandler.java, handlers/ChainSawHandler.java, handlers/config.bsl, handlers/ConfigFileHandler.java, handlers/ResourceHandler.java, handlers/UrlMapperHandler.java, handlers/DynamicConfigHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java, handlers/templates/ChangedTemplate.java, util/Makefile, util/StringMap.java, util/SocketFactory.java, util/http/HttpInputStream.java, util/http/HttpUtil.java, filter/Filter.java, filter/Makefile, filter/config, filter/config2, filter/TemplateFilter.java, filter/TclFilter.java, filter/config-session, filter/config3, filter/config-large, filter/config.copy, filter/CopyContentFilter.java, filter/FilterHandler.java, .deleted_files/proxy/FilterProxyHandler.java, session/SerialPersist.java, session/Makefile, session/SessionManager.java
rename: tail/doc/index.html -> filter/doc/index.html, tail/doc/sample.txt -> filter/doc/sample.txt, tail/doc/a.html -> filter/doc/a.html, tail/doc/b.html -> filter/doc/b.html, tail/doc/h1.html -> filter/doc/h1.html, tail/doc/missing.html -> filter/doc/missing.html, tail/doc/line1.jpg -> filter/doc/line1.jpg, tail/doc/logo.gif -> filter/doc/logo.gif, tail/doc/de-link.tcl -> filter/doc/de-link.tcl, tail/Filter.java -> filter/Filter.java, tail/Makefile -> filter/Makefile, tail/README -> filter/README, tail/PlainFilter.java -> filter/PlainFilter.java, tail/config -> filter/config, tail/config2 -> filter/config2, tail/TemplateFilter.java -> filter/TemplateFilter.java, tail/TclFilter.java -> filter/TclFilter.java, tail/config-session -> filter/config-session, tail/SessionFilter.java -> filter/SessionFilter.java, tail/config3 -> filter/config3, tail/ReplaceFilter.java -> filter/ReplaceFilter.java, tail/config-large -> filter/config-large, tail/config.copy -> filter/config.copy, tail/CopyContentFilter.java -> filter/CopyContentFilter.java, tail/TailHandler.java -> filter/FilterHandler.java, serializable-persistence/SessionManager.java -> session/SerialPersist.java, serializable-persistence/Makefile -> session/Makefile, handlers/SessionManager.java -> session/SessionManager.java
delete: proxy/FilterProxyHandler.java, serializable-persistence/Main.java, serializable-persistence/index.html, serializable-persistence/default.cfg, serializable-persistence/config.broken, serializable-persistence/config, serializable-persistence/README, serializable-persistence/broken.html, server/SampleHandler.java
Basic documentation was missing for Server, ChainHandler, Request
  
Request.java: 
1. Made request Properties a rechainable Properties object.
2. Replaced DataOutputStream with HttpOutputStream.
  
Rename "tail" directory and TailHandler.java to "filter" directory and
FilterHandler.java.
  
FilterHandler.java:
1. configuration property "wrap" -> "handler"
2. configuration property "filter" -> "filters"
3. Now that the HTTP response headers is a first-class object, rewrote
   FilterHandler so that it doesn't have to re-extract the headers from the
   output stream of the wrapped handler.
4. Disable chunked encoding before requesting data that will be filtered.
  
TemplateHandler.java, TemplateFilter.java:
1. configuration property "templateClass" -> "templates"
  
AuthHandler.java:
1. Handles authentication via 401 or 407 (Proxy-Authentication).
  
ResourceHandler.java:
1. Exposes public method to get contents of files from the resource file.
  
DynamicConfigHandler.java
1. Uses rechainable Properties object to insert new Server properties behind
   the Request properties before dispatching to the wrapped handler's respond
   method.
  
HttpInputStream.java:
1. Streaming media didn't work because data from server wasn't flushed to
   client until the end of the request.
  
CookieMonster renamed to CookieFilter.
  
CookieFilter.java: 
1. converted to a Filter; as a Filter, the CookieFilter can use an
   arbitrary authentication scheme and be combined with any number of other
   content filters.  
2. uses SessionManager to hold cookies instead of accessing PJama directly.
  
PropsTemplate.java:
1. exposes public method to parse and dereference composed property
   names (using the '[' and ']' characters).  Method is used by BSLTemplate.
  
SessionManager.java rewritten to allow runtime selection of different
SessionManagers.  Now specific session manager can be chosen in the "init=
" line of the config file.  Previously, had to compile various files that
all impersonated "sunlabs.brazil.handler.SessionManager" and set classpath
to point to the desired one.  Now there are three implementations of the
SessionManager:  
1. SessionManager:      Default session manager, no persistence.
2. PJamaSessionManager: Using PJama.
3. SerialPersist:       Using Serializable and ObjectOutputStream.
Tue Mar 14 09:58:52 2000 PDT cstevens

update: Makefile
Didn't mean to put this file back yet.  Removed changes that are preventing
compiling with rest of naws.
Mon Mar 13 16:59:22 2000 PDT cstevens

update: handlers/NametoolHandler.java
some more comments on the NametoolHandler
Wed Mar 8 09:50:57 2000 PDT cstevens

delete: deleted_files/pcsdemo/config.demo-win32-dal-legacy, deleted_files/pcsdemo/config.demo-win32-sm1, deleted_files/pcsdemo/run, deleted_files/pcsdemo/config.demo-devices, deleted_files/pcsdemo/config.demo-devices-client-unix, deleted_files/pcsdemo/config.demo-devices-client-windows, deleted_files/pcsdemo/config.demo-devices-server-unix, deleted_files/pcsdemo/config.demo-devices-server-windows, deleted_files/pcsdemo/startandtail, deleted_files/pcsdemo/doc/demo/commerce/receipt.html, deleted_files/util/TimedThread.java, deleted_files/handlers/HtmlMunge.java, deleted_files/handlers/QueryHandler.java, deleted_files/handlers/RemoteNetscapeHandler.java, deleted_files/services/ci/doc/config.initial
hide deleted files.
Mon Mar 6 14:16:45 2000 PDT cstevens

create: handlers/NametoolHandler.java, handlers/DynamicConfigHandler.java
update: server/ChainHandler.java, handlers/Makefile, handlers/DirectoryHandler.java, handlers/ResourceHandler.java, handlers/templates/PropsTemplate.java
NametoolHandler.java:
Round 1.
  
DynamicConfigHandler.java:
Round 1.
  
DirectoryHandler.java:
NullPointerException if directory had no files in it or was not readable.
  
ResourceHandler.java:
NullPointerException if file resource was not found in .jar file
  
PropsTemplate.java:
Use pattern of the form [XXX] to substitute in the value of a property in
the middle of another property in the <property> tag.
  
ChainHandler.java:
If handler threw an exception while being initialized by ChainHandler, the
ChainHandler would print an error message, but subsequently still dispatch
HTTP requests to it.
Sun Feb 27 19:53:10 2000 PDT suhler

create: proxy/FilterProxyHandler.java
update: Makefile, ps.template, fixJavadocHtml.tcl, proxy/ProxyHandler.java, proxy/Makefile, tini-env/config.tini, handlers/GenericProxyHandler.java, handlers/NotFoundHandler.java, handlers/MapPage.java, handlers/UrlMapperHandler.java
- fixed proxyHandler
- added FilterProxyHandler to provide a simple add-removing proxy
- patched bugs in the GenericProxyHandler where headers weren't
  being processed properly
- doc changes and minor fixes
Wed Feb 16 11:51:52 2000 PDT suhler

create: tail/config.copy, tail/CopyContentFilter.java
update: tail/Makefile
added filter to copy the contents of a web site
Tue Feb 15 17:25:12 2000 PDT suhler

update: tail/TailHandler.java, tail/TemplateFilter.java, tail/TclFilter.java, proxy/SunProxy.java, tcl/TclServerTemplate.java, server/ChainHandler.java, handlers/GenericProxyHandler.java, handlers/MultiProxyHandler.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/templates/IncludeTemplate.java, handlers/templates/Template.java, handlers/templates/TemplateRunner.java
minor changes do to the GE demo
- virtual hosts can now be mounted at /
- loggin messages changes
- template runner now handles comment tags
- configFileHandler glob matching for "set" fixed
Tue Feb 15 17:23:12 2000 PDT suhler

create: tini-env/tini/README, tini-env/tini/kill.html, tini-env/tini/chmod.html, tini-env/tini/getext.html, tini-env/tini/ls.html, tini-env/tini/ps.html, tini-env/tini/mkdir.html, tini-env/tini/put.html, tini-env/tini/ram.html, tini-env/tini/rm.html, tini-env/tini/version.html, tini-env/micro/README, tini-env/micro/Tini.java, tini-env/micro/Server.java, tini-env/README, tini-env/dops.html, tini-env/bottom.html, tini-env/config.tini, tini-env/put.html, tini-env/index.html, tini-env/middle.html, tini-env/run, tini-env/top.html
added the Brazil tini development environment to the workspace
Tue Feb 15 12:49:32 2000 PDT suhler

update: ge/doc_root/ge.tcl, ge/doc_root/init.tcl, ge/doc_root/fridge/ge/GetStatus.html
added documentation, re-did "register" button
Mon Feb 14 15:01:25 2000 PDT suhler

create: handlers/UrlMapperHandler.java
update: handlers/Makefile
Handler to rempa or redirect url's based on regular expressions
Fri Feb 11 12:37:19 2000 PDT suhler

create: ge/doc_root/preferences/README, ge/doc_root/preferences/default.cfg, ge/doc_root/ge.tcl, ge/doc_root/set.html, ge/doc_root/conf.html, ge/doc_root/what.html, ge/doc_root/register.html, ge/doc_root/status.html, ge/doc_root/init.tcl, ge/doc_root/README, ge/doc_root/agenda.html, ge/doc_root/graph.html, ge/doc_root/test.html, ge/doc_root/schematic.html, ge/doc_root/care.pdf, ge/doc_root/fridge/ge/GetStatus.html, ge/doc_root/fridge/ge/GetStatusL.html, ge/doc_root/fridge/ge/GetStatusX.html, ge/doc_root/fridge/ge/GetStatusState.html, ge/doc_root/fridge/ge/README, ge/README, ge/Makefile, ge/config.ge, ge/gemeeting.ppt
The GE refrigerator demo
Mon Feb 7 11:36:27 2000 PDT cstevens

update: handlers/templates/BSLTemplate.java
If </if> was missing, BSL template got a null-pointer exception.
Fri Feb 4 14:08:39 2000 PDT suhler

update: serializable-persistence/Makefile, serializable-persistence/SessionManager.java
??
Wed Feb 2 16:28:37 2000 PDT suhler

create: pJama/Main.java, pJama/Makefile, pJama/README, pJama/config, pJama/SessionManager.java, pJama/config.broken, pJama/broken.html, pJama/index.html, pJama/default.cfg, pJama/run
pJama version of persistent state
Wed Feb 2 14:52:20 2000 PDT suhler

update: handlers/GenericProxyHandler.java, handlers/MultiProxyHandler.java, handlers/MapPage.java, handlers/ProxyPropertiesHandler.java, handlers/templates/ContentTemplate.java
fixed bugs in multiproxyhandler
- other sites can now be mounted at "/"
- added debuggin to url rewriting (use log>5)
can now specify content type for proxyProperties to handler
ContentTemplate now deals with javascript in the document "head"
Wed Feb 2 09:45:41 2000 PDT suhler

create: serializable-persistence/default.cfg
forgot this one!
Wed Feb 2 09:38:16 2000 PDT suhler

update: handlers/templates/BSLTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/PropsTemplate.java
Claim these 3 templates are serializable
This allow us to test the experimental serializing persistent session
handler
Wed Feb 2 10:15:46 2000 EDT rinaldo

create: services/pkcs/PKCSHandler.java, services/pkcs/SSLServer.java, services/pkcs/Makefile, services/pkcs/config, services/pkcs/config.test, services/pkcs/doc/q1, services/pkcs/doc/PKCSHandler.java.html, services/pkcs/doc/index.html, services/pkcs/doc/overview.html, services/pkcs/doc/p11src.zip, services/pkcs/doc/spec.html, services/pkcs/doc/JavaCardRSA.java.html
update: pcsdemo/dist/brazilall.iap, pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-server, pcsdemo/config.smartcards, pcsdemo/doc/demo/commerce/shipupdate.form, pcsdemo/doc/demo/commerce/receipt.form, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/frbanner.html, pcsdemo/doc/demo/frbannerleft.form, pcsdemo/doc/demo/frbannerright.html, pcsdemo/doc/demo/index.html, pcsdemo/doc/demo/personalize/webcard.html, pcsdemo/doc/js/managecard.js, pcsdemo/doc/welcome.html, services/signjar/Makefile, services/ci/doc/frcontent.html, services/ci/doc/index.html, services/ci/doc/run/index.html, services/ci/config, services/ci/Makefile, services/ci/RunProgramsHandler.java, serializable-persistence/Makefile, pcsdemo/doc/demo/frcontent.form, services/ci/doc/run/runindexer.html
rename: pcsdemo/doc/demo/frcontent.html -> pcsdemo/doc/demo/frcontent.form, pcsdemo/doc/demo/access.html -> pcsdemo/doc/demo/slb/access.html, services/ci/doc/run/runindexserver.html -> services/ci/doc/run/runindexer.html, services/ci/doc/run/runindexserverstatus.html -> services/ci/doc/run/runindexerstatus.html, services/ci/echoargs -> services/ci/startindexer
delete: services/ci/doc/config.initial
Added BSL to several of the html pages for the demo kit, while
making changes for Bert. The changes are extenisve in appearance
but offer little new functionality other than.

	Card and OpenCard status always displayed
	Application specific html code for each card is no possible
	Redid Several of the purchase forms.


PKCS
	Second interation of the PKCS11 UPI service

CI
	First version of Conceptual Indexing Web based Unser interface


	Various other build local or remote issues.
Tue Feb 1 19:39:36 2000 PDT suhler

create: serializable-persistence/Main.java, serializable-persistence/Makefile, serializable-persistence/README, serializable-persistence/SessionManager.java, serializable-persistence/config.broken, serializable-persistence/broken.html, serializable-persistence/config, serializable-persistence/index.html
1st pass at creating a version of SessionManager that does persistence, 
by "serializing" everything in its session table, and writing it out to a file
Tue Feb 1 19:03:08 2000 PDT suhler

update: handlers/templates/TemplateHandler.java, handlers/SessionHandler.java
- Missing close() on templateHandler
- forgot to strip off optional ";" at end of cookie value
  in SessionHandler
Sun Jan 30 17:45:29 2000 PDT suhler

update: server/FileHandler.java
removed platform dependancy on redirect check
Tue Jan 11 13:30:10 2000 PDT suhler

update: handlers/Makefile, handlers/ProxyPropertiesHandler.java
rename: handlers/RemoteStsHandler.java -> handlers/ProxyPropertiesHandler.java
renamed RemoteStsHAndler to ProxyPropertiesHandler.
This handler proxies to a remote web site.  If the resultant content
is text/plain, it loads the result as java properties into the
request object.  Otherwise it passes the content through unchanged
Tue Jan 11 10:45:02 2000 PDT suhler

create: handlers/config.mail, handlers/mail.html, handlers/SMTPHandler.java
update: handlers/Makefile
1st pass at an SMTP handler for sending email
Mon Jan 3 13:37:58 2000 PDT suhler

update: handlers/templates/TemplateHandler.java
Removed the use of the FileHandler to retrieve the
contents of the template
Wed Dec 15 12:03:05 1999 PDT suhler

update: handlers/ConfigFileHandler.java
Properties we not being passed on if a "set" was atempted, and no
values were changed
Thu Dec 9 21:36:19 1999 EDT rinaldo

create: pcsdemo/dist/images/brazilallclient.gif, pcsdemo/dist/images/brazilallserver.gif, pcsdemo/doc/applets/x509.raw, pcsdemo/doc/applets/x509.cacert, pcsdemo/doc/applets/x509.cacert.p12, pcsdemo/doc/signjarn, pcsdemo/doc/already.html, pcsdemo/doc/signjarn.bat, pcsdemo/doc/welcome.html, services/signjar/Makefile, services/signjar/SignJarHandler.java, services/ci/doc/config.initial, services/ci/doc/frcontent.html, services/ci/doc/index.html, services/ci/doc/main.html, services/ci/doc/run/index.html, services/ci/doc/run/runindexserver.html, services/ci/doc/run/stopindexserver.html, services/ci/doc/run/runindexserverstatus.html, services/ci/config, services/ci/Makefile, services/ci/echoargs, services/ci/RunProgramsHandler.java, services/util/ParseMultiPartForm.java, services/util/Makefile
update: pcsdemo/dist/brazilall.iap, pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-server, pcsdemo/runpcs, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/frcontent.html, pcsdemo/doc/demo/personalize/index.html, pcsdemo/doc/demo/personalize/webcard.html, pcsdemo/doc/demo/JINI/index.html, pcsdemo/doc/applets/Makefile, pcsdemo/doc/cardlets/Makefile, pcsdemo/doc/js/managecard.js, pcsdemo/doc/oc/octestupper.html, pcsdemo/doc/configure.form, pcsdemo/doc/index.html, server/Request.java, handlers/Makefile, handlers/SunNetAuthHandler.java, handlers/ConfigFileHandler.java, handlers/templates/FormTemplate.java
rename: asp/oleupi/server/doc/push.html -> services/asp/oleupi/server/doc/push.html, asp/oleupi/server/comole-src/COMAuthInfo.java -> services/asp/oleupi/server/comole-src/COMAuthInfo.java, asp/oleupi/server/comole-src/COMBSTR.java -> services/asp/oleupi/server/comole-src/COMBSTR.java, asp/oleupi/server/comole-src/COMExcepInfo.java -> services/asp/oleupi/server/comole-src/COMExcepInfo.java, asp/oleupi/server/comole-src/COMClassObject.java -> services/asp/oleupi/server/comole-src/COMClassObject.java, asp/oleupi/server/comole-src/COMDispParams.java -> services/asp/oleupi/server/comole-src/COMDispParams.java, asp/oleupi/server/comole-src/COMException.java -> services/asp/oleupi/server/comole-src/COMException.java, asp/oleupi/server/comole-src/COMHResult.java -> services/asp/oleupi/server/comole-src/COMHResult.java, asp/oleupi/server/comole-src/COMIDispatch.java -> services/asp/oleupi/server/comole-src/COMIDispatch.java, asp/oleupi/server/comole-src/COMIMultiQI.java -> services/asp/oleupi/server/comole-src/COMIMultiQI.java, asp/oleupi/server/comole-src/COMIUnknown.java -> services/asp/oleupi/server/comole-src/COMIUnknown.java, asp/oleupi/server/comole-src/COMSafeArray.java -> services/asp/oleupi/server/comole-src/COMSafeArray.java, asp/oleupi/server/comole-src/COMVariant.java -> services/asp/oleupi/server/comole-src/COMVariant.java, asp/oleupi/server/comole-src/GUID.java -> services/asp/oleupi/server/comole-src/GUID.java, asp/oleupi/server/DocToPDF.java -> services/asp/oleupi/server/DocToPDF.java, asp/oleupi/server/comco.jar -> services/asp/oleupi/server/comco.jar, asp/oleupi/server/MSWordHandler.java -> services/asp/oleupi/server/MSWordHandler.java, asp/oleupi/server/config.oleword -> services/asp/oleupi/server/config.oleword, asp/oleupi/server/Makefile -> services/asp/oleupi/server/Makefile
delete: pcsdemo/startandtail
Add BSL support fix some issues raised by users.
Thu Dec 9 10:44:16 1999 PDT suhler

update: handlers/templates/TemplateHandler.java, server/FileHandler.java
The template handler is (incorrectly) using the FileHandler to read its
templates.  Until this is changed, I put in a "hack" to trick the
file-handler into working properly - again
Tue Dec 7 10:56:41 1999 PDT suhler

update: handlers/CgiHandler.java, handlers/ConfigFileHandler.java, handlers/templates/ContentTemplate.java
- fixed bug in cgi handler - it got the script name wrong
- The configFileHandler was setting the request properties BEFORE processing
  the query data
- The ContentTemplate now extracts javascript scripts in the <head> and
  places them in a "script" property
Fri Dec 3 15:29:13 1999 PDT suhler

create: ps.template, fixJavadocHtml.tcl
update: Makefile
Added make target and accessories needed to genrate a
pdf version of our javadoc documentation.  See the Makefile for
more information
Tue Nov 30 13:57:32 1999 PDT suhler

update: request/HttpRequest.java, handlers/SessionManager.java, handlers/Makefile, handlers/SessionHandler.java, handlers/ConfigFileHandler.java, handlers/templates/TemplateRunner.java
- rewrote ConFigFileHandler to minimize the number of config files
  created
- fixed some diagnostic messages
Wed Nov 17 15:34:17 1999 PDT cstevens

create: tests/sunlabs.brazil.server.ChainHandler.test
update: server/ChainHandler.java, server/FileHandler.java, server/Handler.java, server/Server.java, tests/TestHandler.java, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.server.FileHandler.test
delete: handlers/HtmlMunge.java, handlers/QueryHandler.java, handlers/RemoteNetscapeHandler.java
documentation.
  
Tests for ChainHandler.
Wed Nov 17 10:43:45 1999 PDT suhler

create: neil/Makefile, neil/README, neil/NeilPushHandler.java, neil/config, neil/push.html
update: Makefile, tail/Makefile, tail/TailHandler.java, util/regexp/Regexp.java, proxy/ProxyHandler.java, proxy/SunProxy.java, tcl/TclServerTemplate.java, sunlabs/Main.java, handlers/PushHandler.java, handlers/ConfigFileHandler.java, handlers/push.html, handlers/config.push, handlers/templates/IncludeTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/BSLTemplate.java
Merge with Colin's last putback
Added project for Neil's website
Tue Nov 16 19:03:05 1999 PDT cstevens

update: proxy/ProxyHandler.java, server/ChainHandler.java, server/FileHandler.java, server/Main.java, server/Server.java, handlers/AuthHandler.java, handlers/MultiHostHandler.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, handlers/templates/ChangedTemplate.java
fix wildcard imports
  
expunge Server.initHandler and Server.initObject.
Tue Nov 16 14:55:40 1999 PDT cstevens

create: tests/sunlabs.brazil.util.http.MimeHeaders.test, tests/sunlabs.brazil.util.StringMap.test, tests/sunlabs.brazil.server.FileHandler.test
update: server/Connection.java, server/FileHandler.java, server/Request.java, server/Server.java, tests/TestHandler.java, tests/defs, tests/sunlabs.brazil.server.Connection.test, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.http.HttpUtil.test, handlers/HtmlRewriter.java, util/StringMap.java, util/http/MimeHeaders.java, util/http/HttpUtil.java
Issues with Thread.interrupt() vs. Thread.stop().
1. Thread.interrupt() doesn't interrupt I/O in jdk-1.1.5
2. Thread.stop() is OK to use (ignore deprecation warnings), but makes it
   difficult to write test scripts -- Thread.interrupt() only interrupts the
   response thread at known places, so a known number of log messages can
   be examined.
3. Thread.interrupt() generates different log messages under jdk-1.1
   and jdk-1.2, making it harder to write portable test scripts.  Suppress
   the differences.
  
---------------------------------------------------------------------------
StringMap:
  
1. Rename "getValue" to "get" to make it more compatible with Dictionary
naming scheme.
  
---------------------------------------------------------------------------
Connection.java:
  
1. Name printed for thread in log message when a connection is accepted
   should agree with the name printed for the thread when the Request does
   something.
  
2. When sending 404 to client, the log message should indicate the filename.
  
3. Thread.interrupt() issues interacting with the test scripts.
  
---------------------------------------------------------------------------
FileHandler.java:
  
1. documentation.
  
2. "blockSize" property was retrieved from Properties but never used, since
   the copy operation uses the Server.bufsize.  "blockSize" removed.
  
3. "deny" property to deny access to files that matched a glob pattern was
   broken.  Arguments to Glob were reversed, so the code was treating the 
   URL as the pattern and the deny pattern as the filename.  No matches.
  
4. URL was never "URL decoded", so something like "/in%64ex%2ehtml"
   was not converted to "/index.html".  Code would therefore look for the
   existence of a file called "in%64ex%2ehtml".  
  
5. java.net.URL was used to convert a URL to the local file name.  However,
   java.net.URL does not collapse a trailing "/.." (or "/.") in the URL,
   leading to the possibility of escaping from the document root.
  
6. In jdk-1.2, java.io.File collapses out multiple consecutive "/" characters
   in a file name, while in jdk-1.1, this doesn't happen.  It is necessary
   to take them out to make it easier to compare if two files are the
   same.
  
7. Request property "fileName" is set to the name of the file being 
   fetched.  But if the user requested a directory name, and the 
   FileHandler automatically filled in the name of the index file (e.g., 
   index.html), "fileName" should have been set to the that file, not
   just the name of the directory.
  
8. After appending the name of the index file onto the name of the
   directory requested in an URL, the FileHandler didn't ensure that that
   file existed (and was a regular file).  This would cause a
   FileNotFoundException, and the server would either send a "500 Server
   Error" or just close the connection back to the client.  Instead, it
   should return a "404 Not Found" message.
  
---------------------------------------------------------------------------
Request.java:
  
1. If the "Content-Length" provided in the request was malformed, the
   log message should display how it was malformed.
  
2. If Request.sendError() was called, it was logging the word "null"
   if the user passed in null for the detail message.  Aesthetically 
   displeasing.
  
3. If Request.sendError() is called when part of a response has already
   been sent, it cannot send the error headers and error message, because
   that would confuse things, so it must just close the connection.  That
   was done right, but it wasn't bumping the Server.errorCount.  It still
   should do that always.
  
---------------------------------------------------------------------------
Server.java:
  
1. Name printed for thread in log message when a connection is accepted
   should agree with the name printed for the thread when the Request does
   something.
  
2. Thread.interrupt() issues interacting with the test scripts.
  
---------------------------------------------------------------------------
defs:
  
env(TCL_CLASSPATH) can be set to the path to find additional classes (such
as everything in sunlabs.brazil.*) that was not in env(CLASSPATH) when the
JVM was started up.
  
However, we cannot use TCL_CLASSPATH because some of the code (in both tcl
and Java) uses Class.forName(), which doesn't go through the TclClassLoader
to find the class we are referencing.  Instead the CLASSPATH has to be
setup before running the tests because the JVM won't pick up changes to
the CLASSPATH variable after it's running.
  
---------------------------------------------------------------------------
MimeHeaders.java
  
Bug used to cause continuation line to be added to the _first_ occurrence of
the key, not the most recent occurence (namely, the previous line).
Tue Nov 16 08:59:33 1999 PDT suhler

create: sunlabs/Main.java, sunlabs/ClockFormat.java, sunlabs/DateTemplate.java, sunlabs/ServerProcess.java, sunlabs/libcom_sun_server_ServerProcess.so
update: sunlabs/FrameSetTemplate.java, sunlabs/README, sunlabs/Makefile
- New "main" that allows change-user requests on solaris, using the
  "server.so" file that comes with the JWS/2.0.  The properties are:
  "userName" and "groupName"
 
- Date template that substitutes dates into html using strftime()
  format strings
Tue Nov 9 20:20:08 1999 PDT cstevens

create: tests/Makefile, tests/all, tests/TestHandler.java, tests/TestServer.java, tests/TestInputStream.java, tests/defs, tests/sunlabs.brazil.util.http.HttpInputStream.test, tests/sunlabs.brazil.server.Connection.test, tests/sunlabs.brazil.server.Server.test, tests/sunlabs.brazil.util.Glob.test, tests/sunlabs.brazil.util.http.HttpUtil.test, tests/sunlabs.brazil.util.regexp.Regexp.test
update: Makefile, server/Connection.java, server/Main.java, server/Server.java, request/HttpRequest.java, handlers/MultiHostHandler.java, util/Glob.java, util/http/HttpInputStream.java, util/http/HttpUtil.java
rename: test/config.rewrite -> tests/config.rewrite
start of tests.
 
fixing bugs revealed by writing tests.
Tue Nov 9 14:55:14 1999 PDT suhler

create: sunlabs/FrameSetTemplate.java, sunlabs/README, sunlabs/Makefile
Directory for sunlabs.eng specific handlers for Brazil
Mon Nov 8 16:21:03 1999 PDT suhler

create: handlers/bsl2.html
update: handlers/config.bsl, handlers/templates/PropsTemplate.java
added option to PropsTemplate to place query parameters and
mime headers into request properties before the template is processed
Wed Nov 3 17:46:55 1999 PDT cstevens

create: handlers/MultiHostHandler.java, handlers/config.host
update: server/Request.java, server/Server.java, handlers/Makefile
MultiHostHandler
Wed Nov 3 15:51:35 1999 PDT suhler

create: assemble-doc/Makefile, assemble-doc/README, assemble-doc/pkgs-sts, assemble-doc/overview.html, assemble-doc/package-list, assemble-doc/pkgs-server, assemble-doc/srcs-sts, assemble-doc/srcs-applets, assemble-doc/srcs-server, assemble-doc/extra/images/brazilicon.gif, assemble-doc/extra/build.html, assemble-doc/extra/tutorial.html, assemble-doc/extra/javasource.html, assemble-doc/extra/tutorial-frame.html, assemble-doc/extra/tutorial/GenericX10Handler.html, assemble-doc/extra/tutorial/GenericX10Handler.java, assemble-doc/extra/tutorial/Makefile.txt, assemble-doc/extra/tutorial/README, assemble-doc/extra/tutorial/TwoWayHandler.html, assemble-doc/extra/tutorial/TwoWayHandler.java, assemble-doc/extra/tutorial/config.txt, assemble-doc/extra/tutorial/control.html, assemble-doc/extra/tutorial/pull.class, assemble-doc/extra/tutorial/pull.html, assemble-doc/extra/tutorial/pull.java, assemble-doc/bin/README, assemble-doc/bin/convert.tcl, assemble-doc/bin/explode.tcl, assemble-doc/bin/link-doc.tcl, assemble-doc/bin/list_packages.tcl
documentation assembly stuff
Wed Nov 3 10:38:57 1999 PDT suhler

update: server/Main.java
added "interfaceHost" option to main to better support multi-homes machines
Mon Nov 1 15:17:09 1999 PDT cstevens

create: request/Makefile
update: proxy/Makefile, Makefile, handlers/Makefile, util/Makefile
rename: util/http/HttpSocket.java -> request/HttpSocket.java, util/http/HttpRequest.java -> request/HttpRequest.java, util/http/HttpSocketPool.java -> request/HttpSocketPool.java
Move HttpRequest to separate directory from rest of util.
Mon Nov 1 12:39:58 1999 PDT suhler

update: handlers/templates/ChangedTemplate.java
look for root property within prefix first
Mon Nov 1 10:55:02 1999 PDT cstevens

create: handlers/templates/ChangedTemplate.java
update: server/FileHandler.java, handlers/Makefile, handlers/templates/HtmlRewriter.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java
ChangedTemplate.
Tue Oct 26 20:51:22 1999 PDT cstevens

create: handlers/QueryHandler.java
update: proxy/SunProxy.java, proxy/Makefile, config.proxy, server/FileHandler.java, server/Main.java, server/Request.java, server/Server.java, tcl/TclServerTemplate.java, handlers/AuthHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/HomeDirHandler.java, handlers/RemoteStsHandler.java, handlers/MultiProxyHandler.java, handlers/SunNetAuthHandler.java, handlers/PublishHandler.java, handlers/ChainSawHandler.java, handlers/SessionHandler.java, handlers/ConfigFileHandler.java, handlers/VirtualHostHandler.java, handlers/ResourceHandler.java, handlers/PushHandler.java, handlers/templates/NoImageTemplate.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, handlers/templates/BSLTemplate.java, util/SocketFactory.java, util/http/MimeHeaders.java, util/http/HttpRequest.java, proxy/ProxyHandler.java
rename: proxy/RemoteHandler.java -> proxy/ProxyHandler.java
Eliminate public methods Server.initHandler() and Server.initObject().
  
Get rid of public variables Request.server and Request.sock:
A. In all cases, Request.server was not necessary; it was mainly used for
   constructing the absolute URL for a redirect, so Request.redirect() was
   rewritten to take an absolute or relative URL and do the right thing.
B. Request.sock was changed to Request.getSock(); it is still rarely used
   for diagnostics and logging (e.g., ChainSawHandler).
  
Change name of RemoteHandler to ProxyHandler, since it is an "HTTP Proxy",
not an "HTTP Remote", whatever that is.
  
Change GenericProxyHandler (which actually filters data from other sites, and
is not a proxy at all) to use Request.sendResponse(InputStream, ...) to
stream the data, instead of fetching the entire contents into a big byte array
and then sending the byte array to Request.sendResponse(byte[], ...).
  
Changed TclServerTemplate and BSLTemplate to use the config parameter "debug"
to decide whether to emit comments into the resultant HTML file.
  
Eliminate unused SocketFactory.newSocket(InetAddress, int) method.
  
HTTP request returned ungracefully if "Content-Length" in a POST was 
negative or too much to allocate.
  
ChainSawHandler: header must be spelled as "Referer".
  
Change MimeHeaders so it uses "put" instead of "set", to be compatible with
names chosen by Hashtable and StringMap.
Mon Oct 25 14:32:57 1999 PDT suhler

update: server/FileHandler.java, server/Request.java
filehandler dodn't send content length!!
Thu Oct 21 18:23:42 1999 PDT cstevens

create: handlers/bsl.html
Sample BSL document.
Thu Oct 21 18:22:31 1999 PDT cstevens

create: handlers/config.bsl, handlers/templates/BSLTemplate.java
The BSL files weren't checked in.
Thu Oct 21 18:21:19 1999 PDT cstevens

update: tcl/TclHandler.java, tcl/TclTemplateChannel.java, tcl/TclTemplateChannel.java, tcl/TclServerTemplate.java, handlers/Makefile, handlers/HtmlRewriter.java, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/HtmlRewriter.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java, util/LexML.java
BSL Template.
  
TemplateHandler now takes a list of Templates, rather than just one.  When
parsing an HTML file, it will now dispatch to the union of all the tag
methods defined in the list of Templates.  In that way, the user can
compose things like the BSLTemplate to iterate over request properties with
the PropsTemplate to substitute in their values.  Otherwise, it would have
required N separate passes (via N separate TemplateHandlers) over the HTML
file, one for each Template and/or level of recursion in the BSLTemplate.
  
HtmlRewriter didn't re-emit parsed comments as comments.
  
Added ability to change a tag into a comment.  Used by BSL and Tcl templates,
to keep track of where the substitution occurred when examining the resultant
HTML document.
  
TclServerTemplate: added configuration property to source an initialization
script into the Tcl Interp the first time the Interp is used.
Wed Oct 20 15:09:11 1999 PDT suhler

update: tcl/TclHandler.java, tcl/TclTemplateChannel.java, tcl/TclServerTemplate.java
fixed wildcarded imports
Tue Oct 19 19:11:26 1999 PDT cstevens

update: Makefile, tail/Makefile, tcl/Makefile
rename: tclHandlers/TclHandler.java -> tcl/TclHandler.java, tclHandlers/test.tcl -> tcl/test.tcl, tclHandlers/subst.tcl -> tcl/subst.tcl, tclHandlers/Makefile -> tcl/Makefile, tclHandlers/README -> tcl/README, tclHandlers/browser-hj.gif -> tcl/browser-hj.gif, tclHandlers/browser-ie.gif -> tcl/browser-ie.gif, tclHandlers/browser-ns.gif -> tcl/browser-ns.gif, tclHandlers/config -> tcl/config, tclHandlers/index.html -> tcl/index.html, tclHandlers/switch.tcl -> tcl/switch.tcl, tclHandlers/testSwitch.html -> tcl/testSwitch.html, tclHandlers/count.tcl -> tcl/count.tcl, tclHandlers/run -> tcl/run, tclHandlers/stock.tcl -> tcl/stock.tcl, tclHandlers/virtual.tcl -> tcl/virtual.tcl, tclHandlers/virtual2.tcl -> tcl/virtual2.tcl, tclHandlers/config.virtual2 -> tcl/config.virtual2, tclHandlers/config.tclserver -> tcl/config.tclserver, tclHandlers/TclTemplateChannel.java -> tcl/TclTemplateChannel.java, tclHandlers/TclServerTemplate.java -> tcl/TclServerTemplate.java
Rename tclHandlers directory to tcl, since it has more than just handlers.
Tue Oct 19 19:04:06 1999 PDT cstevens

create: tclHandlers/config.tclserver, tclHandlers/TclTemplateChannel.java, tclHandlers/TclServerTemplate.java
update: proxy/SunProxy.java, server/Request.java, handlers/HtmlRewriter.java, tclHandlers/Makefile, util/StringMap.java, util/LexHTML.java
Differentiate between "connection refused" and "unknown host" when attempting
to communicate via sun itelnet proxy.
  
Define Request.toString().
  
TclServerTemplate: parses HTML file for <server language="tcl"> tag and
runs associated Tcl script.
  
StringMap.toString crashed if no entries were in the StringMap.
Thu Oct 14 15:00:26 1999 PDT cstevens

create: proxy/Makefile
update: proxy/RemoteHandler.java, proxy/UseProxy.java, proxy/SunProxy.java, Makefile, config.proxy, server/ChainHandler.java, server/Connection.java, server/FileHandler.java, server/Handler.java, server/Main.java, server/Request.java, server/Server.java, handlers/GenericProxyHandler.java, handlers/MultiProxyHandler.java, handlers/SupplyHandler.java, handlers/PublishHandler.java, handlers/HtmlRewriter.java, handlers/templates/TemplateRunner.java, tail/Makefile, util/Makefile, util/Glob.java, util/Sort.java, util/StringMap.java, util/SocketFactory.java, util/LexML.java, util/LexHTML.java, util/http/MimeHeaders.java, util/http/HttpRequest.java, util/http/HttpInputStream.java, util/http/HttpSocket.java, util/http/HttpUtil.java, util/http/HttpSocketPool.java, util/regexp/Regexp.java, util/regexp/Regsub.java
delete: util/TimedThread.java
Lots more documentation.
  
Added a convenience method to Request to send a response from an input
stream.  This method should have been in there a long time ago.  Now the
user doesn't have to copy all the data into a string or byte array and then
copy it all back out again.  RemoteHandler uses this method to sling the
data from the remote site back to the client site.  FileHandler uses this
method to send the data from the FileInputStream to the client.
  
Move logic for removing point-to-point headers into the HttpRequest as a
static convenience method.
  
Handle malformed URLs that have spaces in the name.  These type of URLS are
sent by RealAudio clients.  HTTP request line parsing is actually simpler now.
  
ChainHandler crashed if no "handlers" specified.
  
Connection was leaking threads.
  
Main runs all the classes specified in the "init" line in the config file
before starting the server.
  
Server.initFields removed
  
Server.initHandler and Server.initObject have extensive documentation now
that will hopefully make their existence compelling.
  
LexHTML uses a method to set the special tags like <script> and <style>,
instead of a global property.
  
Fold TimedThread and the default HttpSocketPool into the HttpRequest file,
since they are not used outside of this file (at this time).
  
HttpUtil.urlEncode was wrong.
Tue Oct 12 10:03:56 1999 PDT suhler

update: handlers/CgiHandler.java
update to new mimeHeader semantics (and test of putback notices)
Mon Oct 11 13:37:39 1999 PDT suhler

create: tail/doc/de-link.tcl
update: Makefile, tail/doc/index.html, tail/doc/sample.txt, tail/doc/line1.jpg, tail/Filter.java, tail/Makefile, tail/PlainFilter.java, tail/TailHandler.java, tail/TemplateFilter.java, tail/TclFilter.java, tail/SessionFilter.java, tail/ReplaceFilter.java, tail/config-large, util/http/HttpRequest.java, util/http/HttpSocket.java, util/http/HttpSocketPool.java, handlers/GenericProxyHandler.java, handlers/RemoteStsHandler.java, handlers/MultiProxyHandler.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/templates/PropsTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TOCTemplate.java, handlers/templates/TemplateRunner.java, tclHandlers/TclHandler.java, tclHandlers/Makefile, tclHandlers/virtual2.tcl, server/Connection.java, server/Request.java, server/Server.java, pcsdemo/Makefile
Integrated colin's changes
Thu Oct 7 13:16:27 1999 PDT cstevens

update: proxy/RemoteHandler.java, Makefile, server/Request.java, server/Server.java, handlers/Makefile, handlers/DialogHandler.java, handlers/HtmlRewriter.java, tclHandlers/TclHandler.java, tclHandlers/Makefile, util/Makefile, util/Glob.java, util/StringMap.java, util/LexHTML.java, util/http/MimeHeaders.java, util/http/HttpRequest.java, util/http/HttpInputStream.java, util/http/HttpSocketPool.java, util/regexp/Regexp.java
rename: handlers/ErrorMsg.java -> util/ErrorMsg.java
Documentation for HtmlRewriter, Glob, HttpRequest (in progress),
HttpInputStream.
  
Make HttpSocketPool a public interface so that users of HttpRequest can
implement it to provide their own cache and policy.
  
javadoc lint.
  
LexHTML automatically lower-cases reported tag name, for backwards
compatibility with HtmlMunge, so user can call String.equals() instead of
String.equalsIgnoreCase()
Thu Oct 7 09:17:58 1999 PDT suhler

update: handlers/ConfigFileHandler.java
??
Mon Oct 4 17:18:10 1999 PDT cstevens

update: proxy/RemoteHandler.java, proxy/UseProxy.java, proxy/SunProxy.java, server/ChainHandler.java, server/Connection.java, server/Request.java, server/Server.java, asp/oleupi/server/MSWordHandler.java, handlers/AuthHandler.java, handlers/GenericProxyHandler.java, handlers/MultiProxyHandler.java, handlers/SupplyHandler.java, handlers/NotFoundHandler.java, handlers/RolesHandler.java, handlers/SunNetAuthHandler.java, handlers/PublishHandler.java, handlers/ChainSawHandler.java, handlers/ConfigFileHandler.java, handlers/VirtualHostHandler.java, handlers/templates/TemplateHandler.java, tclHandlers/TclHandler.java, tail/TailHandler.java, tail/TemplateFilter.java, tail/TclFilter.java, util/StringMap.java, util/SocketFactory.java, util/LexML.java, util/LexHTML.java, util/http/MimeHeaders.java
Change logging to show prefix of Handler generating the log message.
  
Documentation for LexML and StringMap.
Fri Oct 1 12:44:16 1999 PDT suhler

update: server/FileHandler.java, server/Request.java, server/Server.java
Re-do server logging (partly done)
empty queries are "" not null
Fri Oct 1 11:38:39 1999 PDT suhler

update: util/regexp/Regexp.java, util/Makefile, util/StringMap.java, util/SocketFactory.java, util/LexHTML.java, util/http/MimeHeaders.java, util/http/HttpSocket.java, util/http/HttpSocketPool.java
added toString methods
removed wildcarded imports
Fri Oct 1 00:35:50 1999 EDT rinaldo

create: pcsdemo/Makefile.pcsdemo, pcsdemo/doc/jini/lib/reggie-dl.jar, tini/ExtensionFileFilter.java, tini/JavaKit.java
update: pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-server, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/JINI/index.html
Codemgr_wsdata/putback.cmt
Thu Sep 30 14:07:46 1999 PDT cstevens

update: proxy/RemoteHandler.java, proxy/SunProxy.java, handlers/HtmlRewriter.java, util/http/HttpUtil.java
Improperly quoting and dequoting HTML tag attributes led to forms/templates
not working.
  
Better error message if couldn't connect because machine wasn't listening
on specified port, rather than saying "unknown host".
Thu Sep 30 12:07:24 1999 PDT cstevens

create: proxy/UseProxy.java, proxy/SunProxy.java, handlers/HtmlRewriter.java, handlers/templates/HtmlRewriter.java, handlers/templates/Template.java, util/LexML.java, util/LexHTML.java
update: proxy/RemoteHandler.java, Makefile, config.proxy, server/ChainHandler.java, server/Main.java, server/Request.java, server/Server.java, handlers/SunNetAuthHandler.java, handlers/Makefile, handlers/config.clientTemplate, handlers/config.formTemplate, handlers/config.new, handlers/MapPage.java, handlers/config.config, handlers/config.includeTemplate, handlers/templates/NewTemplate.java, handlers/templates/NewTemplate2.java, handlers/templates/CountTemplate.java, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/IncludeTemplate.java, handlers/templates/NoImageTemplate.java, handlers/templates/ContentTemplate.java, handlers/templates/TOCTemplate.java, util/Makefile, util/SocketFactory.java, util/http/MimeHeaders.java, handlers/templates/TemplateHandler.java, handlers/templates/TemplateRunner.java
rename: handlers/TemplateHandler.java -> handlers/templates/TemplateHandler.java, handlers/Template.java -> handlers/templates/TemplateRunner.java
Replace HtmlMunge with LexML and LexHTML, that correctly parse HTML.
  
New HtmlRewriter object, that allows arbitrary rewriting of the HTML (by
templates and others), instead of forcing the templates to return a string
that contained all of the new HTML content in one new big string.
  
Move TemplateHandler to the sunlabs.brazil.template package, with all the
templates that use it.
  
Rewrite RemoteHandler (proxy) to use HttpRequest.
  
Consistent way of initializing Handlers and other things that want to get
attributes from the config file.  Convenience method that constructs the
object, sets (via reflection) all the variables in the object that correspond
to values specified in the config file, and then calls init() on the object.
Fri Sep 17 18:12:02 1999 EDT rinaldo

update: Makefile, pcsdemo/Makefile, server/Makefile, handlers/Makefile, util/Makefile
Move Makefile.common use to top of this workspace and remove workspace specific
Remove Workspace specific items from Makefile.common redo makefiles to be relative
n the use of Makefile.common.

Please stop using Makefile.common in the lib directory.
Wed Sep 15 16:00:19 1999 PDT cstevens

create: proxy/RemoteHandler.java, config.proxy, util/StringMap.java, util/SocketFactory.java, util/http/MimeHeaders.java, util/http/HttpRequest.java, util/http/HttpInputStream.java, util/http/HttpSocket.java, util/http/HttpUtil.java, util/http/HttpSocketPool.java
update: Makefile, server/Connection.java, server/FileHandler.java, server/Request.java, handlers/AuthHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/ReflectHandler.java, handlers/SupplyHandler.java, handlers/NotFoundHandler.java, handlers/RolesHandler.java, handlers/SunNetAuthHandler.java, handlers/RemoteNetscapeHandler.java, handlers/DirectoryHandler.java, handlers/PublishHandler.java, handlers/ChainSawHandler.java, handlers/SessionHandler.java, handlers/PushHandler.java, handlers/templates/RedirectTemplate.java, handlers/templates/NoImageTemplate.java, util/Makefile
Rewriting the server to make it easier to separate out the functionality 
required for acting as a proxy.  Also separated out some common functionality
that was not server-specific, such as the concept of a MimeHeaders object
so that we don't continuously tie ourselves to a specific implementation.
Wed Sep 15 14:35:54 1999 PDT suhler

create: package-docs/README, package-docs/sunlabs.brazil.handler.package.html, package-docs/sunlabs.brazil.server.package.html, package-docs/sunlabs.brazil.template.package.html, package-docs/sunlabs.brazil.util.package.html, package-docs/tcl.lang.package.html, package-docs/sunlabs.brazil.util.regexp.package.html
created a place to put all the package doc files needed by javadoc.
I suppose they could be spread out in each package, but it seems more
convenient to keep them all in one spot
Tue Sep 7 11:25:36 1999 EDT rinaldo

create: pcsdemo/doc/demo/test/rsa/frindexrsa.html, pcsdemo/doc/demo/test/rsa/frrsa.html, pcsdemo/doc/demo/test/rsa/rsa.html, pcsdemo/doc/demo/test/rsa/set.html, pcsdemo/doc/demo/JINI/lib/reggie-dl.jar, pcsdemo/doc/demo/JINI/frindex.html, pcsdemo/doc/demo/JINI/index.html, pcsdemo/doc/demo/JINI/result.html, pcsdemo/doc/demo/JINI/jiniintro.html
update: pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/frcontent.html, pcsdemo/doc/demo/test/ccapdus.html, pcsdemo/doc/demo/test/sts/decrypt.html, pcsdemo/doc/demo/test/sts/encrypt.html, pcsdemo/doc/applets/Makefile, pcsdemo/doc/cardlets/Makefile, pcsdemo/doc/js/managecard.js
Redo DEPENDS rules to support smaller util directiories
Add Support for RSA
Add Support for JINI requires 1.2 putting in a check to allow system to continue
if you start the config file with 1.1.x.
More testing and html clean up
Fri Sep 3 11:34:29 1999 PDT cstevens

update: util/regexp/Regexp.java
Change Regexp.sub(String, String) so that it returns the changed string if
there was a match and null if there was no match.
  
Regexp.match with a pattern that had '$' at the end was broken.
Wed Sep 1 15:39:47 1999 PDT suhler

create: handlers/templates/TOCTemplate.java
update: handlers/GenericProxyHandler.java, handlers/HtmlMunge.java, handlers/MultiProxyHandler.java, handlers/Makefile, handlers/MapPage.java, handlers/templates/PropsTemplate.java, handlers/templates/ContentTemplate.java
- fixed proxy handlers to work with tail handlers
- added table-of-contents extractor template
- modified HtmlMunge for table-of-content extractor
Wed Sep 1 15:35:52 1999 PDT suhler

create: tail/doc/h1.html, tail/doc/missing.html, tail/doc/line1.jpg, tail/doc/logo.gif, tail/config3, tail/ReplaceFilter.java, tail/config-large
update: tail/doc/sample.txt, tail/Filter.java, tail/Makefile, tail/PlainFilter.java, tail/config, tail/TailHandler.java, tail/TemplateFilter.java, tail/TclFilter.java, tail/SessionFilter.java
Updated to next version:
 - each tail filter can run multiple tail filters
 - ReplaceFilter permits templace substitutions
Mon Aug 30 02:13:02 1999 EDT rinaldo

create: pcsdemo/doc/demo/test/sts/decrypt.html, pcsdemo/doc/demo/test/sts/encrypt.html, pcsdemo/doc/demo/test/sts/decryptresult.html, pcsdemo/doc/demo/test/sts/encryptresult.html, pcsdemo/doc/demo/test/sts/frciphers.html
update: pcsdemo/Makefile, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/demo/frcontent.html, asp/oleupi/server/MSWordHandler.java
Add support for new security directories
Add support for RC4 on Java Card
Add some test pages
Fri Aug 27 16:51:17 1999 PDT cstevens

update: util/regexp/Regsub.java
Regsub.submatch would crash if specified subregion didn't exist.
Fri Aug 27 16:19:04 1999 PDT cstevens

update: util/regexp.test, util/regexp/Regexp.java, util/regexp/Regsub.java
regsub entered infinite loop if pattern matched the empty string.
  
subspec previously only allowed \ followed by a number to specify a 
substring.  Should have also allowed any other char after \ to mean literal.
Fri Aug 27 13:12:06 1999 PDT cstevens

create: util/TimedThread.java, util/regexp.test, util/defs
update: util/Makefile, util/Sort.java, util/regexp/Regexp.java
Sort and Regexp for java.
Thu Aug 26 13:21:48 1999 EDT rinaldo

create: asp/oleupi/server/doc/push.html, asp/oleupi/server/comole-src/COMAuthInfo.java, asp/oleupi/server/comole-src/COMBSTR.java, asp/oleupi/server/comole-src/COMExcepInfo.java, asp/oleupi/server/comole-src/COMClassObject.java, asp/oleupi/server/comole-src/COMDispParams.java, asp/oleupi/server/comole-src/COMException.java, asp/oleupi/server/comole-src/COMHResult.java, asp/oleupi/server/comole-src/COMIDispatch.java, asp/oleupi/server/comole-src/COMIMultiQI.java, asp/oleupi/server/comole-src/COMIUnknown.java, asp/oleupi/server/comole-src/COMSafeArray.java, asp/oleupi/server/comole-src/COMVariant.java, asp/oleupi/server/comole-src/GUID.java, asp/oleupi/server/DocToPDF.java, asp/oleupi/server/comco.jar, asp/oleupi/server/MSWordHandler.java, asp/oleupi/server/Makefile, asp/oleupi/server/config.oleword
update: pcsdemo/config.demo-server, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/demo/test/ccapdus.html, pcsdemo/doc/js/managecard.js
Application Service Provider Conversion Services
This sub directory contains a handler that converts .doc files to .pdf
files. The handler uses software form http://www.nevaobjects.com to
manipualte COM objects on Windows.  The functionality here could be 
greatly expanded in that we would provide ULR mappings to any COM
server if we had the time to write a conversion program.
Mon Aug 23 15:56:13 1999 EDT rinaldo

create: pcsdemo/doc/demo/test/sts/frsignature.html, pcsdemo/doc/demo/test/sts/generateresult.html, pcsdemo/doc/demo/test/sts/validateresult.html, pcsdemo/doc/demo/test/sts/validateresultlocal.html, pcsdemo/doc/demo/test/sts/generatesignature.html, pcsdemo/doc/demo/test/sts/validatesignature.html, pcsdemo/doc/demo/test/sts/validatesignaturelocal.html
update: pcsdemo/config.demo-client, pcsdemo/config.demo-server, pcsdemo/doc/demo/frcontent.html
CorporateCard and CorporateCardAccess have been modified to reduce
memory consumption and implement correct XOR signing algorithm.

Cards can check signatures on card.

Prepared classes for addition of RSA signing, DSS and RC4 decryption.

Handlers moved to sunlabs.brazil.sts.... and sunlabs.brazil.cardhandlers...

Error processing for  CorporateCard APDUs fixed so error messages are correct

Removed Message digest checks and secret from client handlers.
Tue Aug 17 14:50:44 1999 PDT suhler

update: server/Request.java
Added convenience mathod for emitting response when content is a byta array
Fri Aug 13 09:36:19 1999 PDT suhler

update: util/Sort.java
typo in Sort.java?
Tue Aug 10 17:08:48 1999 PDT cstevens

create: util/regexp/Regexp.java, util/regexp/Regsub.java
update: util/Makefile, util/Glob.java, util/Sort.java
Regexp, Glob, and Sort.
Mon Aug 9 11:47:25 1999 EDT rinaldo

create: dist/corehandlers.iap
update: Makefile, pcsdemo/Makefile
This putback includes a number of changes.

We can build two distributions in the naws/pcsdemo and the naws/ directory these distributions are for all of the pcs demos and just the core handler. Both of the distributions can be built by typing make dist in the directory.  Once the
distributions are built they are on www.digiorgio.com and www.cv360428-norwlk1.ct.home.com. Unlder /brazil/all and /brazil/core respectively.

The make dist procedure requires that you enter passwords for the certificates. We can give you the password.  There is a problem with later versions of netscape when building test certificates for your own use. This problem is unresolved at the current time. You will not be able to give your certificate a nicname therefore the makefile will not be able to automatically sing your test applets.jar file.

Building the SmartCard UPI and or Core from the workspaces
Bring the following workspaces over to a local machine 

naws
sts
jarslibsdll
applets 
opencard

Before building you need to get signing certificates for 
External Signing certificate for https://www.digiorgio.com 
Get brazil-pcs-digiorgio-signer.p12 
Internal Signing certificate for https://mack.eng 
Get brazil-pcs-mack-signer.p12 
Install the certificates, remember your password. You will be asked to supply it twice. Please contact Stephen x63252 or Rinaldo 203-255-6781 to get a password for the above certificates. To build the pcsdemo cd to naws/pcsdemo and type make. You will be prompted for a signing certificate password.To build the website software which includes the doc directory, the applets and the cardlets. Type make website and if you want to test. To make a distribution type make -e dist.
Fri Aug 6 12:32:34 1999 PDT suhler

create: tclHandlers/virtual2.tcl, tclHandlers/config.virtual2
update: util/Makefile, util/Glob.java, handlers/SessionManager.java, handlers/Makefile, handlers/DirectoryHandler.java, handlers/Template.java, handlers/MapPage.java, handlers/ConfigFileHandler.java, tclHandlers/TclHandler.java, server/FileHandler.java, server/Makefile, util/PJwrapper.java
rename: server/PJwrapper.java -> util/PJwrapper.java
- moved pjama wrappers into util directory
- changed all glob users to use util version
- changed DirectoryHandler to use sort in util directory
- changed tcl Handler to create on interpreter per session, allowing
  for better concurrency, and updated sample handler to use it
- fixed minor bug in Glob
- integrated rinaldo's ConfigFileManager changes
  + should be re-implemented to not read the config file on every
    request
Fri Aug 6 08:42:42 1999 PDT suhler

create: tail/doc/a.html, tail/doc/b.html, tail/TclFilter.java, tail/config-session, tail/SessionFilter.java
update: tail/doc/index.html, tail/Filter.java, tail/Makefile, tail/PlainFilter.java, tail/TailHandler.java, tail/TemplateFilter.java
2nd pass at content post-processing
 
- Filter interface is now a subclass of Handler.  This allows filters
  to look at (and possibly modify) requests before the content-to-be
  fitlered is fetched by the wrapped handler
- modified sample filters to conform to new interface
- write TclFilter, to allow content filters to be written in tcl
- wrote SessionFilter, allowind session info to be encoded in url's, 
  eliminating the need for browser cookies
Thu Aug 5 17:03:30 1999 PDT suhler

create: util/Makefile, util/README, util/Glob.java, util/Sort.java
beginnings of a util directory for common utilities
Wed Aug 4 18:45:27 1999 PDT suhler

create: handlers/PushHandler.java, handlers/config.push, handlers/push.html
update: handlers/Makefile
added "PushHandler" as a starting point for handling multipart/form data
for the document conversion demo
 
The multipart/form processor needs to be rewritten to be
robust, and then integrated into thr request object, so any
handler can deal with multipart/form data transparently.
 
This is temporary.  Cheers
Wed Aug 4 17:18:56 1999 EDT rinaldo

update: Makefile, config, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/applets/Makefile, pcsdemo/doc/index.html
Add support for distribution of an unsigned jar file so that 
users installing the server kit can install it by providing the
required signing certificates.
Fri Jul 30 10:53:36 1999 PDT suhler

update: server/Main.java, server/Request.java
added "listenQueue" option to Main, to set the initial server socket listenQ
added flush() call after request headers are emitted.  This is used
(incorrectly) by the TailHandler to identify the end of the headers.
Fri Jul 30 10:49:57 1999 PDT suhler

create: tail/doc/index.html, tail/doc/sample.txt, tail/Filter.java, tail/Makefile, tail/README, tail/PlainFilter.java, tail/config, tail/TailHandler.java, tail/config2, tail/TemplateFilter.java
first attempt at a handler that allows filtering of already processed
ouput.  Its purpose is to help noodle about the proper way
to restructure naws co this isn't so kludgy
Fri Jul 30 10:12:55 1999 EDT rinaldo

create: pcsdemo/startandtail, pcsdemo/config.demo-devices-client.darwin, pcsdemo/doc/cv/login.html, pcsdemo/doc/cv/roles, pcsdemo/doc/cv/exit/bye.html, pcsdemo/doc/Overview.jpg
update: pcsdemo/dist/brazilall.iap, pcsdemo/c, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-server, pcsdemo/runpcs, pcsdemo/doc/demo/DEMO.html, pcsdemo/doc/applets/Makefile, pcsdemo/doc/configure.form, pcsdemo/doc/index.html, handlers/ConfigFileHandler.java, pcsdemo/doc/whatiscardserver.html
rename: pcsdemo/doc/demo/whatiscardserver.html -> pcsdemo/doc/whatiscardserver.html
delete: pcsdemo/config.demo-devices-client-unix, pcsdemo/config.demo-devices-client-windows, pcsdemo/config.demo-devices-server-unix, pcsdemo/config.demo-devices-server-windows
Support a welcome page, iconify start scripts, change config to support
no default configuration, Remove spelling errors add some more docs
Mon Jul 26 17:44:20 1999 EDT rinaldo

create: pcsdemo/doc/demo/commerce/receipt.form, pcsdemo/doc/demo/javahome.html, pcsdemo/doc/certs/digiorgio.cac, pcsdemo/doc/certs/mack.cac
update: pcsdemo/dist/brazilall.iap, pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-server, pcsdemo/doc/demo/commerce/ship.html, pcsdemo/doc/demo/commerce/pay.form, pcsdemo/doc/demo/commerce/shipupdate.form, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/frcontent.html, pcsdemo/doc/demo/index.html, pcsdemo/doc/demo/test/ccapdus.html, pcsdemo/doc/js/managecard.js, pcsdemo/doc/configure.form, pcsdemo/doc/index.html
delete: pcsdemo/doc/demo/commerce/receipt.html
HTML changes
Support a local config file handler on the local machine for configuration.
Remove Pin frompurse balance check.
Thu Jul 22 15:04:59 1999 PDT suhler

update: server/Main.java, server/Server.java
Limited the max # of threads the server will create (defaults to 250).
Mon Jul 19 12:03:49 1999 PDT suhler

create: cgi-scripts/README, cgi-scripts/jserv.cgi, cgi-scripts/reflect.cgi, cgi-scripts/av2xml.cgi, cgi-scripts/stock.cgi, cgi-scripts/stock2.cgi
update: tclHandlers/TclHandler.java, pcsdemo/Makefile
- put cgi scripts (including java servlet runner) into a separate directory
- added javaDocs to tclHandler
Fri Jul 16 00:34:14 1999 EDT rinaldo

create: pcsdemo/doc/cardlets/CreateDNL.java
update: pcsdemo/config.demo-devices-client, pcsdemo/doc/cardlets/Makefile, pcsdemo/doc/js/managecard.js
Add more options to the download pages and provide more feedback on errors. Correct error with profile load.
Thu Jul 15 09:35:38 1999 EDT rinaldo

update: pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/doc/js/managecard.js, pcsdemo/doc/oc/ocleft.html, pcsdemo/doc/oc/octestupper.html, pcsdemo/doc/configure.form, pcsdemo/doc/index.html
Correct default settings for configuration and error checks for Bcard.
Wed Jul 14 14:16:43 1999 EDT rinaldo

create: pcsdemo/doc/configure.form, pcsdemo/doc/index.html
update: pcsdemo/dist/brazilall.iap, pcsdemo/Makefile
Update HTML doc and add absolute InstallAnywhere fix
taype make editia to bring up installer editor then select existing and advanced mode
Wed Jul 14 11:38:14 1999 EDT rinaldo

create: pcsdemo/dist/solaris/setpcsport, pcsdemo/dist/images/brazilinstall.gif, pcsdemo/doc/oc/index.html, pcsdemo/doc/oc/octest.html, pcsdemo/doc/oc/ocleft.html, pcsdemo/doc/oc/ocmain.html, pcsdemo/doc/oc/octestupper.html
update: pcsdemo/dist/brazilall.iap, pcsdemo/dist/solaris/chmodtty, pcsdemo/Makefile, pcsdemo/config.demo-client, pcsdemo/config.demo-devices-server, pcsdemo/config.demo-server, pcsdemo/s, pcsdemo/runpcs, pcsdemo/doc/js/managecard.js, handlers/ConfigFileHandler.java
delete: pcsdemo/config.demo-devices
Add html configuration of ports using ConfigHandler, documentation
Tue Jul 13 09:38:07 1999 PDT suhler

update: handlers/ConfigFileHandler.java
the "redirect" config parameter is looked-up in the form data/ config file
first.  If not found, it is used as the redirect target
Mon Jul 12 09:31:00 1999 PDT suhler

update: handlers/AuthHandler.java, handlers/PublishHandler.java, handlers/Makefile, handlers/config.sample, handlers/ResourceHandler.java
- fixed publish handler to use ACL returned by AuthHandler
- Updated makefile to provide targets to add documents into the jar file
- updated the sample config file
Fri Jul 9 16:05:45 1999 PDT suhler

create: handlers/ResourceHandler.java
update: handlers/HtmlMunge.java, handlers/Makefile
add handler for reading documents out of the jar file
Fri Jul 9 10:06:18 1999 PDT suhler

update: server/Main.java
Main initializes the config file with the resource:
/sunlabs/brazil/server/config on startup.
 
This allows default server configurations to be included in the jar
file, so that "java -jar server.jar" becomes a self contained
application
Thu Jul 1 00:31:30 1999 EDT rinaldo

update: pcsdemo/dist/brazilall.iap, pcsdemo/config.demo-client, pcsdemo/config.demo-devices, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-devices-server, pcsdemo/config.demo-server, pcsdemo/config.demo-devices-client-unix, pcsdemo/config.demo-devices-server-windows, pcsdemo/config.demo-devices-client-windows, pcsdemo/config.demo-devices-server-unix, pcsdemo/runpcs, pcsdemo/config.smartcards, deleted_files/pcsdemo/run
delete: pcsdemo/config.demo-win32-dal-legacy, pcsdemo/config.demo-win32-sm1, pcsdemo/run
Created a three step process once InstallAnywhere has put the bits on the disk.

	First page at doc root has poitners for external and internal
	certificates and link to step 2.


	This steps allows user to change the configuration form html.
	The Opencard handlers was changed to support the construction
	of OpenCard.terminals from OpenCard.device and OpenCard.driver.

	A test page that allow user to stop and start openCard without
	restarting the server so that properties can be changed 
	interactively.

	InstallAnywhere tests, html changes.
Wed Jun 30 12:23:31 1999 PDT suhler

update: handlers/templates/FormTemplate.java, handlers/config-test/test.cfg, handlers/config-test/form1.html
Add processing for <option> tags
Tue Jun 29 17:49:55 1999 PDT suhler

create: handlers/config.mapSite
sample config file for proxying a single entire site
Tue Jun 29 14:45:10 1999 PDT suhler

update: handlers/HomeDirHandler.java, handlers/ConfigFileHandler.java, server/FileHandler.java, server/Request.java, server/Server.java
Change the way redirects work to use the host header field as available
Tue Jun 29 09:38:22 1999 PDT suhler

create: handlers/config-test/test.cfg, handlers/config-test/form1.html, handlers/config-test/form2.html
update: handlers/ConfigFileHandler.java, handlers/config.config, handlers/config-test/ok.html, handlers/config-test/index.html
redo of config-file handler to make it more useful
Mon Jun 28 20:32:20 1999 EDT rinaldo

create: deleted_files/todo/doc/customer/acme/acmehome.jpg, deleted_files/todo/doc/customer/acme/df.tcl, deleted_files/todo/doc/customer/acme/console_pic.gif, deleted_files/todo/doc/customer/acme/frbanner.form, deleted_files/todo/doc/customer/acme/sunlogo.gif, deleted_files/todo/doc/customer/acme/customization.doc.anc13.gif, deleted_files/todo/doc/customer/acme/index.html, deleted_files/todo/doc/customer/acme/insert.gif, deleted_files/todo/doc/customer/acme/JBE.pdf, deleted_files/todo/doc/customer/acme/JBE2.pdf, deleted_files/todo/doc/customer/acme/passwd.gif, deleted_files/todo/doc/customer/acme/logintocustomer.html, deleted_files/todo/doc/customer/acme/logintosun.html, deleted_files/todo/doc/customer/acme/pkginfo.tcl, deleted_files/todo/doc/customer/acme/sunbg02.jpg, deleted_files/todo/doc/customer/acme/sunbox_prob_rept.html, deleted_files/todo/doc/customer/acme/sysdef.tcl, deleted_files/todo/doc/customer/acme/sunbox_prob_rept.jpg, deleted_files/todo/doc/customer/acme/sunbox_thank.html, deleted_files/todo/doc/customer/acme/sunbox_thank.jpg, deleted_files/todo/doc/customer/acme/sunboxwelcome.html, deleted_files/todo/doc/customer/acme/sunboxwelcome.jpg, deleted_files/todo/doc/customer/exit/bye.html, deleted_files/todo/service/customerservice/acmehome.jpg, deleted_files/todo/service/customerservice/df.tcl, deleted_files/todo/service/customerservice/console_pic.gif, deleted_files/todo/service/customerservice/frbanner.form, deleted_files/todo/service/customerservice/sunlogo.gif, deleted_files/todo/service/customerservice/customization.doc.anc13.gif, deleted_files/todo/service/customerservice/logintocustomer.html, deleted_files/todo/service/customerservice/index.html, deleted_files/todo/service/customerservice/insert.gif, deleted_files/todo/service/customerservice/JBE.pdf, deleted_files/todo/service/customerservice/JBE2.pdf, deleted_files/todo/service/customerservice/passwd.gif, deleted_files/todo/service/customerservice/sunbox_prob_rept.html, deleted_files/todo/service/customerservice/logintosun.html, deleted_files/todo/service/customerservice/pkginfo.tcl, deleted_files/todo/service/customerservice/sunbg02.jpg, deleted_files/todo/service/customerservice/sunbox_prob_rept.jpg, deleted_files/todo/service/customerservice/sysdef.tcl, deleted_files/todo/service/customerservice/sunbox_thank.html, deleted_files/todo/service/customerservice/sunbox_thank.jpg, deleted_files/todo/service/customerservice/sunboxwelcome.html, deleted_files/todo/service/customerservice/sunboxwelcome.jpg, deleted_files/todo/service/exit/bye.html
update: pcsdemo/doc/applets/Makefile
Consistency Check
Mon Jun 28 15:07:16 1999 PDT suhler

create: handlers/MapPage.java, handlers/ConfigFileHandler.java, handlers/SessionHandler.java, handlers/VirtualHostHandler.java, handlers/config.config, handlers/config.forbade, handlers/config.includeTemplate, handlers/config.virtual, handlers/templates/NoImageTemplate.java, handlers/templates/ContentTemplate.java, handlers/config-test/README, handlers/config-test/ok.html, handlers/config-test/index.html, tclHandlers/virtual.tcl
update: Makefile, handlers/GenericProxyHandler.java, handlers/MultiProxyHandler.java, handlers/TemplateHandler.java, handlers/NotFoundHandler.java, handlers/Makefile, handlers/Template.java, handlers/templates/PropsTemplate.java, handlers/templates/IncludeTemplate.java, persistent-server/Makefile, persistent-server/config, tclHandlers/TclHandler.java, tclHandlers/Makefile, tclHandlers/config, server/FileHandler.java, server/Request.java, server/Server.java, server/Makefile, pcsdemo/Makefile, pcsdemo/doc/applets/Makefile, pcsdemo/doc/cardlets/Makefile
merge finished
 - added serveral handlers
 - make small updates to core server code
 - re-organized handlers to extract generic functionallity into separate classes
Mon Jun 28 09:28:50 1999 EDT rinaldo

create: pcsdemo/doc/cardlets/Makefile
update: pcsdemo/config.demo-devices, pcsdemo/doc/demo/personalize/index.html, pcsdemo/doc/applets/Makefile, pcsdemo/doc/js/managecard.js
delete: todo/doc/customer/acme/acmehome.jpg, todo/doc/customer/acme/df.tcl, todo/doc/customer/acme/console_pic.gif, todo/doc/customer/acme/frbanner.form, todo/doc/customer/acme/sunlogo.gif, todo/doc/customer/acme/customization.doc.anc13.gif, todo/doc/customer/acme/index.html, todo/doc/customer/acme/insert.gif, todo/doc/customer/acme/JBE.pdf, todo/doc/customer/acme/JBE2.pdf, todo/doc/customer/acme/passwd.gif, todo/doc/customer/acme/logintocustomer.html, todo/doc/customer/acme/logintosun.html, todo/doc/customer/acme/pkginfo.tcl, todo/doc/customer/acme/sunbg02.jpg, todo/doc/customer/acme/sunbox_prob_rept.html, todo/doc/customer/acme/sysdef.tcl, todo/doc/customer/acme/sunbox_prob_rept.jpg, todo/doc/customer/acme/sunbox_thank.html, todo/doc/customer/acme/sunbox_thank.jpg, todo/doc/customer/acme/sunboxwelcome.html, todo/doc/customer/acme/sunboxwelcome.jpg, todo/doc/customer/exit/bye.html, todo/service/customerservice/acmehome.jpg, todo/service/customerservice/df.tcl, todo/service/customerservice/console_pic.gif, todo/service/customerservice/frbanner.form, todo/service/customerservice/sunlogo.gif, todo/service/customerservice/customization.doc.anc13.gif, todo/service/customerservice/logintocustomer.html, todo/service/customerservice/index.html, todo/service/customerservice/insert.gif, todo/service/customerservice/JBE.pdf, todo/service/customerservice/JBE2.pdf, todo/service/customerservice/passwd.gif, todo/service/customerservice/sunbox_prob_rept.html, todo/service/customerservice/logintosun.html, todo/service/customerservice/pkginfo.tcl, todo/service/customerservice/sunbg02.jpg, todo/service/customerservice/sunbox_prob_rept.jpg, todo/service/customerservice/sysdef.tcl, todo/service/customerservice/sunbox_thank.html, todo/service/customerservice/sunbox_thank.jpg, todo/service/customerservice/sunboxwelcome.html, todo/service/customerservice/sunboxwelcome.jpg, todo/service/exit/bye.html
Consistency Check
Sun Jun 27 22:49:18 1999 EDT rinaldo

create: persistent-server/docs/a.html, persistent-server/docs/b.html, persistent-server/docs/new.gif, persistent-server/docs/sample.html, persistent-server/docs/seen.gif, persistent-server/docs/index.html, persistent-server/docs/never.gif, persistent-server/docs/touch.cgi, persistent-server/Makefile, persistent-server/README, persistent-server/config, persistent-server/run-save, persistent-server/config.bookmark, persistent-server/config.cookie, Makefile, config, README, config.hack, brazilserver.template, config.easton, pcsdemo/dist/brazilall.iap, pcsdemo/dist/install.htm, pcsdemo/dist/solaris/configure, pcsdemo/dist/solaris/chmodtty, pcsdemo/dist/docs/brazilintro.txt, pcsdemo/dist/docs/README.txt, pcsdemo/dist/docs/installdirections.txt, pcsdemo/Makefile, pcsdemo/c, pcsdemo/killpcs, pcsdemo/config.demo-client, pcsdemo/config.demo-devices, pcsdemo/config.demo-devices-client, pcsdemo/config.demo-devices-server, pcsdemo/config.demo-server, pcsdemo/config.demo-devices-client-unix, pcsdemo/config.demo-devices-server-windows, pcsdemo/config.demo-devices-client-windows, pcsdemo/config.demo-devices-server-unix, pcsdemo/config.demo-win32-dal-legacy, pcsdemo/run, pcsdemo/runpcs, pcsdemo/config.demo-win32-sm1, pcsdemo/config.smartcards, pcsdemo/s, pcsdemo/doc/demo/commerce/index.form, pcsdemo/doc/demo/commerce/pay.html, pcsdemo/doc/demo/commerce/receipt.html, pcsdemo/doc/demo/commerce/ship.html, pcsdemo/doc/demo/commerce/pay.form, pcsdemo/doc/demo/commerce/shipupdate.form, pcsdemo/doc/demo/atm/README, pcsdemo/doc/demo/atm/accounts.txt, pcsdemo/doc/demo/atm/index.html, pcsdemo/doc/demo/c1/accounts.txt, pcsdemo/doc/demo/download/frloader.html, pcsdemo/doc/demo/download/loader.html, pcsdemo/doc/demo/download/loaderfinalstatus.html, pcsdemo/doc/demo/download/loaderstatus.html, pcsdemo/doc/demo/DEMO.html, pcsdemo/doc/demo/BrazilWorkingPrototypes.html, pcsdemo/doc/demo/main.form, pcsdemo/doc/demo/Ubiquitous.html, pcsdemo/doc/demo/access.html, pcsdemo/doc/demo/frbanner.html, pcsdemo/doc/demo/whatiscardserver.html, pcsdemo/doc/demo/bannerrightatr.html, pcsdemo/doc/demo/bannerrightother.html, pcsdemo/doc/demo/frbannerleft.form, pcsdemo/doc/demo/frcontent.html, pcsdemo/doc/demo/frbannerright.html, pcsdemo/doc/demo/index.html, pcsdemo/doc/demo/main.html, pcsdemo/doc/demo/supplierlogin.form, pcsdemo/doc/demo/update.form, pcsdemo/doc/demo/pin/changepin.html, pcsdemo/doc/demo/pin/frchangepin.html, pcsdemo/doc/demo/pin/frnewpin.html, pcsdemo/doc/demo/pin/newpin.html, pcsdemo/doc/demo/pin/result.html, pcsdemo/doc/demo/c2/accounts.txt, pcsdemo/doc/demo/personalize/index.html, pcsdemo/doc/demo/personalize/result.html, pcsdemo/doc/demo/personalize/webcard.html, pcsdemo/doc/demo/cyberflex/access.html, pcsdemo/doc/demo/cyberflex/fraccess.html, pcsdemo/doc/demo/cyberflex/apduresult.html, pcsdemo/doc/demo/test/ccapdus.html, pcsdemo/doc/demo/test/echotest.html, pcsdemo/doc/demo/test/generic.html, pcsdemo/doc/demo/test/frccapdus.html, pcsdemo/doc/demo/test/frechotest.html, pcsdemo/doc/demo/test/frgeneric.html, pcsdemo/doc/demo/test/result.html, pcsdemo/doc/applets/README, pcsdemo/doc/applets/Makefile, pcsdemo/doc/cardlets/dallas/CorporateCard.jib33, pcsdemo/doc/cardlets/dallas/CorporateCard.jibjavaone, pcsdemo/doc/cardlets/schlumberger/Echo.bin, pcsdemo/doc/cardlets/schlumberger/CorporateCard.bin, pcsdemo/doc/cardlets/schlumberger/CorporateCard.bin.beforeAccess.for.open16, pcsdemo/doc/images/about.jpg, pcsdemo/doc/images/bank.jpg, pcsdemo/doc/images/bye.jpg, pcsdemo/doc/images/error.jpg, pcsdemo/doc/images/devbye.jpg, pcsdemo/doc/images/devcorner.jpg, pcsdemo/doc/images/deverr.jpg, pcsdemo/doc/images/devinsert.jpg, pcsdemo/doc/images/devpin.jpg, pcsdemo/doc/images/Java.gif, pcsdemo/doc/images/insert.gif, pcsdemo/doc/images/sneterror.jpg, pcsdemo/doc/images/splash-small.gif, pcsdemo/doc/images/insert.gif.old, pcsdemo/doc/images/javalogo.gif, pcsdemo/doc/images/partner.jpg, pcsdemo/doc/images/passwd.gif, pcsdemo/doc/images/passwd.gifold, pcsdemo/doc/images/pure_java_logo.gif, pcsdemo/doc/images/sun-webserver1.gif, pcsdemo/doc/images/sun.gif, pcsdemo/doc/images/sun2.gif, pcsdemo/doc/images/sun3.gif, pcsdemo/doc/images/sunlogo.gif, pcsdemo/doc/images/supplierbye.jpg, pcsdemo/doc/images/usa.gif, pcsdemo/doc/images/visaactivationbye.jpg, pcsdemo/doc/images/wc3.gif, pcsdemo/doc/images/whats-hot.gif, pcsdemo/doc/images/homepg3.gif, pcsdemo/doc/images/paid.gif, pcsdemo/doc/images/sun-new-header.gif, pcsdemo/doc/supplier/login.html, pcsdemo/doc/supplier/roles, pcsdemo/doc/supplier/exit/bye.html, pcsdemo/doc/supplier/solectron/Solectron-001-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-001-SL.html, pcsdemo/doc/supplier/solectron/Solectron-001_200_201-SL.html, pcsdemo/doc/supplier/solectron/Solectron-200-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-200-SL.html, pcsdemo/doc/supplier/solectron/Solectron-201-SL.csv, pcsdemo/doc/supplier/solectron/Solectron-201-SL.html, pcsdemo/doc/supplier/solectron/Solectron.html, pcsdemo/doc/supplier/solectron/Solectron_Barno.html, pcsdemo/doc/supplier/solectron/about-inbrief.html, pcsdemo/doc/supplier/solectron/index.html, pcsdemo/doc/supplier/solectron/logo-ani0.gif, pcsdemo/doc/supplier/solectron/selectron.html, pcsdemo/doc/supplier/solectron/sl_dt.html, pcsdemo/doc/supplier/solectron/tbar-logo.gif, pcsdemo/doc/supplier/solectron/tbar-about.gif, pcsdemo/doc/supplier/solectron/Solectron-001_200_201-SL.csv, pcsdemo/doc/js/managecard.js, test/config.rewrite, server/ChainHandler.java, server/Connection.java, server/FileHandler.java, server/Handler.java, server/Main.java, server/Request.java, server/Server.java, server/SampleHandler.java, server/README, server/Makefile, server/PJwrapper.java, handlers/AclSwitchHandler.java, handlers/AuthHandler.java, handlers/GenericProxyHandler.java, handlers/CgiHandler.java, handlers/HtmlMunge.java, handlers/HomeDirHandler.java, handlers/ReflectHandler.java, handlers/RemoteStsHandler.java, handlers/MultiProxyHandler.java, handlers/SupplyHandler.java, handlers/TemplateHandler.java, handlers/SessionManager.java, handlers/Makefile, handlers/PublishHandler.java, handlers/Token.java, handlers/ChainSawHandler.java, handlers/RolesHandler.java, handlers/SunNetAuthHandler.java, handlers/README, handlers/RemoteNetscapeHandler.java, handlers/DialogHandler.java, handlers/config.cgi, handlers/config.clientTemplate, handlers/config.dialog, handlers/config.formTemplate, handlers/ErrorMsg.java, handlers/config.new, handlers/config.sample, handlers/NotFoundHandler.java, handlers/DirectoryHandler.java, handlers/data.credentials, handlers/Template.java, handlers/templates/NewTemplate.java, handlers/templates/NewTemplate2.java, handlers/templates/CountTemplate.java, handlers/templates/README, handlers/templates/RedirectTemplate.java, handlers/templates/PropsTemplate.java, handlers/templates/FormTemplate.java, handlers/templates/FormClientTemplate.java, handlers/templates/AddHeaderTemplate.java, handlers/templates/IncludeTemplate.java, tclHandlers/TclHandler.java, tclHandlers/test.tcl, tclHandlers/subst.tcl, tclHandlers/Makefile, tclHandlers/README, tclHandlers/browser-hj.gif, tclHandlers/browser-ie.gif, tclHandlers/browser-ns.gif, tclHandlers/config, tclHandlers/index.html, tclHandlers/switch.tcl, tclHandlers/testSwitch.html, tclHandlers/count.tcl, tclHandlers/run, tclHandlers/stock.tcl, todo/doc/customer/acme/acmehome.jpg, todo/doc/customer/acme/df.tcl, todo/doc/customer/acme/console_pic.gif, todo/doc/customer/acme/frbanner.form, todo/doc/customer/acme/sunlogo.gif, todo/doc/customer/acme/customization.doc.anc13.gif, todo/doc/customer/acme/index.html, todo/doc/customer/acme/insert.gif, todo/doc/customer/acme/JBE.pdf, todo/doc/customer/acme/JBE2.pdf, todo/doc/customer/acme/passwd.gif, todo/doc/customer/acme/logintocustomer.html, todo/doc/customer/acme/logintosun.html, todo/doc/customer/acme/pkginfo.tcl, todo/doc/customer/acme/sunbg02.jpg, todo/doc/customer/acme/sunbox_prob_rept.html, todo/doc/customer/acme/sysdef.tcl, todo/doc/customer/acme/sunbox_prob_rept.jpg, todo/doc/customer/acme/sunbox_thank.html, todo/doc/customer/acme/sunbox_thank.jpg, todo/doc/customer/acme/sunboxwelcome.html, todo/doc/customer/acme/sunboxwelcome.jpg, todo/doc/customer/exit/bye.html, todo/service/customerservice/acmehome.jpg, todo/service/customerservice/df.tcl, todo/service/customerservice/console_pic.gif, todo/service/customerservice/frbanner.form, todo/service/customerservice/sunlogo.gif, todo/service/customerservice/customization.doc.anc13.gif, todo/service/customerservice/logintocustomer.html, todo/service/customerservice/index.html, todo/service/customerservice/insert.gif, todo/service/customerservice/JBE.pdf, todo/service/customerservice/JBE2.pdf, todo/service/customerservice/passwd.gif, todo/service/customerservice/sunbox_prob_rept.html, todo/service/customerservice/logintosun.html, todo/service/customerservice/pkginfo.tcl, todo/service/customerservice/sunbg02.jpg, todo/service/customerservice/sunbox_prob_rept.jpg, todo/service/customerservice/sysdef.tcl, todo/service/customerservice/sunbox_thank.html, todo/service/customerservice/sunbox_thank.jpg, todo/service/customerservice/sunboxwelcome.html, todo/service/customerservice/sunboxwelcome.jpg, todo/service/exit/bye.html
Continue a long series of putbacks that add the following:
  o Code Signing of applets removing need for preferences.js
  o Major reindentation of code to Sun Style ( there are options for every ones style)
    Please excuse any changes to source code that you had near and dear -- The tool
    should be able to support your style.  ( All methods have stubs for docs)
  o Config file specification for atrs and aids
  o Removal of all awt dependencies from card server -- moved to browser
  o Creation of small standalone demo directory with clear seperation of client
    and server.
  o Moved stsHandlers and cardHandlers to sts directory
  o added mulitple selections for download
  o versions of different cards supported
  o aid display
  o crude file deletion mechanism
  o New Install Anywehre procedure supports three types of pacakges
  o naws directory leve one is only naws
  o Pin Support
  o Removal of several hundred extraneous files
Do not do a bringover until I have built everything on mack.eng, I plan to complete this before 
12:00 or so Califronia time.