Purifier1 Manual

Attention: The Purifier project has been re-tasked as a commercial product, Purifier2. The original, open source, Purifier1 version is still available. However, for technical reasons, it cannot be made to guarantee that the results are always identical to Sun's preverifier. The Purifier2 commercial version, which is still under development, uses a significantly different architecture to provide better compatibility. See the Project Status section of the Home page for more details.

The following documentation is from the original Purifier1 project and is provided for those who are interested in the project despite its current status.

Users Guide

The Users Guide is mostly incomplete because the Purifier1 is also incomplete. Originally, before the project was halted, the plan was to significantly refactor the project and consequently the API. As a result, it didn't make much sense to write the Users Guide until the final form is known.

The Application Programmer's Interface JavaDocs are available. It is provided here because the documentation contained within the API can provide some insight to the interested reader.

One section that is not affected directly by the API follows:


Unfortunately, the Purifier1 depends on external libraries that an open source project like this cannot redistribute due to licensing restrictions. This means that the distribution, as it is, is non functional until the user adds these extra libraries.

The primary library of concern is the configuration and profile specific API's. When attempting to resolve variable conflicts the Purifier1 needs to be able to determine whether two classes are subtypes of each other or not. This requires that the Purifier1 be able to load these classes to determine if one is assignable from the other and visa versa. Naturally, this means that these libraries need to be in the class path.

In the most common case, this requirement means that the user of the Purifier1 will have to download the MIDP API library. This is available from Sun as a part of the J2ME Wireless Toolkit, but cannot be included in the Purifier1 distribution due to licensing restrictions. One caveat to consider when using this toolkit is that the midpapi.zip file contains platform specific JNI code. This can prevent the classes from being loaded on any platform other than the one that that particular distribution of the toolkit is intended for. One solution is to use the emptyapi.zip stub library for type checking. This will allow the Purifier1 to work on any arbitrary J2SE or J2EE environment.

Some devices have proprietary extensions. If you use such extensions, then these libraries must also be included in the classpath for the Purifier1 to be able to perform the proper type checking.

Previous   Next   contents   Purifier Home

Valid HTML 4.01!