blob: f743ecab4721408c357d3afe34588ce2e287aa6d [file] [log] [blame]
<!--
Copyright 2008 The Apache Software Foundation
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
$Id$
COMMONS SCXML
J5 BRANCH
-- PURPOSE --
To improve the Commons SCXML codebase using JDK 5 and 6 features.
-- STATUS --
Under active development (see TASKS section at the end).
-- DETAILS --
This is an experimental branch to explore improvements to the Commons
SCXML codebase using JDK 5 and 6 features (originally authored for JDK 1.4).
Commons SCXML uses JDK Collections extensively as part of the implementation
details. Generics can pretty some of that implementation.
While there are no plans as yet to leverage annotations to describe state
machines (it is deemed relatively difficult to author state machines in such
a "distributed manner"), it may be possible to use them for lesser tasks
within the library.
Other JDK 5 language improvements may come handy as well.
-- TASKS --
J5
* Type safety improvements - Mostly DONE
* @Override, @SuppressWarnings etc. - Mostly DONE
* Enhanced for, Iterator usage - Mostly DONE
* Switch to javax.xml.xpath - TODO
* Static imports - WONTFIX
J6
* Use javax.script for more pluggable ELs - Added env.javascript package
* Rewrite parser: switch to javax.xml.stream and eliminate dependency on
Commons Digester (and thereby, Commons BeanUtils as well)