TheseFoolishThings is a small set of simple utility libraries. All TheseFoolishThings components require Java 5 or later (but need Java 6 for compilation since v1.5.0).

You can download source and binaries from the Download page. JavaDocs are browsable online.

Component Artifact id (*) Status (**) Description
Beans i-t-beans draft A CGLIB-based enhancer for transforming a POJO into a JavaBean supporting bound properties
StopWatch i-t-stopwatch experimental See this
Swing BeansBinding i-t-swing-beansbinding experimental A few utility classes for Swing BeansBinding]
Test Utilities i-t-util-test draft Generic utility classes for tests.
Utilities i-t-util stable Generic utility classes.

(*) i-t- stands for it-tidalwave-

(**) Status can be:

  1. stable: it means that the API backward compatibility will be guaranteed in future release (unless different agreement announced on the mailing lists). Backward compatibility is enforced with Clirr.
  2. draft: it means that the API is not stable yet and there could be minor backward-incompatible changes in future releases.
  3. experimental: it means that the API is not guaranteed to stay here in future.

The status is also given for each class in the JavaDocs.

Using TheseFoolishThings components

TheseFoolishThings artifacts are available in the Central Maven repository, so you can just refer to them in your pom without further effort. The groupId is it.tidalwave.thesefoolishthings and the artifactIds are listed in the table above.

We suggest you use the dependency management section to declare the required version of the artifacts to import:


and then you declare the single dependencies you need:


In this way you are sure that all the imported artifacts have got coherent versions; furthermore your POM is much shorter than declaring a dependency management item for each imported artifact.

TheseFoolishThings artifacts are available both as simple JAR files for a JSE application and as NBM packages for a NetBeans Platform application.

Using snapshots

If you want to use snapshots, add this fragment to your pom:

                <name>Sonatype Snapshots Repository</name>