The plugin becomes available in two separate distributions of "with" and "without" source versions.
These are org.adarsh.jutils_3_0_0.zip
respectively, as seen in the Download
Ability to sort fields: Fields can be sorted alphabetically by
selecting an option in the preference pages.
- Control over auto save: Auto save can be enabled/disabled by means
of an option in the preference pages.
- Overwrite can be prevented: An option to prevent auto overwrite of
existing toString() or Copy Constructor has been provided in the preference pages.
- Faster performance: Code generation is a lot faster now, thanks to the
improved RegEx handling.
- Logging support: Users of the plugin can easily report bugs through the
feature of Eclipse Logging having been integrated into the plugin.
- Refactored code: Some code has been refactored to aid easier maintenance
in the future.
- Friendly messages: Friendly alert dialog messages have been provided at
suitable places to prevent surprises to the user.
- Non-Public, Nested or Inner Classses: toString() or Copy Constructor can
now be generated to even these types of Classes.
- Interfaces, Enums, Annotations now ignored: This ensures that toString()
or Copy Constructor is attempted to be generated only to Concrete Classes. This, if
were not done, would have led to introduction of compilation problems.
- UI issues in preference pages: There were minor UI issues in the preference
pages which have been fixed.
Plugin goes open source and is available on the internet for use of the Java developers.
Support for StringBuffer and StringBuilder: With the new
mode selection control in the
toString() preference page,
you can easily switch between
- Default Configuration XML has been refactored: Although this
does not affect the users of the plugin, it is a definite plus point to
facilitate faster and easier code modifications if at all the need arises.
- ToString implementation now ignores static fields: Ideally
toString() represents the state of an object. Fields that are
marked static belong to the class of the object, not the object itself. So,
it is appropriate to exclude static fields.
- Copy Constructor implementation now ignores static or final fields: A
constructor is used to create a new object. Static fields, once again, belong
to the enclosing class, not to any object. Thus, it is ideal to exclude them
in the constructor. Fields that are marked final, on the other hand, cannot
accept new values. Thus, an assignment to a final field inside the Copy
Constructor results in compilation error. So, they must be excluded.
Initial version created. Although the plugin was not available on the WWW, it was
fully functional and was being used in many live projects successfully. The plugin
was not open source then.