Upgrading

## Upgrading to 1.10.1 or above

This section describes what needs to be done when upgrading to QDox 1.10.1.

## Things that might break your code

In some cases the Type.toString() was inconsequent (QDOX-182) so we had to change the implementation. If you use this in combination with innerClasses you should use Type.getFullyQualifiedName() to get the same result.

## Upgrading to 1.10 or above

This section describes what needs to be done when upgrading to QDox 1.10.

## Things that might break your code

The toString()-method in most of the JavaObjects under com.thoughtworks.qdox.models used to return the corresponding codeblock. This method has been renamed to getCodeBlock(). The toString() will follow the Java API Specs as described for each equivalent object under the java.lang-package. Some methods require extra attention, because there's not an exact match. Watch out for differences between Type and JavaClass.

Java API | QDOX
--- | ---
((java.lang.Method) aMethod).getReturnsType().toString() | ((com.thoughtworks.qdox.model.JavaMethod) aMethod).getReturns().toString()

com.thoughtworks.qdox.model.Type.getValue() will return the typeName for usage in the code. The new method com.thoughtworks.qdox.model.Type.getFullQualifiedName() will return the FQN as defined by the java specs. Normally they would return the same value, but pay attention when using inner classes.

## Upgrading to 1.9 or above

This section describes what needs to be done when upgrading to QDox 1.9.

## Things that might break your code

In both JavaClass and JavaSource the getPackage() returns an object of type JavaPackage instead of a String. To get the same result as before use getPackage().getName() .

## Upgrading to 1.6 or above

This section describes what needs to be done when upgrading to QDox 1.6. For an extensive list of changes (most of them backwards compatible), please see the Changes Report.

## Things that might break your code

In JavaClass the getInnerClasses() method has been renamed to getNestedClasses(). The old name remains as a (deprecated) synonym.

With support for generic types, we've introduced a bug affecting the use of "<" and ">" in initialisers (see QDOX-71).

## Upgrading to 1.5

This section describes what needs to be done when upgrading to QDox 1.5. For an extensive list of changes (most of them backwards compatible), please see the Changes Report.

## Things that might break your code

The DocletTag interface no longer contains a setContext() method. That information is now provided via DocletTagFactory, where createDocletTag() now requires an additional "context" parameter.

The parser now passes tag-data to Builders using a new TagDef structure.

## Upgrading to 1.3

This section describes what needs to be done when upgrading to QDox 1.3. For an extensive list of changes (most of them backwards compatible), please see the Changes Report.

## Things that might break your code

(Thanks to Peter Donald for contributing this list).

- DocletTag is now an interface and needs to be replaced with DefaultDocletTag
- JavaClass has changed so that there is no setParent but instead you need to pass the parent into the constructor.
- JavaClassParent now has to additional methods that need to be implemented if you implement it: getClassLibrary() and resolveType(java.lang.String).