From 4160279f7dfd0e378220f7dac42604e9e78f04a7 Mon Sep 17 00:00:00 2001
From: unknown
Date: Mon, 22 Mar 2004 17:14:57 +0000
Subject: [PATCH] This commit was manufactured by cvs2svn to create branch
'antony'.
---
CVSROOT/checkoutlist | 13 -
CVSROOT/commitinfo | 15 -
CVSROOT/config | 14 -
CVSROOT/cvswrappers | 23 -
CVSROOT/editinfo | 21 -
CVSROOT/loginfo | 26 -
CVSROOT/modules | 26 -
CVSROOT/notify | 12 -
CVSROOT/rcsinfo | 13 -
CVSROOT/taginfo | 20 -
CVSROOT/verifymsg | 21 -
runsql/example/config/CmdLine.properties | 5 -
runsql/example/jndi.properties | 2 -
runsql/example/sql/BOOTSTRAP.sql | 4 -
runsql/example/sql/CHECK.sql | 1 -
runsql/example/sql/QUERY.sql | 1 -
runsql/example/sql/SCHEMA.sql | 11 -
runsql/project.properties | 6 -
runsql/project.xml | 92 ---
runsql/src/java/org/osjava/runsql/RunSql.java | 67 --
scraping-engine/LICENSE.txt | 31 -
scraping-engine/TODO | 48 --
scraping-engine/project.properties | 9 -
scraping-engine/project.xml | 156 ----
scraping-engine/run.sh | 1 -
scraping-engine/runc.sh | 1 -
.../org/osjava/scraping/AbstractConfig.java | 101 ---
.../org/osjava/scraping/AbstractPage.java | 109 ---
.../org/osjava/scraping/AbstractParser.java | 44 -
.../org/osjava/scraping/CheckingParser.java | 54 --
.../src/java/org/osjava/scraping/Config.java | 50 --
.../org/osjava/scraping/ConfigFactory.java | 40 -
.../src/java/org/osjava/scraping/Engine.java | 124 ---
.../src/java/org/osjava/scraping/Fetcher.java | 43 -
.../osjava/scraping/FetchingException.java | 43 -
.../org/osjava/scraping/FetchingFactory.java | 52 --
.../src/java/org/osjava/scraping/Header.java | 38 -
.../java/org/osjava/scraping/HttpFetcher.java | 65 --
.../org/osjava/scraping/HttpsFetcher.java | 84 --
.../java/org/osjava/scraping/JdbcStore.java | 93 ---
.../java/org/osjava/scraping/JndiConfig.java | 66 --
.../java/org/osjava/scraping/LoopParser.java | 55 --
.../java/org/osjava/scraping/MemoryPage.java | 50 --
.../java/org/osjava/scraping/MultiParser.java | 57 --
.../java/org/osjava/scraping/MultiResult.java | 86 --
.../org/osjava/scraping/NamespaceSession.java | 61 --
.../scraping/NotificationException.java | 43 -
.../osjava/scraping/NotificationFactory.java | 59 --
.../java/org/osjava/scraping/Notifier.java | 42 -
.../java/org/osjava/scraping/NullFetcher.java | 40 -
.../org/osjava/scraping/NullNotifier.java | 44 -
.../java/org/osjava/scraping/NullPage.java | 47 --
.../java/org/osjava/scraping/NullParser.java | 43 -
.../java/org/osjava/scraping/NullResult.java | 43 -
.../java/org/osjava/scraping/NullStore.java | 55 --
.../src/java/org/osjava/scraping/Page.java | 46 --
.../src/java/org/osjava/scraping/Parser.java | 39 -
.../org/osjava/scraping/ParserFactory.java | 47 --
.../org/osjava/scraping/ParsingException.java | 43 -
.../java/org/osjava/scraping/QuartzJob.java | 55 --
.../org/osjava/scraping/QuartzScheduler.java | 129 ---
.../src/java/org/osjava/scraping/Result.java | 40 -
.../src/java/org/osjava/scraping/Runner.java | 38 -
.../java/org/osjava/scraping/Scheduler.java | 38 -
.../org/osjava/scraping/SchedulerFactory.java | 58 --
.../osjava/scraping/ScrapingException.java | 43 -
.../src/java/org/osjava/scraping/Session.java | 45 --
.../org/osjava/scraping/SimpleScheduler.java | 43 -
.../src/java/org/osjava/scraping/Store.java | 40 -
.../org/osjava/scraping/StoreFactory.java | 47 --
.../org/osjava/scraping/StoringException.java | 43 -
.../org/osjava/scraping/TabularResult.java | 51 --
.../scraping/parser/PassThroughParser.java | 51 --
.../osjava/scraping/util/FactoryUtils.java | 65 --
simple-jndi/LICENSE.txt | 31 -
simple-jndi/project.properties | 11 -
simple-jndi/project.xml | 146 ----
.../org/osjava/convert/BooleanConverter.java | 59 --
.../src/java/org/osjava/convert/Convert.java | 60 --
.../java/org/osjava/convert/Converter.java | 39 -
.../org/osjava/convert/NumberConverter.java | 43 -
.../java/org/osjava/convert/URLConverter.java | 48 --
.../org/osjava/jndi/PropertiesContext.java | 750 ------------------
.../org/osjava/jndi/PropertiesDataSource.java | 140 ----
.../org/osjava/jndi/PropertiesFactory.java | 48 --
.../osjava/jndi/util/CustomProperties.java | 151 ----
.../org/osjava/jndi/util/XmlProperties.java | 122 ---
.../src/java/org/osjava/naming/Jndi.java | 73 --
.../src/test/config/GenscapeDS.properties | 5 -
.../src/test/config/default.properties | 4 -
simple-jndi/src/test/config/java.properties | 5 -
simple-jndi/src/test/config/test.properties | 1 -
.../src/test/config/thing/db.properties | 5 -
.../src/test/config/thing/type/bob.properties | 4 -
.../test/config/thing/type/default.properties | 3 -
simple-jndi/src/test/jndi.properties | 8 -
.../src/test/org/osjava/jndi/LookupTest.java | 142 ----
simple-jndi/xdocs/Archives.xml | 14 -
simple-jndi/xdocs/Download.xml | 45 --
simple-jndi/xdocs/Examples.xml | 80 --
simple-jndi/xdocs/FAQ.xml | 26 -
simple-jndi/xdocs/Intro.xml | 78 --
simple-jndi/xdocs/News.xml | 44 -
simple-jndi/xdocs/Tasks.xml | 60 --
simple-jndi/xdocs/images/1x1.gif | Bin 807 -> 0 bytes
simple-jndi/xdocs/images/core-logo.jpg | Bin 2047 -> 0 bytes
simple-jndi/xdocs/images/initials.jpg | Bin 2047 -> 0 bytes
simple-jndi/xdocs/images/osjava.gif | Bin 395 -> 0 bytes
simple-jndi/xdocs/navigation.xml | 26 -
109 files changed, 5602 deletions(-)
delete mode 100644 CVSROOT/checkoutlist
delete mode 100644 CVSROOT/commitinfo
delete mode 100644 CVSROOT/config
delete mode 100644 CVSROOT/cvswrappers
delete mode 100644 CVSROOT/editinfo
delete mode 100644 CVSROOT/loginfo
delete mode 100644 CVSROOT/modules
delete mode 100644 CVSROOT/notify
delete mode 100644 CVSROOT/rcsinfo
delete mode 100644 CVSROOT/taginfo
delete mode 100644 CVSROOT/verifymsg
delete mode 100644 runsql/example/config/CmdLine.properties
delete mode 100644 runsql/example/jndi.properties
delete mode 100644 runsql/example/sql/BOOTSTRAP.sql
delete mode 100644 runsql/example/sql/CHECK.sql
delete mode 100644 runsql/example/sql/QUERY.sql
delete mode 100644 runsql/example/sql/SCHEMA.sql
delete mode 100644 runsql/project.properties
delete mode 100644 runsql/project.xml
delete mode 100644 runsql/src/java/org/osjava/runsql/RunSql.java
delete mode 100644 scraping-engine/LICENSE.txt
delete mode 100644 scraping-engine/TODO
delete mode 100644 scraping-engine/project.properties
delete mode 100644 scraping-engine/project.xml
delete mode 100755 scraping-engine/run.sh
delete mode 100755 scraping-engine/runc.sh
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/AbstractConfig.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/AbstractPage.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/AbstractParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/CheckingParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Config.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/ConfigFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Engine.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Fetcher.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/FetchingException.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/FetchingFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Header.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/HttpFetcher.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/HttpsFetcher.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/JdbcStore.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/JndiConfig.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/LoopParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/MemoryPage.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/MultiParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/MultiResult.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NamespaceSession.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NotificationException.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NotificationFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Notifier.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullFetcher.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullNotifier.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullPage.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullResult.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/NullStore.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Page.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Parser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/ParserFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/ParsingException.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/QuartzJob.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/QuartzScheduler.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Result.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Runner.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Scheduler.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/SchedulerFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/ScrapingException.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Session.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/SimpleScheduler.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/Store.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/StoreFactory.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/StoringException.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/TabularResult.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/parser/PassThroughParser.java
delete mode 100644 scraping-engine/src/java/org/osjava/scraping/util/FactoryUtils.java
delete mode 100644 simple-jndi/LICENSE.txt
delete mode 100644 simple-jndi/project.properties
delete mode 100644 simple-jndi/project.xml
delete mode 100644 simple-jndi/src/java/org/osjava/convert/BooleanConverter.java
delete mode 100644 simple-jndi/src/java/org/osjava/convert/Convert.java
delete mode 100644 simple-jndi/src/java/org/osjava/convert/Converter.java
delete mode 100644 simple-jndi/src/java/org/osjava/convert/NumberConverter.java
delete mode 100644 simple-jndi/src/java/org/osjava/convert/URLConverter.java
delete mode 100644 simple-jndi/src/java/org/osjava/jndi/PropertiesContext.java
delete mode 100644 simple-jndi/src/java/org/osjava/jndi/PropertiesDataSource.java
delete mode 100644 simple-jndi/src/java/org/osjava/jndi/PropertiesFactory.java
delete mode 100644 simple-jndi/src/java/org/osjava/jndi/util/CustomProperties.java
delete mode 100644 simple-jndi/src/java/org/osjava/jndi/util/XmlProperties.java
delete mode 100644 simple-jndi/src/java/org/osjava/naming/Jndi.java
delete mode 100644 simple-jndi/src/test/config/GenscapeDS.properties
delete mode 100644 simple-jndi/src/test/config/default.properties
delete mode 100644 simple-jndi/src/test/config/java.properties
delete mode 100644 simple-jndi/src/test/config/test.properties
delete mode 100644 simple-jndi/src/test/config/thing/db.properties
delete mode 100644 simple-jndi/src/test/config/thing/type/bob.properties
delete mode 100644 simple-jndi/src/test/config/thing/type/default.properties
delete mode 100644 simple-jndi/src/test/jndi.properties
delete mode 100644 simple-jndi/src/test/org/osjava/jndi/LookupTest.java
delete mode 100644 simple-jndi/xdocs/Archives.xml
delete mode 100644 simple-jndi/xdocs/Download.xml
delete mode 100644 simple-jndi/xdocs/Examples.xml
delete mode 100644 simple-jndi/xdocs/FAQ.xml
delete mode 100644 simple-jndi/xdocs/Intro.xml
delete mode 100644 simple-jndi/xdocs/News.xml
delete mode 100644 simple-jndi/xdocs/Tasks.xml
delete mode 100644 simple-jndi/xdocs/images/1x1.gif
delete mode 100644 simple-jndi/xdocs/images/core-logo.jpg
delete mode 100644 simple-jndi/xdocs/images/initials.jpg
delete mode 100644 simple-jndi/xdocs/images/osjava.gif
delete mode 100644 simple-jndi/xdocs/navigation.xml
diff --git a/CVSROOT/checkoutlist b/CVSROOT/checkoutlist
deleted file mode 100644
index b04b3501..00000000
--- a/CVSROOT/checkoutlist
+++ /dev/null
@@ -1,13 +0,0 @@
-# The "checkoutlist" file is used to support additional version controlled
-# administrative files in $CVSROOT/CVSROOT, such as template files.
-#
-# The first entry on a line is a filename which will be checked out from
-# the corresponding RCS file in the $CVSROOT/CVSROOT directory.
-# The remainder of the line is an error message to use if the file cannot
-# be checked out.
-#
-# File format:
-#
-# []
-#
-# comment lines begin with '#'
diff --git a/CVSROOT/commitinfo b/CVSROOT/commitinfo
deleted file mode 100644
index b19e7b7a..00000000
--- a/CVSROOT/commitinfo
+++ /dev/null
@@ -1,15 +0,0 @@
-# The "commitinfo" file is used to control pre-commit checks.
-# The filter on the right is invoked with the repository and a list
-# of files to check. A non-zero exit of the filter program will
-# cause the commit to be aborted.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being committed to, relative
-# to the $CVSROOT. For the first match that is found, then the remainder
-# of the line is the name of the filter to run.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
diff --git a/CVSROOT/config b/CVSROOT/config
deleted file mode 100644
index ff43ec00..00000000
--- a/CVSROOT/config
+++ /dev/null
@@ -1,14 +0,0 @@
-# Set this to "no" if pserver shouldn't check system users/passwords
-#SystemAuth=no
-
-# Put CVS lock files in this directory rather than directly in the repository.
-#LockDir=/var/lock/cvs
-
-# Set `TopLevelAdmin' to `yes' to create a CVS directory at the top
-# level of the new working directory when using the `cvs checkout'
-# command.
-#TopLevelAdmin=no
-
-# Set `LogHistory' to `all' or `TOFEWGCMAR' to log all transactions to the
-# history file, or a subset as needed (ie `TMAR' logs all write operations)
-#LogHistory=TOFEWGCMAR
diff --git a/CVSROOT/cvswrappers b/CVSROOT/cvswrappers
deleted file mode 100644
index 0accaf1b..00000000
--- a/CVSROOT/cvswrappers
+++ /dev/null
@@ -1,23 +0,0 @@
-# This file affects handling of files based on their names.
-#
-# The -t/-f options allow one to treat directories of files
-# as a single file, or to transform a file in other ways on
-# its way in and out of CVS.
-#
-# The -m option specifies whether CVS attempts to merge files.
-#
-# The -k option specifies keyword expansion (e.g. -kb for binary).
-#
-# Format of wrapper file ($CVSROOT/CVSROOT/cvswrappers or .cvswrappers)
-#
-# wildcard [option value][option value]...
-#
-# where option is one of
-# -f from cvs filter value: path to filter
-# -t to cvs filter value: path to filter
-# -m update methodology value: MERGE or COPY
-# -k expansion mode value: b, o, kkv, &c
-#
-# and value is a single-quote delimited value.
-# For example:
-#*.gif -k 'b'
diff --git a/CVSROOT/editinfo b/CVSROOT/editinfo
deleted file mode 100644
index d78886c1..00000000
--- a/CVSROOT/editinfo
+++ /dev/null
@@ -1,21 +0,0 @@
-# The "editinfo" file is used to allow verification of logging
-# information. It works best when a template (as specified in the
-# rcsinfo file) is provided for the logging procedure. Given a
-# template with locations for, a bug-id number, a list of people who
-# reviewed the code before it can be checked in, and an external
-# process to catalog the differences that were code reviewed, the
-# following test can be applied to the code:
-#
-# Making sure that the entered bug-id number is correct.
-# Validating that the code that was reviewed is indeed the code being
-# checked in (using the bug-id number or a seperate review
-# number to identify this particular code set.).
-#
-# If any of the above test failed, then the commit would be aborted.
-#
-# Actions such as mailing a copy of the report to each reviewer are
-# better handled by an entry in the loginfo file.
-#
-# One thing that should be noted is the the ALL keyword is not
-# supported. There can be only one entry that matches a given
-# repository.
diff --git a/CVSROOT/loginfo b/CVSROOT/loginfo
deleted file mode 100644
index 5a59f0a5..00000000
--- a/CVSROOT/loginfo
+++ /dev/null
@@ -1,26 +0,0 @@
-# The "loginfo" file controls where "cvs commit" log information
-# is sent. The first entry on a line is a regular expression which must match
-# the directory that the change is being made to, relative to the
-# $CVSROOT. If a match is found, then the remainder of the line is a filter
-# program that should expect log information on its standard input.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name ALL appears as a regular expression it is always used
-# in addition to the first matching regex or DEFAULT.
-#
-# You may specify a format string as part of the
-# filter. The string is composed of a `%' followed
-# by a single format character, or followed by a set of format
-# characters surrounded by `{' and `}' as separators. The format
-# characters are:
-#
-# s = file name
-# V = old version number (pre-checkin)
-# v = new version number (post-checkin)
-#
-# For example:
-#DEFAULT (echo ""; id; echo %s; date; cat) >> $CVSROOT/CVSROOT/commitlog
-# or
-#DEFAULT (echo ""; id; echo %{sVv}; date; cat) >> $CVSROOT/CVSROOT/commitlog
diff --git a/CVSROOT/modules b/CVSROOT/modules
deleted file mode 100644
index cb9e9efc..00000000
--- a/CVSROOT/modules
+++ /dev/null
@@ -1,26 +0,0 @@
-# Three different line formats are valid:
-# key -a aliases...
-# key [options] directory
-# key [options] directory files...
-#
-# Where "options" are composed of:
-# -i prog Run "prog" on "cvs commit" from top-level of module.
-# -o prog Run "prog" on "cvs checkout" of module.
-# -e prog Run "prog" on "cvs export" of module.
-# -t prog Run "prog" on "cvs rtag" of module.
-# -u prog Run "prog" on "cvs update" of module.
-# -d dir Place module in directory "dir" instead of module name.
-# -l Top-level directory only -- do not recurse.
-#
-# NOTE: If you change any of the "Run" options above, you'll have to
-# release and re-checkout any working directories of these modules.
-#
-# And "directory" is a path to a directory relative to $CVSROOT.
-#
-# The "-a" option specifies an alias. An alias is interpreted as if
-# everything on the right of the "-a" had been typed on the command line.
-#
-# You can encode a module within a module by using the special '&'
-# character to interpose another module into the current module. This
-# can be useful for creating a module that consists of many directories
-# spread out over the entire source repository.
diff --git a/CVSROOT/notify b/CVSROOT/notify
deleted file mode 100644
index 34f0bc28..00000000
--- a/CVSROOT/notify
+++ /dev/null
@@ -1,12 +0,0 @@
-# The "notify" file controls where notifications from watches set by
-# "cvs watch add" or "cvs edit" are sent. The first entry on a line is
-# a regular expression which is tested against the directory that the
-# change is being made to, relative to the $CVSROOT. If it matches,
-# then the remainder of the line is a filter program that should contain
-# one occurrence of %s for the user to notify, and information on its
-# standard input.
-#
-# "ALL" or "DEFAULT" can be used in place of the regular expression.
-#
-# For example:
-#ALL mail %s -s "CVS notification"
diff --git a/CVSROOT/rcsinfo b/CVSROOT/rcsinfo
deleted file mode 100644
index 49e59f4d..00000000
--- a/CVSROOT/rcsinfo
+++ /dev/null
@@ -1,13 +0,0 @@
-# The "rcsinfo" file is used to control templates with which the editor
-# is invoked on commit and import.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being made to, relative to the
-# $CVSROOT. For the first match that is found, then the remainder of the
-# line is the name of the file that contains the template.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
diff --git a/CVSROOT/taginfo b/CVSROOT/taginfo
deleted file mode 100644
index 274a46dd..00000000
--- a/CVSROOT/taginfo
+++ /dev/null
@@ -1,20 +0,0 @@
-# The "taginfo" file is used to control pre-tag checks.
-# The filter on the right is invoked with the following arguments:
-#
-# $1 -- tagname
-# $2 -- operation "add" for tag, "mov" for tag -F, and "del" for tag -d
-# $3 -- repository
-# $4-> file revision [file revision ...]
-#
-# A non-zero exit of the filter program will cause the tag to be aborted.
-#
-# The first entry on a line is a regular expression which is tested
-# against the directory that the change is being committed to, relative
-# to the $CVSROOT. For the first match that is found, then the remainder
-# of the line is the name of the filter to run.
-#
-# If the repository name does not match any of the regular expressions in this
-# file, the "DEFAULT" line is used, if it is specified.
-#
-# If the name "ALL" appears as a regular expression it is always used
-# in addition to the first matching regex or "DEFAULT".
diff --git a/CVSROOT/verifymsg b/CVSROOT/verifymsg
deleted file mode 100644
index 86f747ce..00000000
--- a/CVSROOT/verifymsg
+++ /dev/null
@@ -1,21 +0,0 @@
-# The "verifymsg" file is used to allow verification of logging
-# information. It works best when a template (as specified in the
-# rcsinfo file) is provided for the logging procedure. Given a
-# template with locations for, a bug-id number, a list of people who
-# reviewed the code before it can be checked in, and an external
-# process to catalog the differences that were code reviewed, the
-# following test can be applied to the code:
-#
-# Making sure that the entered bug-id number is correct.
-# Validating that the code that was reviewed is indeed the code being
-# checked in (using the bug-id number or a seperate review
-# number to identify this particular code set.).
-#
-# If any of the above test failed, then the commit would be aborted.
-#
-# Actions such as mailing a copy of the report to each reviewer are
-# better handled by an entry in the loginfo file.
-#
-# One thing that should be noted is the the ALL keyword is not
-# supported. There can be only one entry that matches a given
-# repository.
diff --git a/runsql/example/config/CmdLine.properties b/runsql/example/config/CmdLine.properties
deleted file mode 100644
index 2bc4007a..00000000
--- a/runsql/example/config/CmdLine.properties
+++ /dev/null
@@ -1,5 +0,0 @@
-com.generationjava.jndi.datasource=true
-driver=org.hsqldb.jdbcDriver
-url=jdbc:hsqldb:hsql://localhost
-user=sa
-password=
diff --git a/runsql/example/jndi.properties b/runsql/example/jndi.properties
deleted file mode 100644
index 4b7b0e4b..00000000
--- a/runsql/example/jndi.properties
+++ /dev/null
@@ -1,2 +0,0 @@
-java.naming.factory.initial=com.generationjava.jndi.PropertiesFactory
-com.generationjava.jndi.root=config/
diff --git a/runsql/example/sql/BOOTSTRAP.sql b/runsql/example/sql/BOOTSTRAP.sql
deleted file mode 100644
index 9373894c..00000000
--- a/runsql/example/sql/BOOTSTRAP.sql
+++ /dev/null
@@ -1,4 +0,0 @@
-INSERT INTO Report (name, sql, age) VALUES ('foo', 'select foo', '95');
-INSERT INTO Report (name, sql, age) VALUES ('bar', 'select poo', '5');
-INSERT INTO Report (name, sql, age) VALUES ('poo', 'delete foo', '9');
-INSERT INTO Report (name, sql, age) VALUES ('barry', 'select wfoo', '9191');
diff --git a/runsql/example/sql/CHECK.sql b/runsql/example/sql/CHECK.sql
deleted file mode 100644
index 9be0a1fc..00000000
--- a/runsql/example/sql/CHECK.sql
+++ /dev/null
@@ -1 +0,0 @@
-SELECT count(*) AS total FROM Report
diff --git a/runsql/example/sql/QUERY.sql b/runsql/example/sql/QUERY.sql
deleted file mode 100644
index f8cb6ce8..00000000
--- a/runsql/example/sql/QUERY.sql
+++ /dev/null
@@ -1 +0,0 @@
-SELECT * FROM Bandwidth
diff --git a/runsql/example/sql/SCHEMA.sql b/runsql/example/sql/SCHEMA.sql
deleted file mode 100644
index bba7192d..00000000
--- a/runsql/example/sql/SCHEMA.sql
+++ /dev/null
@@ -1,11 +0,0 @@
-DROP TABLE Bandwidth;
-CREATE TABLE Bandwidth (
- last_total varchar(255),
- this_total varchar(255),
- last_in varchar(255),
- this_in varchar(255),
- last_out varchar(255),
- this_out varchar(255),
- last_sess varchar(255),
- this_sess varchar(255)
-);
diff --git a/runsql/project.properties b/runsql/project.properties
deleted file mode 100644
index 18a9eb1e..00000000
--- a/runsql/project.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-maven.checkstyle.header.file=/dev/null
-maven.repo.remote=http://www.generationjava.com/jars/,http://www.ibiblio.org/maven/
-
-maven.ui.banner.background=#000
-maven.ui.section.background=#000
-maven.ui.subsection.background=#000
diff --git a/runsql/project.xml b/runsql/project.xml
deleted file mode 100644
index f07a0e21..00000000
--- a/runsql/project.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
- 3
- runsql
- runsql
- 0.1
-
- GenerationJava
- http://www.generationjava.com/
- /images/initials.jpg
-
- 2003
- org.osjava.runsql
- /images/core-logo.jpg
-
-
- A command line runner of SQL statements. I like piping sql statements into the mysql command on a unix machine. This is designed to let me do the same things in a database independent way.
-
-
- SQL Script Runner
-
- http://www.osjava.org/runsql/
- www.osjava.org/runsql
- /sites/org/osjava/www/runsql/
- /sites/org/osjava/www/builds/releases/runsql/
-
-
- scm:cvshen@umbongo.flamefew.net:/var/cvs:runsql
- http://www.generationjava.com/view-cvs/viewcvs.cgi/runsql/
-
-
-
-
- 0.1
- 0.1
- HEAD
-
-
-
-
-
-
-
-
-
-
-
- Henri Yandell
- hen
- bayard@generationjava.com
- GenerationJava
-
- Java Developer
-
-
-
-
-
-
-
- commons-dbutils
- SNAPSHOT
-
-
- genjava-core
- 2.0
- http://www.generationjava.com/projects/GenJavaCore.shtml
-
-
- commons-lang
- 1.0
- http://jakarta.apache.org/commons/lang.html
-
-
-
-
-
- bayard@www.generationjava.com
-
- src/java
-
- src/test
-
-
-
-
diff --git a/runsql/src/java/org/osjava/runsql/RunSql.java b/runsql/src/java/org/osjava/runsql/RunSql.java
deleted file mode 100644
index 27885c7d..00000000
--- a/runsql/src/java/org/osjava/runsql/RunSql.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.osjava.runsql;
-
-import java.io.*;
-import java.sql.*;
-import javax.sql.*;
-import javax.naming.*;
-import org.apache.commons.dbutils.*;
-import org.apache.commons.lang.*;
-import com.generationjava.io.*;
-
-public class RunSql {
-
- static public void main(String[] args) throws Exception {
- String dsname = args[0];
- InitialContext ctxt = new InitialContext();
- DataSource ds = (DataSource)ctxt.lookup(dsname);
- Connection conn = ds.getConnection();
- try {
- runScript(conn, System.in);
- } catch(SQLException sqle) {
- System.err.println("Script failure. ");
- sqle.printStackTrace();
- } finally {
- DbUtils.closeQuietly(conn);
- }
- }
-
- static public void runScript(Connection conn, InputStream in) throws SQLException {
- runScript(conn, FileW.loadFile(in));
- }
-
- static public void runScript(Connection conn, String script) throws SQLException {
- // TODO: Improve so a ; inside a string is ignored.
- String[] stmts = StringUtils.split(script, ";");
- Statement stmt = conn.createStatement();
- try {
- for(int i=0; i
-
-
- 3
- scraping-engine
- scraping-engine
- 0.1
-
- OSJava
- http://www.osjava.org/
- http://www.osjava.org/images/osjava.gif
-
- 2003
- org.osjava.scraping
- http://www.osjava.org/images/1x1.gif
-
-
- scraping-engine
-
-
- A web-scraping engine.
-
-
- A web-scraping engine
-
- http://www.osjava.org/
-
- www.generationjava.com/maven/scraping-engine
- /sites/org/osjava/www/maven/scraping-engine/
- /sites/org/osjava/www/releases/official/
-
-
- scm:cvshen@umbongo.flamefew.net:/var/cvs:scraping-engine
- http://www.generationjava.com/view-cvs/viewcvs.cgi/scraping-engine/
-
-
-
-
- 1.0
- 1.0
- HEAD
-
-
-
-
-
-
-
-
-
-
-
- Henri Yandell
- hen
- bayard@generationjava.com
- GenerationJava
-
- Java Developer
-
-
-
-
-
-
-
-
-
-
-
-
- jdbc
- 2.0
-
-
- log4j
- 1.2.7
- http://jakarta.apache.org/log4j/
-
-
- commons-lang
- 1.0
- http://jakarta.apache.org/commons/lang.html
-
-
- commons-httpclient
- 2.0-alpha2
- http://jakarta.apache.org/commons/
-
-
- commons-collections
- 2.1
- http://jakarta.apache.org/commons/
-
-
- commons-dbutils
- SNAPSHOT
- http://jakarta.apache.org/commons/
-
-
- genjava-core
- 2.0
- http://www.generationjava.com/
-
-
- simple-jndi
- 0.5
- http://www.generationjava.com/
-
-
- quartz
- 1.0.7
- http://www.part.net/quartz.html
-
-
-
-
-
- bayard@www.generationjava.com
-
- src/java
-
- src/test
-
-
-
-
-
-
- include = *.dtd
- include = log4j.properties
-
-
-
-
-
-
-
diff --git a/scraping-engine/run.sh b/scraping-engine/run.sh
deleted file mode 100755
index 92290745..00000000
--- a/scraping-engine/run.sh
+++ /dev/null
@@ -1 +0,0 @@
-java -classpath .:target/scraping-engine-0.1.jar:/usr/local/javalib/commons-collections-2.1.jar:/usr/local/javalib/commons-lang-1.0.1.jar:/usr/local/javalib/genjava-core-2.0.jar:config/:/usr/local/javalib/maven/repository/simple-jndi/jars/simple-jndi-0.5.jar:/usr/local/javalib/commons-httpclient-2.0-alpha2.jar:/usr/local/javalib/commons-logging-1.0.1.jar:/usr/local/javalib/maven/repository/commons-dbutils/jars/commons-dbutils-SNAPSHOT.jar:/usr/local/javalib/mm.mysql-2.0.9-bin.jar:/Users/hen/Desktop/hsqldb/lib/hsqldb.jar:/usr/local/javalib/maven/repository/log4j/jars/log4j-1.2.7.jar:/usr/local/javalib/maven/repository/quartz/jars/quartz-1.0.7.jar org.osjava.scraping.Engine
diff --git a/scraping-engine/runc.sh b/scraping-engine/runc.sh
deleted file mode 100755
index 6837e24d..00000000
--- a/scraping-engine/runc.sh
+++ /dev/null
@@ -1 +0,0 @@
-javac -classpath /usr/local/javalib/commons-lang-1.0.1.jar:/usr/local/javalib/genjava-core-2.0.jar:target/scraping-engine-0.1.jar:.:/usr/local/javalib/maven/repository/log4j/jars/log4j-1.2.7.jar com/*/scraper/*.java
diff --git a/scraping-engine/src/java/org/osjava/scraping/AbstractConfig.java b/scraping-engine/src/java/org/osjava/scraping/AbstractConfig.java
deleted file mode 100644
index 4c32e0b3..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/AbstractConfig.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scraping-Engine nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-import java.util.ArrayList;
-import java.util.List;
-import org.apache.commons.lang.NumberUtils;
-import java.util.Date;
-
-public abstract class AbstractConfig implements Config {
-
- private String context = "";
-
- protected abstract Object getValue(String key);
-
- public Object get(String key) {
- return getValue( getContext()+key );
- }
-
- public boolean has(String key) {
- return (get(key) != null);
- }
-
- public Object getAbsolute(String key) {
- return getValue(key);
- }
-
- public String getString(String key) {
- return (String)get(key);
- }
-
- public Date getDate(String key) {
- try {
- return java.text.DateFormat.getDateInstance(java.text.DateFormat.SHORT).parse(key);
- } catch(java.text.ParseException pe) {
- return null;
- }
- }
-
- // rely on simple-jndi's type
- public int getInt(String key) {
- return NumberUtils.stringToInt(getString(key));
- }
-
- public List getList(String key) {
- Object obj = get(key);
- if(!(obj instanceof List)) {
- List list = new ArrayList(1);
- list.add(obj);
- obj = list;
- }
- return (List)obj;
- }
-
- public void setContext(String context) {
- this.context = context;
- }
-
- public String getContext() {
- return this.context;
- }
-
- public Config cloneConfig() {
- try {
- return (Config)this.clone();
- } catch(CloneNotSupportedException cnse) {
- // ignore
- throw new RuntimeException("Cloning of a Config failed. This should be impossible. ");
- }
- }
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/AbstractPage.java b/scraping-engine/src/java/org/osjava/scraping/AbstractPage.java
deleted file mode 100644
index a67e19f6..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/AbstractPage.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-import java.io.IOException;
-import java.io.Reader;
-import java.io.StringReader;
-
-import java.io.BufferedReader;
-
-import org.apache.log4j.Logger;
-
-public abstract class AbstractPage implements Page {
-
- private static Logger logger = Logger.getLogger(AbstractPage.class);
-
- private String documentBase;
-
- public AbstractPage() {
- }
-
- public abstract Reader read() throws IOException;
-
- public Page fetch(String uri, Config cfg, Session session) throws FetchingException {
-
- // TODO: This knows about HTTP PROTOCOL urls. Fix.
- int idx = uri.indexOf("://");
- if(idx == -1) {
- // TODO: also check it is less than 15 or something??
- if(uri.startsWith("/")) {
- // Here we need to work backwards to the 'root' of the
- // protocol. How do we define that??
- int idx2 = this.documentBase.indexOf("://");
- idx2 = this.documentBase.indexOf("/", idx2 + 3);
- uri = this.documentBase.substring(0, idx2) + "/" + uri;
- } else {
- uri = this.documentBase + "/" + uri;
- }
- }
-
-
- logger.debug("Fetching: "+uri);
- Fetcher fetcher = FetchingFactory.getFetcher(cfg, session);
- Page page = fetcher.fetch(uri, cfg, session);
- return page;
- }
-
- public void setDocumentBase(String documentBase) {
- logger.debug("Document base: "+documentBase);
- this.documentBase = documentBase;
- }
-
- public String getDocumentBase() {
- return this.documentBase;
- }
-
- public String readAsString() throws IOException {
- Reader rdr = null;
- try {
- rdr = this.read();
- BufferedReader bfr = new BufferedReader(rdr);
- StringBuffer buffer = new StringBuffer();
- String line = "";
- while( (line = bfr.readLine()) != null) {
- buffer.append(line);
- buffer.append("\n");
- }
- return buffer.toString();
- } finally {
- if(rdr != null) {
- try {
- rdr.close();
- } catch(IOException ioe) {
- // ignore
- }
- }
- }
- }
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/AbstractParser.java b/scraping-engine/src/java/org/osjava/scraping/AbstractParser.java
deleted file mode 100644
index 9efd4bd1..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/AbstractParser.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-public abstract class AbstractParser implements Parser {
-
- abstract public Result parse(Page page, Config cfg, Session session) throws ParsingException;
-
- public void startUp(Config cfg) throws Exception { }
- public void bringDown(Config cfg) throws Exception { }
-
- // helper methods
- // ??
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/CheckingParser.java b/scraping-engine/src/java/org/osjava/scraping/CheckingParser.java
deleted file mode 100644
index 0bad03d7..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/CheckingParser.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-public abstract class CheckingParser extends AbstractParser {
-
- public Result parse(Page page, Config cfg, Session session) throws ParsingException {
- Header header = parseHeader(page, cfg, session);
- Store store = StoreFactory.getStore(cfg, session);
- try {
- boolean found = store.exists(header, cfg, session);
- if(found) {
- return new NullResult();
- } else {
- return parseBody(page, header, cfg, session);
- }
- } catch(StoringException se) {
- return new NullResult();
- }
- }
-
- public abstract Header parseHeader(Page page, Config cfg, Session session) throws ParsingException;
- public abstract Result parseBody(Page page, Header header, Config cfg, Session session) throws ParsingException;
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/Config.java b/scraping-engine/src/java/org/osjava/scraping/Config.java
deleted file mode 100644
index bf4e368c..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/Config.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-import java.util.List;
-import java.util.Date;
-
-public interface Config extends Cloneable {
-
- public Object get(String key);
- public boolean has(String key);
- public Object getAbsolute(String key);
- public String getString(String key);
- public int getInt(String key);
- public Date getDate(String key);
- public List getList(String key);
- public void setContext(String context);
- public String getContext();
- public Config cloneConfig();
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/ConfigFactory.java b/scraping-engine/src/java/org/osjava/scraping/ConfigFactory.java
deleted file mode 100644
index 3983f455..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/ConfigFactory.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-public class ConfigFactory {
-
- static public Config getConfig(String[] args) {
- return new JndiConfig();
- }
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/Engine.java b/scraping-engine/src/java/org/osjava/scraping/Engine.java
deleted file mode 100644
index 9c644c88..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/Engine.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping;
-
-import java.util.List;
-import java.io.Reader;
-
-public class Engine implements Runner {
-
- public static void main(String[] args) {
- Engine engine = new Engine();
- engine.run(args);
- }
-
-/// TODO: Implement the Scheduler aspect
-/// The Scheduler notifies only this class. It is
-/// then up to this Engine to run the parsers.
-/// TODO: Put the scraping and db in a different thread
- public void run(String[] args) {
- // load the config
- Config cfg = ConfigFactory.getConfig(args);
-
-
- // test and how schedule=startup will be handled
- List list = cfg.getList("org.osjava.scrapers");
- for(int i=0; i.
- // very simple system to start with
- // so our JdbcStore can be simple
- public Iterator iterateRows() {
- return this.iterator;
- }
-
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/parser/PassThroughParser.java b/scraping-engine/src/java/org/osjava/scraping/parser/PassThroughParser.java
deleted file mode 100644
index 88c6ba0a..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/parser/PassThroughParser.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping.parser;
-
-import java.io.Reader;
-import java.io.IOException;
-import java.io.BufferedReader;
-import java.util.ArrayList;
-import org.osjava.scraping.*;
-
-public class PassThroughParser extends AbstractParser {
-
- public Result parse(Page page, Config cfg, Session session) throws ParsingException {
- try {
- ArrayList list = new ArrayList(1);
- list.add( new Object[] { page.readAsString() } );
- return new TabularResult(list.iterator());
- } catch(IOException ioe) {
- throw new ParsingException("Unable to read page", ioe);
- }
- }
-}
diff --git a/scraping-engine/src/java/org/osjava/scraping/util/FactoryUtils.java b/scraping-engine/src/java/org/osjava/scraping/util/FactoryUtils.java
deleted file mode 100644
index f0f8e4c3..00000000
--- a/scraping-engine/src/java/org/osjava/scraping/util/FactoryUtils.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Scabies nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-package org.osjava.scraping.util;
-
-import com.generationjava.lang.ClassW;
-
-public class FactoryUtils {
-
- static private String NULL_NAME = "Null";
-
- static public Object getObject(String name, String type) {
- if(name != null) {
- Object obj = ClassW.createObject("org.osjava.scraping."+name+type);
- // should it check the type? it assumes we have a
- // clue what the interface is...
- if(obj != null) {
- return obj;
- }
- obj = ClassW.createObject(name+type);
- if(obj != null) {
- return obj;
- }
- obj = ClassW.createObject(name);
- if(obj != null) {
- return obj;
- }
- }
- if(name == NULL_NAME) {
- // if it couldn't find the Null pattern for the type
- return null;
- } else {
- return getObject(NULL_NAME, type);
- }
- }
-
-}
diff --git a/simple-jndi/LICENSE.txt b/simple-jndi/LICENSE.txt
deleted file mode 100644
index 283929cc..00000000
--- a/simple-jndi/LICENSE.txt
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
diff --git a/simple-jndi/project.properties b/simple-jndi/project.properties
deleted file mode 100644
index 34c231c7..00000000
--- a/simple-jndi/project.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-maven.repo.remote=http://www.generationjava.com/jars2/,http://www.ibiblio.org/maven/
-
-maven.ui.navcol.background=#f4f8d8
-maven.ui.banner.background=#000066
-maven.ui.section.background=#000066
-maven.ui.subsection.background=#000066
-maven.xdoc.date = left
-maven.xdoc.version = v${pom.currentVersion}
-maven.ui.breadcrumbs.background=#f4f8d8
-
-maven.xdoc.poweredby.image=../1x1.gif
diff --git a/simple-jndi/project.xml b/simple-jndi/project.xml
deleted file mode 100644
index cdaf3111..00000000
--- a/simple-jndi/project.xml
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
- 3
- simple-jndi
- simple-jndi
- 0.6
-
- OSJava
- http://www.osjava.org/
- /images/osjava.gif
-
- 2003
- org.osjava
- /images/1x1.gif
-
-
- simple-jndi
-
-
- A simple implementation of JNDI. It is entirely library based, so no server instances are started, and it sits upon Java .properties files or XML files, so it is easy to use and simple to understand. The .properties/.xml files may be either on the file system or in the classpath.
-
-
- A JNDI implementation using .properties
-
- http://www.osjava.org/simple-jndi/
- http://www.osjava.org:8080/jira/secure/BrowseProject.jspa?id=10000
- www.osjava.org/maven/simple-jndi
- /sites/org/osjava/www/maven/genjava/simple-jndi/
- /sites/org/osjava/www/maven/builds/
-
-
- scm:cvs:ext:hen@umbongo.flamefew.net:/var/publiccvs:simple-jndi
- http://www.osjava.org/view-cvs/viewcvs.cgi/simple-jndi/
-
-
-
-
- 1.0
- 1.0
- HEAD
-
-
-
-
-
-
-
-
-
-
-
- Henri Yandell
- hen
- bayard@generationjava.com
- GenerationJava
-
- Java Developer
-
-
-
-
-
-
-
-
-
-
-
-
-
- genjava-core
- 2.0
- http://www.osjava.org/
-
-
- commons-lang
- 1.0.1
- http://jakarta.apache.org/commons/lang.html
-
-
- commons-collections
- 2.1
- http://jakarta.apache.org/commons/collections.html
-
-
-
-
-
- bayard@www.osjava.org
-
- src/java
- src/test
-
-
-
-
- src/test/config
- config
-
-
- src/test
-
- jndi.properties
-
-
-
-
- **/*Test.java
-
-
-
-
-
-
-
-
-
- include = *.dtd
- include = log4j.properties
-
-
-
-
-
-
-
diff --git a/simple-jndi/src/java/org/osjava/convert/BooleanConverter.java b/simple-jndi/src/java/org/osjava/convert/BooleanConverter.java
deleted file mode 100644
index 9a07329e..00000000
--- a/simple-jndi/src/java/org/osjava/convert/BooleanConverter.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.convert;
-
-//import org.apache.commons.lang.BooleanUtils;
-
-public class BooleanConverter implements Converter {
-
- // TODO: Sit this on top of BooleanUtils
- public Object convert(String value) {
-// return BooleanUtils.toBooleanObject(value);
- if ("true".equalsIgnoreCase(value)) {
- return Boolean.TRUE;
- } else if ("false".equalsIgnoreCase(value)) {
- return Boolean.FALSE;
- } else if ("on".equalsIgnoreCase(value)) {
- return Boolean.TRUE;
- } else if ("off".equalsIgnoreCase(value)) {
- return Boolean.FALSE;
- } else if ("yes".equalsIgnoreCase(value)) {
- return Boolean.TRUE;
- } else if ("no".equalsIgnoreCase(value)) {
- return Boolean.FALSE;
- }
- // no match
- return null;
- }
-
-}
diff --git a/simple-jndi/src/java/org/osjava/convert/Convert.java b/simple-jndi/src/java/org/osjava/convert/Convert.java
deleted file mode 100644
index 784bad02..00000000
--- a/simple-jndi/src/java/org/osjava/convert/Convert.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.convert;
-
-import java.util.HashMap;
-import com.generationjava.collections.ClassMap;
-import com.generationjava.lang.ClassW;
-
-public class Convert {
-
-
- private static ClassMap map = new ClassMap(new HashMap());
-
- static {
- map.put(java.lang.Number.class, new NumberConverter());
- map.put(java.lang.Boolean.class, new BooleanConverter());
- map.put(java.net.URL.class, new URLConverter());
- }
-
- public static Object convert(String value, String type) {
- Class clss = ClassW.getClass(type);
- Converter converter = (Converter)map.get(clss);
- if(converter != null) {
- return converter.convert(value);
- } else {
- return value;
- }
- }
-
-}
diff --git a/simple-jndi/src/java/org/osjava/convert/Converter.java b/simple-jndi/src/java/org/osjava/convert/Converter.java
deleted file mode 100644
index d7345ddc..00000000
--- a/simple-jndi/src/java/org/osjava/convert/Converter.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.convert;
-
-public interface Converter {
-
- public Object convert(String value);
-
-}
diff --git a/simple-jndi/src/java/org/osjava/convert/NumberConverter.java b/simple-jndi/src/java/org/osjava/convert/NumberConverter.java
deleted file mode 100644
index 011e9019..00000000
--- a/simple-jndi/src/java/org/osjava/convert/NumberConverter.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.convert;
-
-import org.apache.commons.lang.NumberUtils;
-
-public class NumberConverter implements Converter {
-
- public Object convert(String value) {
- return NumberUtils.createNumber(value);
- }
-
-}
diff --git a/simple-jndi/src/java/org/osjava/convert/URLConverter.java b/simple-jndi/src/java/org/osjava/convert/URLConverter.java
deleted file mode 100644
index 95e0e342..00000000
--- a/simple-jndi/src/java/org/osjava/convert/URLConverter.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.convert;
-
-import java.net.URL;
-import java.net.MalformedURLException;
-
-public class URLConverter implements Converter {
-
- public Object convert(String value) {
- try {
- return new URL(value);
- } catch(MalformedURLException murle) {
- return value; // or null? or Exception?
- }
- }
-
-}
diff --git a/simple-jndi/src/java/org/osjava/jndi/PropertiesContext.java b/simple-jndi/src/java/org/osjava/jndi/PropertiesContext.java
deleted file mode 100644
index d5c34b0b..00000000
--- a/simple-jndi/src/java/org/osjava/jndi/PropertiesContext.java
+++ /dev/null
@@ -1,750 +0,0 @@
-/*
- * Copyright (c) 2003, Henri Yandell
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or
- * without modification, are permitted provided that the
- * following conditions are met:
- *
- * + Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- *
- * + Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- *
- * + Neither the name of Simple-JNDI nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- */
-
-package org.osjava.jndi;
-
-import javax.naming.Context;
-import javax.naming.NamingException;
-import javax.naming.NameParser;
-import javax.naming.InvalidNameException;
-import javax.naming.NameAlreadyBoundException;
-import javax.naming.NotContextException;
-import javax.naming.NameNotFoundException;
-import javax.naming.NamingEnumeration;
-import javax.naming.OperationNotSupportedException;
-import javax.naming.Name;
-import javax.naming.CompositeName;
-import javax.naming.Binding;
-import javax.naming.NameClassPair;
-
-import java.util.Hashtable;
-import java.util.Properties;
-import java.util.Enumeration;
-import java.util.Iterator;
-import java.util.List;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.InputStream;
-import java.io.IOException;
-import java.net.URL;
-import java.net.MalformedURLException;
-
-import org.apache.commons.lang.StringUtils;
-import org.osjava.convert.Convert;
-import org.osjava.jndi.util.CustomProperties;
-import org.osjava.jndi.util.XmlProperties;
-
-public class PropertiesContext implements Context {
-
- private static Object FILE = new String("FILE");
- private static Object CLASSPATH = new String("CLASSPATH");
- private static Object HTTP = new String("HTTP");
-
- // table is used as a read-write cache which sits
- // above the file-store
- private Hashtable table = new Hashtable();
-
- private Hashtable env;
- private String root;
- private Object protocol;
- private String separator;
- private String delimiter;
-
- // original values
- private String _root;
- private String _delimiter;
-
- public PropertiesContext(Hashtable env) {
- if(env != null) {
- this.env = (Hashtable)env.clone();
- this.root = (String)this.env.get("org.osjava.jndi.root");
- this.delimiter = (String)this.env.get("org.osjava.jndi.delimiter");
- if(this.delimiter == null) {
- this.delimiter = ".";
- }
- this._root = this.root;
- this._delimiter = this.delimiter;
-
- // Work out the protocol of the root
- // No root means we're using a classpath protocol,
- // no protocol means we're using file protocol [legacy]
- if(root != null) {
- if(root.indexOf("://") != -1) {
- String proto = StringUtils.chomp(root, "://");
- this.root = StringUtils.prechomp(root, "://");
- if("file".equals(proto)) {
- this.protocol = FILE;
- this.separator = ""+File.separatorChar;
- } else
- if("http".equals(proto)) {
- this.protocol = HTTP;
- this.separator = ""+File.separatorChar;
- } else
- if("classpath".equals(proto)) {
- this.protocol = CLASSPATH;
- this.separator = "/";
- }
- } else {
- this.protocol = FILE;
- this.separator = ""+File.separatorChar;
- }
- } else {
- this.protocol = CLASSPATH;
- this.separator = "/";
- this.root = "";
- }
-
-// System.err.println("proto: "+this.protocol);
-// System.err.println("root: "+this.root);
-// System.err.println("sepChar: "+this.separator);
- }
- }
-
- private PropertiesContext(PropertiesContext that) {
- this(that.env);
- }
-
- public Object lookup(Name name) throws NamingException {
- return lookup(name.toString());
- }
-
- private boolean isSpecialKey(String key) {
- if("org.osjava.jndi.root".equals(key)) {
- return true;
- }
- if("org.osjava.jndi.delimiter".equals(key)) {
- return true;
- }
- return false;
- }
-
- private void setSpecial(String key, Object value) {
- if("org.osjava.jndi.root".equals(key)) {
- this.root = (String) value;
- }
- if("org.osjava.jndi.delimiter".equals(key)) {
- this.delimiter = (String) value;
- }
- }
-
- private void resetSpecial(String key) {
- if("org.osjava.jndi.root".equals(key)) {
- this.root = this._root;
- }
- if("org.osjava.jndi.delimiter".equals(key)) {
- this.delimiter = this._delimiter;
- }
- }
-
- private Object getSpecial(String key) throws NamingException {
- if("org.osjava.jndi.root".equals(key)) {
- return this.root;
- }
- if("org.osjava.jndi.delimiter".equals(key)) {
- return this.delimiter;
- }
- throw new NamingException("Simple-JNDI incorrectly believes "+key+" is special. ");
- }
-
- /**
- * java:/ is impossible to deal with on a Windows box.
- * Complete utter pain. Solution is to remove the :
- */
- private String handleJavaStandard(String key) {
- if(key != null) {
- if(key.equals("java:")) {
- return "java";
- }
- if(key.equals("java:/")) {
- return "java/";
- }
- if(key.startsWith("java:/")) {
- return "java/"+key.substring(6);
- }
- }
- return key;
- }
-
- private Object getElement(String key) throws NamingException {
-
-// System.err.println("Asked for: "+key+" via "+this.protocol);
- if(this.protocol == FILE) {
- File file = new File(key);
- if(!file.exists()) {
- file = null;
- }
- return file;
- } else
- if(this.protocol == CLASSPATH) {
- if(key.startsWith(this.separator)) {
- key = key.substring(1);
- }
-// System.err.println("KEY: "+key);
- URL url = this.getClass().getClassLoader().getResource(key);
- return url;
- } else
- if(this.protocol == HTTP) {
- try {
- URL url = new URL(key);
- return url;
- } catch(MalformedURLException murle) {
- throw new NamingException("Unable to open http url: "+key);
- }
- } else {
- throw new NamingException("Unsupported protocol: "+this.protocol);
- }
- }
-
- private Properties loadProperties(Object file) throws NamingException {
- Properties properties = null;
- if(file instanceof File) {
- if( ((File)file).getName().endsWith(".xml") ) {
- properties = new XmlProperties();
- ((XmlProperties)properties).setDelimiter(this.delimiter);
- } else {
- properties = new CustomProperties();
- }
- } else
- if(file instanceof URL) {
- if( ((URL)file).getFile().endsWith(".xml") ) {
- properties = new XmlProperties();
- ((XmlProperties)properties).setDelimiter(this.separator);
- } else {
- properties = new CustomProperties();
- }
- } else {
- properties = new CustomProperties();
- }
-
- if(this.protocol == FILE) {
- try {
- FileInputStream fis = new FileInputStream((File)file);
- properties.load(fis);
- fis.close();
- return properties;
- } catch(IOException ioe) {
- throw new NamingException("Failure to open: "+file);
- }
- } else
- if(this.protocol == CLASSPATH) {
- try {
- InputStream fis = ((URL)file).openStream();
- properties.load(fis);
- fis.close();
- return properties;
- } catch(IOException ioe) {
- throw new NamingException("Failure to open: "+file);
- }
- } else
- if(this.protocol == HTTP) {
- try {
- InputStream fis = ((URL)file).openStream();
- properties.load(fis);
- fis.close();
- return properties;
- } catch(IOException ioe) {
- throw new NamingException("Failure to open: "+file);
- }
- } else {
- throw new NamingException("Unsupported protocol: "+this.protocol);
- }
- }
-
- private boolean isDirectory(Object file) throws NamingException {
-// System.err.println("Is dir: "+file);
- if(this.protocol == FILE) {
- return ((File)file).isDirectory();
- } else
- if(this.protocol == CLASSPATH) {
- // how to figure out if this is a directory?
- // could use reflection, currently we'll copy the http solution
- try {
- Properties props = loadProperties(file);
-// System.err.println("P:"+props);
- if(props == null) {
- return true;
- } else {
-// System.err.println("P#:"+props.size());
- // This is shit. Somehow I am getting an index back
- // and I assume it is a directory as every key
- // starts with <, ie html markup.
- // replace with reflection??
- Iterator iterator = props.keySet().iterator();
- while(iterator.hasNext()) {
- String key = (String)iterator.next();
- if(!key.startsWith("<")) {
-// System.err.println("bing: "+key);
- return false;
- }
- }
- return true;
- }
- } catch(Exception e) {
- // we assume this just means a failure to load,
- // therefore it must be a directory
-// System.err.println("Unknown e: "+e);
- return true;
- }
- } else
- if(this.protocol == HTTP) {
- // how the hell do we know a directory online???
- try {
- Properties props = loadProperties(file);
- return (props == null);
- } catch(Exception e) {
- // we assume this just means a failure to load,
- // therefore it must be a directory
- return true;
- }
- } else {
- throw new NamingException("Unsupported protocol: "+this.protocol);
- }
- }
-
- // to add:
- // need to add file://, although this is default
- // need to add classpath://.
- // need to add http://.
- // Use VFS???
- public Object lookup(String name) throws NamingException {
- if("".equals(name)) {
- return new PropertiesContext(this);
- }
-
- if(this.table.containsKey(name)) {
- return this.table.get(name);
- }
-
- if(System.getProperty(name) != null) {
- return System.getProperty(name);
- }
-
- if(isSpecialKey(name)) {
- return getSpecial(name);
- }
-
- name = handleJavaStandard(name);
-
- // name is a delimited notation, each element is either a
- // directory, file or part of a key.
- String[] elements = StringUtils.split(name, this.delimiter);
- String path = root;
- Properties properties = null;
- int sz = elements.length;
- String remaining = null;
-
- for(int i=0; i 0) {
- remaining = StringUtils.join(list.iterator(), this.delimiter);
- }
-// System.err.println("FILE FOUND: "+file);
-// System.err.println("Remaining: "+remaining);
-// System.err.println("element: "+element);
-// System.err.println("path: "+path);
- break;
- } else {
- java.util.ArrayList list = new java.util.ArrayList();
- for(int j=i; j 0) {
- remaining = StringUtils.join(list.iterator(), this.delimiter);
- }
-// System.err.println("Rem: "+remaining);
- break; // TODO: Is this right?
- }
- }
-
- if(properties == null) {
- // if properties is null, then we look for default.properties
- Object file = getElement(path+this.separator+"default.properties");
- if(file == null) {
- file = getElement(path+this.separator+"default.xml");
- }
- if(file != null) {
- properties = loadProperties(file);
- }
- }
-
- // We have a Properties object by now, or should.
-
- // TODO: If not, should we attempt to search up the tree?
- // For example, in classpath, com.genjava, com is a directory.
- // if genjava doesn't exist, it should look for com.genjava as a
- // key in the parent directory, ad infinitum
-
- if(properties == null) {
- // unable to find default
- throw new InvalidNameException("Properties for "+name+" not found. ");
- }
-
- // TODO: Rewrite this block. Not enough grokk.
- if("true".equals(properties.get("org.osjava.jndi.datasource"))) {
-// System.err.println("Datasource!");
- PropertiesDataSource pds = new PropertiesDataSource(properties, env, this.delimiter);
- String dsName = null; // never remaining???;
- if(dsName == null) {
- // wants to be the path without the root
-// System.err.println("root: "+root);
-// System.err.println("path: "+path);
- int ln = root.length() + this.separator.length();
-// System.err.println("ln: "+ln);
- dsName = path.substring(ln);
- }
-
- // Is this unnecessary now that the above is right?
- int idx = dsName.indexOf(this.delimiter);
- if(idx != -1) {
- dsName = dsName.substring(0, idx);
- dsName = handleJavaStandard(dsName);
- }
-
-// System.err.println("remaining: "+remaining);
-// System.err.println("DsName: '"+dsName+"'");
-// System.err.println("Name: '"+name+"'");
-
- // get the last element in 'name'
- int edx = name.lastIndexOf(this.separator);
- String dsn = name;
- if(edx != -1) {
- // TODO: Needs a little safety
- dsn = name.substring(edx+1);
- }
-// System.err.println("DSN: "+dsn);
- if(dsn.equals(dsName)) {
- dsn = "";
- }
-
- // TODO: This only handles situations with one word in the Properties, ie) BlahDS.url. What if it's foo.com.BlahDS.url??
- pds.setName(dsn);
- return pds;
- }
-
-// System.err.println("remaining: "+remaining);
- if(remaining == null) {
- return properties;
- }
-
- Object answer = properties.get(remaining);
-
- if(answer == null) {
- throw new InvalidNameException(""+name+" not found. ");
- } else {
- if(properties.containsKey(remaining+".type")) {
- String type = properties.getProperty(remaining+".type");
- if(answer instanceof List) {
- List list = (List)answer;
- for(int i=0; i
-
-
-
- Henri Yandell
- Site Archives
-
-
-
-
-Contained here are versions of the site for previous releases.
-
-
-
diff --git a/simple-jndi/xdocs/Download.xml b/simple-jndi/xdocs/Download.xml
deleted file mode 100644
index bd9c3d38..00000000
--- a/simple-jndi/xdocs/Download.xml
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
- Henri Yandell
- Download Simple-JNDI
-
-
-
-
-
-
-
diff --git a/simple-jndi/xdocs/Examples.xml b/simple-jndi/xdocs/Examples.xml
deleted file mode 100644
index 526fa756..00000000
--- a/simple-jndi/xdocs/Examples.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
- Henri Yandell
- Examples
-
-
-
-
-
-Simple-JNDI stores values in multiple .properties files and are looked up using a specified name convention, such as dot or slash delimited. There is also a special flag to specify whether a .properties file is a DataSource or not. Following are some examples.
-
-
-
-
-Imagine a file-structure looking like,
-
-
-config/
-config/debug.properties
-config/ProductionDS.properties
-config/application1/default.properties
-config/application1/ds.properties
-config/application1/users.properties
-
-
-in which the files look like;
-
-- default.properties
--
-name=Prototype
-url=http://www.generationjava.com/
-
-- debug.properties
--
-state=ERROR
-
-- ProductionDS.properties
--
-org.osjava.jndi.datasource=true
-driver=org.gjt.mm.mysql.Driver
-url=jdbc:mysql://localhost/testdb
-user=testuser
-password=testing
-
-- application1/default.properties
--
-name=My Application
-version=v3.4
-
-- application1/ds.properties
--
-org.osjava.jndi.datasource=true
-TestDS.driver=org.gjt.mm.mysql.Driver
-TestDS.url=jdbc:mysql://localhost/testdb
-TestDS.user=testuser
-TestDS.password=testing
-
-- application1/users.properties
--
-admin=fred
-customer=jim
-
-
-The following pieces of Java are all legal ways in which to get values from Simple-JNDI. They assume they are preceded with a line of 'InitialContext ctxt = new InitialContext();'.
-
-- Object value = ctxt.lookup("debug.state")
-- Object value = ctxt.lookup("name")
-- Object value = ctxt.lookup("url")
-- Object value = ctxt.lookup("ProductionDS")
-- Object value = ctxt.lookup("application1.name")
-- Object value = ctxt.lookup("application1.TestDS")
-- Object value = ctxt.lookup("application1.users.admin")
-
-Note that the ProductionDS and TestDS return types are objects of type javax.sql.DataSource.
-
-
-
-
diff --git a/simple-jndi/xdocs/FAQ.xml b/simple-jndi/xdocs/FAQ.xml
deleted file mode 100644
index ce494fa7..00000000
--- a/simple-jndi/xdocs/FAQ.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
- Henri Yandell
- FAQ
-
-
-
-
-
-- I get "javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial".
-- You do not have a jndi.properties file in your classpath, or your jndi.properties lacks a java.naming.factory.initial property.
-- I get a ClassCastException with java.util.Properties.
-- Most likely you are trying to get a DataSource but you have forgotten to include org.osjava.jndi.datasource=true.
-- I get an SQLException of 'No suitable driver'.
-- Your driver's jar is not in the classpath.
-- I get InvalidNameException of [key] not found.
-- You have not specified the org.osjava.jndi.root correctly in your jndi.properties.
-- ClassNotFoundException: org.osjava.jndi.PropertiesFactory.
-- You don't have the simple-jndi jar in the classpath.
-
-
-
-
-
diff --git a/simple-jndi/xdocs/Intro.xml b/simple-jndi/xdocs/Intro.xml
deleted file mode 100644
index 07ab7675..00000000
--- a/simple-jndi/xdocs/Intro.xml
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
- Henri Yandell
- Introduction
-
-
-
-
-
-Simple-JNDI is intended to solve two problems. The first is that of finding a container independent way of opening a database connection, the second is to find a good way of specifying application configurations.
-
-
-In a J2EE container, you can use JNDI as a java.sql.Connection factory. This code however is not usable outside of a J2EE container as you cannot guarrentee you have a JNDI implementation available, and to be honest, you don't want to start some other server to make your simple script run. Simple-JNDI is not a server, it is merely an API, however it looks exactly the same as the JNDI client code used in a J2EE container.
-
-
-Applications need configuration. A servlets container uses the web.xml files to configure, while a J2EE container uses a different system, for example, JBoss has a jboss.jcml configuration file which sets a system up via JMX managed beans. An application could however use Simple-JNDI for parameter values.
-
-
-
-
-Using Simple-JNDI is the same as using JNDI itself. So this is not covered here, however the examples do give the basic gist.
-
-
-
-
-Installing Simple-JNDI is as simple as adding the simple-jndi jar, genjava-core jar, jdbc 2.0 jar and the commons-lang jar to your classpath.
-
-
-
-
-This is where all the work goes in a Simple-JNDI installation. Firstly you need a jndi.properties file, which somehow needs to go into your classpath. This jndi.properties needs one manadatory value:
-
-
-java.naming.factory.initial=org.osjava.jndi.PropertiesFactory
-
-
-This property is a part of the jndi specification, java.naming.factory.initial. This should be set equal to org.osjava.jndi.PropertiesFactory.
-
-
-There are two optional, simple-jndi specific parameters.
-The first, org.osjava.jndi.root, is the location of your simple-jndi root, which is the location in which simple-jndi looks for values when code asks for them. The following code block details a few examples with explanatory comments.
-
-
-# absolute directory, using the default file protocol
-org.osjava.jndi.root=/home/hen/gj/simple-jndi/config/
-
-# relative directory, using the default file protocol
-org.osjava.jndi.root=config/
-
-# specified file protocol with an absolute directory
-org.osjava.jndi.root=file:///home/hen/gj/simple-jndi/config/
-
-# specified file protocol with a relative directory
-org.osjava.jndi.root=file://config/
-
-# classpath protocol with a package 'config'
-org.osjava.jndi.root=classpath://config
-
-
-If no org.osjava.jndi.root is specified, then a classpath root is chosen, with no package.
-
-
-The second optional parameter is the delimiter used to separate elements in a lookup value. This allows code to get closer to pretending to be another JNDI implementation, such as DNS or LDAP.
-
-# DNS/Java like delimiters
-org.osjava.jndi.delimiter=.
-
-# LDAP/XPath like delimiters
-org.osjava.jndi.delimiter=/
-
-
-If no org.osjava.jndi.delimiter is specified, then a '.' (dot) is chosen.
-
-
-
-
diff --git a/simple-jndi/xdocs/News.xml b/simple-jndi/xdocs/News.xml
deleted file mode 100644
index 4f4c404a..00000000
--- a/simple-jndi/xdocs/News.xml
+++ /dev/null
@@ -1,44 +0,0 @@
-
-
-
-
- Henri Yandell
- News
-
-
-
-
- Version 0.6 has been released, as of 2003-08-12. The following features were added:
-
-- You may now see and modify the Simple-JNDI parameters through Simple-JNDI.
-- Because Windows cannot handle ':' in a filename, "java:" is quietly converted to "java".
-- Unit Tests written and plugged into Maven.
-
-
- Version 0.5 has been released, as of 2003-04-08. The biggest change was in the move from the 'com.generationjava' namespace to the 'org.osjava' namespace, and an accompanying change in look and feel to the site. However, the following features were also added:
-
-- Boolean and URL Converters added.
-- Values in the System properties [ie) -Dfoo.bar=baa] now override simple-jndi.
-- Values may now be bound to the JNDI space, where they override the configured simple-jndi properties. When removed, the value goes back to the simple-jndi default.
-
-
- Version 0.4 has been released, as of 2003-02-27. The following features were added:
-
-- com.foo.Value can have a partner key of com.foo.Value.type which specifies the type of object to use for the key. While this system will be pluggable, currently it supports java.lang.Number only.
-- Any XML format may be used underneath instead of a .properties system. Properties files take precedence over XML files, so in the light of foo.xml and foo.properties, only foo.properties will be read.
-- The underlying properties parsing has been improved. It now handles ordered collections. These are implemented by specifying a key multiple times. One issue with this is that the object returned maybe a List or a String [or something else depending on type], leading to an ugly instanceof style of programming. The following eases this.
-- org.osjava.naming.Jndi is a wrapper which automatically grabs the default InitialContext and provides simple helper routines for getting data out. One such example is getList(String key) which improves the situation in the previous bullet point.
-
-
-
- Version 0.3 has been released, as of 2003-02-14. The following features were added:
-
-- Implemented a protocol system for the simple-jndi root's location. The original file location was retrofitted into this and a classpath location was added. A http location is planned
-- If a protocol is unspecified, then resort to v0.2 format, ie) file://
-- If root is unspecified, then use the classpath
-- The delimiter in the search values is configurable, so people can more easily mimic LDAP
-
-
-
-
-
diff --git a/simple-jndi/xdocs/Tasks.xml b/simple-jndi/xdocs/Tasks.xml
deleted file mode 100644
index 9b7f0b8c..00000000
--- a/simple-jndi/xdocs/Tasks.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
- Henri Yandell
- Task List
-
-
-
-
-
-- Allow the delimiter in the search values to be configurable, so people can more easily mimic LDAP etc: DONE v0.3
-- If root is unspecified, then use the classpath: DONE v0.3
-- Allow the root to be a classpath root, ie) org.osjava: DONE v0.3
-- -0.3 released-
-- Use OrderedProperties to order the underlying .properties files. DONE v0.4
-- Types. com.foo.Value can have a partner key of com.foo.Value.type which specifies the type of object to use for the key. DONE v0.4
-- Add multiple-line format for .properties files. ie) if there are equal keys, they should create a collection. Note, with the OrderedProperties this becomes a list and not a collection. DONE v0.4
-- XML underneath as well as .properties: DONE v0.4
-- -0.4 released-
-- Allow converters to be configured/plugged in somehow. Add new converters. [URL/Boolean converters added in v0.5]
-- Allow users to bind their own variables on top of the properties. DONE v0.5. This would only be for a single instance of the context, though the factory could return the same instance every time.
-- Place the System properties before the simple-jndi layer so that -D may override it. DONE v0.5.
-- -0.5 released-
-- Simple-JNDI parameters may now be read through simple-jndi. DONE v0.6
-- Test if ProductionDS.org.osjava.jndi.datasource is obtainable [from examples page] DONE. v0.6: Confirmed
-- Handle java:/ on a Windows platform. Filenames are unable to contain colons. DONE. v0.6: java: resolves to java on all platforms
-- Write maven.xml to do the test-config copy to target/test-classes. DONE. v0.6: Changed project.xml to handle this.
-- Put the standard configuration options into the JNDI scope itself and pay attention for when they are changed. Thus allowing the system to change at runtime. DONE. v0.6
-- -0.6 released-
-- Implement Type in such a way that the object to create may be specified, say JDOPersistenceFactory, and that sub-properties may be set as bean properties.
-- Implement binding so that values may be stored in the system, making it Read/Write.
-- Implementing the list methods so you can see the values in a particular directory/properties file.
-- Searches. Consider implementing DirContext.
-- Switch to using Names in the system, with the String argument being turned to a Name based on delimiters specified in the jndi.properties. Allow more than one delimiter.
-- Other DataSource like things? JDO?
-- Allow the root to be a url, so properties can be found online
-- Hook up DBCP or some other connection pool.
-- Make it nice to hook up Enhanced drivers from DbUtils??
-- Confirm that jars and zips may be used in the classpath protocol.
-- Add a jdbc implementation underneath for the configuration.
-- Allow the underlying Properties class to use [when applicable] to be specified.
-- multiple domains. ie) Configure org.osjava to use .properties over http, and org.osjava to use xml over classpath.
-- Implement a Name class which finds the lookup key separator and injects that inside the name values [a string array]
-- When a value is unbound, don't return to the default but instead make it so it throws an exception when you try to obtain that value [unless bound again].
-- Allow a map-delimiter so that something like bob.foo.thing#bah=fred uses bah as the key, and fred as the value.
-- Is there a way to specify the type of a List or Map, or must ArrayList and HashMap always be used?
-- Create a Config class. Base it on previous written ones. Allow it to have a context stack, basic conversion methods and a root context concept [starts with a '.', or whatever that value is].
-- Write a simple-jndi server/client setup. Maybe use beep4j
-- Enable BlahDS.url so you can see the url of a datasource. Block passwords.
-- Implement DataSource creation as a part of the converter.
-- Test DataSources in various situations. Given a lookup of java:/TestDS and a delimiter of /, a directory of java: and a file of TestDS.properties, it appears to still look for TestDS/url and not url. Basically the PropertiesDataSource is buggy in its lookup.
-- Static back end to the binding, so that different contexts can share values.
-- Provide a .ini back-end support.
-- Implement satisfactory unit testing.
-
-
-
-
-
diff --git a/simple-jndi/xdocs/images/1x1.gif b/simple-jndi/xdocs/images/1x1.gif
deleted file mode 100644
index 8749ca0ccc09b35567ff3e0002ad0e07218149a1..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 807
zcmchWu}wrl3`FOoL!u3GGAAH%5M_|KCzo-3OaXL)h=%8d8rbAyd3XF~{O|4k_38QJ
zqKm%tdrE3)Buf!hm8w;vvMSr`Qnz~4R%h={X<9QHYqC#Wa?2xI4oXTXt&C!Y0&S$x
z;xV_gbM|!ARJkfUma4mYs$HF>pgCPLHLl4*ao1g*vde*yr7EnmF(e1P-A_3}`61
z3I~JHMjEYba@(fncqSVp{uoPTk3+85g@We96LKVJ0)UI_1dUswBo8ooO&l;`7>7_J
z1~f0hf`h?mBb{B*-lk2>2^%9w{4tiw$u97$e<{vJcb{iT3w3he^`0n~@uaicK86?h
uc-ZA1taWfEAdi)5528Bs-+riyw7^q_p{!$9%+ws2&}ia
zv9kdX1OOyEK-v!u0W=bcLdv00C=>>RmRD3$QdCe-)KuM|tfsAn*U{F(;Wp_R5;koy
z(8b}1=GzT+8IedNJYmoN-NyS2O-ROTk3bjS92(AK2>i}MsQx5tr@J~T7I6@AILSy6=WCPsw00zO~Fa%sq4uOzOGiCPxp(3Zc
z*~kjH!PyJ7B}mQqdeS4b?!l5;?1^`CdM4*-F&KIEjT)L-TelI2+jo#m&CGZ2As;$y
zZDV`H&fevhlc!wWPP=>iT)60a$&VU*EhIE7oX)s$^DnWtZvQpzUUEumT6#t%EBA3;
z{*$NA*af98%DCkfl`pH_ysfL}3mO`mIy!}2@4I_?`-VqG$Hqkye@u$!7Z#T!%b!Pw*$Am><&5$Q+OWm=I$G^u(xZ}E
zjIPOvIqZ4bJ9%|I((u;#HMH+!{~cJ&|3&sMuzz#)0Yx|@`#iV`umr2$;)oAn*-0;Q
zQcm9SH_M1m&}XzAZMAR*b$6V?rcNc>5x60tU!36MMd+mji)nCm;>hTXP}T1k8SWW-
zP1bSEvKyUgM`btq>M>s&UvE{59r)nq*4FH1&bnx_(2mr`>XncjVs?-LF*gqE=(=B$
zSu4PLl0FXmKk4|iSP=&*o=)}(utK-VOhL0vrgwG_B{b*h1n#(;0!4pQB$ut8B>2FI
zYd+S1-+8$0lL5OehIwx9KO(wO8e*+jvD9Cq`-k6lDNny}zuI+g-eC*(nWYSr5Iv^KeP8b@*rO<2O%F*=AN;
zsxM1sP|BA|t5!2xYLZLDEbRf-lUu$K!Mnx~4lJIX5aJAI1SHp$c(iHXg0__y2I1kUGh!Sm^
zJtOk%xY3*`yNt*(=#MHZ{LZkdL&|B@qjuR!)!o7Q9@i^aAgs<`zs1(3Q;w4r6j}b|
zrn!kNvg6n#$Ke<&y#yr0(XXrOuCvt0V>xCHXVnLavM
zru4j=Ji7vUyLx85n!~s6<`oXwPDX4XmIs|xip0~02G`Z3N;(`2IyEzO@dmbFJ!WhP
zH{_cAmD!b!(+3E%f2<_fQjMek?Ovdh}
z!VjtaOoPsv>D-F52MNv17uqF%9!+~W_c14kFqqb7euaJ9Kdq}_wJ@@2&hP5M`8)@l
zS7cd0Ef@kYQ?hBOYMa7Si>RoD9NThdz1fMeim%~
zR&?=Mg%)_wde+cumXekla<{r$ejQr3D9|sxQb2;lEQ-i%k@6sm86WKF@?>xn*L~WH
z?Tu?k6}nN~;G&|Q5YuzUR>eP;b?rj6xX+1u@Qi4(L$Gywr1j3~s`4Cc|Cv}7P0X8E
zz73?=igGWgin{ysD5Bgwq=@VVzPFBppd3F14pn{+RlruF@fXRtk}y(m%Pa`Lz{
zuXHl#v=$@wQ6iml$fc%r=2DGtLAk|)|LB?TKA~cM!H0=3(>iK}Wd!TJu=oX!HTE+{
zk#m3qIVXq+@9)JC0eeeI-6~dF4SF~ECBbOX_2>omDBhGVq>+4g_}h28=tnye;lco}
zhqtJR$c?g)(DPpvMO#pR*C`f!e5ibYEDKc7Qs~1Jk2=aa1qdi)5528Bs-+riyw7^q_p{!$9%+ws2&}ia
zv9kdX1OOyEK-v!u0W=bcLdv00C=>>RmRD3$QdCe-)KuM|tfsAn*U{F(;Wp_R5;koy
z(8b}1=GzT+8IedNJYmoN-NyS2O-ROTk3bjS92(AK2>i}MsQx5tr@J~T7I6@AILSy6=WCPsw00zO~Fa%sq4uOzOGiCPxp(3Zc
z*~kjH!PyJ7B}mQqdeS4b?!l5;?1^`CdM4*-F&KIEjT)L-TelI2+jo#m&CGZ2As;$y
zZDV`H&fevhlc!wWPP=>iT)60a$&VU*EhIE7oX)s$^DnWtZvQpzUUEumT6#t%EBA3;
z{*$NA*af98%DCkfl`pH_ysfL}3mO`mIy!}2@4I_?`-VqG$Hqkye@u$!7Z#T!%b!Pw*$Am><&5$Q+OWm=I$G^u(xZ}E
zjIPOvIqZ4bJ9%|I((u;#HMH+!{~cJ&|3&sMuzz#)0Yx|@`#iV`umr2$;)oAn*-0;Q
zQcm9SH_M1m&}XzAZMAR*b$6V?rcNc>5x60tU!36MMd+mji)nCm;>hTXP}T1k8SWW-
zP1bSEvKyUgM`btq>M>s&UvE{59r)nq*4FH1&bnx_(2mr`>XncjVs?-LF*gqE=(=B$
zSu4PLl0FXmKk4|iSP=&*o=)}(utK-VOhL0vrgwG_B{b*h1n#(;0!4pQB$ut8B>2FI
zYd+S1-+8$0lL5OehIwx9KO(wO8e*+jvD9Cq`-k6lDNny}zuI+g-eC*(nWYSr5Iv^KeP8b@*rO<2O%F*=AN;
zsxM1sP|BA|t5!2xYLZLDEbRf-lUu$K!Mnx~4lJIX5aJAI1SHp$c(iHXg0__y2I1kUGh!Sm^
zJtOk%xY3*`yNt*(=#MHZ{LZkdL&|B@qjuR!)!o7Q9@i^aAgs<`zs1(3Q;w4r6j}b|
zrn!kNvg6n#$Ke<&y#yr0(XXrOuCvt0V>xCHXVnLavM
zru4j=Ji7vUyLx85n!~s6<`oXwPDX4XmIs|xip0~02G`Z3N;(`2IyEzO@dmbFJ!WhP
zH{_cAmD!b!(+3E%f2<_fQjMek?Ovdh}
z!VjtaOoPsv>D-F52MNv17uqF%9!+~W_c14kFqqb7euaJ9Kdq}_wJ@@2&hP5M`8)@l
zS7cd0Ef@kYQ?hBOYMa7Si>RoD9NThdz1fMeim%~
zR&?=Mg%)_wde+cumXekla<{r$ejQr3D9|sxQb2;lEQ-i%k@6sm86WKF@?>xn*L~WH
z?Tu?k6}nN~;G&|Q5YuzUR>eP;b?rj6xX+1u@Qi4(L$Gywr1j3~s`4Cc|Cv}7P0X8E
zz73?=igGWgin{ysD5Bgwq=@VVzPFBppd3F14pn{+RlruF@fXRtk}y(m%Pa`Lz{
zuXHl#v=$@wQ6iml$fc%r=2DGtLAk|)|LB?TKA~cM!H0=3(>iK}Wd!TJu=oX!HTE+{
zk#m3qIVXq+@9)JC0eeeI-6~dF4SF~ECBbOX_2>omDBhGVq>+4g_}h28=tnye;lco}
zhqtJR$c?g)(DPpvMO#pR*C`f!e5ibYEDKc7Qs~1Jk2=aa1qmxMpUf?(X$>cdfg-
z)IH00000A^8LV00000EC2ui0AK(Z000F4u*pfQy*TU5yZ>M)j%3*+
zNnoxl%P>nT&!3_IbWR0J?-LcD52yKAgu)46p{gvK5~Pomcv)eU>r1h*#4i#3Cr@q*Xb3-<<6fZ{`CL?w5ZXeNRujE%CxD|r%)pR06V29qy_*0
diff --git a/simple-jndi/xdocs/navigation.xml b/simple-jndi/xdocs/navigation.xml
deleted file mode 100644
index a96183b3..00000000
--- a/simple-jndi/xdocs/navigation.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- simple-jndi
-
-
-
-
-
-
-
-