Package
|
Description
|
Configuration
|
The Configuration package contains extensions to the Avalon Framework
supporting configuration management.
|
Datasource
|
Avalon Excalibur's DataSource package in
org.apache.avalon.excalibur.datasource
allows you
to manage pooled connections in one of two ways. You can have
the package handle it for you, or you can use a J2EE server's
DataSource management. It provides the same kind of access
regardless of which method you choose--since they are obtained
through Avalon's Component Manager infrastructure.
|
Event
|
This is the Excalibur Event package which includes event queues,
asynchronous command processing, and the interfaces to support
event based programming. Event is heavily influenced by Matt
Welsh's work with the
SEDA architecture
.
We forked the portion of his SandStorm server that had to do with
event processing. From there we cleaned up the API and made it as
generic as we could.
|
i18n
|
Excalibur's Internationalization package is found in
org.apache.avalon.excalibur.i18n
. Avalon
Excalibur includes a method of managing resources, and
an interface for specifying the resource. Support for
XML resource bundles are still under development.
|
Instrumentation
|
Excalibur Instrument is an instrumentation utility that allows you
to attach a separate JVM to your running application to determine its
health. Instrumentation is the process of exposing the internal state
in a way that is easy for an administrator or help desk personell to
digest. Excalibur Instrumentation is such a package that you can use
for your Avalon based projects.
|
Lifecycle
|
The Lifecycle package contains a set of interfaces and classes supporting portable lifecycle extensions.
Contributions to this project are based on co-development actives by container projects aiming towards cross-container component portability and consistent service management.
|
Logger
|
Find Avalon Excalibur's Log Management System in the
org.apache.avalon.excalibur.logger
package.
Excalibur-Logger integrates neatly into the Avalon ECM
and Fortress. The main goal is to
be able to define the log categories on a component basis by
specifying a 'logger' attribute which denotes the log category
to use for a particular component (given the
component is
LogEnabled
or
Loggable
).
|
Monitor
|
Avalon Excalibur's resource management code allows you to
be notified when a resource has changed. There are two
methods of resource management: active and passive. Passive
resource management acts as a holder for resources, and after
the resource has been modified through it's normal API,
notification goes to all listeners. Active resource management
does the same, but it also polls the resources periodically
to see if the resource was modified through an external method.
Active resource management is perfect for monitoring files
because they can be modified by external programs, and your
program will be notified when the change occurs instead of
constantly polling it.
|
Pool
|
Find Avalon Excalibur's Pool implementations in the
org.apache.avalon.excalibur.pool
package.
There are many implementations that are ThreadSafe, and
one that is not. You have the option of not limiting
used resources at all, or limiting the used resources
based on specific rules.
|
Sourceresolver
|
A very common problem is resolving a source, which means
finding a source using a URI.
The source resolver of Avalon Excalibur is a component
helping you in this task. It resolves sources from a given
URI. The URI can use all available protocols of the JRE.
In addition own protocols can be plugged-in. So using
the standard protocols like HTTP, FTP or file can be handled
in the same way, like dealing with custom, self-build
protocols such as myxmldatabase://root/documents/test.xml.
|
Store
|
The Store Package provides a way to store named objects without
taking care about where and how they are stored.
You can choose between different implementations that store
the data e.g. in memory or on the file system etc.
|
Thread
|
PENDING
|
XMLUtil
|
Excalibur's XML Utilities provide simplified wrappers
for XML parsers, transformers and XPath evaluators. It
also provides interfaces and classes useful for
constructing a pipeline of XML components by defining interfaces
for consuming and producing XML in either SAX or DOM formats.
|