<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>src/copyright-notice-template</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,4 +1,4 @@
-#Wed May 04 23:05:43 CEST 2005
+#Fri May 06 20:18:41 CEST 2005
 eclipse.preferences.version=1
 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=disabled
 org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.2
@@ -52,7 +52,7 @@ org.eclipse.jdt.core.formatter.brace_position_for_switch=next_line
 org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=next_line
 org.eclipse.jdt.core.formatter.comment.clear_blank_lines=false
 org.eclipse.jdt.core.formatter.comment.format_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
 org.eclipse.jdt.core.formatter.comment.format_html=true
 org.eclipse.jdt.core.formatter.comment.format_source_code=true
 org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true</diff>
      <filename>.settings/org.eclipse.jdt.core.prefs</filename>
    </modified>
    <modified>
      <diff>@@ -6,7 +6,7 @@
     julien.ponge@gmail.com
 
     IzPack is a powerfull Java installer builder released under the terms of
-the GNU GPL version 2 of the licence, or any later version.
+the Apache License Version 2.0.
 
     It is able to create lightweight and modular installers. You can extend 
 its capacities through a plugin-like architecture to make it better suit your</diff>
      <filename>Description.txt</filename>
    </modified>
    <modified>
      <diff>@@ -3,14 +3,15 @@
     &gt; 1 - A quick introduction &lt;
     
     IzPack 2 is a Java software installer builder released under the terms of
-the GNU GPL version 2 of the licence, or any later version. It is based around
-an installer compiler that uses XML files to describe your installation.
-IzPack is totally independant from the Operating System which runs it. It is 
-also very modular so that you can easely create and integrate your own panels
-(installation steps).
+the Apache License Version 2.0. It is based around an installer compiler that
+uses XML files to describe your installation.
+
+    IzPack is totally independant from the Operating System which runs it. It
+is also very modular so that you can easely create and integrate your own
+panels (installation steps).
 
     The IzPack homepage is http://www.izforge.com/izpack/ . You can contact the
-author : julien@izforge.com. 
+author : julien@izforge.com / julien.ponge@gmail.com .
 
     &gt; 2 - The documentation &lt;
     
@@ -24,10 +25,4 @@ for more.
     &gt; 3 - Licencing issues &lt;
     
     The licences used by IzPack or the libraries it uses are available in the 
-legal folder. IzPack is covered by the GNU GPL 2 and any derivative work based
-on it must also be covered by this licence.
-
-    Generating an installer for commercial products is strongly encouraged, but
-distributing an installer using a panel that is not released under a free 
-licence compatible with GNU GPL 2 is not permitted as the installer is covered
-by this licence.
+legal folder. IzPack itself is covered by the Apache License Version 2.0.</diff>
      <filename>Readme.txt</filename>
    </modified>
    <modified>
      <diff>@@ -2,6 +2,7 @@
 
   &gt; 3.8.0 (build N/A)
 
+- IzPack is now released under the terms of the Apache Software License 2.0.
 - Fixing bug with comboboxes. There was no text shown if you do not use a
   processor to generate the choices. At now you can us the id or txt attribute
   (Thorsten Kamann)</diff>
      <filename>Versions.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,351 +1,202 @@
-		    GNU GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-
-
-		    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The &quot;Program&quot;, below,
-refers to any such program or work, and a &quot;work based on the Program&quot;
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term &quot;modification&quot;.)  Each licensee is addressed as &quot;you&quot;.
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and &quot;any
-later version&quot;, you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-			    NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-
-
-	    How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the &quot;copyright&quot; line and a pointer to where the full notice is found.
-
-    &lt;one line to give the program's name and a brief idea of what it does.&gt;
-    Copyright (C) &lt;year&gt;  &lt;name of author&gt;
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a &quot;copyright disclaimer&quot; for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  &lt;signature of Ty Coon&gt;, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
 
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      &quot;License&quot; shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      &quot;Licensor&quot; shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      &quot;Legal Entity&quot; shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      &quot;control&quot; means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      &quot;You&quot; (or &quot;Your&quot;) shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      &quot;Source&quot; form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      &quot;Object&quot; form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      &quot;Work&quot; shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      &quot;Derivative Works&quot; shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      &quot;Contribution&quot; shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, &quot;submitted&quot;
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as &quot;Not a Contribution.&quot;
+
+      &quot;Contributor&quot; shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a &quot;NOTICE&quot; text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an &quot;AS IS&quot; BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets &quot;[]&quot;
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same &quot;printed page&quot; as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+   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 &quot;AS IS&quot; 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.</diff>
      <filename>legal/IzPack-Licence.txt</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               IPValidator.java
- * Description :        Sample implementation of a rule validator
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package   com.izforge.izpack.sample;</diff>
      <filename>sample/src/IPValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               PWDEncryptor.java
- * Description :        Example code for a password encryption service
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package   com.izforge.izpack.sample;</diff>
      <filename>sample/src/PWDEncryptor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               PWDValidator.java
- * Description :        Example implementation of a password validator
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package   com.izforge.izpack.sample;</diff>
      <filename>sample/src/PWDValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               Scramble.java
- * Description :        Example code for an encryption service
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package   com.izforge.izpack.sample;</diff>
      <filename>sample/src/Scrambler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ChmodCompilerListener.java
- *  Description :        Example for custom action for packaging time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.myCompany.tools.install.listener;</diff>
      <filename>sample/src/myCompany/tools/install/listener/ChmodCompilerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ChmodInstallerListener.java
- *  Description :        Example for custom action for install time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.myCompany.tools.install.listener;</diff>
      <filename>sample/src/myCompany/tools/install/listener/ChmodInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,8 @@
 &lt;?xml version=&quot;1.0&quot; encoding=&quot;iso-8859-1&quot; standalone=&quot;yes&quot; ?&gt;
 
 &lt;project name=&quot;IzPack&quot; default=&quot;all&quot; basedir=&quot;..&quot;&gt;
-
+	
 &lt;!--
-  $Id$
   build.xml first written by Pierre Dittgen (pierre.dittgen@criltelecom.com)
   This file is intended to be used with ant (http://jakarta.apache.org/ant),
   a java/xml makefile utility.
@@ -152,8 +151,8 @@
 
     &lt;!-- Define directories --&gt;
     &lt;property file=&quot;src/ant.properties&quot;/&gt;
-    &lt;property name=&quot;ver&quot; value=&quot;3.7&quot;/&gt;
-    &lt;property name=&quot;rel&quot; value=&quot;2&quot;/&gt;
+    &lt;property name=&quot;ver&quot; value=&quot;3.8&quot;/&gt;
+    &lt;property name=&quot;rel&quot; value=&quot;0-M1&quot;/&gt;
 
     &lt;property name=&quot;src.dir&quot; value=&quot;${basedir}/src/lib&quot;/&gt;
     &lt;property name=&quot;img.dir&quot; value=&quot;${basedir}/src/img&quot;/&gt;</diff>
      <filename>src/build.xml</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               COIOSHelper.java
- *  Description :        This class handles the COIOSHelper.dll.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.izpack;
 
 import com.izforge.izpack.util.Librarian;
@@ -35,7 +30,7 @@ import com.izforge.izpack.util.NativeLibraryClient;
  * singelton class.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class COIOSHelper
 {
@@ -81,8 +76,8 @@ public class COIOSHelper
      * It is used by the librarian to free the native library before physically deleting it from its
      * temporary loaction. A call to this method will freeze the application irrecoverably!
      * 
-     * @param name
-     *            the name of the library to free. Use only the name and extension but not the path.
+     * @param name the name of the library to free. Use only the name and extension but not the
+     * path.
      * 
      * @see com.izforge.izpack.util.NativeLibraryClient#freeLibrary
      */
@@ -104,8 +99,7 @@ public class COIOSHelper
      * Add a NativeLibraryClient as dependant to this object. The method tries to load the shared
      * library COIOSHelper which should contain native methods for the dependant.
      * 
-     * @param dependant
-     *            to be added
+     * @param dependant to be added
      */
     public void addDependant(NativeLibraryClient dependant) throws Exception
     {</diff>
      <filename>src/lib/com/coi/tools/os/izpack/COIOSHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               Registry.java
- *  Description :        Wrapper class for com.coi.tools.os.win.RegistryImpl.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.izpack;
 
 import com.coi.tools.os.win.RegistryImpl;
@@ -35,7 +30,7 @@ import com.izforge.izpack.util.NativeLibraryClient;
  * from RegistryImpl.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class Registry extends RegistryImpl implements NativeLibraryClient
 {
@@ -52,8 +47,7 @@ public class Registry extends RegistryImpl implements NativeLibraryClient
     /**
      * Initialize native part of this class and other settings.
      * 
-     * @exception Exception
-     *                if problems are encountered
+     * @exception Exception if problems are encountered
      */
     /*--------------------------------------------------------------------------*/
     private void initialize() throws Exception
@@ -73,8 +67,8 @@ public class Registry extends RegistryImpl implements NativeLibraryClient
      * It is used by the librarian to free the native library before physically deleting it from its
      * temporary loaction. A call to this method will freeze the application irrecoverably!
      * 
-     * @param name
-     *            the name of the library to free. Use only the name and extension but not the path.
+     * @param name the name of the library to free. Use only the name and extension but not the
+     * path.
      * 
      * @see com.izforge.izpack.util.NativeLibraryClient#freeLibrary
      */</diff>
      <filename>src/lib/com/coi/tools/os/izpack/Registry.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               NativeLibException.java
- *  Description :        Exception class used in the native part of COIOSHelper.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win;
 
 import java.util.ArrayList;
@@ -38,11 +33,13 @@ import java.util.ResourceBundle;
  * mapping will be done in this class.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class NativeLibException extends Exception
 {
 
+    private static final long serialVersionUID = 3257002172494721080L;
+
     /** Map of founded resource bundles which contains the localized error messages. */
     private final static HashMap messageResourceBundles = new HashMap();
 
@@ -75,8 +72,7 @@ public class NativeLibException extends Exception
      * the libErrString as key. If it exist, the value of it is used by getMessage, else the
      * libErrString self.
      * 
-     * @param bundlePath
-     *            path of bundle without locale
+     * @param bundlePath path of bundle without locale
      */
     public static void addResourceBundle(String bundlePath)
     {
@@ -106,8 +102,7 @@ public class NativeLibException extends Exception
     /**
      * Creates a NativeLibException with the given message.
      * 
-     * @param message
-     *            to be used
+     * @param message to be used
      */
     public NativeLibException(String message)
     {
@@ -117,8 +112,7 @@ public class NativeLibException extends Exception
     /**
      * Creates a NativeLibException with the given cause.
      * 
-     * @param cause
-     *            to be used
+     * @param cause to be used
      */
     public NativeLibException(Throwable cause)
     {
@@ -128,10 +122,8 @@ public class NativeLibException extends Exception
     /**
      * Creates a NativeLibException with the given message and cause.
      * 
-     * @param message
-     *            message to be used
-     * @param cause
-     *            cause to be used
+     * @param message message to be used
+     * @param cause cause to be used
      */
     public NativeLibException(String message, Throwable cause)
     {
@@ -141,14 +133,10 @@ public class NativeLibException extends Exception
     /**
      * Creates a NativeLibException with the given values.
      * 
-     * @param libErr
-     *            identifier of the internal handled error
-     * @param osErr
-     *            system error number
-     * @param libString
-     *            message for the internal handled error
-     * @param osString
-     *            system error message
+     * @param libErr identifier of the internal handled error
+     * @param osErr system error number
+     * @param libString message for the internal handled error
+     * @param osString system error message
      */
     public NativeLibException(int libErr, int osErr, String libString, String osString)
     {
@@ -249,8 +237,7 @@ public class NativeLibException extends Exception
     /**
      * Adds a string to the internal argument list.
      * 
-     * @param arg
-     *            string to be added to the internal argument list
+     * @param arg string to be added to the internal argument list
      */
     public void addArgument(String arg)
     {
@@ -280,8 +267,7 @@ public class NativeLibException extends Exception
     /**
      * Searches the resource bundles for a string which coresponds to the given string as key.
      * 
-     * @param s
-     *            string which should be used as keys for the resource bundle
+     * @param s string which should be used as keys for the resource bundle
      * @return the founded message as int value
      */
 
@@ -307,12 +293,9 @@ public class NativeLibException extends Exception
      * In opposite to the String.replaceAll method this method do not use regular expression or
      * other methods which are only available in JRE 1.4 and later.
      * 
-     * @param destination
-     *            string for which the replacing should be performed
-     * @param what
-     *            what string should be replaced
-     * @param with
-     *            with what string what should be replaced
+     * @param destination string for which the replacing should be performed
+     * @param what what string should be replaced
+     * @param with with what string what should be replaced
      * @return a new String object if what was found in the given string, else the given string self
      */
     private static String replaceString(String destination, String what, String with)</diff>
      <filename>src/lib/com/coi/tools/os/win/NativeLibException.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegDataContainer.java
- *  Description :        Container for registry data.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win;
 
 import java.io.Serializable;
@@ -36,11 +31,13 @@ import java.io.Serializable;
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class RegDataContainer implements Cloneable, Serializable
 {
 
+    private static final long serialVersionUID = 3979265850388066865L;
+
     /*
      * Registry value types, extracted from winnt.h
      */
@@ -83,8 +80,7 @@ public class RegDataContainer implements Cloneable, Serializable
      * Creates a RegDataContainer for a special type The data self is not set. Valid types are
      * 
      * @param type
-     * @throws IllegalArgumentException
-     *             if the type is not valid
+     * @throws IllegalArgumentException if the type is not valid
      */
     public RegDataContainer(int type) throws IllegalArgumentException
     {
@@ -97,8 +93,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Creates a RegDataContainer for type REG_DWORD with the given data
      * 
-     * @param data
-     *            data which should be used with this object
+     * @param data data which should be used with this object
      */
     public RegDataContainer(long data)
     {
@@ -110,8 +105,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Creates a RegDataContainer for type REG_SZ with the given data
      * 
-     * @param data
-     *            data which should be used with this object
+     * @param data data which should be used with this object
      */
     public RegDataContainer(String data)
     {
@@ -123,8 +117,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Creates a RegDataContainer for type REG_MULTI_SZ with the given data
      * 
-     * @param data
-     *            data which should be used with this object
+     * @param data data which should be used with this object
      */
     public RegDataContainer(String[] data)
     {
@@ -136,8 +129,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Creates a RegDataContainer for type REG_BINARY with the given data
      * 
-     * @param data
-     *            data which should be used with this object
+     * @param data data which should be used with this object
      */
     public RegDataContainer(byte[] data)
     {
@@ -203,8 +195,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Sets the binary data to the given byte array.
      * 
-     * @param bytes
-     *            data to be set
+     * @param bytes data to be set
      */
     public void setBinData(byte[] bytes)
     {
@@ -214,8 +205,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Sets the dword data to the given value.
      * 
-     * @param i
-     *            data to be set
+     * @param i data to be set
      */
     public void setDwordData(long i)
     {
@@ -225,8 +215,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Sets the multi string data to the given string array.
      * 
-     * @param strings
-     *            data to be set
+     * @param strings data to be set
      */
     public void setMultiStringData(String[] strings)
     {
@@ -236,8 +225,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Sets the string data to the given value.
      * 
-     * @param string
-     *            data to be set
+     * @param string data to be set
      */
     public void setStringData(String string)
     {
@@ -247,8 +235,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Sets the type.
      * 
-     * @param i
-     *            type to be set
+     * @param i type to be set
      */
     public void setType(int i)
     {
@@ -258,8 +245,7 @@ public class RegDataContainer implements Cloneable, Serializable
     /**
      * Verifies whether the given int represents a valid type or not.
      * 
-     * @param type
-     *            value to be verified
+     * @param type value to be verified
      * @return whether the given int represents a valid type or not
      */
     public boolean isValidType(int type)
@@ -346,7 +332,7 @@ public class RegDataContainer implements Cloneable, Serializable
                         if (multiStringData[i] != null)
                         {
                             if (!multiStringData[i].equals(other.multiStringData[i]))
-                                    return (false);
+                                return (false);
                         }
                         else if (other.multiStringData[i] == null) return (false);
                     }</diff>
      <filename>src/lib/com/coi/tools/os/win/RegDataContainer.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryImpl.java
- *  Description :        Java part of Windows registry handler.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win;
 
 import java.util.ArrayList;
@@ -87,8 +82,7 @@ public class RegistryImpl
     /**
      * Sets the root id to the given value.
      * 
-     * @param i
-     *            root id to be set
+     * @param i root id to be set
      */
     public void setRoot(int i)
     {
@@ -98,10 +92,8 @@ public class RegistryImpl
     /**
      * Returns the value of the given value name as RegDataContainer.
      * 
-     * @param key
-     *            key of the registry entry
-     * @param value
-     *            value name of the registry entry
+     * @param key key of the registry entry
+     * @param value value name of the registry entry
      * @return the value of the given value name as RegDataContainer
      * @throws NativeLibException
      */
@@ -114,10 +106,8 @@ public class RegistryImpl
      * Returns the value of the given value name as Object. The real type depends to the type of the
      * value.
      * 
-     * @param key
-     *            key of the registry entry
-     * @param value
-     *            value name of the registry entry
+     * @param key key of the registry entry
+     * @param value value name of the registry entry
      * @return the value of the given value name as RegDataContainer
      * @throws NativeLibException
      */
@@ -129,8 +119,7 @@ public class RegistryImpl
     /**
      * Returns all sub keys under the given key which is under the current root.
      * 
-     * @param key
-     *            key for which the sub keys should be detected
+     * @param key key for which the sub keys should be detected
      * @return all sub keys under the given key which is under the current root
      * @throws NativeLibException
      */
@@ -142,8 +131,7 @@ public class RegistryImpl
     /**
      * Returns all value names under the given key which is under the current root.
      * 
-     * @param key
-     *            key for which the values should be detected
+     * @param key key for which the values should be detected
      * @return all value names under the given key which is under the current root
      * @throws NativeLibException
      */
@@ -155,8 +143,7 @@ public class RegistryImpl
     /**
      * Creates the given key under the current root.
      * 
-     * @param key
-     *            key to be created
+     * @param key key to be created
      * @throws NativeLibException
      */
     public void createKey(String key) throws NativeLibException
@@ -167,8 +154,7 @@ public class RegistryImpl
     /**
      * Creates the given key under the given root.
      * 
-     * @param key
-     *            key to be created
+     * @param key key to be created
      * @throws NativeLibException
      */
     public void createKey(int root, String key) throws NativeLibException
@@ -190,8 +176,7 @@ public class RegistryImpl
     /**
      * Returns whether the given key under the current root exist or not.
      * 
-     * @param key
-     *            key to be tested
+     * @param key key to be tested
      * @return true if thekey exist, else false
      * @throws NativeLibException
      */
@@ -203,10 +188,8 @@ public class RegistryImpl
     /**
      * Returns whether the given key under the given root exist or not.
      * 
-     * @param root
-     *            to be used
-     * @param key
-     *            key to be tested
+     * @param root to be used
+     * @param key key to be tested
      * @return true if thekey exist, else false
      * @throws NativeLibException
      */
@@ -227,10 +210,8 @@ public class RegistryImpl
     /**
      * Returns whether the given value exist under the current root or not.
      * 
-     * @param key
-     *            key of the value for which should be tested
-     * @param value
-     *            value to be tested
+     * @param key key of the value for which should be tested
+     * @param value value to be tested
      * @return true if the value exist, else false
      * @throws NativeLibException
      */
@@ -253,12 +234,9 @@ public class RegistryImpl
      * Sets the given contents to the given registry value. If a sub key or the registry value does
      * not exist, it will be created. REG_SZ is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(String key, String value, String contents) throws NativeLibException
@@ -271,12 +249,9 @@ public class RegistryImpl
      * Sets the given contents to the given registry value. If a sub key or the registry value does
      * not exist, it will be created. REG_MULTI_SZ is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(String key, String value, String[] contents) throws NativeLibException
@@ -289,12 +264,9 @@ public class RegistryImpl
      * Sets the given contents to the given registry value. If a sub key or the registry value does
      * not exist, it will be created. REG_BINARY is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(String key, String value, byte[] contents) throws NativeLibException
@@ -307,12 +279,9 @@ public class RegistryImpl
      * Sets the given contents to the given registry value. If a sub key or the registry value does
      * not exist, it will be created. REG_DWORD is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(String key, String value, long contents) throws NativeLibException
@@ -325,12 +294,9 @@ public class RegistryImpl
      * registry value does not exist, it will be created. The used registry value type will be
      * determined by the type of the RegDataContainer.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(String key, String value, RegDataContainer contents)
@@ -344,14 +310,10 @@ public class RegistryImpl
      * not exist, it will be created. The used registry value type will be determined by the type of
      * the RegDataContainer.
      * 
-     * @param root
-     *            id for the root of the key
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param root id for the root of the key
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     public void setValue(int root, String key, String value, RegDataContainer contents)
@@ -382,7 +344,7 @@ public class RegistryImpl
             setValueN(root, key, value, contents);
             // Add value changing to log list
             if (value.length() == 0) // The default value ...
-                    localValue = DEFAULT_PLACEHOLDER; // Rewind will fail if last
+                localValue = DEFAULT_PLACEHOLDER; // Rewind will fail if last
             // token is
             // empty.
 
@@ -396,8 +358,7 @@ public class RegistryImpl
     /**
      * Deletes a key under the current root if it is empty, else do nothing.
      * 
-     * @param key
-     *            key to be deleted
+     * @param key key to be deleted
      * @throws NativeLibException
      */
     public void deleteKeyIfEmpty(String key) throws NativeLibException
@@ -408,10 +369,8 @@ public class RegistryImpl
     /**
      * Deletes a key if it is empty, else do nothing.
      * 
-     * @param root
-     *            id for the root of the key
-     * @param key
-     *            key to be deleted
+     * @param root id for the root of the key
+     * @param key key to be deleted
      * @throws NativeLibException
      */
     public void deleteKeyIfEmpty(int root, String key) throws NativeLibException
@@ -423,10 +382,8 @@ public class RegistryImpl
     /**
      * Deletes a value.
      * 
-     * @param key
-     *            key of the value which should be deleted
-     * @param value
-     *            value name to be deleted
+     * @param key key of the value which should be deleted
+     * @param value value name to be deleted
      * @throws NativeLibException
      */
     public void deleteValue(String key, String value) throws NativeLibException
@@ -437,10 +394,8 @@ public class RegistryImpl
     /**
      * Deletes a key with logging.
      * 
-     * @param root
-     *            id for the root of the key
-     * @param key
-     *            key to be deleted
+     * @param root id for the root of the key
+     * @param key key to be deleted
      * @throws NativeLibException
      */
     private void deleteKeyL(int root, String key) throws NativeLibException
@@ -454,12 +409,9 @@ public class RegistryImpl
     /**
      * Deletes a value with logging.
      * 
-     * @param root
-     *            id for the root of the key
-     * @param key
-     *            key of the value which should be deleted
-     * @param value
-     *            value name to be deleted
+     * @param root id for the root of the key
+     * @param key key of the value which should be deleted
+     * @param value value name to be deleted
      * @throws NativeLibException
      */
     private void deleteValueL(int root, String key, String value) throws NativeLibException
@@ -556,14 +508,10 @@ public class RegistryImpl
      * not exist, it will be created. The used registry value type will be determined by the type of
      * the RegDataContainer.
      * 
-     * @param root
-     *            id for the root of the key
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param root id for the root of the key
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @throws NativeLibException
      */
     private void setValueR(int root, String key, String value, RegDataContainer contents)
@@ -578,7 +526,7 @@ public class RegistryImpl
         setValueN(root, key, value, contents);
         // Add value creation to log list
         if (value.length() == 0) // The default value ...
-                localValue = DEFAULT_PLACEHOLDER; // Rewind will fail if last token
+            localValue = DEFAULT_PLACEHOLDER; // Rewind will fail if last token
         // is
         // empty.
         StringBuffer sb = new StringBuffer();</diff>
      <filename>src/lib/com/coi/tools/os/win/RegistryImpl.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryLogItem.java
- *  Description :        Container for registry data.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win;
 
 import java.io.Serializable;
@@ -33,11 +28,16 @@ import java.io.Serializable;
  * registry data used at rewinding the registry changes.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class RegistryLogItem implements Cloneable, Serializable
 {
 
+    /**
+     * 
+     */
+    private static final long serialVersionUID = 3618134559108444211L;
+
     /** Types of log items */
     public static final int REMOVED_KEY = 1;
 
@@ -72,20 +72,14 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Constructor with settings.
      * 
-     * @param type
-     *            type of loging item. Possible are REMOVED_KEY, CREATED_KEY, REMOVED_VALUE,
-     *            CREATED_VALUE and CHANGED_VALUE
-     * @param root
-     *            id for the registry root
-     * @param key
-     *            key name of the item which should be logged
-     * @param valueName
-     *            name of the value of the item which should be logged if it is a value type, else
-     *            null
-     * @param newValue
-     *            new value of the registry entry if it is a value type, else null
-     * @param oldValue
-     *            old value of the registry entry if it is a value type, else null
+     * @param type type of loging item. Possible are REMOVED_KEY, CREATED_KEY, REMOVED_VALUE,
+     * CREATED_VALUE and CHANGED_VALUE
+     * @param root id for the registry root
+     * @param key key name of the item which should be logged
+     * @param valueName name of the value of the item which should be logged if it is a value type,
+     * else null
+     * @param newValue new value of the registry entry if it is a value type, else null
+     * @param oldValue old value of the registry entry if it is a value type, else null
      */
     public RegistryLogItem(int type, int root, String key, String valueName,
             RegDataContainer newValue, RegDataContainer oldValue)
@@ -161,8 +155,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the key name to the given string
      * 
-     * @param string
-     *            to be used as key name
+     * @param string to be used as key name
      */
     public void setKey(String string)
     {
@@ -172,8 +165,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the new value to the given RegDataContainer.
      * 
-     * @param container
-     *            to be used as new value
+     * @param container to be used as new value
      */
     public void setNewValue(RegDataContainer container)
     {
@@ -183,8 +175,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the old value to the given RegDataContainer.
      * 
-     * @param container
-     *            to be used as old value
+     * @param container to be used as old value
      */
     public void setOldValue(RegDataContainer container)
     {
@@ -194,8 +185,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the root id for this logging item.
      * 
-     * @param i
-     *            root id to be used for this logging item
+     * @param i root id to be used for this logging item
      */
     public void setRoot(int i)
     {
@@ -205,8 +195,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the type id for this logging item.
      * 
-     * @param i
-     *            type id to be used for this logging item
+     * @param i type id to be used for this logging item
      */
     public void setType(int i)
     {
@@ -216,8 +205,7 @@ public class RegistryLogItem implements Cloneable, Serializable
     /**
      * Sets the value name to the given string
      * 
-     * @param string
-     *            to be used as value name
+     * @param string to be used as value name
      */
     public void setValueName(String string)
     {</diff>
      <filename>src/lib/com/coi/tools/os/win/RegistryLogItem.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               NativeLibErr.java
- *  Description :        &quot;Global&quot; ListResourceBundle for NativeLibException.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win.resources;
 
 import java.util.ListResourceBundle;
@@ -32,7 +27,7 @@ import java.util.ListResourceBundle;
  * &quot;Global&quot; (English) resource bundle for NativLibException.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class NativeLibErr extends ListResourceBundle
 {</diff>
      <filename>src/lib/com/coi/tools/os/win/resources/NativeLibErr.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  COIOSHelper
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               NativeLibErr_de.java
- *  Description :        German ListResourceBundle for NativeLibException.
- *                       
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
  *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.coi.tools.os.win.resources;
 
 import java.util.ListResourceBundle;
@@ -32,7 +27,7 @@ import java.util.ListResourceBundle;
  * German resource bundle for NativLibException.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class NativeLibErr_de extends ListResourceBundle
 {</diff>
      <filename>src/lib/com/coi/tools/os/win/resources/NativeLibErr_de.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               CustomData.java
- *  Description :        Custom data description.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
  *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack;
@@ -45,9 +41,8 @@ public class CustomData implements Serializable
     public static final int UNINSTALLER_LISTENER = 1;
 
     /**
-     * Identifier for custom data typ &quot;uninstaller lib&quot;. This is used for binary
-     * libs (DLLs or SHLs or SOs or ...) which will be needed from the
-     * uninstaller.
+     * Identifier for custom data typ &quot;uninstaller lib&quot;. This is used for binary libs (DLLs or SHLs
+     * or SOs or ...) which will be needed from the uninstaller.
      */
     public static final int UNINSTALLER_LIB = 2;
 
@@ -55,16 +50,15 @@ public class CustomData implements Serializable
     public static final int UNINSTALLER_JAR = 3;
 
     /**
-     * The contens of the managed custom data. If it is a listener or a
-     * uninstaller jar, all contained files are listed with it complete sub
-     * path. If it is a uninstaller native library, this value is the path in
-     * the installer jar.
+     * The contens of the managed custom data. If it is a listener or a uninstaller jar, all
+     * contained files are listed with it complete sub path. If it is a uninstaller native library,
+     * this value is the path in the installer jar.
      */
     public List contents;
 
     /**
-     * Full qualified name of the managed listener. If type is not a listener,
-     * this value is undefined.
+     * Full qualified name of the managed listener. If type is not a listener, this value is
+     * undefined.
      */
     public String listenerName;
 
@@ -72,27 +66,22 @@ public class CustomData implements Serializable
     public List osConstraints = null;
 
     /**
-     * Type of this custom action data; possible are INSTALLER_LISTENER,
-     * UNINSTALLER_LISTENER, UNINSTALLER_LIB and UNINSTALLER_JAR.
+     * Type of this custom action data; possible are INSTALLER_LISTENER, UNINSTALLER_LISTENER,
+     * UNINSTALLER_LIB and UNINSTALLER_JAR.
      */
     public int type = 0;
 
     /**
-     * Constructs an CustomData object with the needed values. If a listener
-     * will be managed with this object, the full qualified name of the listener
-     * self must be set as listener name. If a listener or a jar file for
-     * uninstall will be managed, all needed files (class, properties and so on)
-     * must be referenced in the contents with the path which they have in the
-     * installer jar file.
+     * Constructs an CustomData object with the needed values. If a listener will be managed with
+     * this object, the full qualified name of the listener self must be set as listener name. If a
+     * listener or a jar file for uninstall will be managed, all needed files (class, properties and
+     * so on) must be referenced in the contents with the path which they have in the installer jar
+     * file.
      * 
-     * @param listenerName
-     *            path of the listener
-     * @param contents
-     *            also needed objects referenced with the path in install.jar
-     * @param osConstraints
-     *            target operation system of this custom action
-     * @param type
-     *            type of this custom data
+     * @param listenerName path of the listener
+     * @param contents also needed objects referenced with the path in install.jar
+     * @param osConstraints target operation system of this custom action
+     * @param type type of this custom data
      */
     public CustomData(String listenerName, List contents, List osConstraints, int type)
     {</diff>
      <filename>src/lib/com/izforge/izpack/CustomData.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001,2002 Olexij Tkatchenko
- *
- *  File :               Pack.java
- *  Description :        Contains informations about a pack.
- *  Author's email :     ot@parcs.de
- *  Author's Website :   N/A
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001,2002 Olexij Tkatchenko
  *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;
@@ -29,8 +26,8 @@ import java.util.ArrayList;
 import java.util.List;
 
 /**
- * Encloses information about a executable file. This class abstracts the way to
- * do a system dependent postprocessing of installation.
+ * Encloses information about a executable file. This class abstracts the way to do a system
+ * dependent postprocessing of installation.
  * 
  * @author Olexij Tkatchenko &lt;ot@parcs.de&gt;
  */
@@ -81,8 +78,8 @@ public class ExecutableFile implements Serializable
     public List osList = null;
 
     /**
-     * Indicates the file should be kept after executing. Default is false for
-     * backward compatibility.
+     * Indicates the file should be kept after executing. Default is false for backward
+     * compatibility.
      */
     public boolean keepFile;
 
@@ -102,14 +99,10 @@ public class ExecutableFile implements Serializable
     /**
      * Constructs and initializes a new instance.
      * 
-     * @param path
-     *            the file path
-     * @param executionStage
-     *            when to execute
-     * @param onFailure
-     *            what to do if execution fails
-     * @param osList
-     *            list of operating systems to run on
+     * @param path the file path
+     * @param executionStage when to execute
+     * @param onFailure what to do if execution fails
+     * @param osList list of operating systems to run on
      */
     public ExecutableFile(String path, int executionStage, int onFailure, java.util.List osList,
             boolean keepFile)</diff>
      <filename>src/lib/com/izforge/izpack/ExecutableFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               GUIPrefs.java
- *  Description :        The GUI preferences for an installation.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;</diff>
      <filename>src/lib/com/izforge/izpack/GUIPrefs.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,35 +1,29 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Info.java
- *  Description :        The information class for an installation.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;
 import java.util.ArrayList;
 
 /**
- * Contains some informations for an installer, as defined in the &lt;info&gt; section
- * of the XML files.
+ * Contains some informations for an installer, as defined in the &lt;info&gt; section of the XML files.
  * 
  * @author Julien Ponge
  */
@@ -73,8 +67,7 @@ public class Info implements Serializable
     /**
      * Sets the application name.
      * 
-     * @param appName
-     *            The new application name.
+     * @param appName The new application name.
      */
     public void setAppName(String appName)
     {
@@ -94,8 +87,7 @@ public class Info implements Serializable
     /**
      * Sets the version.
      * 
-     * @param appVersion
-     *            The application version.
+     * @param appVersion The application version.
      */
     public void setAppVersion(String appVersion)
     {
@@ -115,8 +107,7 @@ public class Info implements Serializable
     /**
      * Adds an author to the authors list.
      * 
-     * @param author
-     *            The author to add.
+     * @param author The author to add.
      */
     public void addAuthor(Author author)
     {
@@ -136,8 +127,7 @@ public class Info implements Serializable
     /**
      * Sets the application URL.
      * 
-     * @param appURL
-     *            The application URL.
+     * @param appURL The application URL.
      */
     public void setAppURL(String appURL)
     {
@@ -157,8 +147,7 @@ public class Info implements Serializable
     /**
      * Sets the minimum Java version required.
      * 
-     * @param javaVersion
-     *            The Java version.
+     * @param javaVersion The Java version.
      */
     public void setJavaVersion(String javaVersion)
     {
@@ -178,8 +167,7 @@ public class Info implements Serializable
     /**
      * Sets the installer name.
      * 
-     * @param installerBase
-     *            The new installer name.
+     * @param installerBase The new installer name.
      */
     public void setInstallerBase(String installerBase)
     {
@@ -199,8 +187,7 @@ public class Info implements Serializable
     /**
      * Sets the webDir URL.
      * 
-     * @param url
-     *            The application URL.
+     * @param url The application URL.
      */
     public void setWebDirURL(String url)
     {
@@ -210,8 +197,8 @@ public class Info implements Serializable
     /**
      * Gets the webDir URL if it has been specified
      * 
-     * @return The webDir URL from which the installer is retrieved, or
-     *         &lt;tt&gt;null&lt;/tt&gt; if non has been set.
+     * @return The webDir URL from which the installer is retrieved, or &lt;tt&gt;null&lt;/tt&gt; if non has
+     * been set.
      */
     public String getWebDirURL()
     {
@@ -221,8 +208,7 @@ public class Info implements Serializable
     /**
      * Sets the name of the uninstaller.
      * 
-     * @param name
-     *            the name of the uninstaller.
+     * @param name the name of the uninstaller.
      */
     public void setUninstallerName(String name)
     {
@@ -278,10 +264,8 @@ public class Info implements Serializable
         /**
          * The constructor.
          * 
-         * @param name
-         *            The author name.
-         * @param email
-         *            The author email.
+         * @param name The author name.
+         * @param email The author email.
          */
         public Author(String name, String email)
         {
@@ -292,8 +276,7 @@ public class Info implements Serializable
         /**
          * Gets a String representation of the author.
          * 
-         * @return The String representation of the author, in the form : name
-         *         &lt;email&gt; .
+         * @return The String representation of the author, in the form : name &lt;email&gt; .
          */
         public String toString()
         {
@@ -315,8 +298,7 @@ public class Info implements Serializable
     /**
      * Sets the installation subpath.
      * 
-     * @param string
-     *            subpath to be set
+     * @param string subpath to be set
      */
     public void setInstallationSubPath(String string)
     {
@@ -336,8 +318,7 @@ public class Info implements Serializable
     /**
      * Sets the summary log file path.
      * 
-     * @param summaryLogFilePath
-     *            the summary log file path to set
+     * @param summaryLogFilePath the summary log file path to set
      */
     public void setSummaryLogFilePath(String summaryLogFilePath)
     {</diff>
      <filename>src/lib/com/izforge/izpack/Info.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               LocaleDatabase.java
- *  Description :        Represents a langpack database.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.InputStream;
@@ -47,10 +42,8 @@ public class LocaleDatabase extends TreeMap
     /**
      * The constructor.
      * 
-     * @param in
-     *            An InputStream to read the translation from.
-     * @exception Exception
-     *                Description of the Exception
+     * @param in An InputStream to read the translation from.
+     * @exception Exception Description of the Exception
      */
     public LocaleDatabase(InputStream in) throws Exception
     {
@@ -96,8 +89,7 @@ public class LocaleDatabase extends TreeMap
     /**
      * Convenience method to retrieve an element.
      * 
-     * @param key
-     *            The key of the element to retrieve.
+     * @param key The key of the element to retrieve.
      * @return The element value or the key if not found.
      */
     public String getString(String key)</diff>
      <filename>src/lib/com/izforge/izpack/LocaleDatabase.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Pack.java
- *  Description :        Contains informations about a pack.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;
@@ -85,16 +80,11 @@ public class Pack implements Serializable
     /**
      * The constructor.
      * 
-     * @param name
-     *            The pack name.
-     * @param description
-     *            The pack description.
-     * @param osConstraints
-     *            the OS constraint (or null for any OS)
-     * @param required
-     *            Indicates wether the pack is required or not.
-     * @param preselected
-     *            This pack will be selected automatically.
+     * @param name The pack name.
+     * @param description The pack description.
+     * @param osConstraints the OS constraint (or null for any OS)
+     * @param required Indicates wether the pack is required or not.
+     * @param preselected This pack will be selected automatically.
      */
     public Pack(String name, String id, String description, List osConstraints, List dependencies,
             boolean required, boolean preselected, boolean loose)
@@ -128,11 +118,10 @@ public class Pack implements Serializable
     }
 
     /**
-     * This adds a reverse dependency. With a reverse dependency we imply a
-     * child dependency or the dependents on this pack
+     * This adds a reverse dependency. With a reverse dependency we imply a child dependency or the
+     * dependents on this pack
      * 
-     * @param name
-     *            The name of the pack that depents to this pack
+     * @param name The name of the pack that depents to this pack
      */
     public void addRevDep(String name)
     {
@@ -176,8 +165,7 @@ public class Pack implements Serializable
     /**
      * Convert bytes into appropiate mesaurements.
      * 
-     * @param bytes
-     *            A number of bytes to convert to a String.
+     * @param bytes A number of bytes to convert to a String.
      * @return The String-converted value.
      */
     public static String toByteUnitsString(int bytes)</diff>
      <filename>src/lib/com/izforge/izpack/Pack.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,4 +1,25 @@
 /*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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$
  *  IzPack
  *  Copyright (C) 2001 Johannes Lehtinen
@@ -31,8 +52,8 @@ import java.util.List;
 import java.util.Map;
 
 /**
- * Encloses information about a packed file. This class abstracts the way file
- * data is stored to package.
+ * Encloses information about a packed file. This class abstracts the way file data is stored to
+ * package.
  * 
  * @author Johannes Lehtinen &lt;johannes.lehtinen@iki.fi&gt;
  */
@@ -81,16 +102,11 @@ public class PackFile implements Serializable
     /**
      * Constructs and initializes from a source file.
      * 
-     * @param src
-     *            file which this PackFile describes
-     * @param target
-     *            the path to install the file to
-     * @param osList
-     *            OS constraints
-     * @param override
-     *            what to do when the file already exists
-     * @throws FileNotFoundException
-     *             if the specified file does not exist.
+     * @param src file which this PackFile describes
+     * @param target the path to install the file to
+     * @param osList OS constraints
+     * @param override what to do when the file already exists
+     * @throws FileNotFoundException if the specified file does not exist.
      */
     public PackFile(File src, String target, List osList, int override)
             throws FileNotFoundException
@@ -114,18 +130,12 @@ public class PackFile implements Serializable
     /**
      * Constructs and initializes from a source file.
      * 
-     * @param src
-     *            file which this PackFile describes
-     * @param target
-     *            the path to install the file to
-     * @param osList
-     *            OS constraints
-     * @param override
-     *            what to do when the file already exists
-     * @param additionals
-     *            additional attributes
-     * @throws FileNotFoundException
-     *             if the specified file does not exist.
+     * @param src file which this PackFile describes
+     * @param target the path to install the file to
+     * @param osList OS constraints
+     * @param override what to do when the file already exists
+     * @param additionals additional attributes
+     * @throws FileNotFoundException if the specified file does not exist.
      */
     public PackFile(File src, String target, List osList, int override, Map additionals)
             throws FileNotFoundException</diff>
      <filename>src/lib/com/izforge/izpack/PackFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,8 +1,22 @@
 /*
- * Created on Jan 30, 2004
- *
- * To change this generated comment go to 
- * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code Template
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 package com.izforge.izpack;
 </diff>
      <filename>src/lib/com/izforge/izpack/Panel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,35 +1,32 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001 Johannes Lehtinen
- *
- *  File :               Pack.java
- *  Description :        Contains informations about a parsable file.
- *  Author's email :     johannes.lehtinen@iki.fi
- *  Author's Website :   http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;
 import java.util.List;
 
 /**
- * Encloses information about a parsable file. This class abstracts the way the
- * information is stored to package.
+ * Encloses information about a parsable file. This class abstracts the way the information is
+ * stored to package.
  * 
  * @author Johannes Lehtinen &lt;johannes.lehtinen@iki.fi&gt;
  */
@@ -53,14 +50,10 @@ public class ParsableFile implements Serializable
     /**
      * Constructs and initializes a new instance.
      * 
-     * @param path
-     *            the file path
-     * @param type
-     *            the file type (or null for default)
-     * @param encoding
-     *            the file encoding (or null for default)
-     * @param osConstraints
-     *            the OS constraint (or null for any OS)
+     * @param path the file path
+     * @param type the file type (or null for default)
+     * @param encoding the file encoding (or null for default)
+     * @param osConstraints the OS constraint (or null for any OS)
      */
     public ParsableFile(String path, String type, String encoding, List osConstraints)
     {</diff>
      <filename>src/lib/com/izforge/izpack/ParsableFile.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001 Johannes Lehtinen
- *
- *  File :               Pack.java
- *  Description :        Contains informations about a pack file.
- *  Author's email :     johannes.lehtinen@iki.fi
- *  Author's Website :   http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack;
 
 import java.io.Serializable;
@@ -38,14 +35,12 @@ public class UpdateCheck implements Serializable
     static final long serialVersionUID = -3721254065037691999L;
 
     /**
-     * ant-fileset-like list of include patterns, based on INSTALL_PATH if
-     * relative
+     * ant-fileset-like list of include patterns, based on INSTALL_PATH if relative
      */
     public ArrayList includesList = null;
 
     /**
-     * ant-fileset-like list of exclude patterns, based on INSTALL_PATH if
-     * relative
+     * ant-fileset-like list of exclude patterns, based on INSTALL_PATH if relative
      */
     public ArrayList excludesList = null;
 
@@ -60,10 +55,8 @@ public class UpdateCheck implements Serializable
     /**
      * Constructs and initializes a new instance.
      * 
-     * @param includes
-     *            The patterns to include in the check.
-     * @param excludes
-     *            The patterns to exclude from the check.
+     * @param includes The patterns to include in the check.
+     * @param excludes The patterns to exclude from the check.
      */
     public UpdateCheck(ArrayList includes, ArrayList excludes)
     {
@@ -74,12 +67,9 @@ public class UpdateCheck implements Serializable
     /**
      * Constructs and initializes a new instance.
      * 
-     * @param includes
-     *            The patterns to include in the check.
-     * @param excludes
-     *            The patterns to exclude from the check.
-     * @param casesensitive
-     *            If &quot;yes&quot;, matches are performed case sensitive.
+     * @param includes The patterns to include in the check.
+     * @param excludes The patterns to exclude from the check.
+     * @param casesensitive If &quot;yes&quot;, matches are performed case sensitive.
      */
     public UpdateCheck(ArrayList includes, ArrayList excludes, String casesensitive)
     {</diff>
      <filename>src/lib/com/izforge/izpack/UpdateCheck.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPackTask
- *  Copyright (C) 2002 Paul Wilkinson
- *
- *  File :               IzPacktask.java
- *  Description :        An ant task to invoke the IZPack compiler.
- *  Author's email :     paulw@wilko.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Paul Wilkinson
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.ant;
 
 import java.util.Enumeration;
@@ -57,8 +55,7 @@ public class IzPackTask extends Task implements PackagerListener
     private InstallerType installerType;
 
     /**
-     * Holds value of property izPackDir. This should point at the IzPack
-     * directory
+     * Holds value of property izPackDir. This should point at the IzPack directory
      */
     private String izPackDir;
 
@@ -97,25 +94,26 @@ public class IzPackTask extends Task implements PackagerListener
     public void packagerMsg(String str, int priority)
     {
         final int antPriority;
-        switch(priority) // No guarantee of a direct conversion. It's an enum
+        switch (priority)
+        // No guarantee of a direct conversion. It's an enum
         {
-            case MSG_DEBUG:
-                antPriority = Project.MSG_DEBUG;
-                break;
-            case MSG_ERR:
-                antPriority = Project.MSG_ERR;
-                break;
-            case MSG_INFO:
-                antPriority = Project.MSG_INFO;
-                break;
-            case MSG_VERBOSE:
-                antPriority = Project.MSG_VERBOSE;
-                break;
-            case MSG_WARN:
-                antPriority = Project.MSG_WARN;
-                break;
-            default: // rather than die...
-                antPriority = Project.MSG_INFO;
+        case MSG_DEBUG:
+            antPriority = Project.MSG_DEBUG;
+            break;
+        case MSG_ERR:
+            antPriority = Project.MSG_ERR;
+            break;
+        case MSG_INFO:
+            antPriority = Project.MSG_INFO;
+            break;
+        case MSG_VERBOSE:
+            antPriority = Project.MSG_VERBOSE;
+            break;
+        case MSG_WARN:
+            antPriority = Project.MSG_WARN;
+            break;
+        default: // rather than die...
+            antPriority = Project.MSG_INFO;
         }
         log(str, antPriority);
     }
@@ -137,8 +135,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Packages.
      * 
-     * @exception BuildException
-     *                Description of the Exception
+     * @exception BuildException Description of the Exception
      */
     public void execute() throws org.apache.tools.ant.BuildException
     {
@@ -195,8 +192,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Setter for property input.
      * 
-     * @param input
-     *            New value of property input.
+     * @param input New value of property input.
      */
     public void setInput(String input)
     {
@@ -206,8 +202,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Setter for property basedir.
      * 
-     * @param basedir
-     *            New value of property basedir.
+     * @param basedir New value of property basedir.
      */
     public void setBasedir(String basedir)
     {
@@ -217,8 +212,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Setter for property output.
      * 
-     * @param output
-     *            New value of property output.
+     * @param output New value of property output.
      */
     public void setOutput(String output)
     {
@@ -228,8 +222,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Setter for property installerType.
      * 
-     * @param installerType
-     *            New value of property installerType.
+     * @param installerType New value of property installerType.
      */
     public void setInstallerType(InstallerType installerType)
     {
@@ -239,8 +232,7 @@ public class IzPackTask extends Task implements PackagerListener
     /**
      * Setter for property izPackDir.
      * 
-     * @param izPackDir
-     *            New value of property izPackDir.
+     * @param izPackDir New value of property izPackDir.
      */
     public void setIzPackDir(String izPackDir)
     {</diff>
      <filename>src/lib/com/izforge/izpack/ant/IzPackTask.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,42 +1,32 @@
 /*
- *  $Id
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               ByteCountingOutputStream.java
- *  Description :        Counts bytes that are written
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (c) 2001 Johannes Lehtinen
- *  johannes.lehtinen@iki.fi
- *  http://www.iki.fi/jle/
- *
- *  Portions are Copyright (c) 2002 Paul Wilkinson
- *  paulw@wilko.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * Copyright 2002 Paul Wilkinson
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 import java.io.IOException;
 import java.io.OutputStream;
 
 /**
- * Stream which countes the bytes written through it. Be sure to flush before
- * checking size.
+ * Stream which countes the bytes written through it. Be sure to flush before checking size.
  */
 public class ByteCountingOutputStream extends OutputStream
 {</diff>
      <filename>src/lib/com/izforge/izpack/compiler/ByteCountingOutputStream.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,36 +1,27 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Compiler.java
- *  Description :        The IzPack compiler.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (c) 2001 Johannes Lehtinen
- *  johannes.lehtinen@iki.fi
- *  http://www.iki.fi/jle/
- *
- *  Portions are Copyright (c) 2002 Paul Wilkinson
- *  paulw@wilko.com
- *
- *  Portions are Copyright (C) 2004 Gaganis Giorgos (geogka@it.teithe.gr)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * Copyright 2002 Paul Wilkinson
+ * Copyright 2004 Gaganis Giorgos
  *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 import java.io.BufferedInputStream;
@@ -149,14 +140,10 @@ public class Compiler extends Thread
     /**
      * The constructor.
      * 
-     * @param filename
-     *            The XML filename.
-     * @param basedir
-     *            The base directory.
-     * @param kind
-     *            The installer kind.
-     * @param output
-     *            The installer filename.
+     * @param filename The XML filename.
+     * @param basedir The base directory.
+     * @param kind The installer kind.
+     * @param output The installer filename.
      */
     public Compiler(String filename, String basedir, String kind, String output)
     {
@@ -177,8 +164,7 @@ public class Compiler extends Thread
     /**
      * Sets the packager listener.
      * 
-     * @param listener
-     *            The listener.
+     * @param listener The listener.
      */
     public void setPackagerListener(PackagerListener listener)
     {
@@ -227,8 +213,7 @@ public class Compiler extends Thread
     /**
      * Compiles the installation.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     public void executeCompiler() throws Exception
     {
@@ -291,8 +276,7 @@ public class Compiler extends Thread
     /**
      * Get the value of a property currerntly known to izpack.
      * 
-     * @param name
-     *            the name of the property
+     * @param name the name of the property
      * @return the value of the property, or null
      */
     public String getProperty(String name)
@@ -301,13 +285,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Add a name value pair to the project property set. Overwriting any
-     * existing value.
+     * Add a name value pair to the project property set. Overwriting any existing value.
      * 
-     * @param name
-     *            the name of the property
-     * @param value
-     *            the value to set
+     * @param name the name of the property
+     * @param value the value to set
      * @return true
      */
     public boolean setProperty(String name, String value)
@@ -318,13 +299,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Add a name value pair to the project property set. It is &lt;i&gt;not&lt;/i&gt;
-     * replaced it is already in the set of properties.
+     * Add a name value pair to the project property set. It is &lt;i&gt;not&lt;/i&gt; replaced it is already
+     * in the set of properties.
      * 
-     * @param name
-     *            the name of the property
-     * @param value
-     *            the value to set
+     * @param name the name of the property
+     * @param value the value to set
      * @return true if the property was not already set
      */
     public boolean addProperty(String name, String value)
@@ -341,11 +320,9 @@ public class Compiler extends Thread
     /**
      * Returns the GUIPrefs.
      * 
-     * @param data
-     *            The XML data.
+     * @param data The XML data.
      * @return The GUIPrefs.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @exception CompilerException Description of the Exception
      */
     protected void addGUIPrefs(XMLElement data) throws CompilerException
     {
@@ -428,8 +405,7 @@ public class Compiler extends Thread
     /**
      * Add project specific external jar files to the installer.
      * 
-     * @param data
-     *            The XML data.
+     * @param data The XML data.
      */
     protected void addJars(XMLElement data) throws Exception
     {
@@ -464,8 +440,7 @@ public class Compiler extends Thread
     /**
      * Add native libraries to the installer.
      * 
-     * @param data
-     *            The XML data.
+     * @param data The XML data.
      */
     protected void addNativeLibraries(XMLElement data) throws Exception
     {
@@ -520,8 +495,7 @@ public class Compiler extends Thread
     /**
      * Add packs and their contents to the installer.
      * 
-     * @param data
-     *            The XML data.
+     * @param data The XML data.
      */
     protected void addPacks(XMLElement data) throws CompilerException
     {
@@ -837,9 +811,9 @@ public class Compiler extends Thread
     }
 
     /**
-     * Checks whether the dependencies stated in the configuration file are
-     * correct. Specifically it checks that no pack point to a non existent pack
-     * and also that there are no circular dependencies in the packs.
+     * Checks whether the dependencies stated in the configuration file are correct. Specifically it
+     * checks that no pack point to a non existent pack and also that there are no circular
+     * dependencies in the packs.
      */
     public void checkDependencies(List packs) throws CompilerException
     {
@@ -859,15 +833,12 @@ public class Compiler extends Thread
     }
 
     /**
-     * We use the dfs graph search algorithm to check whether the graph is
-     * acyclic as described in: Thomas H. Cormen, Charles Leiserson, Ronald
-     * Rivest and Clifford Stein. Introduction to algorithms 2nd Edition
-     * 540-549,MIT Press, 2001
+     * We use the dfs graph search algorithm to check whether the graph is acyclic as described in:
+     * Thomas H. Cormen, Charles Leiserson, Ronald Rivest and Clifford Stein. Introduction to
+     * algorithms 2nd Edition 540-549,MIT Press, 2001
      * 
-     * @param packs
-     *            The graph
-     * @param names
-     *            The name map
+     * @param packs The graph
+     * @param names The name map
      */
     private int dfs(List packs, Map names)
     {
@@ -946,20 +917,13 @@ public class Compiler extends Thread
     /**
      * Recursive method to add files in a pack.
      * 
-     * @param file
-     *            The file to add.
-     * @param targetdir
-     *            The relative path to the parent.
-     * @param osList
-     *            The target OS constraints.
-     * @param override
-     *            Overriding behaviour.
-     * @param pack
-     *            Pack to be packed into
-     * @param additionals
-     *            Map which contains additional data
-     * @exception FileNotFoundException
-     *                if the file does not exist
+     * @param file The file to add.
+     * @param targetdir The relative path to the parent.
+     * @param osList The target OS constraints.
+     * @param override Overriding behaviour.
+     * @param pack Pack to be packed into
+     * @param additionals Map which contains additional data
+     * @exception FileNotFoundException if the file does not exist
      */
     protected void addRecursively(File file, String targetdir, List osList, int override,
             PackInfo pack, Map additionals) throws IOException
@@ -982,13 +946,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Parse panels and their paramters, locate the panels resources and add to
-     * the Packager.
+     * Parse panels and their paramters, locate the panels resources and add to the Packager.
      * 
-     * @param data
-     *            The XML data.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @param data The XML data.
+     * @exception CompilerException Description of the Exception
      */
     protected void addPanels(XMLElement data) throws CompilerException
     {
@@ -1035,10 +996,8 @@ public class Compiler extends Thread
     /**
      * Adds the resources.
      * 
-     * @param data
-     *            The XML data.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @param data The XML data.
+     * @exception CompilerException Description of the Exception
      */
     protected void addResources(XMLElement data) throws CompilerException
     {
@@ -1105,10 +1064,8 @@ public class Compiler extends Thread
     /**
      * Adds the ISO3 codes of the langpacks and associated resources.
      * 
-     * @param data
-     *            The XML data.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @param data The XML data.
+     * @exception CompilerException Description of the Exception
      */
     protected void addLangpacks(XMLElement data) throws CompilerException
     {
@@ -1141,10 +1098,8 @@ public class Compiler extends Thread
     /**
      * Builds the Info class from the XML tree.
      * 
-     * @param data
-     *            The XML data. return The Info.
-     * @exception Exception
-     *                Description of the Exception
+     * @param data The XML data. return The Info.
+     * @exception Exception Description of the Exception
      */
     protected void addInfo(XMLElement data) throws Exception
     {
@@ -1235,20 +1190,22 @@ public class Compiler extends Thread
      * &lt;pre&gt;
      * 
      *  
-     *      &amp;lt;variables&amp;gt;
-     *        &amp;lt;variable name=&amp;quot;nom&amp;quot; value=&amp;quot;value&amp;quot;/&amp;gt;
-     *        &amp;lt;variable name=&amp;quot;foo&amp;quot; value=&amp;quot;pippo&amp;quot;/&amp;gt;
-     *      &amp;lt;/variables&amp;gt;
+     *   
+     *    
+     *        &amp;lt;variables&amp;gt;
+     *          &amp;lt;variable name=&amp;quot;nom&amp;quot; value=&amp;quot;value&amp;quot;/&amp;gt;
+     *          &amp;lt;variable name=&amp;quot;foo&amp;quot; value=&amp;quot;pippo&amp;quot;/&amp;gt;
+     *        &amp;lt;/variables&amp;gt;
+     *      
      *    
+     *   
      *  
      * &lt;/pre&gt;
      * 
      * variable declared in this can be referred to in parsable files.
      * 
-     * @param data
-     *            The XML data.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @param data The XML data.
+     * @exception CompilerException Description of the Exception
      */
     protected void addVariables(XMLElement data) throws CompilerException
     {
@@ -1278,24 +1235,26 @@ public class Compiler extends Thread
      * &lt;pre&gt;
      * 
      *  
-     *      &amp;lt;properties&amp;gt;
-     *        &amp;lt;property name=&amp;quot;app.name&amp;quot; value=&amp;quot;Property Laden Installer&amp;quot;/&amp;gt;
-     *        &amp;lt;!-- Ant styles 'location' and 'refid' are not yet supported --&amp;gt;
-     *        &amp;lt;property file=&amp;quot;filename-relative-to-install?&amp;quot;/&amp;gt;
-     *        &amp;lt;property file=&amp;quot;filename-relative-to-install?&amp;quot; prefix=&amp;quot;prefix&amp;quot;/&amp;gt;
-     *        &amp;lt;!-- Ant style 'url' and 'resource' are not yet supported --&amp;gt;
-     *        &amp;lt;property environment=&amp;quot;prefix&amp;quot;/&amp;gt;
-     *      &amp;lt;/properties&amp;gt;
+     *   
      *    
+     *        &amp;lt;properties&amp;gt;
+     *          &amp;lt;property name=&amp;quot;app.name&amp;quot; value=&amp;quot;Property Laden Installer&amp;quot;/&amp;gt;
+     *          &amp;lt;!-- Ant styles 'location' and 'refid' are not yet supported --&amp;gt;
+     *          &amp;lt;property file=&amp;quot;filename-relative-to-install?&amp;quot;/&amp;gt;
+     *          &amp;lt;property file=&amp;quot;filename-relative-to-install?&amp;quot; prefix=&amp;quot;prefix&amp;quot;/&amp;gt;
+     *          &amp;lt;!-- Ant style 'url' and 'resource' are not yet supported --&amp;gt;
+     *          &amp;lt;property environment=&amp;quot;prefix&amp;quot;/&amp;gt;
+     *        &amp;lt;/properties&amp;gt;
+     *      
+     *    
+     *   
      *  
      * &lt;/pre&gt;
      * 
      * variable declared in this can be referred to in parsable files.
      * 
-     * @param data
-     *            The XML data.
-     * @exception CompilerException
-     *                Description of the Exception
+     * @param data The XML data.
+     * @exception CompilerException Description of the Exception
      */
     protected void substituteProperties(XMLElement data) throws CompilerException
     {
@@ -1357,10 +1316,8 @@ public class Compiler extends Thread
      * Returns the XMLElement representing the installation XML file.
      * 
      * @return The XML tree.
-     * @exception CompilerException
-     *                For problems with the installation file
-     * @exception IOException
-     *                for errors reading the installation file
+     * @exception CompilerException For problems with the installation file
+     * @exception IOException for errors reading the installation file
      */
     protected XMLElement getXMLTree() throws CompilerException, IOException
     {
@@ -1432,18 +1389,13 @@ public class Compiler extends Thread
     }
 
     /**
-     * Look for a project specified resources, which, if not absolute, are
-     * sought relative to the projects basedir. The path should use '/' as the
-     * fileSeparator. If the resource is not found, a CompilerException is
-     * thrown indicating fault in the parent element.
+     * Look for a project specified resources, which, if not absolute, are sought relative to the
+     * projects basedir. The path should use '/' as the fileSeparator. If the resource is not found,
+     * a CompilerException is thrown indicating fault in the parent element.
      * 
-     * @param path
-     *            the relative path (using '/' as separator) to the resource.
-     * @param desc
-     *            the description of the resource used to report errors
-     * @param parent
-     *            the XMLElement the resource is specified in, used to report
-     *            errors
+     * @param path the relative path (using '/' as separator) to the resource.
+     * @param desc the description of the resource used to report errors
+     * @param parent the XMLElement the resource is specified in, used to report errors
      * @return a URL to the resource.
      */
     private URL findProjectResource(String path, String desc, XMLElement parent)
@@ -1469,19 +1421,14 @@ public class Compiler extends Thread
     }
 
     /**
-     * Look for an IzPack resource either in the compiler jar, or within
-     * IZPACK_HOME. The path must not be absolute. The path must use '/' as the
-     * fileSeparator (it's used to access the jar file). If the resource is not
-     * found, a CompilerException is thrown indicating fault in the parent
-     * element.
+     * Look for an IzPack resource either in the compiler jar, or within IZPACK_HOME. The path must
+     * not be absolute. The path must use '/' as the fileSeparator (it's used to access the jar
+     * file). If the resource is not found, a CompilerException is thrown indicating fault in the
+     * parent element.
      * 
-     * @param path
-     *            the relative path (using '/' as separator) to the resource.
-     * @param desc
-     *            the description of the resource used to report errors
-     * @param parent
-     *            the XMLElement the resource is specified in, used to report
-     *            errors
+     * @param path the relative path (using '/' as separator) to the resource.
+     * @param desc the description of the resource used to report errors
+     * @param parent the XMLElement the resource is specified in, used to report errors
      * @return a URL to the resource.
      */
     private URL findIzPackResource(String path, String desc, XMLElement parent)
@@ -1510,11 +1457,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Create parse error with consistent messages. Includes file name. For use
-     * When parent is unknown.
+     * Create parse error with consistent messages. Includes file name. For use When parent is
+     * unknown.
      * 
-     * @param message
-     *            Brief message explaining error
+     * @param message Brief message explaining error
      */
     protected void parseError(String message) throws CompilerException
     {
@@ -1523,13 +1469,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Create parse error with consistent messages. Includes file name and line #
-     * of parent. It is an error for 'parent' to be null.
+     * Create parse error with consistent messages. Includes file name and line # of parent. It is
+     * an error for 'parent' to be null.
      * 
-     * @param parent
-     *            The element in which the error occured
-     * @param message
-     *            Brief message explaining error
+     * @param parent The element in which the error occured
+     * @param message Brief message explaining error
      */
     protected void parseError(XMLElement parent, String message) throws CompilerException
     {
@@ -1538,13 +1482,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Create a chained parse error with consistent messages. Includes file name
-     * and line # of parent. It is an error for 'parent' to be null.
+     * Create a chained parse error with consistent messages. Includes file name and line # of
+     * parent. It is an error for 'parent' to be null.
      * 
-     * @param parent
-     *            The element in which the error occured
-     * @param message
-     *            Brief message explaining error
+     * @param parent The element in which the error occured
+     * @param message Brief message explaining error
      */
     protected void parseError(XMLElement parent, String message, Throwable cause)
             throws CompilerException
@@ -1554,13 +1496,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Create a parse warning with consistent messages. Includes file name and
-     * line # of parent. It is an error for 'parent' to be null.
+     * Create a parse warning with consistent messages. Includes file name and line # of parent. It
+     * is an error for 'parent' to be null.
      * 
-     * @param parent
-     *            The element in which the warning occured
-     * @param message
-     *            Warning message
+     * @param parent The element in which the warning occured
+     * @param message Warning message
      */
     protected void parseWarn(XMLElement parent, String message)
     {
@@ -1568,13 +1508,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getFirstChildNamed on the parent, producing a meaningful error
-     * message on failure. It is an error for 'parent' to be null.
+     * Call getFirstChildNamed on the parent, producing a meaningful error message on failure. It is
+     * an error for 'parent' to be null.
      * 
-     * @param parent
-     *            The element to search for a child
-     * @param name
-     *            Name of the child element to get
+     * @param parent The element to search for a child
+     * @param name Name of the child element to get
      */
     protected XMLElement requireChildNamed(XMLElement parent, String name) throws CompilerException
     {
@@ -1585,12 +1523,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getContent on an element, producing a meaningful error message if
-     * not present, or empty, or a valid URL. It is an error for 'element' to be
-     * null.
+     * Call getContent on an element, producing a meaningful error message if not present, or empty,
+     * or a valid URL. It is an error for 'element' to be null.
      * 
-     * @param element
-     *            The element to get content of
+     * @param element The element to get content of
      */
     protected URL requireURLContent(XMLElement element) throws CompilerException
     {
@@ -1607,11 +1543,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getContent on an element, producing a meaningful error message if
-     * not present, or empty. It is an error for 'element' to be null.
+     * Call getContent on an element, producing a meaningful error message if not present, or empty.
+     * It is an error for 'element' to be null.
      * 
-     * @param element
-     *            The element to get content of
+     * @param element The element to get content of
      */
     protected String requireContent(XMLElement element) throws CompilerException
     {
@@ -1622,14 +1557,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getAttribute on an element, producing a meaningful error message if
-     * not present, or empty. It is an error for 'element' or 'attribute' to be
-     * null.
+     * Call getAttribute on an element, producing a meaningful error message if not present, or
+     * empty. It is an error for 'element' or 'attribute' to be null.
      * 
-     * @param element
-     *            The element to get the attribute value of
-     * @param attribute
-     *            The name of the attribute to get
+     * @param element The element to get the attribute value of
+     * @param attribute The name of the attribute to get
      */
     protected String requireAttribute(XMLElement element, String attribute)
             throws CompilerException
@@ -1642,15 +1574,12 @@ public class Compiler extends Thread
     }
 
     /**
-     * Get a required attribute of an element, ensuring it is an integer. A
-     * meaningful error message is generated as a CompilerException if not
-     * present or parseable as an int. It is an error for 'element' or
-     * 'attribute' to be null.
+     * Get a required attribute of an element, ensuring it is an integer. A meaningful error message
+     * is generated as a CompilerException if not present or parseable as an int. It is an error for
+     * 'element' or 'attribute' to be null.
      * 
-     * @param element
-     *            The element to get the attribute value of
-     * @param attribute
-     *            The name of the attribute to get
+     * @param element The element to get the attribute value of
+     * @param attribute The name of the attribute to get
      */
     protected int requireIntAttribute(XMLElement element, String attribute)
             throws CompilerException
@@ -1671,14 +1600,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getAttribute on an element, producing a meaningful error message if
-     * not present, or one of &quot;yes&quot; or &quot;no&quot;. It is an error for 'element' or
-     * 'attribute' to be null.
+     * Call getAttribute on an element, producing a meaningful error message if not present, or one
+     * of &quot;yes&quot; or &quot;no&quot;. It is an error for 'element' or 'attribute' to be null.
      * 
-     * @param element
-     *            The element to get the attribute value of
-     * @param attribute
-     *            The name of the attribute to get
+     * @param element The element to get the attribute value of
+     * @param attribute The name of the attribute to get
      */
     protected boolean requireYesNoAttribute(XMLElement element, String attribute)
             throws CompilerException
@@ -1694,16 +1620,12 @@ public class Compiler extends Thread
     }
 
     /**
-     * Call getAttribute on an element, producing a meaningful warning if not
-     * &quot;yes&quot; or &quot;no&quot;. If the 'element' or 'attribute' are null, the default
-     * value is returned.
+     * Call getAttribute on an element, producing a meaningful warning if not &quot;yes&quot; or &quot;no&quot;. If the
+     * 'element' or 'attribute' are null, the default value is returned.
      * 
-     * @param element
-     *            The element to get the attribute value of
-     * @param attribute
-     *            The name of the attribute to get
-     * @param defaultValue
-     *            Value returned if attribute not present or invalid
+     * @param element The element to get the attribute value of
+     * @param attribute The name of the attribute to get
+     * @param defaultValue Value returned if attribute not present or invalid
      */
     protected boolean validateYesNoAttribute(XMLElement element, String attribute,
             boolean defaultValue)
@@ -1725,8 +1647,7 @@ public class Compiler extends Thread
     /**
      * The main method if the compiler is invoked by a command-line call.
      * 
-     * @param args
-     *            The arguments passed on the command-line.
+     * @param args The arguments passed on the command-line.
      */
     public static void main(String[] args)
     {
@@ -1889,16 +1810,13 @@ public class Compiler extends Thread
     // ------------- Listener stuff ------------------------- START ------------
 
     /**
-     * This method parses install.xml for defined listeners and put them in the
-     * right position. If posible, the listeners will be validated. Listener
-     * declaration is a fragmention in install.xml like : &lt;listeners&gt; &lt;listener
-     * compiler=&quot;PermissionCompilerListener&quot;
+     * This method parses install.xml for defined listeners and put them in the right position. If
+     * posible, the listeners will be validated. Listener declaration is a fragmention in
+     * install.xml like : &lt;listeners&gt; &lt;listener compiler=&quot;PermissionCompilerListener&quot;
      * installer=&quot;PermissionInstallerListener&quot;/&gt; &lt;/&lt;listeners&gt;
      * 
-     * @param data
-     *            the XML data
-     * @exception Exception
-     *                Description of the Exception
+     * @param data the XML data
+     * @exception Exception Description of the Exception
      */
     private void addCustomListeners(XMLElement data) throws Exception
     {
@@ -1932,11 +1850,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Returns a list which contains the pathes of all files which are included
-     * in the given url. This method expects as the url param a jar.
+     * Returns a list which contains the pathes of all files which are included in the given url.
+     * This method expects as the url param a jar.
      * 
-     * @param url
-     *            url of the jar file
+     * @param url url of the jar file
      * @return full qualified paths of the contained files
      * @throws Exception
      */
@@ -1957,15 +1874,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Returns the qualified class name for the given class. This method expects
-     * as the url param a jar file which contains the given class. It scans the
-     * zip entries of the jar file.
+     * Returns the qualified class name for the given class. This method expects as the url param a
+     * jar file which contains the given class. It scans the zip entries of the jar file.
      * 
-     * @param url
-     *            url of the jar file which contains the class
-     * @param className
-     *            short name of the class for which the full name should be
-     *            resolved
+     * @param url url of the jar file which contains the class
+     * @param className short name of the class for which the full name should be resolved
      * @return full qualified class name
      * @throws Exception
      */
@@ -2000,14 +1913,11 @@ public class Compiler extends Thread
     }
 
     /**
-     * Returns the compiler listener which is defined in the xml element. As xml
-     * element a &quot;listner&quot; node will be expected. Additional it is expected,
-     * that &quot;findIzPackResource&quot; returns an url based on
-     * &quot;bin/customActions/[className].jar&quot;. The class will be loaded via an
-     * URLClassLoader.
+     * Returns the compiler listener which is defined in the xml element. As xml element a &quot;listner&quot;
+     * node will be expected. Additional it is expected, that &quot;findIzPackResource&quot; returns an url
+     * based on &quot;bin/customActions/[className].jar&quot;. The class will be loaded via an URLClassLoader.
      * 
-     * @param var
-     *            the xml element of the &quot;listener&quot; node
+     * @param var the xml element of the &quot;listener&quot; node
      * @return instance of the defined compiler listener
      * @throws Exception
      */
@@ -2073,11 +1983,10 @@ public class Compiler extends Thread
     }
 
     /**
-     * Add a CompilerListener. A registered CompilerListener will be called at
-     * every enhancmend point of compiling.
+     * Add a CompilerListener. A registered CompilerListener will be called at every enhancmend
+     * point of compiling.
      * 
-     * @param pe
-     *            CompilerListener which should be added
+     * @param pe CompilerListener which should be added
      */
     private void addCompilerListener(CompilerListener pe)
     {
@@ -2087,12 +1996,9 @@ public class Compiler extends Thread
     /**
      * Calls all defined compile listeners notify method with the given data
      * 
-     * @param callerName
-     *            name of the calling method as string
-     * @param state
-     *            CompileListener.BEGIN or END
-     * @param data
-     *            current install data
+     * @param callerName name of the calling method as string
+     * @param state CompileListener.BEGIN or END
+     * @param data current install data
      * @throws CompilerException
      */
     private void notifyCompilerListener(String callerName, int state, XMLElement data)
@@ -2107,11 +2013,9 @@ public class Compiler extends Thread
     }
 
     /**
-     * Calls the reviseAdditionalDataMap method of all registered
-     * CompilerListener's.
+     * Calls the reviseAdditionalDataMap method of all registered CompilerListener's.
      * 
-     * @param f
-     *            file releated XML node
+     * @param f file releated XML node
      * @return a map with the additional attributes
      */
     private Map getAdditionals(XMLElement f) throws CompilerException
@@ -2142,6 +2046,7 @@ public class Compiler extends Thread
      */
     static class CmdlinePackagerListener implements PackagerListener
     {
+
         /**
          * Print a message to the console at default priority (MSG_INFO).
          * 
@@ -2160,23 +2065,23 @@ public class Compiler extends Thread
         public void packagerMsg(String info, int priority)
         {
             final String prefix;
-            switch(priority)
+            switch (priority)
             {
-                case MSG_DEBUG:
-                    prefix = &quot;[ DEBUG ] &quot;;
-                    break;
-                case MSG_ERR:
-                    prefix = &quot;[ ERROR ] &quot;;
-                    break;
-                case MSG_WARN:
-                    prefix = &quot;[ WARNING ] &quot;;
-                    break;
-                case MSG_INFO:
-                case MSG_VERBOSE:
-                default: // don't die, but don't prepend anything
-                    prefix = &quot;&quot;;
+            case MSG_DEBUG:
+                prefix = &quot;[ DEBUG ] &quot;;
+                break;
+            case MSG_ERR:
+                prefix = &quot;[ ERROR ] &quot;;
+                break;
+            case MSG_WARN:
+                prefix = &quot;[ WARNING ] &quot;;
+                break;
+            case MSG_INFO:
+            case MSG_VERBOSE:
+            default: // don't die, but don't prepend anything
+                prefix = &quot;&quot;;
             }
-            
+
             System.out.println(prefix + info);
         }
 </diff>
      <filename>src/lib/com/izforge/izpack/compiler/Compiler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001,2002 Marcus Stursberg
- *
- *  File :               CompilerException.java
- *  Description :        Indicate an error while compiling the installer.
- *  Author's email :     marcus@emsty.de
- *  Author's Website :   http://www.emasty.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001,2002 Marcus Stursberg
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 /**
@@ -35,18 +32,17 @@ public class CompilerException extends java.io.IOException
     static final long serialVersionUID = 6247426753392546734L;
 
     /**
-     * The throwable that caused this throwable to get thrown, or null if this
-     * throwable was not caused by another throwable, or if the causative
-     * throwable is unknown. If this field is equal to this throwable itself, it
-     * indicates that the cause of this throwable has not yet been initialized.
+     * The throwable that caused this throwable to get thrown, or null if this throwable was not
+     * caused by another throwable, or if the causative throwable is unknown. If this field is equal
+     * to this throwable itself, it indicates that the cause of this throwable has not yet been
+     * initialized.
      */
     private Throwable _cause = this;
 
     /**
      * Construct a new exception with the specified message.
      * 
-     * @param message
-     *            Description of the error
+     * @param message Description of the error
      */
     public CompilerException(String message)
     {
@@ -54,13 +50,10 @@ public class CompilerException extends java.io.IOException
     }
 
     /**
-     * Construct a new exception with the specified message and wraps another
-     * cause.
+     * Construct a new exception with the specified message and wraps another cause.
      * 
-     * @param message
-     *            Description of the error
-     * @param cause
-     *            Throwable
+     * @param message Description of the error
+     * @param cause Throwable
      */
     public CompilerException(String message, Throwable cause)
     {
@@ -69,29 +62,23 @@ public class CompilerException extends java.io.IOException
     }
 
     /**
-     * Initializes the &lt;i&gt;cause&lt;/i&gt; of this throwable to the specified value.
-     * (The cause is the throwable that caused this throwable to get thrown.)
+     * Initializes the &lt;i&gt;cause&lt;/i&gt; of this throwable to the specified value. (The cause is the
+     * throwable that caused this throwable to get thrown.)
      * 
      * &lt;p&gt;
-     * This method can be called at most once. It is generally called from
-     * within the constructor, or immediately after creating the throwable. If
-     * this throwable was created with {@link
-     * #CompilerException(String,Throwable)}, this method cannot be called even
-     * once.
+     * This method can be called at most once. It is generally called from within the constructor,
+     * or immediately after creating the throwable. If this throwable was created with {@link
+     * #CompilerException(String,Throwable)}, this method cannot be called even once.
      * 
-     * @param cause
-     *            the cause (which is saved for later retrieval by the
-     *            {@link #getCause()} method). (A &lt;code&gt;null&lt;/code&gt; value is
-     *            permitted, and indicates that the cause is nonexistent or
-     *            unknown.)
+     * @param cause the cause (which is saved for later retrieval by the {@link #getCause()}
+     * method). (A &lt;code&gt;null&lt;/code&gt; value is permitted, and indicates that the cause is
+     * nonexistent or unknown.)
      * @return a reference to this &lt;code&gt;Throwable&lt;/code&gt; instance.
-     * @throws IllegalArgumentException
-     *             if &lt;code&gt;cause&lt;/code&gt; is this throwable. (A throwable
-     *             cannot be its own cause.)
-     * @throws IllegalStateException
-     *             if this throwable was created with {@link
-     *             #CompilerException(String,Throwable)}, or this method has
-     *             already been called on this throwable.
+     * @throws IllegalArgumentException if &lt;code&gt;cause&lt;/code&gt; is this throwable. (A throwable
+     * cannot be its own cause.)
+     * @throws IllegalStateException if this throwable was created with {@link
+     * #CompilerException(String,Throwable)}, or this method has already been called on this
+     * throwable.
      */
     public synchronized Throwable initCause(Throwable cause)
     {
@@ -102,24 +89,21 @@ public class CompilerException extends java.io.IOException
     }
 
     /**
-     * Returns the cause of this throwable or &lt;code&gt;null&lt;/code&gt; if the cause
-     * is nonexistent or unknown. (The cause is the throwable that caused this
-     * throwable to get thrown.)
+     * Returns the cause of this throwable or &lt;code&gt;null&lt;/code&gt; if the cause is nonexistent or
+     * unknown. (The cause is the throwable that caused this throwable to get thrown.)
      * 
      * &lt;p&gt;
-     * This implementation returns the cause that was supplied via one of the
-     * constructors requiring a &lt;code&gt;Throwable&lt;/code&gt;, or that was set after
-     * creation with the {@link #initCause(Throwable)} method. While it is
-     * typically unnecessary to override this method, a subclass can override it
-     * to return a cause set by some other means. This is appropriate for a
-     * &quot;legacy chained throwable&quot; that predates the addition of chained
-     * exceptions to &lt;code&gt;Throwable&lt;/code&gt;. Note that it is &lt;i&gt;not&lt;/i&gt;
-     * necessary to override any of the &lt;code&gt;PrintStackTrace&lt;/code&gt; methods,
-     * all of which invoke the &lt;code&gt;getCause&lt;/code&gt; method to determine the
-     * cause of a throwable.
+     * This implementation returns the cause that was supplied via one of the constructors requiring
+     * a &lt;code&gt;Throwable&lt;/code&gt;, or that was set after creation with the
+     * {@link #initCause(Throwable)} method. While it is typically unnecessary to override this
+     * method, a subclass can override it to return a cause set by some other means. This is
+     * appropriate for a &quot;legacy chained throwable&quot; that predates the addition of chained exceptions
+     * to &lt;code&gt;Throwable&lt;/code&gt;. Note that it is &lt;i&gt;not&lt;/i&gt; necessary to override any of the
+     * &lt;code&gt;PrintStackTrace&lt;/code&gt; methods, all of which invoke the &lt;code&gt;getCause&lt;/code&gt;
+     * method to determine the cause of a throwable.
      * 
-     * @return the cause of this throwable or &lt;code&gt;null&lt;/code&gt; if the cause
-     *         is nonexistent or unknown.
+     * @return the cause of this throwable or &lt;code&gt;null&lt;/code&gt; if the cause is nonexistent or
+     * unknown.
      */
     public Throwable getCause()
     {</diff>
      <filename>src/lib/com/izforge/izpack/compiler/CompilerException.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               PackagerPack.java
- *  Description :        Packs a &quot;Pack's&quot; files into the installer
- *  Author's email :     mchenryc@acm.org
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Chadwick McHenry
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 import java.io.File;
@@ -38,9 +36,8 @@ import com.izforge.izpack.ParsableFile;
 import com.izforge.izpack.UpdateCheck;
 
 /**
- * Temporary holding place for Pack information as the Packager is built. The
- * packager is used by the compiler to collect info about an installer, and
- * finally create the actual installer files.
+ * Temporary holding place for Pack information as the Packager is built. The packager is used by
+ * the compiler to collect info about an installer, and finally create the actual installer files.
  * 
  * @author Chadwick McHenry
  */
@@ -81,9 +78,9 @@ public class PackInfo
         colour = PackInfo.WHITE;
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Attributes of the Pack
-     **************************************************************************/
+     **********************************************************************************************/
 
     public void setDependencies(List dependencies)
     {
@@ -115,45 +112,37 @@ public class PackInfo
         return pack;
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Public methods to add data to the Installer being packed
-     **************************************************************************/
+     **********************************************************************************************/
 
     /**
      * Add a file or directory to be installed.
      * 
-     * @param file
-     *            the file or basedir to be installed.
-     * @param targetfile
-     *            path file will be installed to.
-     * @param osList
-     *            the target operation system(s) of this pack.
-     * @param override
-     *            what to do if the file already exists when installing
+     * @param file the file or basedir to be installed.
+     * @param targetfile path file will be installed to.
+     * @param osList the target operation system(s) of this pack.
+     * @param override what to do if the file already exists when installing
      * 
-     * @throws FileNotFoundException
-     *             if the file specified does not exist. The file is not read
-     *             until the {@link Packager#createInstaller} is invoked, thus a
-     *             FileNotFoundEception will occur then, if the file is deleted
-     *             in between.
+     * @throws FileNotFoundException if the file specified does not exist. The file is not read
+     * until the {@link Packager#createInstaller} is invoked, thus a FileNotFoundEception will occur
+     * then, if the file is deleted in between.
      */
     /*
-     * public void addFile(File file, String targetfile, List osList, int
-     * override) throws FileNotFoundException { addFile( file,targetfile,
-     * osList, override, null); }
+     * public void addFile(File file, String targetfile, List osList, int override) throws
+     * FileNotFoundException { addFile( file,targetfile, osList, override, null); }
      * 
      * 
      * /** Add a file or directory to be installed.
      * 
-     * @param file the file or basedir to be installed. @param targetfile path
-     * file will be installed to. @param osList the target operation system(s)
-     * of this pack. @param override what to do if the file already exists when
-     * installing @param additionals Map which contains additional data
+     * @param file the file or basedir to be installed. @param targetfile path file will be
+     * installed to. @param osList the target operation system(s) of this pack. @param override what
+     * to do if the file already exists when installing @param additionals Map which contains
+     * additional data
      * 
-     * @throws FileNotFoundException if the file specified does not exist. The
-     * file is not read until the {@link Packager#createInstaller} is invoked,
-     * thus a FileNotFoundEception will occur then, if the file is deleted in
-     * between.
+     * @throws FileNotFoundException if the file specified does not exist. The file is not read
+     * until the {@link Packager#createInstaller} is invoked, thus a FileNotFoundEception will occur
+     * then, if the file is deleted in between.
      */
     public void addFile(File file, String targetfile, List osList, int override, Map additionals)
             throws FileNotFoundException
@@ -171,9 +160,8 @@ public class PackInfo
     }
 
     /**
-     * The file described by the specified PackFile. Returns &lt;tt&gt;null&lt;/tt&gt; if
-     * the PackFile did not come from the set returned by
-     * {@link #getPackFiles()}.
+     * The file described by the specified PackFile. Returns &lt;tt&gt;null&lt;/tt&gt; if the PackFile did not
+     * come from the set returned by {@link #getPackFiles()}.
      */
     public File getFile(PackFile packFile)
     {
@@ -195,8 +183,8 @@ public class PackInfo
     }
 
     /**
-     * Executables files have their executable flag set, may be executed, and
-     * optionally, deleted when finished executing.
+     * Executables files have their executable flag set, may be executed, and optionally, deleted
+     * when finished executing.
      */
     public void addExecutable(ExecutableFile executable)
     {
@@ -210,8 +198,8 @@ public class PackInfo
     }
 
     /**
-     * Executables files have their executable flag set, may be executed, and
-     * optionally, deleted when finished executing.
+     * Executables files have their executable flag set, may be executed, and optionally, deleted
+     * when finished executing.
      */
     public void addUpdateCheck(UpdateCheck updateCheck)
     {</diff>
      <filename>src/lib/com/izforge/izpack/compiler/PackInfo.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Packager.java
- *  Description :        Packs files and data into an installer
- *  Author's email :     julien@izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 import java.io.File;
@@ -54,8 +50,8 @@ import com.izforge.izpack.PackFile;
 import com.izforge.izpack.Panel;
 
 /**
- * The packager class. The packager is used by the compiler to put files into an
- * installer, and create the actual installer files.
+ * The packager class. The packager is used by the compiler to put files into an installer, and
+ * create the actual installer files.
  * 
  * @author Julien Ponge
  * @author Chadwick McHenry
@@ -111,12 +107,11 @@ public class Packager
     }
 
     /**
-     * Create the installer, beginning with the specified jar. If the name
-     * specified does not end in &quot;.jar&quot;, it is appended. If secondary jars are
-     * created for packs (if the Info object added has a webDirURL set), they
-     * are created in the same directory, named sequentially by inserting
-     * &quot;.pack#&quot; (where '#' is the pack number) &quot;.jar&quot; suffix: e.g.
-     * &quot;foo.pack1.jar&quot;. If any file exists, it is overwritten.
+     * Create the installer, beginning with the specified jar. If the name specified does not end in
+     * &quot;.jar&quot;, it is appended. If secondary jars are created for packs (if the Info object added has
+     * a webDirURL set), they are created in the same directory, named sequentially by inserting
+     * &quot;.pack#&quot; (where '#' is the pack number) &quot;.jar&quot; suffix: e.g. &quot;foo.pack1.jar&quot;. If any file
+     * exists, it is overwritten.
      */
     public void createInstaller(File primaryFile) throws IOException
     {
@@ -161,15 +156,14 @@ public class Packager
         sendStop();
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Listener assistance
-     **************************************************************************/
+     **********************************************************************************************/
 
     /**
      * Adds a listener.
      * 
-     * @param listener
-     *            The listener.
+     * @param listener The listener.
      */
     public void setPackagerListener(PackagerListener listener)
     {
@@ -209,17 +203,15 @@ public class Packager
         if (listener != null) listener.packagerStop();
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Public methods to add data to the Installer being packed
-     **************************************************************************/
+     **********************************************************************************************/
 
     /**
      * Sets the informations related to this installation.
      * 
-     * @param info
-     *            The info section.
-     * @exception Exception
-     *                Description of the Exception
+     * @param info The info section.
+     * @exception Exception Description of the Exception
      */
     public void setInfo(Info info) throws Exception
     {
@@ -230,10 +222,8 @@ public class Packager
     /**
      * Sets the GUI preferences.
      * 
-     * @param prefs
-     *            The new gUIPrefs value
-     * @exception Exception
-     *                Description of the Exception
+     * @param prefs The new gUIPrefs value
+     * @exception Exception Description of the Exception
      */
     public void setGUIPrefs(GUIPrefs prefs)
     {
@@ -242,8 +232,8 @@ public class Packager
     }
 
     /**
-     * Allows access to add, remove and update the variables for the project,
-     * which are maintained in the packager.
+     * Allows access to add, remove and update the variables for the project, which are maintained
+     * in the packager.
      * 
      * @return map of variable names to values
      */
@@ -253,8 +243,8 @@ public class Packager
     }
 
     /**
-     * Add a panel, where order is important. Only one copy of the class files
-     * neeed are inserted in the installer.
+     * Add a panel, where order is important. Only one copy of the class files neeed are inserted in
+     * the installer.
      */
     public void addPanelJar(Panel panel, URL jarURL)
     {
@@ -264,13 +254,11 @@ public class Packager
     }
 
     /**
-     * Add a custom data like custom actions, where order is important. Only one
-     * copy of the class files neeed are inserted in the installer.
+     * Add a custom data like custom actions, where order is important. Only one copy of the class
+     * files neeed are inserted in the installer.
      * 
-     * @param ca
-     *            custom action object
-     * @param url
-     *            the URL to include once
+     * @param ca custom action object
+     * @param url the URL to include once
      */
     public void addCustomJar(CustomData ca, URL url)
     {
@@ -282,8 +270,7 @@ public class Packager
     /**
      * Adds a pack, order is mostly irrelevant.
      * 
-     * @param pack
-     *            contains all the files and items that go with a pack
+     * @param pack contains all the files and items that go with a pack
      */
     public void addPack(PackInfo pack)
     {
@@ -301,14 +288,10 @@ public class Packager
     /**
      * Adds a language pack.
      * 
-     * @param iso3
-     *            The ISO3 code.
-     * @param xmlURL
-     *            The location of the xml local info
-     * @param flagURL
-     *            The location of the flag image resource
-     * @exception Exception
-     *                Description of the Exception
+     * @param iso3 The ISO3 code.
+     * @param xmlURL The location of the xml local info
+     * @param flagURL The location of the flag image resource
+     * @exception Exception Description of the Exception
      */
     public void addLangPack(String iso3, URL xmlURL, URL flagURL)
     {
@@ -323,12 +306,9 @@ public class Packager
     /**
      * Adds a resource.
      * 
-     * @param resId
-     *            The resource Id.
-     * @param url
-     *            The location of the data
-     * @exception Exception
-     *                Description of the Exception
+     * @param resId The resource Id.
+     * @param url The location of the data
+     * @exception Exception Description of the Exception
      */
     public void addResource(String resId, URL url)
     {
@@ -339,12 +319,9 @@ public class Packager
     /**
      * Adds a native library.
      * 
-     * @param name
-     *            The native library name.
-     * @param url
-     *            The url to get the data from.
-     * @exception Exception
-     *                Description of the Exception
+     * @param name The native library name.
+     * @param url The url to get the data from.
+     * @exception Exception Description of the Exception
      */
     public void addNativeLibrary(String name, URL url) throws Exception
     {
@@ -353,25 +330,22 @@ public class Packager
     }
 
     /**
-     * Adds a jar file content to the installer. Package structure is
-     * maintained. Need mechanism to copy over signed entry information.
+     * Adds a jar file content to the installer. Package structure is maintained. Need mechanism to
+     * copy over signed entry information.
      * 
-     * @param jarURL
-     *            The url of the jar to add to the installer. We use a URL so
-     *            the jar may be nested within another.
+     * @param jarURL The url of the jar to add to the installer. We use a URL so the jar may be
+     * nested within another.
      */
     public void addJarContent(URL jarURL)
     {
-        sendMsg(&quot;Adding content of jar: &quot; + jarURL.getFile(),
-                PackagerListener.MSG_VERBOSE);
+        sendMsg(&quot;Adding content of jar: &quot; + jarURL.getFile(), PackagerListener.MSG_VERBOSE);
         includedJarURLs.add(jarURL);
     }
 
     /**
      * Marks a native library to be added to the uninstaller.
      * 
-     * @param data
-     *            the describing custom action data object
+     * @param data the describing custom action data object
      */
     public void addNativeUninstallerLibrary(CustomData data)
     {
@@ -380,13 +354,13 @@ public class Packager
 
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Private methods used when writing out the installer to jar files.
-     **************************************************************************/
+     **********************************************************************************************/
 
     /**
-     * Write skeleton installer to primary jar. It is just an included jar,
-     * except that we copy the META-INF as well.
+     * Write skeleton installer to primary jar. It is just an included jar, except that we copy the
+     * META-INF as well.
      */
     private void writeSkeletonInstaller() throws IOException
     {
@@ -451,7 +425,7 @@ public class Packager
     private void writePacks() throws IOException
     {
         final int num = packsList.size();
-        sendMsg(&quot;Writing &quot; + num + &quot; Pack&quot; + (num&gt;1 ? &quot;s&quot; : &quot;&quot;) + &quot; into installer&quot;);
+        sendMsg(&quot;Writing &quot; + num + &quot; Pack&quot; + (num &gt; 1 ? &quot;s&quot; : &quot;&quot;) + &quot; into installer&quot;);
 
         // Map to remember pack number and bytes offsets of back references
         Map storedFiles = new HashMap();
@@ -476,8 +450,7 @@ public class Packager
                 packStream = getJarOutputStream(name);
             }
 
-            sendMsg(&quot;Writing Pack &quot; + packNumber + &quot;: &quot; + pack.name,
-                    PackagerListener.MSG_VERBOSE);
+            sendMsg(&quot;Writing Pack &quot; + packNumber + &quot;: &quot; + pack.name, PackagerListener.MSG_VERBOSE);
 
             // Retrieve the correct output stream
             ZipEntry entry = new ZipEntry(&quot;packs/pack&quot; + packNumber);
@@ -571,9 +544,9 @@ public class Packager
         primaryJarStream.closeEntry();
     }
 
-    /***************************************************************************
+    /***********************************************************************************************
      * Stream utilites for creation of the installer.
-     **************************************************************************/
+     **********************************************************************************************/
 
     /** Return a stream for the next jar. */
     private JarOutputStream getJarOutputStream(String name) throws IOException
@@ -591,9 +564,8 @@ public class Packager
      * Copies contents of one jar to another.
      * 
      * &lt;p&gt;
-     * TODO: it would be useful to be able to keep signature information from
-     * signed jar files, can we combine manifests and still have their content
-     * signed?
+     * TODO: it would be useful to be able to keep signature information from signed jar files, can
+     * we combine manifests and still have their content signed?
      * 
      * @see #copyStream(InputStream, OutputStream)
      */
@@ -618,16 +590,12 @@ public class Packager
     }
 
     /**
-     * Copies all the data from the specified input stream to the specified
-     * output stream.
+     * Copies all the data from the specified input stream to the specified output stream.
      * 
-     * @param in
-     *            the input stream to read
-     * @param out
-     *            the output stream to write
+     * @param in the input stream to read
+     * @param out the output stream to write
      * @return the total number of bytes copied
-     * @exception IOException
-     *                if an I/O error occurs
+     * @exception IOException if an I/O error occurs
      */
     private long copyStream(InputStream in, OutputStream out) throws IOException
     {</diff>
      <filename>src/lib/com/izforge/izpack/compiler/Packager.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               PackagerListener.java
- *  Description :        Interface for Packagers listeners.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.compiler;
 
 /**
@@ -31,6 +26,7 @@ package com.izforge.izpack.compiler;
  */
 public interface PackagerListener
 {
+
     /** Message priority of &quot;debug&quot;. */
     public static final int MSG_DEBUG = 0;
 </diff>
      <filename>src/lib/com/izforge/izpack/compiler/PackagerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Property.java
- *  Description :        Property handling at compile time.
- *  Author's email :     mchenryc@acm.org
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Chadwick McHenry
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.compiler;
@@ -40,30 +37,29 @@ import org.apache.tools.ant.taskdefs.Execute;
 import com.izforge.izpack.util.VariableSubstitutor;
 
 /**
- * Sets a property by name, or set of properties (from file or resource) in the
- * project. This is modeled after ant properties
+ * Sets a property by name, or set of properties (from file or resource) in the project. This is
+ * modeled after ant properties
  * &lt;p&gt;
  * 
- * Properties are immutable: once a property is set it cannot be changed. They
- * are most definately not variable.
+ * Properties are immutable: once a property is set it cannot be changed. They are most definately
+ * not variable.
  * &lt;p&gt;
  * 
  * There are five ways to set properties:
  * &lt;ul&gt;
  * &lt;li&gt;By supplying both the &lt;i&gt;name&lt;/i&gt; and &lt;i&gt;value&lt;/i&gt; attributes.&lt;/li&gt;
- * &lt;li&gt;By setting the &lt;i&gt;file&lt;/i&gt; attribute with the filename of the property
- * file to load. This property file has the format as defined by the file used
- * in the class java.util.Properties.&lt;/li&gt;
- * &lt;li&gt;By setting the &lt;i&gt;environment&lt;/i&gt; attribute with a prefix to use.
- * Properties will be defined for every environment variable by prefixing the
- * supplied name and a period to the name of the variable.&lt;/li&gt;
+ * &lt;li&gt;By setting the &lt;i&gt;file&lt;/i&gt; attribute with the filename of the property file to load. This
+ * property file has the format as defined by the file used in the class java.util.Properties.&lt;/li&gt;
+ * &lt;li&gt;By setting the &lt;i&gt;environment&lt;/i&gt; attribute with a prefix to use. Properties will be
+ * defined for every environment variable by prefixing the supplied name and a period to the name of
+ * the variable.&lt;/li&gt;
  * &lt;/ul&gt;
  * 
  * Combinations of the above are considered an error.
  * &lt;p&gt;
  * 
- * The value part of the properties being set, might contain references to other
- * properties. These references are resolved when the properties are set.
+ * The value part of the properties being set, might contain references to other properties. These
+ * references are resolved when the properties are set.
  * &lt;p&gt;
  * 
  * This also holds for properties loaded from a property file.
@@ -72,25 +68,21 @@ import com.izforge.izpack.util.VariableSubstitutor;
  * Properties are case sensitive.
  * &lt;p&gt;
  * 
- * When specifying the environment attribute, it's value is used as a prefix to
- * use when retrieving environment variables. This functionality is currently
- * only implemented on select platforms.
+ * When specifying the environment attribute, it's value is used as a prefix to use when retrieving
+ * environment variables. This functionality is currently only implemented on select platforms.
  * &lt;p&gt;
  * 
- * Thus if you specify environment=&amp;quot;myenv&amp;quot; you will be able to access
- * OS-specific environment variables via property names &amp;quot;myenv.PATH&amp;quot;
- * or &amp;quot;myenv.TERM&amp;quot;.
+ * Thus if you specify environment=&amp;quot;myenv&amp;quot; you will be able to access OS-specific
+ * environment variables via property names &amp;quot;myenv.PATH&amp;quot; or &amp;quot;myenv.TERM&amp;quot;.
  * &lt;p&gt;
  * 
- * Note also that properties are case sensitive, even if the environment
- * variables on your operating system are not, e.g. it will be ${env.Path} not
- * ${env.PATH} on Windows 2000.
+ * Note also that properties are case sensitive, even if the environment variables on your operating
+ * system are not, e.g. it will be ${env.Path} not ${env.PATH} on Windows 2000.
  * &lt;p&gt;
  * 
- * Note that when specifying either the &lt;code&gt;prefix&lt;/code&gt; or
- * &lt;code&gt;environment&lt;/code&gt; attributes, if you supply a property name with a
- * final &amp;quot;.&amp;quot; it will not be doubled. ie environment=&amp;quot;myenv.&amp;quot;
- * will still allow access of environment variables through
+ * Note that when specifying either the &lt;code&gt;prefix&lt;/code&gt; or &lt;code&gt;environment&lt;/code&gt;
+ * attributes, if you supply a property name with a final &amp;quot;.&amp;quot; it will not be doubled. ie
+ * environment=&amp;quot;myenv.&amp;quot; will still allow access of environment variables through
  * &amp;quot;myenv.PATH&amp;quot; and &amp;quot;myenv.TERM&amp;quot;.
  * &lt;p&gt;
  */
@@ -151,8 +143,8 @@ public class Property
     }
 
     /**
-     * set the property in the project to the value. if the task was give a
-     * file, resource or env attribute here is where it is loaded
+     * set the property in the project to the value. if the task was give a file, resource or env
+     * attribute here is where it is loaded
      */
     public void execute() throws CompilerException
     {
@@ -183,14 +175,13 @@ public class Property
     /**
      * load properties from a file
      * 
-     * @param file
-     *            file to load
+     * @param file file to load
      */
     protected void loadFile(File file) throws CompilerException
     {
         Properties props = new Properties();
         compiler.getPackagerListener().packagerMsg(&quot;Loading &quot; + file.getAbsolutePath(),
-                                                   PackagerListener.MSG_VERBOSE);
+                PackagerListener.MSG_VERBOSE);
         try
         {
             if (file.exists())
@@ -222,14 +213,13 @@ public class Property
     /**
      * load the environment values
      * 
-     * @param prefix
-     *            prefix to place before them
+     * @param prefix prefix to place before them
      */
     protected void loadEnvironment(String prefix) throws CompilerException
     {
         Properties props = new Properties();
         compiler.getPackagerListener().packagerMsg(&quot;Loading Environment &quot; + prefix,
-                                                   PackagerListener.MSG_VERBOSE);
+                PackagerListener.MSG_VERBOSE);
         Vector osEnv = Execute.getProcEnvironment();
         for (Enumeration e = osEnv.elements(); e.hasMoreElements();)
         {
@@ -238,7 +228,7 @@ public class Property
             if (pos == -1)
             {
                 compiler.getPackagerListener().packagerMsg(&quot;Ignoring &quot; + prefix,
-                                                           PackagerListener.MSG_WARN);
+                        PackagerListener.MSG_WARN);
             }
             else
             {
@@ -251,10 +241,8 @@ public class Property
     /**
      * Add a name value pair to the project property set
      * 
-     * @param name
-     *            name of property
-     * @param value
-     *            value to set
+     * @param name name of property
+     * @param value value to set
      */
     protected void addProperty(String name, String value)
     {
@@ -287,8 +275,7 @@ public class Property
     /**
      * resolve properties inside a properties object
      * 
-     * @param props
-     *            properties to resolve
+     * @param props properties to resolve
      */
     private void resolveAllProperties(Properties props) throws CompilerException
     {</diff>
      <filename>src/lib/com/izforge/izpack/compiler/Property.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ActionBase.java
- *  Description :        Data class for ant action listeners.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz 
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.event;
 
 import java.io.Serializable;
@@ -189,11 +186,10 @@ public class ActionBase implements Serializable
     }
 
     /**
-     * Sets the order to the given string. Valid values are &quot;beforepacks&quot;,
-     * &quot;beforepack&quot;, &quot;afterpack&quot; and &quot;afterpacks&quot;.
+     * Sets the order to the given string. Valid values are &quot;beforepacks&quot;, &quot;beforepack&quot;, &quot;afterpack&quot;
+     * and &quot;afterpacks&quot;.
      * 
-     * @param order
-     *            order to be set
+     * @param order order to be set
      */
     public void setOrder(String order) throws Exception
     {
@@ -212,11 +208,10 @@ public class ActionBase implements Serializable
     }
 
     /**
-     * Sets the order to the given string for uninstallation. Valid values are
-     * &quot;beforedeletion&quot; and &quot;afterdeletion&quot;.
+     * Sets the order to the given string for uninstallation. Valid values are &quot;beforedeletion&quot; and
+     * &quot;afterdeletion&quot;.
      * 
-     * @param order
-     *            order to be set
+     * @param order order to be set
      */
     public void setUninstallOrder(String order) throws Exception
     {
@@ -237,8 +232,7 @@ public class ActionBase implements Serializable
     /**
      * Sets the message ID to the given string.
      * 
-     * @param string
-     *            string to be used as message ID
+     * @param string string to be used as message ID
      */
     public void setMessageID(String string)
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/ActionBase.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,23 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Thomas Guenter, Klaus Bartz
- *
- *  File :               AntAction.java
- *  Description :        Data class for ant action listeners.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * Copyright 2004 Thomas Guenter
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -118,10 +115,8 @@ public class AntAction extends ActionBase
     /**
      * Performs all defined actions.
      * 
-     * @param uninstall
-     *            An install/uninstall switch. If this is &lt;tt&gt;true&lt;/tt&gt; only
-     *            the uninstall actions, otherwise only the install actions are
-     *            being performed.
+     * @param uninstall An install/uninstall switch. If this is &lt;tt&gt;true&lt;/tt&gt; only the uninstall
+     * actions, otherwise only the install actions are being performed.
      * 
      * @see #performInstallAction() for calling all install actions.
      * @see #performUninstallAction() for calling all uninstall actions.
@@ -194,8 +189,7 @@ public class AntAction extends ActionBase
     /**
      * Sets the build file to be used to the given string.
      * 
-     * @param buildFile
-     *            build file path to be used
+     * @param buildFile build file path to be used
      */
     public void setBuildFile(String buildFile)
     {
@@ -215,8 +209,7 @@ public class AntAction extends ActionBase
     /**
      * Sets the logfile path to the given string.
      * 
-     * @param logFile
-     *            to be set
+     * @param logFile to be set
      */
     public void setLogFile(String logFile)
     {
@@ -236,8 +229,7 @@ public class AntAction extends ActionBase
     /**
      * Adds one property file path to the internal list of property file paths.
      * 
-     * @param propertyFile
-     *            to be added
+     * @param propertyFile to be added
      */
     public void addPropertyFile(String propertyFile)
     {
@@ -245,11 +237,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Sets the property file path list to the given list. Old settings will be
-     * lost.
+     * Sets the property file path list to the given list. Old settings will be lost.
      * 
-     * @param propertyFiles
-     *            list of property file paths to be set
+     * @param propertyFiles list of property file paths to be set
      */
     public void setPropertyFiles(List propertyFiles)
     {
@@ -267,11 +257,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Sets the internal properties to the given properties. Old settings will
-     * be lost.
+     * Sets the internal properties to the given properties. Old settings will be lost.
      * 
-     * @param properties
-     *            properties to be set
+     * @param properties properties to be set
      */
     public void setProperties(Properties properties)
     {
@@ -281,10 +269,8 @@ public class AntAction extends ActionBase
     /**
      * Sets the given value to the property identified by the given name.
      * 
-     * @param name
-     *            key of the property
-     * @param value
-     *            value to be used for the property
+     * @param name key of the property
+     * @param value value to be used for the property
      */
     public void setProperty(String name, String value)
     {
@@ -294,8 +280,7 @@ public class AntAction extends ActionBase
     /**
      * Returns the value for the property identified by the given name.
      * 
-     * @param name
-     *            name of the property
+     * @param name name of the property
      * @return value of the property
      */
     public String getProperty(String name)
@@ -316,8 +301,7 @@ public class AntAction extends ActionBase
     /**
      * Sets whether the associated ant task should be performed quiet or not.
      * 
-     * @param quiet
-     *            quiet state to set
+     * @param quiet quiet state to set
      */
     public void setQuiet(boolean quiet)
     {
@@ -335,11 +319,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Sets the targets which should be performed at installation time. Old
-     * settings are lost.
+     * Sets the targets which should be performed at installation time. Old settings are lost.
      * 
-     * @param targets
-     *            list of targets
+     * @param targets list of targets
      */
     public void setTargets(ArrayList targets)
     {
@@ -347,11 +329,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Adds the given target to the target list which should be performed at
-     * installation time.
+     * Adds the given target to the target list which should be performed at installation time.
      * 
-     * @param target
-     *            target to be add
+     * @param target target to be add
      */
     public void addTarget(String target)
     {
@@ -369,11 +349,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Sets the targets which should be performed at uninstallation time. Old
-     * settings are lost.
+     * Sets the targets which should be performed at uninstallation time. Old settings are lost.
      * 
-     * @param targets
-     *            list of targets
+     * @param targets list of targets
      */
     public void setUninstallTargets(ArrayList targets)
     {
@@ -381,11 +359,9 @@ public class AntAction extends ActionBase
     }
 
     /**
-     * Adds the given target to the target list which should be performed at
-     * uninstallation time.
+     * Adds the given target to the target list which should be performed at uninstallation time.
      * 
-     * @param target
-     *            target to be add
+     * @param target target to be add
      */
     public void addUninstallTarget(String target)
     {
@@ -405,8 +381,7 @@ public class AntAction extends ActionBase
     /**
      * Sets the verbose state.
      * 
-     * @param verbose
-     *            state to be set
+     * @param verbose state to be set
      */
     public void setVerbose(boolean verbose)
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/AntAction.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,28 +1,25 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Thomas Guenter, Klaus Bartz
- *
- *  File :               AntActionInstallerListener.java
- *  Description :        Installer listener for ant custom actions.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * Copyright 2004 Thomas Guenter
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.event;
 
 import java.util.ArrayList;
@@ -43,13 +40,11 @@ import com.izforge.izpack.util.SpecHelper;
 import com.izforge.izpack.util.VariableSubstitutor;
 
 /**
- * Installer listener for performing ANT actions. The definition what should be
- * done will be made in a specification file which is referenced by the resource
- * id &quot;AntActionsSpec.xml&quot;. There should be an entry in the install.xml file in
- * the sub ELEMENT &quot;res&quot; of ELEMENT &quot;resources&quot; which references it. The
- * specification of the xml file is done in the DTD antaction.dtd. The xml file
- * specifies, for what pack what ant call should be performed at what time of
- * installation.
+ * Installer listener for performing ANT actions. The definition what should be done will be made in
+ * a specification file which is referenced by the resource id &quot;AntActionsSpec.xml&quot;. There should be
+ * an entry in the install.xml file in the sub ELEMENT &quot;res&quot; of ELEMENT &quot;resources&quot; which references
+ * it. The specification of the xml file is done in the DTD antaction.dtd. The xml file specifies,
+ * for what pack what ant call should be performed at what time of installation.
  * 
  * @author Thomas Guenter
  * @author Klaus Bartz
@@ -93,8 +88,7 @@ public class AntActionInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.installer.InstallerListener#beforePacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      java.lang.Integer,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * java.lang.Integer, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePacks(AutomatedInstallData idata, Integer npacks,
             AbstractUIProgressHandler handler) throws Exception
@@ -155,8 +149,7 @@ public class AntActionInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.installer.InstallerListener#beforePack(com.izforge.izpack.Pack,
-     *      java.lang.Integer,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * java.lang.Integer, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePack(Pack pack, Integer i, AbstractUIProgressHandler handler)
             throws Exception
@@ -168,8 +161,7 @@ public class AntActionInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.installer.InstallerListener#afterPack(com.izforge.izpack.Pack,
-     *      java.lang.Integer,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * java.lang.Integer, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPack(Pack pack, Integer i, AbstractUIProgressHandler handler) throws Exception
     {
@@ -180,7 +172,7 @@ public class AntActionInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#afterPacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler)
             throws Exception
@@ -218,13 +210,9 @@ public class AntActionInstallerListener extends SimpleInstallerListener
     /**
      * Returns the defined actions for the given pack in the requested order.
      * 
-     * @param packName
-     *            name of the pack for which the actions should be returned
-     * @param order
-     *            order to be used; valid are &lt;i&gt;beforepack&lt;/i&gt; and
-     *            &lt;i&gt;afterpack&lt;/i&gt;
-     * @return a list which contains all defined actions for the given pack and
-     *         order
+     * @param packName name of the pack for which the actions should be returned
+     * @param order order to be used; valid are &lt;i&gt;beforepack&lt;/i&gt; and &lt;i&gt;afterpack&lt;/i&gt;
+     * @return a list which contains all defined actions for the given pack and order
      */
     // -------------------------------------------------------
     protected ArrayList getActions(String packName, String order)
@@ -240,11 +228,8 @@ public class AntActionInstallerListener extends SimpleInstallerListener
     /**
      * Performs all actions which are defined for the given pack and order.
      * 
-     * @param packName
-     *            name of the pack for which the actions should be performed
-     * @param order
-     *            order to be used; valid are &lt;i&gt;beforepack&lt;/i&gt; and
-     *            &lt;i&gt;afterpack&lt;/i&gt;
+     * @param packName name of the pack for which the actions should be performed
+     * @param order order to be used; valid are &lt;i&gt;beforepack&lt;/i&gt; and &lt;i&gt;afterpack&lt;/i&gt;
      * @throws InstallerException
      */
     private void performAllActions(String packName, String order, AbstractUIProgressHandler handler)
@@ -281,8 +266,7 @@ public class AntActionInstallerListener extends SimpleInstallerListener
     /**
      * Returns an ant call which is defined in the given XML element.
      * 
-     * @param el
-     *            XML element which contains the description of an ant call
+     * @param el XML element which contains the description of an ant call
      * @return an ant call which is defined in the given XML element
      * @throws InstallerException
      */</diff>
      <filename>src/lib/com/izforge/izpack/event/AntActionInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               AntActionInstallerListener.java
- *  Description :        Uninstaller listener for ant custom actions.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 package com.izforge.izpack.event;
 
@@ -36,13 +31,12 @@ import com.izforge.izpack.util.AbstractUIProgressHandler;
 import com.izforge.izpack.util.IoHelper;
 
 /**
- * Uninstaller listener for performing ANT actions at uninstall time. The
- * definition of what should be done here will be made in a specification file
- * that is referenced by the resource id &quot;AntActionsSpec.xml&quot;. There should be
- * an entry in the install.xml file in the sub ELEMENT &quot;res&quot; of ELEMENT
- * &quot;resources&quot; that references it. The specification of the xml file is done in
- * the DTD antaction.dtd. The xml file may contain an ELEMENT &quot;uninstall_target&quot;
- * that should be performed for uninstalling purposes.
+ * Uninstaller listener for performing ANT actions at uninstall time. The definition of what should
+ * be done here will be made in a specification file that is referenced by the resource id
+ * &quot;AntActionsSpec.xml&quot;. There should be an entry in the install.xml file in the sub ELEMENT &quot;res&quot;
+ * of ELEMENT &quot;resources&quot; that references it. The specification of the xml file is done in the DTD
+ * antaction.dtd. The xml file may contain an ELEMENT &quot;uninstall_target&quot; that should be performed
+ * for uninstalling purposes.
  * 
  * @author Klaus Bartz
  */
@@ -65,7 +59,7 @@ public class AntActionUninstallerListener extends SimpleUninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#beforeDeletion(java.util.List,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforeDeletion(List files, AbstractUIProgressHandler handler) throws Exception
     {
@@ -136,7 +130,7 @@ public class AntActionUninstallerListener extends SimpleUninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#afterDeletion(java.util.List,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterDeletion(List files, AbstractUIProgressHandler handler) throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/AntActionUninstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               CompilerListener.java
- *  Description :        Custom action listener interface for compile time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -34,8 +30,7 @@ import com.izforge.izpack.compiler.Packager;
 
 /**
  * &lt;p&gt;
- * Implementations of this class are used to add extensions to the packs at
- * compilation.
+ * Implementations of this class are used to add extensions to the packs at compilation.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -49,21 +44,18 @@ public interface CompilerListener
     public final static int END = 2;
 
     /**
-     * This method is called from the compiler for each file (or dir) parsing.
-     * The XMLElement is a node of the file related children of the XML element
-     * &quot;pack&quot; (see installation.dtd). Current these are &quot;file&quot;, &quot;singlefile&quot; or
-     * &quot;fileset&quot;. If an additional data should be set, it should be added to the
-     * given data map (if exist). If no map exist a new should be created and
-     * filled. The data map will be added to the PackFile object after all
-     * registered CompilerListener are called. If the map contains an not common
-     * object, it is necessary to add the needed class to the installer.
+     * This method is called from the compiler for each file (or dir) parsing. The XMLElement is a
+     * node of the file related children of the XML element &quot;pack&quot; (see installation.dtd). Current
+     * these are &quot;file&quot;, &quot;singlefile&quot; or &quot;fileset&quot;. If an additional data should be set, it should
+     * be added to the given data map (if exist). If no map exist a new should be created and
+     * filled. The data map will be added to the PackFile object after all registered
+     * CompilerListener are called. If the map contains an not common object, it is necessary to add
+     * the needed class to the installer.
      * 
-     * @param existentDataMap
-     *            attribute set with previos setted attributes
-     * @param element
-     *            current file related XML node
-     * @return the given or a new attribute set. If no attribute set is given
-     *         and no attribute was added, null returns
+     * @param existentDataMap attribute set with previos setted attributes
+     * @param element current file related XML node
+     * @return the given or a new attribute set. If no attribute set is given and no attribute was
+     * added, null returns
      * @throws CompilerException
      */
     Map reviseAdditionalDataMap(Map existentDataMap, XMLElement element) throws CompilerException;
@@ -71,14 +63,10 @@ public interface CompilerListener
     /**
      * This method will be called from each step of packaging.
      * 
-     * @param position
-     *            name of the calling method, e.g. &quot;addVariables&quot;
-     * @param state
-     *            BEGIN or END
-     * @param data
-     *            current install data
-     * @param packager
-     *            current packager object
+     * @param position name of the calling method, e.g. &quot;addVariables&quot;
+     * @param state BEGIN or END
+     * @param data current install data
+     * @param packager current packager object
      */
     void notify(String position, int state, XMLElement data, Packager packager);
 </diff>
      <filename>src/lib/com/izforge/izpack/event/CompilerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               InstallerListener.java
- *  Description :        Custom action listener interface for install time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -34,9 +30,8 @@ import com.izforge.izpack.util.AbstractUIProgressHandler;
 
 /**
  * &lt;p&gt;
- * Implementations of this class are used to handle customizing installation.
- * The defined methods are called from the unpacker at different, well defined
- * points of installation.
+ * Implementations of this class are used to handle customizing installation. The defined methods
+ * are called from the unpacker at different, well defined points of installation.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -65,118 +60,95 @@ public interface InstallerListener
     public static final int AFTER_PACKS = 8;
 
     /**
-     * This method will be called from the unpacker before the installation of
-     * all packs will be performed.
+     * This method will be called from the unpacker before the installation of all packs will be
+     * performed.
      * 
-     * @param idata
-     *            object containing the current installation data
-     * @param npacks
-     *            number of packs which are defined for this installation
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param idata object containing the current installation data
+     * @param npacks number of packs which are defined for this installation
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void beforePacks(AutomatedInstallData idata, Integer npacks, AbstractUIProgressHandler handler)
             throws Exception;
 
     /**
-     * This method will be called from the unpacker before the installation of
-     * one pack will be performed.
+     * This method will be called from the unpacker before the installation of one pack will be
+     * performed.
      * 
-     * @param pack
-     *            current pack object
-     * @param i
-     *            current pack number
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param pack current pack object
+     * @param i current pack number
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void beforePack(Pack pack, Integer i, AbstractUIProgressHandler handler) throws Exception;
 
     /**
-     * Returns true if this listener would be informed at every file and
-     * directory installation, else false. If it is true, the listener will be
-     * called two times (before and after) for every action. Handle carefully,
-     * else performance problems are possible.
+     * Returns true if this listener would be informed at every file and directory installation,
+     * else false. If it is true, the listener will be called two times (before and after) for every
+     * action. Handle carefully, else performance problems are possible.
      * 
-     * @return true if this listener would be informed at every file and
-     *         directory installation, else false
+     * @return true if this listener would be informed at every file and directory installation,
+     * else false
      */
     boolean isFileListener();
 
     /**
-     * This method will be called from the unpacker before one directory should
-     * be created. If parent directories should be created also, this method
-     * will be called for every directory beginning with the base.
+     * This method will be called from the unpacker before one directory should be created. If
+     * parent directories should be created also, this method will be called for every directory
+     * beginning with the base.
      * 
-     * @param dir
-     *            current File object of the just directory which should be
-     *            created
-     * @param pf
-     *            corresponding PackFile object
+     * @param dir current File object of the just directory which should be created
+     * @param pf corresponding PackFile object
      * @throws Exception
      */
     void beforeDir(File dir, PackFile pf) throws Exception;
 
     /**
-     * This method will be called from the unpacker after one directory was
-     * created. If parent directories should be created, this method will be
-     * called for every directory beginning with the base.
+     * This method will be called from the unpacker after one directory was created. If parent
+     * directories should be created, this method will be called for every directory beginning with
+     * the base.
      * 
-     * @param dir
-     *            current File object of the just created directory
-     * @param pf
-     *            corresponding PackFile object
+     * @param dir current File object of the just created directory
+     * @param pf corresponding PackFile object
      * @throws Exception
      */
     void afterDir(File dir, PackFile pf) throws Exception;
 
     /**
-     * This method will be called from the unpacker before one file should be
-     * installed.
+     * This method will be called from the unpacker before one file should be installed.
      * 
-     * @param file
-     *            current File object of the file which should be installed
-     * @param pf
-     *            corresponding PackFile object
+     * @param file current File object of the file which should be installed
+     * @param pf corresponding PackFile object
      * @throws Exception
      */
     void beforeFile(File file, PackFile pf) throws Exception;
 
     /**
-     * This method will be called from the unpacker after one file was
-     * installed.
+     * This method will be called from the unpacker after one file was installed.
      * 
-     * @param file
-     *            current File object of the just installed file
-     * @param pf
-     *            corresponding PackFile object
+     * @param file current File object of the just installed file
+     * @param pf corresponding PackFile object
      * @throws Exception
      */
     void afterFile(File file, PackFile pf) throws Exception;
 
     /**
      * 
-     * This method will be called from the unpacker after the installation of
-     * one pack was performed.
+     * This method will be called from the unpacker after the installation of one pack was
+     * performed.
      * 
-     * @param pack
-     *            current pack object
-     * @param i
-     *            current pack number
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param pack current pack object
+     * @param i current pack number
+     * @param handler a handler to the current used UIProgressHandler
      */
     void afterPack(Pack pack, Integer i, AbstractUIProgressHandler handler) throws Exception;
 
     /**
-     * This method will be called from the unpacker after the installation of
-     * all packs was performed.
+     * This method will be called from the unpacker after the installation of all packs was
+     * performed.
      * 
-     * @param idata
-     *            object containing the current installation data
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param idata object containing the current installation data
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler) throws Exception;</diff>
      <filename>src/lib/com/izforge/izpack/event/InstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               NativeInstallerListener.java
- *  Description :        Base class for  custom action listener 
- *                       implementations with native parts for install time.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -35,7 +30,7 @@ import com.izforge.izpack.util.os.WrappedNativeLibException;
  * parts.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class NativeInstallerListener extends SimpleInstallerListener
 {
@@ -53,7 +48,7 @@ public class NativeInstallerListener extends SimpleInstallerListener
      * be created.
      * 
      * @param useSpecHelper
-     *  
+     * 
      */
     public NativeInstallerListener(boolean useSpecHelper)
     {
@@ -64,7 +59,7 @@ public class NativeInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#beforePacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      int, com.izforge.izpack.util.AbstractUIProgressHandler)
+     * int, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePacks(AutomatedInstallData idata, Integer npacks,
             AbstractUIProgressHandler handler) throws Exception</diff>
      <filename>src/lib/com/izforge/izpack/event/NativeInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               NativeUninstallerListener.java
- *  Description :        Base class for  custom action listener 
- *                       implementations with native parts for uninstall time.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -34,7 +29,7 @@ import com.izforge.izpack.util.os.WrappedNativeLibException;
  * parts.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class NativeUninstallerListener extends SimpleUninstallerListener
 {</diff>
      <filename>src/lib/com/izforge/izpack/event/NativeUninstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ProgressBarInstallerListener.java
- *  Description :        Installer listener for support of progress bar interactions.
- *  Author's email :     bartzkau@users.berlios.de
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.event;
 
 import com.izforge.izpack.installer.AutomatedInstallData;
@@ -30,9 +27,9 @@ import com.izforge.izpack.util.Debug;
 import com.izforge.izpack.util.ExtendedUIProgressHandler;
 
 /**
- * Installer listener for reset the progress bar and initialize the simple
- * installer listener to support progress bar interaction. To support progress
- * bar interaction add this installer listener as first listener.
+ * Installer listener for reset the progress bar and initialize the simple installer listener to
+ * support progress bar interaction. To support progress bar interaction add this installer listener
+ * as first listener.
  * 
  * @author Klaus Bartz
  * 
@@ -53,7 +50,7 @@ public class ProgressBarInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#afterPacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler)
             throws Exception</diff>
      <filename>src/lib/com/izforge/izpack/event/ProgressBarInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,28 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryInstallerListener.java
- *  Description :        Custom action for handle registry related
- *                       stuff at installation time (Active only on windows). 
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -39,9 +33,9 @@ import com.izforge.izpack.Pack;
 import com.izforge.izpack.installer.AutomatedInstallData;
 import com.izforge.izpack.installer.UninstallData;
 import com.izforge.izpack.installer.Unpacker;
-import com.izforge.izpack.util.VariableSubstitutor;
 import com.izforge.izpack.util.AbstractUIProgressHandler;
 import com.izforge.izpack.util.SpecHelper;
+import com.izforge.izpack.util.VariableSubstitutor;
 import com.izforge.izpack.util.os.RegistryDefaultHandler;
 import com.izforge.izpack.util.os.RegistryHandler;
 import com.izforge.izpack.util.os.WrappedNativeLibException;
@@ -54,7 +48,7 @@ import com.izforge.izpack.util.os.WrappedNativeLibException;
  * appl/install/IzPack/resources/registry.dtd.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class RegistryInstallerListener extends NativeInstallerListener
 {
@@ -96,7 +90,7 @@ public class RegistryInstallerListener extends NativeInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#beforePacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      int, com.izforge.izpack.util.AbstractUIProgressHandler)
+     * int, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePacks(AutomatedInstallData idata, Integer npacks,
             AbstractUIProgressHandler handler) throws Exception
@@ -109,7 +103,7 @@ public class RegistryInstallerListener extends NativeInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#afterPacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler)
             throws Exception
@@ -156,7 +150,7 @@ public class RegistryInstallerListener extends NativeInstallerListener
             // CustomAction.
             List info = rh.getLoggingInfo();
             if (info != null)
-                    UninstallData.getInstance().addAdditionalData(&quot;registryEntries&quot;, info);
+                UninstallData.getInstance().addAdditionalData(&quot;registryEntries&quot;, info);
 
         }
         catch (Exception e)
@@ -171,8 +165,7 @@ public class RegistryInstallerListener extends NativeInstallerListener
     /**
      * Performs the registry settings for the given pack.
      * 
-     * @param pack
-     *            XML elemtent which contains the registry settings for one pack
+     * @param pack XML elemtent which contains the registry settings for one pack
      * @throws Exception
      */
     private void performPack(XMLElement pack, VariableSubstitutor substitutor) throws Exception
@@ -207,10 +200,8 @@ public class RegistryInstallerListener extends NativeInstallerListener
     /**
      * Perform the setting of one value.
      * 
-     * @param regEntry
-     *            element which contains the description of the value to be set
-     * @param substitutor
-     *            variable substitutor to be used for revising the regEntry contents
+     * @param regEntry element which contains the description of the value to be set
+     * @param substitutor variable substitutor to be used for revising the regEntry contents
      */
     private void performValueSetting(XMLElement regEntry, VariableSubstitutor substitutor)
             throws Exception
@@ -297,7 +288,7 @@ public class RegistryInstallerListener extends NativeInstallerListener
             { // Unfortenly byte is signed ...
                 int tval = Integer.parseInt(st.nextToken(), 16);
                 if (tval &lt; 0 || tval &gt; 0xff)
-                        throw new NumberFormatException(&quot;Value out of range.&quot;);
+                    throw new NumberFormatException(&quot;Value out of range.&quot;);
                 if (tval &gt; 0x7f) tval -= 0x100;
                 value = (byte) tval;
             }
@@ -316,10 +307,8 @@ public class RegistryInstallerListener extends NativeInstallerListener
     /**
      * Perform the setting of one key.
      * 
-     * @param regEntry
-     *            element which contains the description of the key to be created
-     * @param substitutor
-     *            variable substitutor to be used for revising the regEntry contents
+     * @param regEntry element which contains the description of the key to be created
+     * @param substitutor variable substitutor to be used for revising the regEntry contents
      */
     private void performKeySetting(XMLElement regEntry, VariableSubstitutor substitutor)
             throws Exception</diff>
      <filename>src/lib/com/izforge/izpack/event/RegistryInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryUninstallerListener.java
- *  Description :        Custom action for handle registry related 
- *                       stuff at uninstall time.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.event;
 
 import java.io.InputStream;
@@ -42,7 +37,7 @@ import com.izforge.izpack.util.os.WrappedNativeLibException;
  * definiton is not needed.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class RegistryUninstallerListener extends NativeUninstallerListener
 {
@@ -59,7 +54,7 @@ public class RegistryUninstallerListener extends NativeUninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#afterDeletion(java.util.List,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforeDeletion(List files, AbstractUIProgressHandler handler) throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/RegistryUninstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               SimpleCompilerListener.java
- *  Description :        Custom action listener for compile time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -35,9 +31,8 @@ import com.izforge.izpack.compiler.Packager;
 
 /**
  * &lt;p&gt;
- * This class implements all methods of interface CompilerListener, but do not
- * do anything else. It can be used as base class to save implementation of
- * unneeded methods.
+ * This class implements all methods of interface CompilerListener, but do not do anything else. It
+ * can be used as base class to save implementation of unneeded methods.
  * &lt;/p&gt;
  * 
  * 
@@ -59,7 +54,7 @@ public class SimpleCompilerListener implements CompilerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.CompilerListener#reviseAttributSetFile(java.util.Map,
-     *      net.n3.nanoxml.XMLElement)
+     * net.n3.nanoxml.XMLElement)
      */
     public Map reviseAdditionalDataMap(Map existentDataMap, XMLElement element)
             throws CompilerException
@@ -71,7 +66,7 @@ public class SimpleCompilerListener implements CompilerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.CompilerListener#AfterPack(com.izforge.izpack.compiler.Compiler.Pack,
-     *      int, com.izforge.izpack.compiler.Packager)
+     * int, com.izforge.izpack.compiler.Packager)
      */
     public void afterPack(PackInfo pack, int packNumber, Packager packager)
             throws CompilerException
@@ -82,7 +77,7 @@ public class SimpleCompilerListener implements CompilerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.CompilerListener#BeforePack(com.izforge.izpack.compiler.Compiler.Pack,
-     *      int, com.izforge.izpack.compiler.Packager)
+     * int, com.izforge.izpack.compiler.Packager)
      */
     public void beforePack(PackInfo pack, int packNumber, Packager packager)
     {
@@ -91,9 +86,8 @@ public class SimpleCompilerListener implements CompilerListener
     /*
      * (non-Javadoc)
      * 
-     * @see com.izforge.izpack.compiler.CompilerListener#notify(java.lang.String,
-     *      int, net.n3.nanoxml.XMLElement,
-     *      com.izforge.izpack.compiler.Packager)
+     * @see com.izforge.izpack.compiler.CompilerListener#notify(java.lang.String, int,
+     * net.n3.nanoxml.XMLElement, com.izforge.izpack.compiler.Packager)
      */
     public void notify(String position, int state, XMLElement data, Packager packager)
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/SimpleCompilerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               SimpleInstallerListener.java
- *  Description :        Simple custom action listener implementation for install time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -38,13 +34,11 @@ import com.izforge.izpack.util.SpecHelper;
 
 /**
  * &lt;p&gt;
- * This class implements all methods of interface InstallerListener, but do not
- * do anything. It can be used as base class to save implementation of unneeded
- * methods.
+ * This class implements all methods of interface InstallerListener, but do not do anything. It can
+ * be used as base class to save implementation of unneeded methods.
  * &lt;/p&gt;
  * &lt;p&gt;
- * Additional there are some common helper methods which are used from the base
- * class SpecHelper.
+ * Additional there are some common helper methods which are used from the base class SpecHelper.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -76,8 +70,8 @@ public class SimpleInstallerListener implements InstallerListener
     }
 
     /**
-     * Constructs a simple installer listener. If useSpecHelper is true, a
-     * specification helper will be created.
+     * Constructs a simple installer listener. If useSpecHelper is true, a specification helper will
+     * be created.
      * 
      * @param useSpecHelper
      * 
@@ -92,7 +86,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#handleFile(java.io.File,
-     *      com.izforge.izpack.PackFile)
+     * com.izforge.izpack.PackFile)
      */
     public void afterFile(File file, PackFile pf) throws Exception
     {
@@ -104,7 +98,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#handleDir(java.io.File,
-     *      com.izforge.izpack.PackFile)
+     * com.izforge.izpack.PackFile)
      */
     public void afterDir(File dir, PackFile pf) throws Exception
     {
@@ -116,7 +110,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#afterPacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler)
             throws Exception
@@ -129,8 +123,8 @@ public class SimpleInstallerListener implements InstallerListener
     /*
      * (non-Javadoc)
      * 
-     * @see com.izforge.izpack.compiler.InstallerListener#afterPack(com.izforge.izpack.Pack,
-     *      int, com.izforge.izpack.util.AbstractUIProgressHandler)
+     * @see com.izforge.izpack.compiler.InstallerListener#afterPack(com.izforge.izpack.Pack, int,
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPack(Pack pack, Integer i, AbstractUIProgressHandler handler) throws Exception
     {
@@ -142,7 +136,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#beforePacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      int, com.izforge.izpack.util.AbstractUIProgressHandler)
+     * int, com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePacks(AutomatedInstallData idata, Integer npacks,
             AbstractUIProgressHandler handler) throws Exception
@@ -166,8 +160,8 @@ public class SimpleInstallerListener implements InstallerListener
     /*
      * (non-Javadoc)
      * 
-     * @see com.izforge.izpack.compiler.InstallerListener#beforePack(com.izforge.izpack.Pack,
-     *      int, com.izforge.izpack.util.AbstractUIProgressHandler)
+     * @see com.izforge.izpack.compiler.InstallerListener#beforePack(com.izforge.izpack.Pack, int,
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforePack(Pack pack, Integer i, AbstractUIProgressHandler handler)
             throws Exception
@@ -191,7 +185,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.installer.InstallerListener#beforeFile(java.io.File,
-     *      com.izforge.izpack.PackFile)
+     * com.izforge.izpack.PackFile)
      */
     public void beforeFile(File file, PackFile pf) throws Exception
     {
@@ -203,7 +197,7 @@ public class SimpleInstallerListener implements InstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.installer.InstallerListener#beforeDir(java.io.File,
-     *      com.izforge.izpack.PackFile)
+     * com.izforge.izpack.PackFile)
      */
     public void beforeDir(File dir, PackFile pf) throws Exception
     {
@@ -224,8 +218,7 @@ public class SimpleInstallerListener implements InstallerListener
     /**
      * Sets the given specification helper to the current used helper.
      * 
-     * @param helper
-     *            specification helper which should be used
+     * @param helper specification helper which should be used
      */
     public void setSpecHelper(SpecHelper helper)
     {
@@ -245,8 +238,7 @@ public class SimpleInstallerListener implements InstallerListener
     /**
      * Sets the installdata object.
      * 
-     * @param data
-     *            installdata object which should be set to current
+     * @param data installdata object which should be set to current
      */
     public void setInstalldata(AutomatedInstallData data)
     {
@@ -254,11 +246,9 @@ public class SimpleInstallerListener implements InstallerListener
     }
 
     /**
-     * Returns the count of listeners which are registered as progress bar
-     * caller.
+     * Returns the count of listeners which are registered as progress bar caller.
      * 
-     * @return the count of listeners which are registered as progress bar
-     *         caller
+     * @return the count of listeners which are registered as progress bar caller
      */
     public static int getProgressBarCallerCount()
     {
@@ -299,12 +289,10 @@ public class SimpleInstallerListener implements InstallerListener
     }
 
     /**
-     * Returns the language dependant message from the resource
-     * CustomActionsLang.xml or the common language pack for the given id. If no
-     * string will be found, the id returns.
+     * Returns the language dependant message from the resource CustomActionsLang.xml or the common
+     * language pack for the given id. If no string will be found, the id returns.
      * 
-     * @param id
-     *            string id for which the message should be resolved
+     * @param id string id for which the message should be resolved
      * @return the related language dependant message
      */
     protected String getMsg(String id)</diff>
      <filename>src/lib/com/izforge/izpack/event/SimpleInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               SimpleUninstallerListener.java
- *  Description :        Simple custom action listener implementation 
- *                       for uninstall time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -33,9 +28,8 @@ import com.izforge.izpack.util.AbstractUIProgressHandler;
 
 /**
  * &lt;p&gt;
- * This class implements all methods of interface UninstallerListener, but do
- * not do enything. It can be used as base class to save implementation of
- * unneeded methods.
+ * This class implements all methods of interface UninstallerListener, but do not do enything. It
+ * can be used as base class to save implementation of unneeded methods.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -56,7 +50,7 @@ public class SimpleUninstallerListener implements UninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#beforeDeletion(java.util.List,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforeDeletion(List files, AbstractUIProgressHandler handler) throws Exception
     {
@@ -68,7 +62,7 @@ public class SimpleUninstallerListener implements UninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#beforeDelete(java.io.File,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void beforeDelete(File file, AbstractUIProgressHandler handler) throws Exception
     {
@@ -80,7 +74,7 @@ public class SimpleUninstallerListener implements UninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#afterDelete(java.io.File,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterDelete(File file, AbstractUIProgressHandler handler) throws Exception
     {
@@ -92,7 +86,7 @@ public class SimpleUninstallerListener implements UninstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.uninstaller.UninstallerListener#afterDeletion(java.util.List,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterDeletion(List files, AbstractUIProgressHandler handler) throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/event/SimpleUninstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,28 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               SummaryLoggerInstallerListener.java
- *  Description :        Installer listener which writes the summary into a logfile.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.event;
 
 import java.io.File;
@@ -38,9 +34,8 @@ import com.izforge.izpack.util.SummaryProcessor;
 import com.izforge.izpack.util.VariableSubstitutor;
 
 /**
- * Installer listener which writes the summary of all panels into the logfile
- * which is defined by info.summarylogfilepath. Default is
- * $INSTALL_PATH/Uninstaller/InstallSummary.htm
+ * Installer listener which writes the summary of all panels into the logfile which is defined by
+ * info.summarylogfilepath. Default is $INSTALL_PATH/Uninstaller/InstallSummary.htm
  * 
  * @author Klaus Bartz
  * 
@@ -60,7 +55,7 @@ public class SummaryLoggerInstallerListener extends SimpleInstallerListener
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.compiler.InstallerListener#afterPacks(com.izforge.izpack.installer.AutomatedInstallData,
-     *      com.izforge.izpack.util.AbstractUIProgressHandler)
+     * com.izforge.izpack.util.AbstractUIProgressHandler)
      */
     public void afterPacks(AutomatedInstallData idata, AbstractUIProgressHandler handler)
             throws Exception</diff>
      <filename>src/lib/com/izforge/izpack/event/SummaryLoggerInstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               UninstallerListener.java
- *  Description :        Custom action listener interface for uninstall time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.event;
@@ -32,9 +28,8 @@ import com.izforge.izpack.util.AbstractUIProgressHandler;
 
 /**
  * &lt;p&gt;
- * Implementations of this class are used to handle customizing uninstallation.
- * The defined methods are called from the destroyer at different, well defined
- * points of uninstallation.
+ * Implementations of this class are used to handle customizing uninstallation. The defined methods
+ * are called from the destroyer at different, well defined points of uninstallation.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -55,60 +50,46 @@ public interface UninstallerListener
     public static final int AFTER_DELETE = 4;
 
     /**
-     * This method will be called from the destroyer before the given files will
-     * be deleted.
+     * This method will be called from the destroyer before the given files will be deleted.
      * 
-     * @param files
-     *            all files which should be deleted
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param files all files which should be deleted
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void beforeDeletion(List files, AbstractUIProgressHandler handler) throws Exception;
 
     /**
-     * Returns true if this listener would be informed at every delete
-     * operation, else false. If it is true, the listener will be called two
-     * times (before and after) of every action. Handle carefully, else
-     * performance problems are possible.
+     * Returns true if this listener would be informed at every delete operation, else false. If it
+     * is true, the listener will be called two times (before and after) of every action. Handle
+     * carefully, else performance problems are possible.
      * 
-     * @return true if this listener would be informed at every delete
-     *         operation, else false
+     * @return true if this listener would be informed at every delete operation, else false
      */
     boolean isFileListener();
 
     /**
-     * This method will be called from the destroyer before the given file will
-     * be deleted.
+     * This method will be called from the destroyer before the given file will be deleted.
      * 
-     * @param file
-     *            file which should be deleted
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param file file which should be deleted
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void beforeDelete(File file, AbstractUIProgressHandler handler) throws Exception;
 
     /**
-     * This method will be called from the destroyer after the given file was
-     * deleted.
+     * This method will be called from the destroyer after the given file was deleted.
      * 
-     * @param file
-     *            file which was just deleted
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param file file which was just deleted
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void afterDelete(File file, AbstractUIProgressHandler handler) throws Exception;
 
     /**
-     * This method will be called from the destroyer after the given files are
-     * deleted.
+     * This method will be called from the destroyer after the given files are deleted.
      * 
-     * @param files
-     *            all files which where deleted
-     * @param handler
-     *            a handler to the current used UIProgressHandler
+     * @param files all files which where deleted
+     * @param handler a handler to the current used UIProgressHandler
      * @throws Exception
      */
     void afterDeletion(List files, AbstractUIProgressHandler handler) throws Exception;</diff>
      <filename>src/lib/com/izforge/izpack/event/UninstallerListener.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  File :               ButtonFactory.java
- *  Description :        a ButtonFactory.
- *  Author's email :     jblok@profdata.nl
- *  Author's Website :   http://www.profdata.nl
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import java.awt.Color;
@@ -51,8 +48,7 @@ public class ButtonFactory
     /**
      * Enable or disable icons for buttons This setting has no effect on OSX
      * 
-     * @param useit
-     *            flag which determines the behavior
+     * @param useit flag which determines the behavior
      */
     public static void useButtonIcons(boolean useit)
     {
@@ -73,8 +69,7 @@ public class ButtonFactory
     /**
      * Enable or disable highlight buttons This setting has no effect on OSX
      * 
-     * @param useit
-     *            flag which determines the behavior
+     * @param useit flag which determines the behavior
      */
     public static void useHighlightButtons(boolean useit)
     {</diff>
      <filename>src/lib/com/izforge/izpack/gui/ButtonFactory.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,33 +1,20 @@
 /*
- * $Id$
- * IzPack
- * Copyright (c) 2003, Julien Ponge &lt;julien@izforge.com&gt;
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- *    this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- *    notice, this list of conditions and the following disclaimer in the
- *    documentation and/or other materials provided with the distribution.
- * 3. Neither the name of IzPack nor the names of its
- *    contributors may be used to endorse or promote products derived from
- *    this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&quot;
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.gui;
@@ -50,18 +37,12 @@ public class EtchedLineBorder extends EtchedBorder
     /**
      * Paints the etched line.
      * 
-     * @param c
-     *            The component to draw the border on.
-     * @param g
-     *            The graphics object.
-     * @param x
-     *            The top-left x.
-     * @param y
-     *            The top-left y.
-     * @param width
-     *            The border width.
-     * @param height
-     *            The border height.
+     * @param c The component to draw the border on.
+     * @param g The graphics object.
+     * @param x The top-left x.
+     * @param y The top-left y.
+     * @param width The border width.
+     * @param height The border height.
      */
     public void paintBorder(Component c, Graphics g, int x, int y, int width, int height)
     {</diff>
      <filename>src/lib/com/izforge/izpack/gui/EtchedLineBorder.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               FlowLayout.java
- * Description :        A special layout manger designed for the RuleInputField
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.gui;
@@ -33,16 +29,15 @@ import java.awt.LayoutManager;
 
 /*---------------------------------------------------------------------------*/
 /**
- * A flow layout arranges components in a left-to-right flow, much like lines of
- * text in a paragraph. Flow layouts are typically used to arrange buttons in a
- * panel. It will arrange buttons left to right until no more buttons fit on the
- * same line. Each line is centered.
+ * A flow layout arranges components in a left-to-right flow, much like lines of text in a
+ * paragraph. Flow layouts are typically used to arrange buttons in a panel. It will arrange buttons
+ * left to right until no more buttons fit on the same line. Each line is centered.
  * &lt;p&gt;
- * For example, the following picture shows an applet using the flow layout
- * manager (its default layout manager) to position three buttons:
+ * For example, the following picture shows an applet using the flow layout manager (its default
+ * layout manager) to position three buttons:
  * &lt;p&gt;
- * &lt;img src=&quot;doc-files/FlowLayout-1.gif&quot; ALT=&quot;Graphic of Layout for Three
- * Buttons&quot; ALIGN=center HSPACE=10 VSPACE=7&gt;
+ * &lt;img src=&quot;doc-files/FlowLayout-1.gif&quot; ALT=&quot;Graphic of Layout for Three Buttons&quot; ALIGN=center
+ * HSPACE=10 VSPACE=7&gt;
  * &lt;p&gt;
  * Here is the code for this applet:
  * &lt;p&gt;
@@ -76,16 +71,14 @@ import java.awt.LayoutManager;
  * &lt;p&gt;
  * A flow layout lets each component assume its natural (preferred) size.
  * 
- * This class is a bit different from java.awt.FlowLayout. &lt;blockquote&gt;
- * java.awt.FlowLayout has a minor problem that was bugging me when I wrote the
- * UserInputPanel. FlowLayout puts some amount of space in between each
- * component that it lays out. In addition it adds that same amount of space to
- * the left and to the right of the entire group. Therefore items such as the
- * RuleInputfield that are laid out with a FlowLayout would never line up
- * properly with the other components (it would appear to be slightly indented).
- * Because there is no way to circumvent this behavior in FlowLayout (it's hard
- * coded) I copied the source and modified it so that it does not add the space
- * to the left and to the right. Now my stuff lines up properly. (Elmar Grom)&lt;/blockquote&gt;
+ * This class is a bit different from java.awt.FlowLayout. &lt;blockquote&gt; java.awt.FlowLayout has a
+ * minor problem that was bugging me when I wrote the UserInputPanel. FlowLayout puts some amount of
+ * space in between each component that it lays out. In addition it adds that same amount of space
+ * to the left and to the right of the entire group. Therefore items such as the RuleInputfield that
+ * are laid out with a FlowLayout would never line up properly with the other components (it would
+ * appear to be slightly indented). Because there is no way to circumvent this behavior in
+ * FlowLayout (it's hard coded) I copied the source and modified it so that it does not add the
+ * space to the left and to the right. Now my stuff lines up properly. (Elmar Grom)&lt;/blockquote&gt;
  * 
  * @version 1.39, 11/29/02
  * @author Arthur van Hoff
@@ -97,8 +90,7 @@ public class FlowLayout implements LayoutManager
 {
 
     /**
-     * This value indicates that each row of components should be
-     * left-justified.
+     * This value indicates that each row of components should be left-justified.
      */
     public static final int LEFT = 0;
 
@@ -108,15 +100,13 @@ public class FlowLayout implements LayoutManager
     public static final int CENTER = 1;
 
     /**
-     * This value indicates that each row of components should be
-     * right-justified.
+     * This value indicates that each row of components should be right-justified.
      */
     public static final int RIGHT = 2;
 
     /**
-     * This value indicates that each row of components should be justified to
-     * the leading edge of the container's orientation, for example, to the left
-     * in left-to-right orientations.
+     * This value indicates that each row of components should be justified to the leading edge of
+     * the container's orientation, for example, to the left in left-to-right orientations.
      * 
      * @see java.awt.Component#getComponentOrientation
      * @see java.awt.ComponentOrientation
@@ -125,9 +115,8 @@ public class FlowLayout implements LayoutManager
     public static final int LEADING = 3;
 
     /**
-     * This value indicates that each row of components should be justified to
-     * the leading edge of the container's orientation, for example, to the
-     * right in left-to-right orientations.
+     * This value indicates that each row of components should be justified to the leading edge of
+     * the container's orientation, for example, to the right in left-to-right orientations.
      * 
      * @see java.awt.Component#getComponentOrientation
      * @see java.awt.ComponentOrientation
@@ -136,9 +125,8 @@ public class FlowLayout implements LayoutManager
     public static final int TRAILING = 4;
 
     /**
-     * &lt;code&gt;align&lt;/code&gt; is the proprty that determines how each row
-     * distributes empty space. It can be one of the following three values :
-     * &lt;code&gt;LEFT&lt;/code&gt;
+     * &lt;code&gt;align&lt;/code&gt; is the proprty that determines how each row distributes empty space. It
+     * can be one of the following three values : &lt;code&gt;LEFT&lt;/code&gt;
      * &lt;code&gt;RIGHT&lt;/code&gt;
      * &lt;code&gt;CENTER&lt;/code&gt;
      * 
@@ -149,9 +137,9 @@ public class FlowLayout implements LayoutManager
     int align; // This is for 1.1 serialization compatibilitys
 
     /**
-     * &lt;code&gt;newAlign&lt;/code&gt; is the property that determines how each row
-     * distributes empty space for the Java 2 platform, v1.2 and greater. It can
-     * be one of the following three values : &lt;code&gt;LEFT&lt;/code&gt;
+     * &lt;code&gt;newAlign&lt;/code&gt; is the property that determines how each row distributes empty space
+     * for the Java 2 platform, v1.2 and greater. It can be one of the following three values :
+     * &lt;code&gt;LEFT&lt;/code&gt;
      * &lt;code&gt;RIGHT&lt;/code&gt;
      * &lt;code&gt;CENTER&lt;/code&gt;
      * 
@@ -163,8 +151,8 @@ public class FlowLayout implements LayoutManager
     int newAlign; // This is the one we actually use
 
     /**
-     * The flow layout manager allows a seperation of components with gaps. The
-     * horizontal gap will specify the space between components.
+     * The flow layout manager allows a seperation of components with gaps. The horizontal gap will
+     * specify the space between components.
      * 
      * @serial
      * @see #getHgap
@@ -173,8 +161,8 @@ public class FlowLayout implements LayoutManager
     int hgap;
 
     /**
-     * The flow layout manager allows a seperation of components with gaps. The
-     * vertical gap will specify the space between rows.
+     * The flow layout manager allows a seperation of components with gaps. The vertical gap will
+     * specify the space between rows.
      * 
      * @serial
      * @see #getVgap
@@ -184,8 +172,8 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Constructs a new Flow Layout with a centered alignment and a default
-     * 5-unit horizontal and vertical gap.
+     * Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and
+     * vertical gap.
      */
     /*--------------------------------------------------------------------------*/
     public FlowLayout()
@@ -195,13 +183,11 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Constructs a new Flow Layout with the specified alignment and a default
-     * 5-unit horizontal and vertical gap. The value of the alignment argument
-     * must be one of &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;,
+     * Constructs a new Flow Layout with the specified alignment and a default 5-unit horizontal and
+     * vertical gap. The value of the alignment argument must be one of &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;,
      * &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, or &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
      * 
-     * @param align
-     *            the alignment value
+     * @param align the alignment value
      */
     /*--------------------------------------------------------------------------*/
     public FlowLayout(int align)
@@ -211,19 +197,15 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Creates a new flow layout manager with the indicated alignment and the
-     * indicated horizontal and vertical gaps.
+     * Creates a new flow layout manager with the indicated alignment and the indicated horizontal
+     * and vertical gaps.
      * &lt;p&gt;
-     * The value of the alignment argument must be one of
-     * &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;, &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, or
-     * &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
-     * 
-     * @param align
-     *            the alignment value.
-     * @param hgap
-     *            the horizontal gap between components.
-     * @param vgap
-     *            the vertical gap between components.
+     * The value of the alignment argument must be one of &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;,
+     * &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, or &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
+     * 
+     * @param align the alignment value.
+     * @param hgap the horizontal gap between components.
+     * @param vgap the vertical gap between components.
      */
     /*--------------------------------------------------------------------------*/
     public FlowLayout(int align, int hgap, int vgap)
@@ -235,9 +217,8 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Gets the alignment for this layout. Possible values are
-     * &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;, &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, or
-     * &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
+     * Gets the alignment for this layout. Possible values are &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;,
+     * &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, or &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
      * 
      * @return the alignment value for this layout.
      * 
@@ -251,12 +232,10 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the alignment for this layout. Possible values are
-     * &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;, &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, and
-     * &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
+     * Sets the alignment for this layout. Possible values are &lt;code&gt;FlowLayout.LEFT&lt;/code&gt;,
+     * &lt;code&gt;FlowLayout.RIGHT&lt;/code&gt;, and &lt;code&gt;FlowLayout.CENTER&lt;/code&gt;.
      * 
-     * @param align
-     *            the alignment value.
+     * @param align the alignment value.
      * 
      * @see #getAlignment()
      */
@@ -301,8 +280,7 @@ public class FlowLayout implements LayoutManager
     /**
      * Sets the horizontal gap between components.
      * 
-     * @param hgap
-     *            the horizontal gap between components
+     * @param hgap the horizontal gap between components
      * 
      * @see #getHgap()
      */
@@ -330,8 +308,7 @@ public class FlowLayout implements LayoutManager
     /**
      * Sets the vertical gap between components.
      * 
-     * @param vgap
-     *            the vertical gap between components
+     * @param vgap the vertical gap between components
      * 
      * @see #getVgap()
      */
@@ -345,10 +322,8 @@ public class FlowLayout implements LayoutManager
     /**
      * Adds the specified component to the layout. Not used by this class.
      * 
-     * @param name
-     *            the name of the component
-     * @param comp
-     *            the component to be added
+     * @param name the name of the component
+     * @param comp the component to be added
      */
     /*--------------------------------------------------------------------------*/
     public void addLayoutComponent(String name, Component comp)
@@ -359,8 +334,7 @@ public class FlowLayout implements LayoutManager
     /**
      * Removes the specified component from the layout. Not used by this class.
      * 
-     * @param comp
-     *            the component to remove
+     * @param comp the component to remove
      * 
      */
     /*--------------------------------------------------------------------------*/
@@ -370,14 +344,12 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the preferred dimensions for this layout given the components in
-     * the specified target container.
+     * Returns the preferred dimensions for this layout given the components in the specified target
+     * container.
      * 
-     * @param target
-     *            the component which needs to be laid out
+     * @param target the component which needs to be laid out
      * 
-     * @return the preferred dimensions to lay out the subcomponents of the
-     *         specified container.
+     * @return the preferred dimensions to lay out the subcomponents of the specified container.
      * @see #minimumLayoutSize(Container)
      */
     /*--------------------------------------------------------------------------*/
@@ -418,14 +390,12 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the minimum dimensions needed to layout the components contained
-     * in the specified target container.
+     * Returns the minimum dimensions needed to layout the components contained in the specified
+     * target container.
      * 
-     * @param target
-     *            the component which needs to be laid out
+     * @param target the component which needs to be laid out
      * 
-     * @return the minimum dimensions to lay out the subcomponents of the
-     *         specified container.
+     * @return the minimum dimensions to lay out the subcomponents of the specified container.
      * 
      * @see #preferredLayoutSize(Container)
      */
@@ -464,20 +434,13 @@ public class FlowLayout implements LayoutManager
     /**
      * Centers the elements in the specified row, if there is any slack.
      * 
-     * @param target
-     *            the component which needs to be moved
-     * @param x
-     *            the x coordinate
-     * @param y
-     *            the y coordinate
-     * @param width
-     *            the width dimensions
-     * @param height
-     *            the height dimensions
-     * @param rowStart
-     *            the beginning of the row
-     * @param rowEnd
-     *            the the ending of the row
+     * @param target the component which needs to be moved
+     * @param x the x coordinate
+     * @param y the y coordinate
+     * @param width the width dimensions
+     * @param height the height dimensions
+     * @param rowStart the beginning of the row
+     * @param rowEnd the the ending of the row
      */
     /*--------------------------------------------------------------------------*/
     private void moveComponents(Container target, int x, int y, int width, int height,
@@ -527,13 +490,11 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Lays out the container. This method lets each component take its
-     * preferred size by reshaping the components in the target container in
-     * order to satisfy the constraints of this &lt;code&gt;FlowLayout&lt;/code&gt;
-     * object.
+     * Lays out the container. This method lets each component take its preferred size by reshaping
+     * the components in the target container in order to satisfy the constraints of this
+     * &lt;code&gt;FlowLayout&lt;/code&gt; object.
      * 
-     * @param target
-     *            the specified component being laid out.
+     * @param target the specified component being laid out.
      * 
      */
     /*--------------------------------------------------------------------------*/
@@ -586,8 +547,7 @@ public class FlowLayout implements LayoutManager
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns a string representation of this &lt;code&gt;FlowLayout&lt;/code&gt; object
-     * and its values.
+     * Returns a string representation of this &lt;code&gt;FlowLayout&lt;/code&gt; object and its values.
      * 
      * @return a string representation of this layout.
      */</diff>
      <filename>src/lib/com/izforge/izpack/gui/FlowLayout.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               HighlightJButton.java
- *  Description :        A button that highlights when the mouse passes over.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import java.awt.Color;
@@ -45,10 +40,8 @@ public class HighlightJButton extends JButton
     /**
      * The constructor (use ButtonFactory to create button).
      * 
-     * @param icon
-     *            The icon to display.
-     * @param color
-     *            The highlight color.
+     * @param icon The icon to display.
+     * @param color The highlight color.
      */
     HighlightJButton(Icon icon, Color color)
     {
@@ -59,10 +52,8 @@ public class HighlightJButton extends JButton
     /**
      * The constructor (use ButtonFactory to create button).
      * 
-     * @param text
-     *            The text to display.
-     * @param color
-     *            The highlight color.
+     * @param text The text to display.
+     * @param color The highlight color.
      */
     HighlightJButton(String text, Color color)
     {
@@ -73,12 +64,9 @@ public class HighlightJButton extends JButton
     /**
      * The constructor (use ButtonFactory to create button).
      * 
-     * @param text
-     *            The text to display.
-     * @param icon
-     *            The icon to display.
-     * @param color
-     *            The highlight color.
+     * @param text The text to display.
+     * @param icon The icon to display.
+     * @param color The highlight color.
      */
     HighlightJButton(String text, Icon icon, Color color)
     {
@@ -89,10 +77,8 @@ public class HighlightJButton extends JButton
     /**
      * The constructor (use ButtonFactory to create button).
      * 
-     * @param a
-     *            The action.
-     * @param color
-     *            The highlight color.
+     * @param a The action.
+     * @param color The highlight color.
      */
     HighlightJButton(Action a, Color color)
     {
@@ -103,8 +89,7 @@ public class HighlightJButton extends JButton
     /**
      * Does the extra initialisations.
      * 
-     * @param highlightColor
-     *            The highlight color.
+     * @param highlightColor The highlight color.
      */
     protected void initButton(Color highlightColor)
     {
@@ -115,11 +100,9 @@ public class HighlightJButton extends JButton
     }
 
     /**
-     * Overriden to ensure that the button won't stay highlighted if it had the
-     * mouse over it.
+     * Overriden to ensure that the button won't stay highlighted if it had the mouse over it.
      * 
-     * @param b
-     *            Button state.
+     * @param b Button state.
      */
     public void setEnabled(boolean b)
     {
@@ -150,8 +133,7 @@ public class HighlightJButton extends JButton
         /**
          * When the mouse passes over the button.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void mouseEntered(MouseEvent e)
         {
@@ -161,8 +143,7 @@ public class HighlightJButton extends JButton
         /**
          * When the mouse passes out of the button.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void mouseExited(MouseEvent e)
         {</diff>
      <filename>src/lib/com/izforge/izpack/gui/HighlightJButton.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               IconsDatabase.java
- *  Description :        Represents an icons database.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import java.util.TreeMap;
@@ -47,8 +42,7 @@ public class IconsDatabase extends TreeMap
     /**
      * Convenience method to retrieve an element.
      * 
-     * @param key
-     *            The icon key.
+     * @param key The icon key.
      * @return The icon as an ImageIcon object.
      */
     public ImageIcon getImageIcon(String key)</diff>
      <filename>src/lib/com/izforge/izpack/gui/IconsDatabase.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               IzPackKMetalTheme.java
- *  Description :        The metal theme for IzPack with the Kunststoff L&amp;F.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  (Some code comes from the Kunststoff source code which is under the LGPL)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import javax.swing.plaf.ColorUIResource;</diff>
      <filename>src/lib/com/izforge/izpack/gui/IzPackKMetalTheme.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               IzPackMetalTheme.java
- *  Description :        The metal theme for IzPack.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import java.awt.Font;</diff>
      <filename>src/lib/com/izforge/izpack/gui/IzPackMetalTheme.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               LabelFactory.java
- *  Description :        A LabelFactory.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.gui;
 
 import javax.swing.Icon;
@@ -29,8 +27,7 @@ import javax.swing.SwingConstants;
 
 /**
  * &lt;p&gt;
- * A label factory which can handle modified look like to present icons or
- * present it not.
+ * A label factory which can handle modified look like to present icons or present it not.
  * &lt;/p&gt;
  * 
  * @author Klaus Bartz
@@ -54,8 +51,7 @@ public class LabelFactory implements SwingConstants
     /**
      * Sets the use icon state.
      * 
-     * @param b
-     *            flag for the icon state
+     * @param b flag for the icon state
      */
     public static void setUseLabelIcons(boolean b)
     {
@@ -63,12 +59,10 @@ public class LabelFactory implements SwingConstants
     }
 
     /**
-     * Returns a new JLabel with the horizontal alignment CENTER. If
-     * isUseLabelIcons is true, the given image will be set to the label, else
-     * an empty label returns.
+     * Returns a new JLabel with the horizontal alignment CENTER. If isUseLabelIcons is true, the
+     * given image will be set to the label, else an empty label returns.
      * 
-     * @param image
-     *            the image to be used as label icon
+     * @param image the image to be used as label icon
      * @return new JLabel with the given parameters
      */
     public static JLabel create(Icon image)
@@ -78,14 +72,11 @@ public class LabelFactory implements SwingConstants
     }
 
     /**
-     * Returns a new JLabel with the given horizontal alignment. If
-     * isUseLabelIcons is true, the given image will be set to the label, else
-     * an empty label returns.
+     * Returns a new JLabel with the given horizontal alignment. If isUseLabelIcons is true, the
+     * given image will be set to the label, else an empty label returns.
      * 
-     * @param image
-     *            the image to be used as label icon
-     * @param horizontalAlignment
-     *            horizontal alignment of the label
+     * @param image the image to be used as label icon
+     * @param horizontalAlignment horizontal alignment of the label
      * @return new JLabel with the given parameters
      */
     public static JLabel create(Icon image, int horizontalAlignment)
@@ -97,8 +88,7 @@ public class LabelFactory implements SwingConstants
     /**
      * Returns a new JLabel with the horizontal alignment CENTER.
      * 
-     * @param text
-     *            the text to be set
+     * @param text the text to be set
      * @return new JLabel with the given parameters
      */
     public static JLabel create(String text)
@@ -110,10 +100,8 @@ public class LabelFactory implements SwingConstants
     /**
      * Returns a new JLabel with the given horizontal alignment.
      * 
-     * @param text
-     *            the text to be set
-     * @param horizontalAlignment
-     *            horizontal alignment of the label
+     * @param text the text to be set
+     * @param horizontalAlignment horizontal alignment of the label
      * @return new JLabel with the given parameters
      */
     public static JLabel create(String text, int horizontalAlignment)
@@ -123,17 +111,13 @@ public class LabelFactory implements SwingConstants
     }
 
     /**
-     * Returns a new JLabel with the given horizontal alignment. If
-     * isUseLabelIcons is true, the given image will be set to the label. The
-     * given text will be set allways to the label. It is allowed, that image
-     * and/or text are null.
+     * Returns a new JLabel with the given horizontal alignment. If isUseLabelIcons is true, the
+     * given image will be set to the label. The given text will be set allways to the label. It is
+     * allowed, that image and/or text are null.
      * 
-     * @param text
-     *            the text to be set
-     * @param image
-     *            the image to be used as label icon
-     * @param horizontalAlignment
-     *            horizontal alignment of the label
+     * @param text the text to be set
+     * @param image the image to be used as label icon
+     * @param horizontalAlignment horizontal alignment of the label
      * @return new JLabel with the given parameters
      */
     public static JLabel create(String text, Icon image, int horizontalAlignment)</diff>
      <filename>src/lib/com/izforge/izpack/gui/LabelFactory.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               TwoColumnConstraint.java
- * Description :        the constraint class used with TwoColumnLayout
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.gui;
@@ -58,20 +55,19 @@ public class TwoColumnConstraints implements Cloneable
     public static final int RIGHT = 47;
 
     /**
-     * Indicates where to place the associated component. &lt;code&gt;NORTH&lt;/code&gt;
-     * will place the component in the title margin. &lt;/code&gt;WEST&lt;/code&gt; will
-     * place the component in the left column and &lt;code&gt;EAST&lt;/code&gt; will place
-     * it in the right column. If &lt;code&gt;BOTH&lt;/code&gt; is used, the component
-     * will straddle both columns. &lt;code&gt;WESTONLY&lt;/code&gt; and &lt;code&gt;EASTONLY&lt;/code&gt;
-     * will place the element accordingly but make sure that nothing is placed
-     * in the opposite column.
+     * Indicates where to place the associated component. &lt;code&gt;NORTH&lt;/code&gt; will place the
+     * component in the title margin. &lt;/code&gt;WEST&lt;/code&gt; will place the component in the left
+     * column and &lt;code&gt;EAST&lt;/code&gt; will place it in the right column. If &lt;code&gt;BOTH&lt;/code&gt; is
+     * used, the component will straddle both columns. &lt;code&gt;WESTONLY&lt;/code&gt; and &lt;code&gt;EASTONLY&lt;/code&gt;
+     * will place the element accordingly but make sure that nothing is placed in the opposite
+     * column.
      */
     public int position = WEST;
 
     /**
-     * How to align the associated component, &lt;code&gt;LEFT&lt;/code&gt;,
-     * &lt;code&gt;CENTER&lt;/code&gt; or &lt;code&gt;RIGHT&lt;/code&gt;. Note that this setting
-     * only taks effect in the component is placed in the title margin.
+     * How to align the associated component, &lt;code&gt;LEFT&lt;/code&gt;, &lt;code&gt;CENTER&lt;/code&gt; or
+     * &lt;code&gt;RIGHT&lt;/code&gt;. Note that this setting only taks effect in the component is placed in
+     * the title margin.
      */
     public int align = LEFT;
 
@@ -79,8 +75,8 @@ public class TwoColumnConstraints implements Cloneable
     public boolean indent = false;
 
     /**
-     * If set to true the associated component will be allowed to stretch to the
-     * width of the entire avaiable space.
+     * If set to true the associated component will be allowed to stretch to the width of the entire
+     * avaiable space.
      */
     public boolean stretch = false;
 </diff>
      <filename>src/lib/com/izforge/izpack/gui/TwoColumnConstraints.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               TwoColumnLayout.java
- * Description :        A special layout manger designed for the UserInputPanel
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.gui;
@@ -35,79 +32,66 @@ import java.awt.Stroke;
 import java.util.Vector;
 
 /**
- * This class implements a layout manager that generally lays out components in
- * two columns. &lt;BR&gt;
+ * This class implements a layout manager that generally lays out components in two columns. &lt;BR&gt;
  * &lt;BR&gt;
- * The design goal for this layout manager was to lay out forms for data entry,
- * where there are several rows of entry fields with associated labels. The goal
- * was to have the beginning off all labels line up, as well as the left edge of
- * all the data entry fields. This leads to a situation where all components are
- * essentially laid out in two columns. The columns adjust to accommodate
- * components of various sizes. This means that components that are added are
- * laid out top to bottom, either in the left column, in the right column or
- * straddling both columns. In addition to this general behavior, the following
- * additional layout capabilities are supported:&lt;br&gt;
+ * The design goal for this layout manager was to lay out forms for data entry, where there are
+ * several rows of entry fields with associated labels. The goal was to have the beginning off all
+ * labels line up, as well as the left edge of all the data entry fields. This leads to a situation
+ * where all components are essentially laid out in two columns. The columns adjust to accommodate
+ * components of various sizes. This means that components that are added are laid out top to
+ * bottom, either in the left column, in the right column or straddling both columns. In addition to
+ * this general behavior, the following additional layout capabilities are supported:&lt;br&gt;
  * &lt;ul&gt;
  * &lt;li&gt;Resizable margins are provided on the left and right side.
- * &lt;li&gt;A special region is provided at the top that is only affected by the
- * side margins but not by any other layout behavior.
- * &lt;li&gt;It is possible to specify the vertical positioning of the cluster of
- * laid out components for the case that they do not occupy the entire available
- * real estate.
+ * &lt;li&gt;A special region is provided at the top that is only affected by the side margins but not by
+ * any other layout behavior.
+ * &lt;li&gt;It is possible to specify the vertical positioning of the cluster of laid out components for
+ * the case that they do not occupy the entire available real estate.
  * &lt;li&gt;Individual components can be indented.
  * &lt;/ul&gt;
  * 
  * &lt;b&gt;The Layout Behavior&lt;/b&gt; &lt;br&gt;
  * &lt;br&gt;
- * The left and right margin are absolute. This means that they can not be
- * penetrated by components. All layout happens between the limits established
- * by these margins. The purpose of these margins is to ensure that components
- * are not laid out all the way to the edge of their container, without the need
- * to set matching borders for each component. &lt;br&gt;
+ * The left and right margin are absolute. This means that they can not be penetrated by components.
+ * All layout happens between the limits established by these margins. The purpose of these margins
+ * is to ensure that components are not laid out all the way to the edge of their container, without
+ * the need to set matching borders for each component. &lt;br&gt;
  * &lt;br&gt;
- * The title margin at the top factors only into the layout behavior if there is
- * a component set to be laid out in that region, otherwise it is ignored. &lt;br&gt;
+ * The title margin at the top factors only into the layout behavior if there is a component set to
+ * be laid out in that region, otherwise it is ignored. &lt;br&gt;
  * &lt;br&gt;
- * The vertical space available to each row of components depends on the space
- * requirements of the tallest component in that row. Both components are placed
- * vertically centered in their row. &lt;br&gt;
+ * The vertical space available to each row of components depends on the space requirements of the
+ * tallest component in that row. Both components are placed vertically centered in their row. &lt;br&gt;
  * &lt;br&gt;
- * All horizontal layout is based on the position of three vertical rules, the
- * left rule, the right rule and the center rule. &lt;br&gt;
+ * All horizontal layout is based on the position of three vertical rules, the left rule, the right
+ * rule and the center rule. &lt;br&gt;
  * &lt;br&gt;
  * &lt;img src=&quot;doc-files/TwoColumnLayout.gif&quot;/&gt; &lt;br&gt;
  * &lt;br&gt;
- * The actual position of each rule depends on the alignment strategy, margin
- * settings and component sizes. Regardless of these factors, components placed
- * in the left column are &lt;i&gt;always&lt;/i&gt; positioned with their left edge aligned
- * with the left rule. Components placed in the right column are &lt;i&gt;always&lt;/i&gt;
- * positioned with their left edge aligned with the center rule. If a component
- * straddles both columns, it is &lt;i&gt;always&lt;/i&gt; positioned with the left edge
- * aligned with the left rule, but is allowed to extend all the way to the right
- * rule. The only exception is a component that is specified with an indent. In
- * this case the component is moved to the right of the respective rule by the
- * indent amount. &lt;br&gt;
+ * The actual position of each rule depends on the alignment strategy, margin settings and component
+ * sizes. Regardless of these factors, components placed in the left column are &lt;i&gt;always&lt;/i&gt;
+ * positioned with their left edge aligned with the left rule. Components placed in the right column
+ * are &lt;i&gt;always&lt;/i&gt; positioned with their left edge aligned with the center rule. If a component
+ * straddles both columns, it is &lt;i&gt;always&lt;/i&gt; positioned with the left edge aligned with the left
+ * rule, but is allowed to extend all the way to the right rule. The only exception is a component
+ * that is specified with an indent. In this case the component is moved to the right of the
+ * respective rule by the indent amount. &lt;br&gt;
  * &lt;br&gt;
- * The location of the rules is determined based on the alignment strategy as
- * follows:&lt;br&gt;
+ * The location of the rules is determined based on the alignment strategy as follows:&lt;br&gt;
  * &lt;ul&gt;
  * &lt;li&gt;The right rule is always located at the edge of the right margin.
- * &lt;li&gt;&lt;b&gt;Left Alignment:&lt;/b&gt; The left rule is located the edge of the left
- * margin. The center rule is located far enough to the right to clear the
- * widest component in the left column.
- * &lt;li&gt;&lt;b&gt;Center Alignment:&lt;/b&gt; The center rule is located at the center of
- * the panel. The left rule is located far enough to the left to make the widest
- * component in the left column fit.
- * &lt;li&gt;&lt;b&gt;Right Alignment&lt;/b&gt; The center rule is located far enough to the
- * left of the right rule to make the widest component in the right column fit.
- * The left rule is located far enough to the left to make the widest component
- * in the left column fit.
+ * &lt;li&gt;&lt;b&gt;Left Alignment:&lt;/b&gt; The left rule is located the edge of the left margin. The center
+ * rule is located far enough to the right to clear the widest component in the left column.
+ * &lt;li&gt;&lt;b&gt;Center Alignment:&lt;/b&gt; The center rule is located at the center of the panel. The left
+ * rule is located far enough to the left to make the widest component in the left column fit.
+ * &lt;li&gt;&lt;b&gt;Right Alignment&lt;/b&gt; The center rule is located far enough to the left of the right rule
+ * to make the widest component in the right column fit. The left rule is located far enough to the
+ * left to make the widest component in the left column fit.
  * &lt;/ul&gt;
- * All components clump together vertically and are positioned right beneath the
- * title margin. This is of course not a very appealing presentation. By setting
- * how the remaining vertical space is distributed above and below the cluster
- * of components the cluster can be positioned more favorably (see the shaded
- * area in the illustration).
+ * All components clump together vertically and are positioned right beneath the title margin. This
+ * is of course not a very appealing presentation. By setting how the remaining vertical space is
+ * distributed above and below the cluster of components the cluster can be positioned more
+ * favorably (see the shaded area in the illustration).
  * 
  * @see com.izforge.izpack.gui.TwoColumnConstraints
  * 
@@ -127,8 +111,7 @@ public class TwoColumnLayout implements LayoutManager2
     private Vector[] components = { new Vector(), new Vector()};
 
     /**
-     * holds the component to be placed in the title region, including layout
-     * constraints.
+     * holds the component to be placed in the title region, including layout constraints.
      */
     private TwoColumnConstraints title = null;
 
@@ -136,8 +119,7 @@ public class TwoColumnLayout implements LayoutManager2
     private int margin = 0;
 
     /**
-     * the setting for the buffer area on top of hte comonent cluster in % of
-     * the left over height.
+     * the setting for the buffer area on top of hte comonent cluster in % of the left over height.
      */
     private int topBuffer = 0;
 
@@ -158,26 +140,17 @@ public class TwoColumnLayout implements LayoutManager2
     private int titleHeight;
 
     /**
-     * Constructs a &lt;code&gt;TwoColumnLayout&lt;/code&gt; layout manager. To add
-     * components use the container's &lt;code&gt;add(comp, constraints)&lt;/code&gt;
-     * method with a TwoColumnConstraints object.
+     * Constructs a &lt;code&gt;TwoColumnLayout&lt;/code&gt; layout manager. To add components use the
+     * container's &lt;code&gt;add(comp, constraints)&lt;/code&gt; method with a TwoColumnConstraints object.
      * 
-     * @param margin
-     *            the margin width to use on the left and right side in % of the
-     *            total container width. Values less than 0% and greater than
-     *            50% are not accepted.
-     * @param gap
-     *            the gap between the two columns.
-     * @param indent
-     *            the indent to use for components that have that constraint
-     *            set. This is a value in pixels.
-     * @param topBuffer
-     *            the percentage of left over vertical space to place on top of
-     *            the component cluster. Values between 0% and 100% are
-     *            accepted.
-     * @param alignment
-     *            how to align the overall layout. Legal values are LEFT,
-     *            CENTER, RIGHT.
+     * @param margin the margin width to use on the left and right side in % of the total container
+     * width. Values less than 0% and greater than 50% are not accepted.
+     * @param gap the gap between the two columns.
+     * @param indent the indent to use for components that have that constraint set. This is a value
+     * in pixels.
+     * @param topBuffer the percentage of left over vertical space to place on top of the component
+     * cluster. Values between 0% and 100% are accepted.
+     * @param alignment how to align the overall layout. Legal values are LEFT, CENTER, RIGHT.
      */
     public TwoColumnLayout(int margin, int gap, int indent, int topBuffer, int alignment)
     {
@@ -199,14 +172,11 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Sets the constraints for the specified component in this layout.
-     * &lt;code&gt;null&lt;/code&gt; is a legal value for a component, but not for a
-     * constraints object.
+     * Sets the constraints for the specified component in this layout. &lt;code&gt;null&lt;/code&gt; is a
+     * legal value for a component, but not for a constraints object.
      * 
-     * @param comp
-     *            the component to be modified.
-     * @param constraints
-     *            the constraints to be applied.
+     * @param comp the component to be modified.
+     * @param constraints the constraints to be applied.
      */
     public void addLayoutComponent(Component comp, Object constraints)
     {
@@ -338,8 +308,7 @@ public class TwoColumnLayout implements LayoutManager2
     /**
      * Lays out the container in the specified panel.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     public void layoutContainer(Container parent)
     {
@@ -356,8 +325,7 @@ public class TwoColumnLayout implements LayoutManager2
      * &lt;li&gt;&lt;code&gt;centerRule&lt;/code&gt;
      * &lt;/ul&gt;
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     private void positionRules(Container parent)
     {
@@ -386,12 +354,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Positions the title component and sets the variable
-     * &lt;code&gt;titleHeight&lt;/code&gt;. &lt;b&gt;Note:&lt;/b&gt; this method depends on the
-     * fact that the rules are set to their correct layout position.
+     * Positions the title component and sets the variable &lt;code&gt;titleHeight&lt;/code&gt;. &lt;b&gt;Note:&lt;/b&gt;
+     * this method depends on the fact that the rules are set to their correct layout position.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     private void positionTitle(Container parent)
     {
@@ -432,8 +398,7 @@ public class TwoColumnLayout implements LayoutManager2
     /**
      * Positions all components in the container.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     private void positionComponents(Container parent)
     {
@@ -483,20 +448,14 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Positiones one component as instructed. Constraints for each component,
-     * such as &lt;code&gt;stretch&lt;/code&gt;, &lt;code&gt;BOTH&lt;/code&gt; and
-     * &lt;code&gt;indent&lt;/code&gt; are taken into account. In addition, empty
-     * comonents are handled properly.
+     * Positiones one component as instructed. Constraints for each component, such as
+     * &lt;code&gt;stretch&lt;/code&gt;, &lt;code&gt;BOTH&lt;/code&gt; and &lt;code&gt;indent&lt;/code&gt; are taken into
+     * account. In addition, empty comonents are handled properly.
      * 
-     * @param y
-     *            the y location within the continer, where the component should
-     *            be positioned.
-     * @param row
-     *            the row of the component
-     * @param column
-     *            the column of the component
-     * @param parent
-     *            the container which needs to be laid out.
+     * @param y the y location within the continer, where the component should be positioned.
+     * @param row the row of the component
+     * @param column the column of the component
+     * @param parent the container which needs to be laid out.
      */
     private void positionComponent(int y, int row, int column, Container parent)
     {
@@ -584,10 +543,8 @@ public class TwoColumnLayout implements LayoutManager2
     /**
      * Returns the minimum width of the column requested.
      * 
-     * @param column
-     *            the columns to measure (LEFT / RIGHT)
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param column the columns to measure (LEFT / RIGHT)
+     * @param parent the component which needs to be laid out.
      * 
      * @return the minimum width required to fis the components in this column
      */
@@ -623,12 +580,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Retrunds the minimum width both columns together should have based on the
-     * minimum widths of all the components that straddle both columns and the
-     * minimum width of the title component.
+     * Retrunds the minimum width both columns together should have based on the minimum widths of
+     * all the components that straddle both columns and the minimum width of the title component.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      * 
      * @return the minimum width required to fis the components in this column
      */
@@ -703,11 +658,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Measures and returns the minimum height required to render the components
-     * in the indicated row.
+     * Measures and returns the minimum height required to render the components in the indicated
+     * row.
      * 
-     * @param row
-     *            the index of the row to measure
+     * @param row the index of the row to measure
      */
     private int rowHeight(int row)
     {
@@ -731,14 +685,12 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Measures and returns the minimum height required to render the component
-     * in the indicated row and column.
+     * Measures and returns the minimum height required to render the component in the indicated row
+     * and column.
      * 
-     * @param row
-     *            the index of the row to measure
-     * @param column
-     *            the column of the component to measure (&lt;code&gt;LEFT&lt;/code&gt;
-     *            or &lt;code&gt;RIGHT&lt;/code&gt;)
+     * @param row the index of the row to measure
+     * @param column the column of the component to measure (&lt;code&gt;LEFT&lt;/code&gt; or
+     * &lt;code&gt;RIGHT&lt;/code&gt;)
      */
     private int height(int row, int column)
     {
@@ -794,11 +746,9 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Computes the margin value based on the container width and the margin
-     * setting.
+     * Computes the margin value based on the container width and the margin setting.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     private int margin(Container parent)
     {
@@ -808,14 +758,11 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Computes the top buffer value based on the container width and the
-     * setting for the top buffer
+     * Computes the top buffer value based on the container width and the setting for the top buffer
      * 
-     * @param usedHeight
-     *            the amount of the parent component's height that is already in
-     *            use (height of the title and the combined height of all rows).
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param usedHeight the amount of the parent component's height that is already in use (height
+     * of the title and the combined height of all rows).
+     * @param parent the component which needs to be laid out.
      */
     private int topBuffer(int usedHeight, Container parent)
     {
@@ -827,25 +774,22 @@ public class TwoColumnLayout implements LayoutManager2
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Computes the indent value based on the container width and the indent
-     * setting.
+     * Computes the indent value based on the container width and the indent setting.
      * 
-     * @param parent
-     *            the component which needs to be laid out.
+     * @param parent the component which needs to be laid out.
      */
     /*--------------------------------------------------------------------------*/
     /*
-     * private int indent (Container parent) { int amount =
-     * (int)(((parent.getMinimumSize ().getWidth ()) * indent) / 100);
+     * private int indent (Container parent) { int amount = (int)(((parent.getMinimumSize
+     * ().getWidth ()) * indent) / 100);
      * 
      * return (amount); }
      */
     /**
-     * Calculates the preferred size dimensions for the specified panel given
-     * the components in the specified parent container.
+     * Calculates the preferred size dimensions for the specified panel given the components in the
+     * specified parent container.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public Dimension preferredLayoutSize(Container parent)
     {
@@ -853,11 +797,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Calculates the minimum size dimensions for the specified panel given the
-     * components in the specified parent container.
+     * Calculates the minimum size dimensions for the specified panel given the components in the
+     * specified parent container.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public Dimension minimumLayoutSize(Container parent)
     {
@@ -870,11 +813,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Calculates the maximum size dimensions for the specified panel given the
-     * components in the specified parent container.
+     * Calculates the maximum size dimensions for the specified panel given the components in the
+     * specified parent container.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public Dimension maximumLayoutSize(Container parent)
     {
@@ -882,14 +824,12 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Returns the alignment along the x axis. This specifies how the component
-     * would like to be aligned relative to other components. The value should
-     * be a number between 0 and 1 where 0 represents alignment along the
-     * origin, 1 is aligned the furthest away from the origin, 0.5 is centered,
-     * etc.
+     * Returns the alignment along the x axis. This specifies how the component would like to be
+     * aligned relative to other components. The value should be a number between 0 and 1 where 0
+     * represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is
+     * centered, etc.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public float getLayoutAlignmentX(Container parent)
     {
@@ -897,14 +837,12 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Returns the alignment along the y axis. This specifies how the component
-     * would like to be aligned relative to other components. The value should
-     * be a number between 0 and 1 where 0 represents alignment along the
-     * origin, 1 is aligned the furthest away from the origin, 0.5 is centered,
-     * etc.
+     * Returns the alignment along the y axis. This specifies how the component would like to be
+     * aligned relative to other components. The value should be a number between 0 and 1 where 0
+     * represents alignment along the origin, 1 is aligned the furthest away from the origin, 0.5 is
+     * centered, etc.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public float getLayoutAlignmentY(Container parent)
     {
@@ -912,11 +850,10 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Invalidates the layout, indicating that if the layout manager has cached
-     * information it should be discarded.
+     * Invalidates the layout, indicating that if the layout manager has cached information it
+     * should be discarded.
      * 
-     * @param parent
-     *            the component to be laid out
+     * @param parent the component to be laid out
      */
     public void invalidateLayout(Container parent)
     {
@@ -927,14 +864,11 @@ public class TwoColumnLayout implements LayoutManager2
     }
 
     /**
-     * Adds the specified component with the specified name to the layout. This
-     * version is not supported, use &lt;code&gt;addLayoutComponent&lt;/code&gt; with
-     * layout contsraints.
+     * Adds the specified component with the specified name to the layout. This version is not
+     * supported, use &lt;code&gt;addLayoutComponent&lt;/code&gt; with layout contsraints.
      * 
-     * @param name
-     *            the component name
-     * @param comp
-     *            the component to be added
+     * @param name the component name
+     * @param comp the component to be added
      */
     public void addLayoutComponent(String name, Component comp)
     {
@@ -943,35 +877,30 @@ public class TwoColumnLayout implements LayoutManager2
     /**
      * This functionality is not supported
      * 
-     * @param comp
-     *            the component to be removed
+     * @param comp the component to be removed
      */
     public void removeLayoutComponent(Component comp)
     {
     }
 
     /**
-     * This method is provided for conveninence of debugging layout problems. It
-     * renders the three rules and the limit of the title marign visible after
-     * these positions have been computed. In addition, the indent locations are
-     * shown as dashed lines. To use this functionality do the following:&lt;br&gt;
+     * This method is provided for conveninence of debugging layout problems. It renders the three
+     * rules and the limit of the title marign visible after these positions have been computed. In
+     * addition, the indent locations are shown as dashed lines. To use this functionality do the
+     * following:&lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
-     * &lt;li&gt;in the container using this layout manager override the
-     * &lt;code&gt;paint()&lt;/code&gt; method.
+     * &lt;li&gt;in the container using this layout manager override the &lt;code&gt;paint()&lt;/code&gt; method.
      * &lt;li&gt;in that method, first call &lt;code&gt;super.paint()&lt;/code&gt;
      * &lt;li&gt;then call this method
      * &lt;/ul&gt;
      * &lt;br&gt;
-     * &lt;b&gt;Note:&lt;/b&gt; cast the graphics object received in the
-     * &lt;code&gt;paint()&lt;/code&gt; method to &lt;code&gt;Graphics2D&lt;/code&gt; when making
-     * the call.&lt;br&gt;
+     * &lt;b&gt;Note:&lt;/b&gt; cast the graphics object received in the &lt;code&gt;paint()&lt;/code&gt; method to
+     * &lt;code&gt;Graphics2D&lt;/code&gt; when making the call.&lt;br&gt;
      * &lt;br&gt;
      * 
-     * @param graphics
-     *            the graphics context used for drawing.
-     * @param color
-     *            the color to use for rendering the layout grid
+     * @param graphics the graphics context used for drawing.
+     * @param color the color to use for rendering the layout grid
      */
     public void showRules(Graphics2D graphics, Color color)
     {</diff>
      <filename>src/lib/com/izforge/izpack/gui/TwoColumnLayout.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               AutomatedInstallData.java
- *  Description :        Installer internal data.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.util.ArrayList;
@@ -37,8 +32,7 @@ import com.izforge.izpack.Info;
 import com.izforge.izpack.LocaleDatabase;
 
 /**
- * Encloses information about the install process. This implementation is not
- * thread safe.
+ * Encloses information about the install process. This implementation is not thread safe.
  * 
  * @author Julien Ponge &lt;julien@izforge.com&gt;
  * @author Johannes Lehtinen &lt;johannes.lehtinen@iki.fi&gt;
@@ -49,10 +43,9 @@ public class AutomatedInstallData
     // --- Static members -------------------------------------------------
 
     /**
-     * Names of the custom actions types with which they are stored in the
-     * installer jar file. These names are also used to identify the type of
-     * custom action in the customData map. Slashes as first char are needed to
-     * use the names as &quot;file&quot; name in the installer jar.
+     * Names of the custom actions types with which they are stored in the installer jar file. These
+     * names are also used to identify the type of custom action in the customData map. Slashes as
+     * first char are needed to use the names as &quot;file&quot; name in the installer jar.
      */
     // Attention !! Do not change the existent names and the order.
     // Add a / as first char at new types. Add new type handling in
@@ -134,8 +127,8 @@ public class AutomatedInstallData
     }
 
     /**
-     * Returns the map of variable values. Modifying this will directly affect
-     * the current value of variables.
+     * Returns the map of variable values. Modifying this will directly affect the current value of
+     * variables.
      * 
      * @return the map of variable values
      */
@@ -148,10 +141,8 @@ public class AutomatedInstallData
      * Sets a variable to the specified value. This is short hand for
      * &lt;code&gt;getVariables().setProperty(var, val)&lt;/code&gt;.
      * 
-     * @param var
-     *            the name of the variable
-     * @param val
-     *            the new value of the variable
+     * @param var the name of the variable
+     * @param val the new value of the variable
      * @see #getVariable
      */
     public void setVariable(String var, String val)
@@ -160,11 +151,10 @@ public class AutomatedInstallData
     }
 
     /**
-     * Returns the current value of the specified variable. This is short hand
-     * for &lt;code&gt;getVariables().getProperty(var)&lt;/code&gt;.
+     * Returns the current value of the specified variable. This is short hand for
+     * &lt;code&gt;getVariables().getProperty(var)&lt;/code&gt;.
      * 
-     * @param var
-     *            the name of the variable
+     * @param var the name of the variable
      * @return the value of the variable or null if not set
      * @see #setVariable
      */
@@ -176,8 +166,7 @@ public class AutomatedInstallData
     /**
      * Sets the install path.
      * 
-     * @param path
-     *            the new install path
+     * @param path the new install path
      * @see #getInstallPath
      */
     public void setInstallPath(String path)
@@ -199,8 +188,7 @@ public class AutomatedInstallData
     /**
      * Returns the value of the named attribute.
      * 
-     * @param attr
-     *            the name of the attribute
+     * @param attr the name of the attribute
      * @return the value of the attribute or null if not set
      * @see #setAttribute
      */
@@ -210,17 +198,14 @@ public class AutomatedInstallData
     }
 
     /**
-     * Sets a named attribute. The panels and other IzPack components can attach
-     * custom attributes to InstallData to communicate with each other. For
-     * example, a set of co-operating custom panels do not need to implement a
-     * common data storage but can use InstallData singleton. The name of the
-     * attribute should include the package and class name to prevent name space
+     * Sets a named attribute. The panels and other IzPack components can attach custom attributes
+     * to InstallData to communicate with each other. For example, a set of co-operating custom
+     * panels do not need to implement a common data storage but can use InstallData singleton. The
+     * name of the attribute should include the package and class name to prevent name space
      * collisions.
      * 
-     * @param attr
-     *            the name of the attribute to set
-     * @param val
-     *            the value of the attribute or null to unset the attribute
+     * @param attr the name of the attribute to set
+     * @param val the value of the attribute or null to unset the attribute
      * @see #getAttribute
      */
     public void setAttribute(String attr, Object val)</diff>
      <filename>src/lib/com/izforge/izpack/installer/AutomatedInstallData.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               AutomatedInstaller.java
- *  Description :        The silent (headless) installer.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.BufferedWriter;
@@ -70,10 +67,8 @@ public class AutomatedInstaller extends InstallerBase
     /**
      * Constructing an instance triggers the install.
      * 
-     * @param inputFilename
-     *            Name of the file containing the installation data.
-     * @exception Exception
-     *                Description of the Exception
+     * @param inputFilename Name of the file containing the installation data.
+     * @exception Exception Description of the Exception
      */
     public AutomatedInstaller(String inputFilename) throws Exception
     {
@@ -107,9 +102,8 @@ public class AutomatedInstaller extends InstallerBase
     /**
      * Writes the uninstalldata.
      * 
-     * Unfortunately, Java doesn't allow multiple inheritance, so
-     * &lt;code&gt;AutomatedInstaller&lt;/code&gt; and &lt;code&gt;InstallerFrame&lt;/code&gt; can't
-     * share this code ... :-/
+     * Unfortunately, Java doesn't allow multiple inheritance, so &lt;code&gt;AutomatedInstaller&lt;/code&gt;
+     * and &lt;code&gt;InstallerFrame&lt;/code&gt; can't share this code ... :-/
      * 
      * TODO: We should try to fix this in the future.
      */
@@ -175,8 +169,7 @@ public class AutomatedInstaller extends InstallerBase
     /**
      * Runs the automated installation logic for each panel in turn.
      * 
-     * @param installdata
-     *            the installation data.
+     * @param installdata the installation data.
      * @throws Exception
      */
     private void doInstall(AutomatedInstallData installdata) throws Exception
@@ -272,10 +265,8 @@ public class AutomatedInstaller extends InstallerBase
     /**
      * Loads the xml data for the automated mode.
      * 
-     * @param input
-     *            The file containing the installation data.
-     * @exception Exception
-     *                thrown if there are problems reading the file.
+     * @param input The file containing the installation data.
+     * @exception Exception thrown if there are problems reading the file.
      */
     public XMLElement getXMLData(File input) throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/AutomatedInstaller.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,36 +1,33 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Tino Schwarze, Julien Ponge
- *
- *  File :               CompileHandler.java
- *  Description :        A panel to compile files after installation
- *  Author's email :     tino.schwarze@informatik.tu-chemnitz.de
- *  Author's Website :   http://www.tisc.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 /**
  * Interface for monitoring compilation progress.
  * 
- * This is used by &lt;code&gt;CompilePanel&lt;/code&gt;, &lt;code&gt;CompileWorker&lt;/code&gt;
- * and &lt;code&gt;CompilePanelAutomationHelper&lt;/code&gt; to display the progress of
- * the compilation. Most of the functionality, however, is inherited from
- * interface com.izforge.izpack.util.AbstractUIProgressHandler
+ * This is used by &lt;code&gt;CompilePanel&lt;/code&gt;, &lt;code&gt;CompileWorker&lt;/code&gt; and
+ * &lt;code&gt;CompilePanelAutomationHelper&lt;/code&gt; to display the progress of the compilation. Most of
+ * the functionality, however, is inherited from interface
+ * com.izforge.izpack.util.AbstractUIProgressHandler
  * 
  * @author Tino Schwarze
  * @see com.izforge.izpack.util.AbstractUIProgressHandler
@@ -41,15 +38,12 @@ public interface CompileHandler extends com.izforge.izpack.util.AbstractUIProgre
     /**
      * An error was encountered.
      * 
-     * This method should notify the user of the error and request a choice
-     * whether to continue, abort or reconfigure. It should alter the error
-     * accordingly.
+     * This method should notify the user of the error and request a choice whether to continue,
+     * abort or reconfigure. It should alter the error accordingly.
      * 
-     * Although a CompileResult is passed in, the method is only called if
-     * something failed.
+     * Although a CompileResult is passed in, the method is only called if something failed.
      * 
-     * @param error
-     *            the error to handle
+     * @param error the error to handle
      */
     public void handleCompileError(CompileResult error);
 </diff>
      <filename>src/lib/com/izforge/izpack/installer/CompileHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,37 +1,34 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Tino Schwarze
- *
- *  Description :        Class to encapsulate the result of compilation
- *  Author's email :     tino.schwarze@community4you.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 /**
  * This class describes the result of the compilation.
  * 
- * This class is here because error handling is not straight-forward with regard
- * to compilation.
+ * This class is here because error handling is not straight-forward with regard to compilation.
  * 
- * The error condition consists of an error message, the full command line which
- * failed to execute plus it's stdout and stderr. The reason for this class to
- * exist is that there are three possible reactions to the error (chosen by the
- * user).
+ * The error condition consists of an error message, the full command line which failed to execute
+ * plus it's stdout and stderr. The reason for this class to exist is that there are three possible
+ * reactions to the error (chosen by the user).
  * &lt;ol&gt;
  * &lt;li&gt;abort&lt;/li&gt;
  * &lt;li&gt;ignore (continue anyway)&lt;/li&gt;
@@ -84,14 +81,10 @@ public class CompileResult
     /**
      * creates a new CompileResult with status FAILED
      * 
-     * @param message
-     *            description of the exception
-     * @param cmdline
-     *            full command line of failed command
-     * @param stdout
-     *            standard output of failed command
-     * @param stderr
-     *            standard error of failed command
+     * @param message description of the exception
+     * @param cmdline full command line of failed command
+     * @param stdout standard output of failed command
+     * @param stderr standard error of failed command
      */
     public CompileResult(String message, String[] cmdline, String stdout, String stderr)
     {
@@ -161,8 +154,7 @@ public class CompileResult
     /**
      * return error message
      * 
-     * @return the error message describing the action that failed (might be
-     *         null)
+     * @return the error message describing the action that failed (might be null)
      */
     public String getMessage()
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/CompileResult.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge, Tino Schwarze
- *
- *  File :               CompilePanel.java
- *  Description :        A panel to compile files after installation
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.File;
@@ -96,10 +93,8 @@ public class CompileWorker implements Runnable
     /**
      * The constructor.
      * 
-     * @param idata
-     *            The installation data.
-     * @param handler
-     *            The handler to notify of progress.
+     * @param idata The installation data.
+     * @param handler The handler to notify of progress.
      */
     public CompileWorker(AutomatedInstallData idata, CompileHandler handler) throws IOException
     {
@@ -128,8 +123,7 @@ public class CompileWorker implements Runnable
      * 
      * The compiler is checked before compilation starts.
      * 
-     * @param compiler
-     *            compiler to use (not checked)
+     * @param compiler compiler to use (not checked)
      */
     public void setCompiler(String compiler)
     {
@@ -768,17 +762,15 @@ public class CompileWorker implements Runnable
          * This performs two steps:
          * &lt;ol&gt;
          * &lt;li&gt;check whether we can successfully call &quot;compiler -help&quot;&lt;/li&gt;
-         * &lt;li&gt;check whether we can successfully call &quot;compiler -help
-         * arguments&quot; (not all compilers return an error here)&lt;/li&gt;
+         * &lt;li&gt;check whether we can successfully call &quot;compiler -help arguments&quot; (not all compilers
+         * return an error here)&lt;/li&gt;
          * &lt;/ol&gt;
          * 
-         * On failure, the method CompileHandler#errorCompile is called with a
-         * descriptive error message.
+         * On failure, the method CompileHandler#errorCompile is called with a descriptive error
+         * message.
          * 
-         * @param compiler
-         *            the compiler to use
-         * @param arguments
-         *            additional arguments to pass to the compiler
+         * @param compiler the compiler to use
+         * @param arguments additional arguments to pass to the compiler
          * @return false on error
          */
         public CompileResult checkCompiler(String compiler, ArrayList arguments)</diff>
      <filename>src/lib/com/izforge/izpack/installer/CompileWorker.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               GUIInstaller.java
- *  Description :        The graphical installer class.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.awt.Color;
@@ -97,8 +92,7 @@ public class GUIInstaller extends InstallerBase
     /**
      * The constructor.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     public GUIInstaller() throws Exception
     {
@@ -145,8 +139,7 @@ public class GUIInstaller extends InstallerBase
     /**
      * Checks the Java version.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void checkJavaVersion() throws Exception
     {
@@ -172,8 +165,7 @@ public class GUIInstaller extends InstallerBase
     /**
      * Loads the suitable langpack.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void loadLangPack() throws Exception
     {
@@ -224,8 +216,7 @@ public class GUIInstaller extends InstallerBase
      * Returns an ArrayList of the available langpacks ISO3 codes.
      * 
      * @return The available langpacks list.
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private List getAvailableLangPacks() throws Exception
     {
@@ -241,8 +232,7 @@ public class GUIInstaller extends InstallerBase
     /**
      * Loads the suitable L&amp;F.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     protected void loadLookAndFeel() throws Exception
     {
@@ -382,8 +372,7 @@ public class GUIInstaller extends InstallerBase
     /**
      * Loads the GUI.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void loadGUI() throws Exception
     {
@@ -398,11 +387,9 @@ public class GUIInstaller extends InstallerBase
     }
 
     /**
-     * Returns whether flags should be used in the language selection dialog or
-     * not.
+     * Returns whether flags should be used in the language selection dialog or not.
      * 
-     * @return whether flags should be used in the language selection dialog or
-     *         not
+     * @return whether flags should be used in the language selection dialog or not
      */
     protected boolean useFlags()
     {
@@ -413,9 +400,8 @@ public class GUIInstaller extends InstallerBase
     }
 
     /**
-     * Returns the type in which the language should be displayed in the
-     * language selction dialog. Possible are &quot;iso3&quot;, &quot;native&quot; and
-     * &quot;usingDefault&quot;.
+     * Returns the type in which the language should be displayed in the language selction dialog.
+     * Possible are &quot;iso3&quot;, &quot;native&quot; and &quot;usingDefault&quot;.
      * 
      * @return language display type
      */
@@ -434,10 +420,9 @@ public class GUIInstaller extends InstallerBase
     }
 
     /**
-     * Used to prompt the user for the language. Languages can be displayed in
-     * iso3 or the native notation or the notation of the default locale.
-     * Revising to native notation is based on code from Christian Murphy (patch
-     * #395).
+     * Used to prompt the user for the language. Languages can be displayed in iso3 or the native
+     * notation or the notation of the default locale. Revising to native notation is based on code
+     * from Christian Murphy (patch #395).
      * 
      * @author Julien Ponge
      * @author Christian Murphy
@@ -466,8 +451,7 @@ public class GUIInstaller extends InstallerBase
         /**
          * The constructor.
          * 
-         * @param items
-         *            The items to display in the box.
+         * @param items The items to display in the box.
          */
         public LanguageDialog(JFrame frame, Object[] items)
         {
@@ -554,8 +538,7 @@ public class GUIInstaller extends InstallerBase
         /**
          * Revises iso3 language items depending on the language display type.
          * 
-         * @param items
-         *            item array to be revised
+         * @param items item array to be revised
          * @return the revised array
          */
         private Object[] reviseItems(Object[] items)
@@ -574,15 +557,12 @@ public class GUIInstaller extends InstallerBase
         }
 
         /**
-         * Expands the given iso3 codes to language names. If a testFont is
-         * given, the codes are tested whether they can displayed or not. If
-         * not, or no font given, the language name will be returned as written
-         * in the default language of this VM.
+         * Expands the given iso3 codes to language names. If a testFont is given, the codes are
+         * tested whether they can displayed or not. If not, or no font given, the language name
+         * will be returned as written in the default language of this VM.
          * 
-         * @param items
-         *            item array to be expanded to the language name
-         * @param testFont
-         *            font to test wheter a name is displayable
+         * @param items item array to be expanded to the language name
+         * @param testFont font to test wheter a name is displayable
          * @return aray of expanded items
          */
         private Object[] expandItems(Object[] items, Font testFont)
@@ -605,15 +585,12 @@ public class GUIInstaller extends InstallerBase
         }
 
         /**
-         * Expands the given iso3 code to a language name. If a testFont is
-         * given, the code will be tested whether it is displayable or not. If
-         * not, or no font given, the language name will be returned as written
-         * in the default language of this VM.
+         * Expands the given iso3 code to a language name. If a testFont is given, the code will be
+         * tested whether it is displayable or not. If not, or no font given, the language name will
+         * be returned as written in the default language of this VM.
          * 
-         * @param item
-         *            item to be expanded to the language name
-         * @param testFont
-         *            font to test wheter the name is displayable
+         * @param item item to be expanded to the language name
+         * @param testFont font to test wheter the name is displayable
          * @return expanded item
          */
         private Object expandItem(Object item, Font testFont)
@@ -679,8 +656,7 @@ public class GUIInstaller extends InstallerBase
         /**
          * Sets the selection.
          * 
-         * @param item
-         *            The item to be selected.
+         * @param item The item to be selected.
          */
         public void setSelection(Object item)
         {
@@ -705,8 +681,7 @@ public class GUIInstaller extends InstallerBase
         /**
          * Closer.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void actionPerformed(ActionEvent e)
         {
@@ -724,8 +699,7 @@ public class GUIInstaller extends InstallerBase
             /**
              * We can't avoid the exit here, so don't call exit anywhere else.
              * 
-             * @param e
-             *            the event.
+             * @param e the event.
              */
             public void windowClosing(WindowEvent e)
             {
@@ -758,16 +732,11 @@ public class GUIInstaller extends InstallerBase
         /**
          * Returns a suitable cell.
          * 
-         * @param list
-         *            The list.
-         * @param value
-         *            The object.
-         * @param index
-         *            The index.
-         * @param isSelected
-         *            true if it is selected.
-         * @param cellHasFocus
-         *            Description of the Parameter
+         * @param list The list.
+         * @param value The object.
+         * @param index The index.
+         * @param isSelected true if it is selected.
+         * @param cellHasFocus Description of the Parameter
          * @return The cell.
          */
         public Component getListCellRendererComponent(JList list, Object value, int index,</diff>
      <filename>src/lib/com/izforge/izpack/installer/GUIInstaller.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               InstallData.java
- *  Description :        Installer internal data.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.awt.Color;
@@ -30,9 +25,9 @@ import java.io.Serializable;
 import com.izforge.izpack.GUIPrefs;
 
 /**
- * Encloses information about the install process. This class is implemented as
- * a singleton which can be easily accessed by different components of the
- * installer. However, this implementation is not thread safe.
+ * Encloses information about the install process. This class is implemented as a singleton which
+ * can be easily accessed by different components of the installer. However, this implementation is
+ * not thread safe.
  * 
  * @author Julien Ponge &lt;julien@izforge.com&gt;
  * @author Johannes Lehtinen &lt;johannes.lehtinen@iki.fi&gt;</diff>
      <filename>src/lib/com/izforge/izpack/installer/InstallData.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               Installer.java
- *  Description :        Entry point, selects between GUI and headless modes.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 /**
@@ -35,8 +32,7 @@ public class Installer
     /**
      * The main method (program entry point).
      * 
-     * @param args
-     *            The arguments passed on the command-line.
+     * @param args The arguments passed on the command-line.
      */
     public static void main(String[] args)
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/Installer.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               InstallerBase.java
- *  Description :        Utility functions shared by the GUI and headless installers.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.File;
@@ -46,8 +41,8 @@ import com.izforge.izpack.util.OsVersion;
 import com.izforge.izpack.util.VariableSubstitutor;
 
 /**
- * Common utility functions for the GUI and text installers. (Do not import
- * swing/awt classes to this class.)
+ * Common utility functions for the GUI and text installers. (Do not import swing/awt classes to
+ * this class.)
  * 
  * @author Jonathan Halliday
  * @author Julien Ponge
@@ -56,23 +51,20 @@ public class InstallerBase
 {
 
     /**
-     * The base name of the XML file that specifies the custom langpack.
-     * Searched is for the file with the name expanded by _ISO3.
+     * The base name of the XML file that specifies the custom langpack. Searched is for the file
+     * with the name expanded by _ISO3.
      */
     protected static final String LANG_FILE_NAME = &quot;CustomLangpack.xml&quot;;
 
     /**
-     * Loads the installation data. Also sets environment variables to
-     * &lt;code&gt;installdata&lt;/code&gt;. All system properties are available as
-     * $SYSTEM_&lt;variable&gt; where &lt;variable&gt; is the actual name _BUT_ with all
-     * separators replaced by '_'. Properties with null values are never stored.
+     * Loads the installation data. Also sets environment variables to &lt;code&gt;installdata&lt;/code&gt;.
+     * All system properties are available as $SYSTEM_&lt;variable&gt; where &lt;variable&gt; is the actual
+     * name _BUT_ with all separators replaced by '_'. Properties with null values are never stored.
      * Example: $SYSTEM_java_version or $SYSTEM_os_name
      * 
-     * @param installdata
-     *            Where to store the installation data.
+     * @param installdata Where to store the installation data.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     public void loadInstallData(AutomatedInstallData installdata) throws Exception
     {
@@ -203,11 +195,10 @@ public class InstallerBase
     }
 
     /**
-     * Add the contents of a custom langpack (if exist) to the previos loaded
-     * comman langpack. If not exist, trace an info and do nothing more.
+     * Add the contents of a custom langpack (if exist) to the previos loaded comman langpack. If
+     * not exist, trace an info and do nothing more.
      * 
-     * @param idata
-     *            install data to be used
+     * @param idata install data to be used
      */
     protected void addCustomLangpack(AutomatedInstallData idata)
     {
@@ -279,11 +270,9 @@ public class InstallerBase
     }
 
     /**
-     * Loads custom data like listener and lib references if exist and fills the
-     * installdata.
+     * Loads custom data like listener and lib references if exist and fills the installdata.
      * 
-     * @param installdata
-     *            installdata into which the custom action data should be stored
+     * @param installdata installdata into which the custom action data should be stored
      * @throws Exception
      */
     private void loadCustomData(AutomatedInstallData installdata) throws Exception</diff>
      <filename>src/lib/com/izforge/izpack/installer/InstallerBase.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               InstallerException.java
- *  Description :        Exception for custom actions at install time.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
  *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 /**</diff>
      <filename>src/lib/com/izforge/izpack/installer/InstallerException.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               InstallerFrame.java
- *  Description :        The Installer frame class.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.awt.BorderLayout;
@@ -145,12 +140,9 @@ public class InstallerFrame extends JFrame
     /**
      * The constructor (normal mode).
      * 
-     * @param title
-     *            The window title.
-     * @param installdata
-     *            The installation data.
-     * @exception Exception
-     *                Description of the Exception
+     * @param title The window title.
+     * @param installdata The installation data.
+     * @exception Exception Description of the Exception
      */
     public InstallerFrame(String title, InstallData installdata) throws Exception
     {
@@ -174,8 +166,7 @@ public class InstallerFrame extends JFrame
     /**
      * Loads the panels.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void loadPanels() throws Exception
     {
@@ -220,8 +211,7 @@ public class InstallerFrame extends JFrame
     /**
      * Loads the icons.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void loadIcons() throws Exception
     {
@@ -391,8 +381,7 @@ public class InstallerFrame extends JFrame
     /**
      * Switches the current panel.
      * 
-     * @param last
-     *            Description of the Parameter
+     * @param last Description of the Parameter
      */
     protected void switchPanel(int last)
     {
@@ -452,8 +441,8 @@ public class InstallerFrame extends JFrame
                 }
 
                 /*
-                 * On editable text components position the caret to the end of
-                 * the cust existent text.
+                 * On editable text components position the caret to the end of the cust existent
+                 * text.
                  */
                 if (inFoc instanceof JTextComponent)
                 {
@@ -652,8 +641,7 @@ public class InstallerFrame extends JFrame
     /**
      * Gets the stream to a resource.
      * 
-     * @param res
-     *            The resource id.
+     * @param res The resource id.
      * @return The resource value, null if not found
      */
     public InputStream getResource(String res) throws Exception
@@ -682,8 +670,7 @@ public class InstallerFrame extends JFrame
     /**
      * Centers a window on screen.
      * 
-     * @param frame
-     *            The window tp center.
+     * @param frame The window tp center.
      */
     public void centerFrame(Window frame)
     {
@@ -706,20 +693,13 @@ public class InstallerFrame extends JFrame
     /**
      * Sets the parameters of a GridBagConstraints object.
      * 
-     * @param gbc
-     *            The constraints object.
-     * @param gx
-     *            The x coordinates.
-     * @param gy
-     *            The y coordinates.
-     * @param gw
-     *            The width.
-     * @param wx
-     *            The x wheight.
-     * @param wy
-     *            The y wheight.
-     * @param gh
-     *            Description of the Parameter
+     * @param gbc The constraints object.
+     * @param gx The x coordinates.
+     * @param gy The y coordinates.
+     * @param gw The width.
+     * @param wx The x wheight.
+     * @param wy The y wheight.
+     * @param gh Description of the Parameter
      */
     public void buildConstraints(GridBagConstraints gbc, int gx, int gy, int gw, int gh, double wx,
             double wy)
@@ -787,8 +767,7 @@ public class InstallerFrame extends JFrame
     /**
      * Recursive files wiper.
      * 
-     * @param file
-     *            The file to wipe.
+     * @param file The file to wipe.
      */
     private void cleanWipe(File file)
     {
@@ -805,8 +784,7 @@ public class InstallerFrame extends JFrame
     /**
      * Launches the installation.
      * 
-     * @param listener
-     *            The installation listener.
+     * @param listener The installation listener.
      */
     public void install(AbstractUIProgressHandler listener)
     {
@@ -817,12 +795,9 @@ public class InstallerFrame extends JFrame
     /**
      * Writes an XML tree.
      * 
-     * @param root
-     *            The XML tree to write out.
-     * @param out
-     *            The stream to write on.
-     * @exception Exception
-     *                Description of the Exception
+     * @param root The XML tree to write out.
+     * @param out The stream to write on.
+     * @exception Exception Description of the Exception
      */
     public void writeXMLTree(XMLElement root, OutputStream out) throws Exception
     {
@@ -831,8 +806,7 @@ public class InstallerFrame extends JFrame
     }
 
     /**
-     * Changes the quit button text. If &lt;tt&gt;text&lt;/tt&gt; is null, the default
-     * quit text is used.
+     * Changes the quit button text. If &lt;tt&gt;text&lt;/tt&gt; is null, the default quit text is used.
      */
     public void setQuitButtonText(String text)
     {
@@ -841,8 +815,8 @@ public class InstallerFrame extends JFrame
     }
 
     /*
-     * FocusTraversalPolicy objects to handle keybord blocking; the declaration
-     * os Object allows to use a pre version 1.4 VM.
+     * FocusTraversalPolicy objects to handle keybord blocking; the declaration os Object allows to
+     * use a pre version 1.4 VM.
      */
     private Object usualFTP = null;
 
@@ -955,8 +929,7 @@ public class InstallerFrame extends JFrame
         /**
          * Actions handler.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void actionPerformed(ActionEvent e)
         {
@@ -985,8 +958,7 @@ public class InstallerFrame extends JFrame
         /**
          * We can't avoid the exit here, so don't call exit anywhere else.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void windowClosing(WindowEvent e)
         {
@@ -1015,8 +987,7 @@ public class InstallerFrame extends JFrame
         /**
          * Only accepts the block panel
          * 
-         * @param aComp
-         *            the component to check
+         * @param aComp the component to check
          * @return true if aComp is the block panel
          */
         protected boolean accept(Component aComp)</diff>
      <filename>src/lib/com/izforge/izpack/installer/InstallerFrame.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,20 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               IzPanel.java
- *  Description :        The class for the panels.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 package com.izforge.izpack.installer;
 
@@ -46,9 +40,8 @@ import com.izforge.izpack.util.AbstractUIHandler;
 import com.izforge.izpack.util.MultiLineLabel;
 
 /**
- * Defines the base class for the IzPack panels. Any panel should be a subclass
- * of it and should belong to the &lt;code&gt;com.izforge.izpack.panels&lt;/code&gt;
- * package.
+ * Defines the base class for the IzPack panels. Any panel should be a subclass of it and should
+ * belong to the &lt;code&gt;com.izforge.izpack.panels&lt;/code&gt; package.
  * 
  * @author Julien Ponge
  */
@@ -64,8 +57,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     protected Component initialFocus = null;
 
     /**
-     * The installer internal data (actually a melting-pot class with all-public
-     * fields.
+     * The installer internal data (actually a melting-pot class with all-public fields.
      */
     protected InstallData idata;
 
@@ -84,10 +76,8 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent IzPack installer frame.
-     * @param idata
-     *            The installer internal data.
+     * @param parent The parent IzPack installer frame.
+     * @param idata The installer internal data.
      */
     public IzPanel(InstallerFrame parent, InstallData idata)
     {
@@ -98,9 +88,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Indicates wether the panel has been validated or not. The installer won't
-     * let the user go further through the installation process until the panel
-     * is validated. Default behaviour is to return &lt;code&gt;true&lt;/code&gt;.
+     * Indicates wether the panel has been validated or not. The installer won't let the user go
+     * further through the installation process until the panel is validated. Default behaviour is
+     * to return &lt;code&gt;true&lt;/code&gt;.
      * 
      * @return A boolean stating wether the panel has been validated or not.
      */
@@ -110,30 +100,27 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * This method is called when the panel becomes active. Default is to do
-     * nothing : feel free to implement what you need in your subclasses. A
-     * panel becomes active when the user reaches it during the installation
-     * process.
+     * This method is called when the panel becomes active. Default is to do nothing : feel free to
+     * implement what you need in your subclasses. A panel becomes active when the user reaches it
+     * during the installation process.
      */
     public void panelActivate()
     {
     }
 
     /**
-     * This method is called when the panel gets desactivated, when the user
-     * switches to the next panel. By default it doesn't do anything.
+     * This method is called when the panel gets desactivated, when the user switches to the next
+     * panel. By default it doesn't do anything.
      */
     public void panelDeactivate()
     {
     }
 
     /**
-     * Asks the panel to set its own XML data that can be brought back for an
-     * automated installation process. Use it as a blackbox if your panel needs
-     * to do something even in automated mode.
+     * Asks the panel to set its own XML data that can be brought back for an automated installation
+     * process. Use it as a blackbox if your panel needs to do something even in automated mode.
      * 
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     public void makeXMLData(XMLElement panelRoot)
     {
@@ -142,12 +129,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Ask the user a question.
      * 
-     * @param title
-     *            Message title.
-     * @param question
-     *            The question.
-     * @param choices
-     *            The set of choices to present.
+     * @param title Message title.
+     * @param question The question.
+     * @param choices The set of choices to present.
      * 
      * @return The user's choice.
      * 
@@ -161,14 +145,10 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Ask the user a question.
      * 
-     * @param title
-     *            Message title.
-     * @param question
-     *            The question.
-     * @param choices
-     *            The set of choices to present.
-     * @param default_choice
-     *            The default choice. (-1 = no default choice)
+     * @param title Message title.
+     * @param question The question.
+     * @param choices The set of choices to present.
+     * @param default_choice The default choice. (-1 = no default choice)
      * 
      * @return The user's choice.
      * @see AbstractUIHandler#askQuestion(String, String, int, int)
@@ -197,8 +177,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Notify the user about something.
      * 
-     * @param message
-     *            The notification.
+     * @param message The notification.
      */
     public void emitNotification(String message)
     {
@@ -208,8 +187,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Warn the user about something.
      * 
-     * @param message
-     *            The warning message.
+     * @param message The warning message.
      */
     public boolean emitWarning(String title, String message)
     {
@@ -221,8 +199,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Notify the user of some error.
      * 
-     * @param message
-     *            The error message.
+     * @param message The error message.
      */
     public void emitError(String title, String message)
     {
@@ -230,11 +207,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns the component which should be get the focus at activation of this
-     * panel.
+     * Returns the component which should be get the focus at activation of this panel.
      * 
-     * @return the component which should be get the focus at activation of this
-     *         panel
+     * @return the component which should be get the focus at activation of this panel
      */
     public Component getInitialFocus()
     {
@@ -242,11 +217,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Sets the component which should be get the focus at activation of this
-     * panel.
+     * Sets the component which should be get the focus at activation of this panel.
      * 
-     * @param component
-     *            which should be get the focus at activation of this panel
+     * @param component which should be get the focus at activation of this panel
      */
     public void setInitialFocus(Component component)
     {
@@ -254,15 +227,12 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Calls the langpack of parent InstallerFrame for the String
-     * &lt;tt&gt;RuntimeClassName.subkey&lt;/tt&gt;. Do not add a point infront of
-     * subkey, it is always added in this method.
+     * Calls the langpack of parent InstallerFrame for the String &lt;tt&gt;RuntimeClassName.subkey&lt;/tt&gt;.
+     * Do not add a point infront of subkey, it is always added in this method.
      * 
-     * @param subkey
-     *            the subkey for the string which should be returned
-     * @param alternateClass
-     *            the short name of the class which should be used if no string
-     *            is present with the runtime class name
+     * @param subkey the subkey for the string which should be returned
+     * @param alternateClass the short name of the class which should be used if no string is
+     * present with the runtime class name
      * @return the founded string
      */
     public String getI18nStringForClass(String subkey, String alternateClass)
@@ -296,17 +266,13 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     // ------------- Helper for common used components ----- START ---
 
     /**
-     * Creates a label via LabelFactory with the given ids and the given
-     * horizontal alignment. If the icon id is null, the label will be created
-     * also. The strings are the ids for the text in langpack and the icon in
-     * icons of the installer frame.
+     * Creates a label via LabelFactory with the given ids and the given horizontal alignment. If
+     * the icon id is null, the label will be created also. The strings are the ids for the text in
+     * langpack and the icon in icons of the installer frame.
      * 
-     * @param textId
-     *            id string for the text
-     * @param iconId
-     *            id string for the icon
-     * @param pos
-     *            horizontal alignment
+     * @param textId id string for the text
+     * @param iconId id string for the icon
+     * @param pos horizontal alignment
      * @return the newly created label
      */
     public JLabel createLabel(String textId, String iconId, int pos)
@@ -319,12 +285,11 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Creates a multi line label with the language dependent text given by the
-     * text id. The strings is the id for the text in langpack of the installer
-     * frame. The horizontal alignment will be LEFT.
+     * Creates a multi line label with the language dependent text given by the text id. The strings
+     * is the id for the text in langpack of the installer frame. The horizontal alignment will be
+     * LEFT.
      * 
-     * @param textId
-     *            id string for the text
+     * @param textId id string for the text
      * @return the newly created multi line label
      */
     public MultiLineLabel createMultiLineLabelLang(String textId)
@@ -333,11 +298,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Creates a multi line label with the given text. The horizontal alignment
-     * will be LEFT.
+     * Creates a multi line label with the given text. The horizontal alignment will be LEFT.
      * 
-     * @param text
-     *            text to be used in the label
+     * @param text text to be used in the label
      * @return the newly created multi line label
      */
     public MultiLineLabel createMultiLineLabel(String text)
@@ -346,17 +309,13 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Creates a label via LabelFactory with the given text, the given icon id
-     * and the given horizontal alignment. If the icon id is null, the label
-     * will be created also. The strings are the ids for the text in langpack
-     * and the icon in icons of the installer frame.
+     * Creates a label via LabelFactory with the given text, the given icon id and the given
+     * horizontal alignment. If the icon id is null, the label will be created also. The strings are
+     * the ids for the text in langpack and the icon in icons of the installer frame.
      * 
-     * @param text
-     *            text to be used in the label
-     * @param iconId
-     *            id string for the icon
-     * @param pos
-     *            horizontal alignment
+     * @param text text to be used in the label
+     * @param iconId id string for the icon
+     * @param pos horizontal alignment
      * @return the created multi line label
      */
     public MultiLineLabel createMultiLineLabel(String text, String iconId, int pos)
@@ -398,8 +357,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     /**
      * Sets the default GridBagConstraints of this panel to the given object.
      * 
-     * @param constraints
-     *            which should be set as default for this object
+     * @param constraints which should be set as default for this object
      */
     public void setDefaultGridBagConstraints(GridBagConstraints constraints)
     {
@@ -418,16 +376,13 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints with the given values and the
-     * values from the defaultGridBagConstraints for the other parameters.
+     * Returns a newly created GridBagConstraints with the given values and the values from the
+     * defaultGridBagConstraints for the other parameters.
      * 
-     * @param gridx
-     *            value to be used for the new constraint
-     * @param gridy
-     *            value to be used for the new constraint
-     * @return newly created GridBagConstraints with the given values and the
-     *         values from the defaultGridBagConstraints for the other
-     *         parameters
+     * @param gridx value to be used for the new constraint
+     * @param gridy value to be used for the new constraint
+     * @return newly created GridBagConstraints with the given values and the values from the
+     * defaultGridBagConstraints for the other parameters
      */
     public GridBagConstraints getNewGridBagConstraints(int gridx, int gridy)
     {
@@ -439,20 +394,15 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints with the given values and the
-     * values from the defaultGridBagConstraints for the other parameters.
+     * Returns a newly created GridBagConstraints with the given values and the values from the
+     * defaultGridBagConstraints for the other parameters.
      * 
-     * @param gridx
-     *            value to be used for the new constraint
-     * @param gridy
-     *            value to be used for the new constraint
-     * @param gridwidth
-     *            value to be used for the new constraint
-     * @param gridheight
-     *            value to be used for the new constraint
-     * @return newly created GridBagConstraints with the given values and the
-     *         values from the defaultGridBagConstraints for the other
-     *         parameters
+     * @param gridx value to be used for the new constraint
+     * @param gridy value to be used for the new constraint
+     * @param gridwidth value to be used for the new constraint
+     * @param gridheight value to be used for the new constraint
+     * @return newly created GridBagConstraints with the given values and the values from the
+     * defaultGridBagConstraints for the other parameters
      */
     public GridBagConstraints getNewGridBagConstraints(int gridx, int gridy, int gridwidth,
             int gridheight)
@@ -464,11 +414,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints for the next column of the
-     * current layout row.
+     * Returns a newly created GridBagConstraints for the next column of the current layout row.
      * 
-     * @return a newly created GridBagConstraints for the next column of the
-     *         current layout row
+     * @return a newly created GridBagConstraints for the next column of the current layout row
      * 
      */
     public GridBagConstraints getNextXGridBagConstraints()
@@ -479,15 +427,13 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints for the next column of the
-     * current layout row using the given parameters.
+     * Returns a newly created GridBagConstraints for the next column of the current layout row
+     * using the given parameters.
      * 
-     * @param gridwidth
-     *            width for this constraint
-     * @param gridheight
-     *            height for this constraint
-     * @return a newly created GridBagConstraints for the next column of the
-     *         current layout row using the given parameters
+     * @param gridwidth width for this constraint
+     * @param gridheight height for this constraint
+     * @return a newly created GridBagConstraints for the next column of the current layout row
+     * using the given parameters
      */
     private GridBagConstraints getNextXGridBagConstraints(int gridwidth, int gridheight)
     {
@@ -498,8 +444,7 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints with column 0 for the next
-     * row.
+     * Returns a newly created GridBagConstraints with column 0 for the next row.
      * 
      * @return a newly created GridBagConstraints with column 0 for the next row
      * 
@@ -513,15 +458,13 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Returns a newly created GridBagConstraints with column 0 for the next row
-     * using the given parameters.
+     * Returns a newly created GridBagConstraints with column 0 for the next row using the given
+     * parameters.
      * 
-     * @param gridwidth
-     *            width for this constraint
-     * @param gridheight
-     *            height for this constraint
-     * @return a newly created GridBagConstraints with column 0 for the next row
-     *         using the given parameters
+     * @param gridwidth width for this constraint
+     * @param gridheight height for this constraint
+     * @return a newly created GridBagConstraints with column 0 for the next row using the given
+     * parameters
      */
     public GridBagConstraints getNextYGridBagConstraints(int gridwidth, int gridheight)
     {
@@ -533,9 +476,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Start layout determining. If it is needed, a dummy component will be
-     * created as first row. This will be done, if the IzPack variable
-     * &lt;code&gt;IzPanel.LayoutType&lt;/code&gt; has the value &quot;BOTTOM&quot;.
+     * Start layout determining. If it is needed, a dummy component will be created as first row.
+     * This will be done, if the IzPack variable &lt;code&gt;IzPanel.LayoutType&lt;/code&gt; has the value
+     * &quot;BOTTOM&quot;.
      */
     public void startGridBagLayout()
     {
@@ -562,9 +505,9 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * Complete layout determining. If it is needed, a dummy component will be
-     * created as last row. This will be done, if the IzPack variable
-     * &lt;code&gt;IzPanel.LayoutType&lt;/code&gt; has the value &quot;TOP&quot;.
+     * Complete layout determining. If it is needed, a dummy component will be created as last row.
+     * This will be done, if the IzPack variable &lt;code&gt;IzPanel.LayoutType&lt;/code&gt; has the value
+     * &quot;TOP&quot;.
      */
     public void completeGridBagLayout()
     {
@@ -586,11 +529,10 @@ public class IzPanel extends JPanel implements AbstractUIHandler
 
     // ------------------- Summary stuff -------------------- START ---
     /**
-     * This method will be called from the SummaryPanel to get the summary of
-     * this class which should be placed in the SummaryPanel. The returned text
-     * should not contain a caption of this item. The caption will be requested
-     * from the method getCaption. If &lt;code&gt;null&lt;/code&gt; returns, no summary
-     * for this panel will be generated. Default behaviour is to return
+     * This method will be called from the SummaryPanel to get the summary of this class which
+     * should be placed in the SummaryPanel. The returned text should not contain a caption of this
+     * item. The caption will be requested from the method getCaption. If &lt;code&gt;null&lt;/code&gt;
+     * returns, no summary for this panel will be generated. Default behaviour is to return
      * &lt;code&gt;null&lt;/code&gt;.
      * 
      * @return the summary for this class
@@ -601,12 +543,11 @@ public class IzPanel extends JPanel implements AbstractUIHandler
     }
 
     /**
-     * This method will be called from the SummaryPanel to get the caption for
-     * this class which should be placed in the SummaryPanel. If
-     * &lt;code&gt;null&lt;/code&gt; returns, no summary for this panel will be generated.
-     * Default behaviour is to return the string given by langpack for the key
-     * &lt;code&gt;&amp;lt;current class name&gt;.summaryCaption&amp;gt;&lt;/code&gt; if exist, else
-     * the string &amp;quot;summaryCaption.&amp;lt;ClassName&amp;gt;&amp;quot;.
+     * This method will be called from the SummaryPanel to get the caption for this class which
+     * should be placed in the SummaryPanel. If &lt;code&gt;null&lt;/code&gt; returns, no summary for this
+     * panel will be generated. Default behaviour is to return the string given by langpack for the
+     * key &lt;code&gt;&amp;lt;current class name&gt;.summaryCaption&amp;gt;&lt;/code&gt; if exist, else the string
+     * &amp;quot;summaryCaption.&amp;lt;ClassName&amp;gt;&amp;quot;.
      * 
      * @return the caption for this class
      */</diff>
      <filename>src/lib/com/izforge/izpack/installer/IzPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,38 +1,34 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               PanelAutomation.java
- *  Description :        Automation (silent install) Interface.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
  *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import net.n3.nanoxml.XMLElement;
 
 /**
- * Defines the Interface that must be implemented for running Panels in
- * automated (or &quot;silent&quot;, &quot;headless&quot;) install mode.
+ * Defines the Interface that must be implemented for running Panels in automated (or &quot;silent&quot;,
+ * &quot;headless&quot;) install mode.
  * 
- * Implementing classes MUST NOT link against awt/swing classes. Thus the Panels
- * cannot implement this interface directly, they should use e.g. helper classes
- * instead.
+ * Implementing classes MUST NOT link against awt/swing classes. Thus the Panels cannot implement
+ * this interface directly, they should use e.g. helper classes instead.
  * 
  * @see AutomatedInstaller
  * @author Jonathan Halliday
@@ -42,26 +38,20 @@ public interface PanelAutomation
 {
 
     /**
-     * Asks the panel to set its own XML data that can be brought back for an
-     * automated installation process. Use it as a blackbox if your panel needs
-     * to do something even in automated mode.
+     * Asks the panel to set its own XML data that can be brought back for an automated installation
+     * process. Use it as a blackbox if your panel needs to do something even in automated mode.
      * 
-     * @param installData
-     *            The installation data
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param installData The installation data
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     public void makeXMLData(AutomatedInstallData installData, XMLElement panelRoot);
 
     /**
-     * Makes the panel work in automated mode. Default is to do nothing, but any
-     * panel doing something 'effective' during the installation process should
-     * implement this method.
+     * Makes the panel work in automated mode. Default is to do nothing, but any panel doing
+     * something 'effective' during the installation process should implement this method.
      * 
-     * @param installData
-     *            The installation data
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param installData The installation data
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     public void runAutomated(AutomatedInstallData installData, XMLElement panelRoot);
 }</diff>
      <filename>src/lib/com/izforge/izpack/installer/PanelAutomation.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Tino Schwarze, Julien Ponge
- *
- *  File :               PanelAutomationHelper.java
- *  Description :        Provides generic UI handler functions for automated panels.
- *  Author's email :     tino.schwarze@informati.tu-chemnitz.de
- *  Author's Website :   http://www.tisc.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.installer;
@@ -28,8 +24,7 @@ package com.izforge.izpack.installer;
 import com.izforge.izpack.util.AbstractUIHandler;
 
 /**
- * Abstract class implementing basic functions needed by all panel automation
- * helpers.
+ * Abstract class implementing basic functions needed by all panel automation helpers.
  * 
  * @author tisc
  */
@@ -46,7 +41,7 @@ abstract public class PanelAutomationHelper implements AbstractUIHandler
 
     /*
      * @see com.izforge.izpack.util.AbstractUIHandler#emitWarning(java.lang.String,
-     *      java.lang.String)
+     * java.lang.String)
      */
     public boolean emitWarning(String title, String message)
     {
@@ -56,8 +51,7 @@ abstract public class PanelAutomationHelper implements AbstractUIHandler
     }
 
     /*
-     * @see com.izforge.izpack.util.AbstractUIHandler#emitError(java.lang.String,
-     *      java.lang.String)
+     * @see com.izforge.izpack.util.AbstractUIHandler#emitError(java.lang.String, java.lang.String)
      */
     public void emitError(String title, String message)
     {
@@ -66,7 +60,7 @@ abstract public class PanelAutomationHelper implements AbstractUIHandler
 
     /*
      * @see com.izforge.izpack.util.AbstractUIHandler#askQuestion(java.lang.String,
-     *      java.lang.String, int)
+     * java.lang.String, int)
      */
     public int askQuestion(String title, String question, int choices)
     {
@@ -76,7 +70,7 @@ abstract public class PanelAutomationHelper implements AbstractUIHandler
 
     /*
      * @see com.izforge.izpack.util.AbstractUIHandler#askQuestion(java.lang.String,
-     *      java.lang.String, int, int)
+     * java.lang.String, int, int)
      */
     public int askQuestion(String title, String question, int choices, int default_choice)
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/PanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge, Tino Schwarze
- *
- *  File :               CompilePanel.java
- *  Description :        A panel to compile files after installation
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.BufferedReader;
@@ -90,10 +87,8 @@ public class ProcessPanelWorker implements Runnable
     /**
      * The constructor.
      * 
-     * @param idata
-     *            The installation data.
-     * @param handler
-     *            The handler to notify of progress.
+     * @param idata The installation data.
+     * @param handler The handler to notify of progress.
      */
     public ProcessPanelWorker(AutomatedInstallData idata, AbstractUIProcessHandler handler)
             throws IOException
@@ -312,8 +307,7 @@ public class ProcessPanelWorker implements Runnable
     {
 
         /**
-         * @param handler
-         *            The UI handler for user interaction and to send output to.
+         * @param handler The UI handler for user interaction and to send output to.
          * @return true on success, false if processing should stop
          */
         public boolean run(AbstractUIProcessHandler handler, VariableSubstitutor vs);
@@ -505,8 +499,8 @@ public class ProcessPanelWorker implements Runnable
 
     /**
      * Tries to create a class that has an empty contstructor and a method
-     * run(AbstractUIProcessHandler, String[]) If found, it calls the method and
-     * processes all returned exceptions
+     * run(AbstractUIProcessHandler, String[]) If found, it calls the method and processes all
+     * returned exceptions
      */
     private static class ExecutableClass implements Processable
     {
@@ -595,26 +589,23 @@ public class ProcessPanelWorker implements Runnable
 
     /*------------------------ ExecuteForPack PATCH -------------------------*/
     /*
-     * Verifies if the job is required for any of the packs listed. The job is
-     * required for a pack in the list if that pack is actually selected for
-     * installation. &lt;br&gt;&lt;br&gt; &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt; If the list of selected packs
-     * is empty then &lt;code&gt;true&lt;/code&gt; is always returned. The same is true if
-     * the &lt;code&gt;packs&lt;/code&gt; list is empty.
+     * Verifies if the job is required for any of the packs listed. The job is required for a pack
+     * in the list if that pack is actually selected for installation. &lt;br&gt;&lt;br&gt; &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
+     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always returned. The same
+     * is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
      * 
-     * @param packs a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of
-     * the strings denotes a pack for which the schortcut should be created if
-     * the pack is actually installed.
+     * @param packs a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of the strings denotes
+     * a pack for which the schortcut should be created if the pack is actually installed.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the shortcut is required for at least on
-     * pack in the list, otherwise returns &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the shortcut is required for at least on pack in the list,
+     * otherwise returns &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * @design
      * 
-     * The information about the installed packs comes from
-     * InstallData.selectedPacks. This assumes that this panel is presented to
-     * the user AFTER the PacksPanel.
+     * The information about the installed packs comes from InstallData.selectedPacks. This assumes
+     * that this panel is presented to the user AFTER the PacksPanel.
      * 
      * /*--------------------------------------------------------------------------
      */</diff>
      <filename>src/lib/com/izforge/izpack/installer/ProcessPanelWorker.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001,2002 Marcus Stursberg
- *
- *  File :               ResourceManager.java
- *  Description :        Class to get resources from the installer
- *  Author's email :     marcus@emsty.de
- *  Author's Website :   http://www.emasty.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Marcus Stursberg
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.ByteArrayOutputStream;
@@ -34,9 +31,8 @@ import javax.swing.ImageIcon;
 /**
  * With this ResourceManager you are able to get resources from the jar file.
  * 
- * All resources are loaded language dependent as it's done in
- * java.util.ResourceBundle. To set a language dependent resource just append
- * '_' and the locale to the end of the Resourcename&lt;br&gt;
+ * All resources are loaded language dependent as it's done in java.util.ResourceBundle. To set a
+ * language dependent resource just append '_' and the locale to the end of the Resourcename&lt;br&gt;
  * &lt;br&gt;
  * Example:
  * &lt;li&gt; InfoPanel.info - for default value&lt;/li&gt;
@@ -44,9 +40,8 @@ import javax.swing.ImageIcon;
  * &lt;li&gt; InfoPanel.info_eng - for english value&lt;/li&gt;
  * &lt;br&gt;
  * 
- * This class is almost a singleton. It is created once using
- * &lt;code&gt;create&lt;/code&gt; by the installer and later, the instance is retrieved
- * using &lt;code&gt;getInstance&lt;/code&gt;.
+ * This class is almost a singleton. It is created once using &lt;code&gt;create&lt;/code&gt; by the installer
+ * and later, the instance is retrieved using &lt;code&gt;getInstance&lt;/code&gt;.
  * 
  * @author Marcus Stursberg
  */
@@ -55,8 +50,8 @@ public class ResourceManager
 
     /**
      * Contains the current language of the installer The locale is taken from
-     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language
-     * set, the language is english.
+     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language set, the language is
+     * english.
      */
     private String locale = &quot;&quot;;
 
@@ -72,8 +67,7 @@ public class ResourceManager
     /**
      * Constructor. Protected because this is a singleton.
      * 
-     * @param data -
-     *            the current installData
+     * @param data - the current installData
      */
     protected ResourceManager(AutomatedInstallData data)
     {
@@ -92,13 +86,11 @@ public class ResourceManager
     /**
      * Create the resource manager.
      * 
-     * This method should be called only once. If it is called a second time,
-     * the already existing instance is returned. The resource manager should be
-     * called &lt;b&gt;after&lt;/b&gt; the language has been set in
-     * {@link AutomatedInstallData#localeISO3}
+     * This method should be called only once. If it is called a second time, the already existing
+     * instance is returned. The resource manager should be called &lt;b&gt;after&lt;/b&gt; the language has
+     * been set in {@link AutomatedInstallData#localeISO3}
      * 
-     * @param data
-     *            the installation information
+     * @param data the installation information
      * @return the created instance
      */
     public static ResourceManager create(AutomatedInstallData data)
@@ -111,8 +103,7 @@ public class ResourceManager
     /**
      * Return the resource manager.
      * 
-     * @return the resource manager instance, null if no instance has been
-     *         created
+     * @return the resource manager instance, null if no instance has been created
      */
     public static ResourceManager getInstance()
     {
@@ -120,16 +111,13 @@ public class ResourceManager
     }
 
     /**
-     * This method is used to get the language dependent path of the given
-     * resource. If there is a resource for the current language the path of the
-     * language dependen resource is returnd. If there's no resource for the
-     * current lanuage the default path is returned.
+     * This method is used to get the language dependent path of the given resource. If there is a
+     * resource for the current language the path of the language dependen resource is returnd. If
+     * there's no resource for the current lanuage the default path is returned.
      * 
-     * @param resource
-     *            Resource to load language dependen
+     * @param resource Resource to load language dependen
      * @return the language dependent path of the given resource
-     * @throws ResourceNotFoundException
-     *             If the resource is not found
+     * @throws ResourceNotFoundException If the resource is not found
      */
     private String getLanguageResourceString(String resource) throws ResourceNotFoundException
     {
@@ -152,18 +140,14 @@ public class ResourceManager
     }
 
     /**
-     * Returns an InputStream contains the given Resource The Resource is loaded
-     * language dependen by the informations from &lt;code&gt;this.locale&lt;/code&gt; If
-     * there is no Resource for the current language found, the default Resource
-     * is given.
+     * Returns an InputStream contains the given Resource The Resource is loaded language dependen
+     * by the informations from &lt;code&gt;this.locale&lt;/code&gt; If there is no Resource for the current
+     * language found, the default Resource is given.
      * 
-     * @param resource
-     *            The resource to load
+     * @param resource The resource to load
      * @return an InputStream contains the requested resource
-     * @exception ResourceNotFoundException
-     *                Description of the Exception
-     * @throws ResourceManager.ResourceNotFoundException
-     *             thrown if there is no resource found
+     * @exception ResourceNotFoundException Description of the Exception
+     * @throws ResourceManager.ResourceNotFoundException thrown if there is no resource found
      */
     public InputStream getInputStream(String resource) throws ResourceNotFoundException
     {
@@ -175,13 +159,10 @@ public class ResourceManager
     /**
      * Returns a URL refers to the given Resource
      * 
-     * @param resource
-     *            the resource to load
+     * @param resource the resource to load
      * @return A languagedependen URL spezifies the requested resource
-     * @exception ResourceNotFoundException
-     *                Description of the Exception
-     * @throws ResourceManager.ResourceNotFoundException
-     *             thrown if there is no resource found
+     * @exception ResourceNotFoundException Description of the Exception
+     * @throws ResourceManager.ResourceNotFoundException thrown if there is no resource found
      */
     public URL getURL(String resource) throws ResourceNotFoundException
     {
@@ -200,13 +181,10 @@ public class ResourceManager
      * Returns a text resource from the jar file. The resource is loaded by
      * ResourceManager#getResource and then converted into text.
      * 
-     * @param resource -
-     *            a text resource to load
+     * @param resource - a text resource to load
      * @return a String contains the text of the resource
-     * @throws ResourceNotFoundException
-     *             if the resource can not be found
-     * @throws IOException
-     *             if the resource can not be loaded
+     * @throws ResourceNotFoundException if the resource can not be found
+     * @throws IOException if the resource can not be loaded
      */
     // Maybe we can add a text parser for this method
     public String getTextResource(String resource) throws ResourceNotFoundException, IOException
@@ -233,13 +211,10 @@ public class ResourceManager
     /**
      * Returns a laguage dependent ImageIcon for the given Resource
      * 
-     * @param resource
-     *            resrouce of the Icon
+     * @param resource resrouce of the Icon
      * @return a ImageIcon loaded from the given Resource
-     * @throws ResourceNotFoundException
-     *             thrown when the resource can not be found
-     * @throws IOException
-     *             if the resource can not be loaded
+     * @throws ResourceNotFoundException thrown when the resource can not be found
+     * @throws IOException if the resource can not be loaded
      */
     public ImageIcon getImageIconResource(String resource) throws ResourceNotFoundException,
             IOException
@@ -249,11 +224,10 @@ public class ResourceManager
 
     /**
      * Sets the locale for the resourcefiles. The locale is taken from
-     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language
-     * set, the default language is english.
+     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language set, the default
+     * language is english.
      * 
-     * @param locale
-     *            of the resourcefile
+     * @param locale of the resourcefile
      */
     public void setLocale(String locale)
     {
@@ -262,8 +236,8 @@ public class ResourceManager
 
     /**
      * Returns the locale for the resourcefiles. The locale is taken from
-     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language
-     * set, the default language is english.
+     * InstallData#installData#getAttribute(&quot;langpack&quot;) If there is no language set, the default
+     * language is english.
      * 
      * @return the current language
      */</diff>
      <filename>src/lib/com/izforge/izpack/installer/ResourceManager.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001,2002 Marcus Stursberg
- *
- *  File :               ResourceManager.java
- *  Description :        Class to get resources from the installer
- *  Author's email :     marcus@emsty.de
- *  Author's Website :   http://www.emasty.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Marcus Stursberg
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 /**
@@ -44,8 +41,7 @@ public class ResourceNotFoundException extends Exception
     /**
      * creates a new ResourceNotFoundException
      * 
-     * @param s
-     *            description of the exception
+     * @param s description of the exception
      */
     public ResourceNotFoundException(String s)
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/ResourceNotFoundException.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               ScriptParser.java
- *  Description :        Parses the scripts files for special variables.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (c) 2001 Johannes Lehtinen
- *  johannes.lehtinen@iki.fi
- *  http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.BufferedInputStream;
@@ -84,14 +77,11 @@ public class ScriptParser
     private VariableSubstitutor vs;
 
     /**
-     * Constructs a new parser. The parsable files specified must have
-     * pretranslated paths (variables expanded and file separator characters
-     * converted if necessary).
+     * Constructs a new parser. The parsable files specified must have pretranslated paths
+     * (variables expanded and file separator characters converted if necessary).
      * 
-     * @param files
-     *            the parsable files to process
-     * @param vs
-     *            the variable substitutor to use
+     * @param files the parsable files to process
+     * @param vs the variable substitutor to use
      */
     public ScriptParser(Collection files, VariableSubstitutor vs)
     {
@@ -102,8 +92,7 @@ public class ScriptParser
     /**
      * Parses the files.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     public void parseFiles() throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/ScriptParser.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               UninstallData.java
- *  Description :        Uninstaller data.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.util.ArrayList;
@@ -79,8 +74,7 @@ public class UninstallData
     /**
      * Adds a file to the data.
      * 
-     * @param path
-     *            The file to add.
+     * @param path The file to add.
      */
     public synchronized void addFile(String path)
     {
@@ -100,8 +94,7 @@ public class UninstallData
     /**
      * Adds an executable to the data.
      * 
-     * @param file
-     *            The executable file.
+     * @param file The executable file.
      */
     public synchronized void addExecutable(ExecutableFile file)
     {
@@ -131,8 +124,7 @@ public class UninstallData
     /**
      * Sets the uninstaller jar filename.
      * 
-     * @param name
-     *            The uninstaller jar filename.
+     * @param name The uninstaller jar filename.
      */
     public synchronized void setUninstallerJarFilename(String name)
     {
@@ -152,8 +144,7 @@ public class UninstallData
     /**
      * Sets the uninstaller path.
      * 
-     * @param path
-     *            The uninstaller path.
+     * @param path The uninstaller path.
      */
     public void setUninstallerPath(String path)
     {
@@ -173,10 +164,8 @@ public class UninstallData
     /**
      * Sets additional uninstall data like uninstaller listener list.
      * 
-     * @param name
-     *            key for the additional uninstall data
-     * @param value
-     *            the additional uninstall data
+     * @param name key for the additional uninstall data
+     * @param value the additional uninstall data
      */
     public void addAdditionalData(String name, Object value)
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/UninstallData.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Unpacker.java
- *  Description :        The unpacker class.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (c) 2001 Johannes Lehtinen
- *  johannes.lehtinen@iki.fi
- *  http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.io.File;
@@ -113,10 +106,8 @@ public class Unpacker extends Thread
     /**
      * The constructor.
      * 
-     * @param idata
-     *            The installation data.
-     * @param handler
-     *            The installation progress handler.
+     * @param idata The installation data.
+     * @param handler The installation progress handler.
      */
     public Unpacker(AutomatedInstallData idata, AbstractUIProgressHandler handler)
     {
@@ -174,10 +165,9 @@ public class Unpacker extends Thread
     }
 
     /**
-     * Initiate interrupt of all alive Unpacker. This method does not interrupt
-     * the Unpacker objects else it sets only the interrupt flag for the
-     * Unpacker objects. The dispatching of interrupt will be performed by the
-     * Unpacker objects self.
+     * Initiate interrupt of all alive Unpacker. This method does not interrupt the Unpacker objects
+     * else it sets only the interrupt flag for the Unpacker objects. The dispatching of interrupt
+     * will be performed by the Unpacker objects self.
      */
     private static void setInterruptAll()
     {
@@ -199,14 +189,12 @@ public class Unpacker extends Thread
     }
 
     /**
-     * Initiate interrupt of all alive Unpacker and waits until all Unpacker are
-     * interrupted or the wait time has arrived. If the doNotInterrupt flag in
-     * InstallerListener is set to true, the interrupt will be discarded.
+     * Initiate interrupt of all alive Unpacker and waits until all Unpacker are interrupted or the
+     * wait time has arrived. If the doNotInterrupt flag in InstallerListener is set to true, the
+     * interrupt will be discarded.
      * 
-     * @param waitTime
-     *            wait time in millisecounds
-     * @return true if the interrupt will be performed, false if the interrupt
-     *         will be discarded
+     * @param waitTime wait time in millisecounds
+     * @return true if the interrupt will be performed, false if the interrupt will be discarded
      */
     public static boolean interruptAll(long waitTime)
     {
@@ -242,9 +230,8 @@ public class Unpacker extends Thread
     }
 
     /**
-     * Sets the interrupt flag for this Unpacker to INTERRUPTED if the previos
-     * state was INTERRUPT or INTERRUPTED and returns whether interrupt was
-     * initiate or not.
+     * Sets the interrupt flag for this Unpacker to INTERRUPTED if the previos state was INTERRUPT
+     * or INTERRUPTED and returns whether interrupt was initiate or not.
      * 
      * @return whether interrupt was initiate or not
      */
@@ -722,11 +709,8 @@ public class Unpacker extends Thread
     }
 
     /**
-     * @param list
-     *            A list of file name patterns (in ant fileset syntax)
-     * @param recompiler
-     *            The regular expression compiler (used to speed up RE
-     *            compiling).
+     * @param list A list of file name patterns (in ant fileset syntax)
+     * @param recompiler The regular expression compiler (used to speed up RE compiling).
      * 
      * @return List of org.apache.regexp.RE
      */
@@ -846,8 +830,7 @@ public class Unpacker extends Thread
     /**
      * Puts the uninstaller.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void putUninstaller() throws Exception
     {
@@ -926,11 +909,9 @@ public class Unpacker extends Thread
     /**
      * Returns a stream to a pack, location depending on if it's web based.
      * 
-     * @param n
-     *            The pack number.
+     * @param n The pack number.
      * @return The stream or null if it could not be found.
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private InputStream getPackAsStream(int n) throws Exception
     {
@@ -969,16 +950,11 @@ public class Unpacker extends Thread
     /**
      * Informs all listeners which would be informed at the given action type.
      * 
-     * @param customActions
-     *            array of lists with the custom action objects
-     * @param action
-     *            identifier for which callback should be called
-     * @param firstParam
-     *            first parameter for the call
-     * @param secondParam
-     *            second parameter for the call
-     * @param thirdParam
-     *            third parameter for the call
+     * @param customActions array of lists with the custom action objects
+     * @param action identifier for which callback should be called
+     * @param firstParam first parameter for the call
+     * @param secondParam second parameter for the call
+     * @param thirdParam third parameter for the call
      */
     private void informListeners(List[] customActions, int action, Object firstParam,
             Object secondParam, Object thirdParam) throws Exception
@@ -1040,8 +1016,8 @@ public class Unpacker extends Thread
     }
 
     /**
-     * Returns the defined custom actions split into types including a
-     * constructed type for the file related installer listeners.
+     * Returns the defined custom actions split into types including a constructed type for the file
+     * related installer listeners.
      * 
      * @return array of lists of custom action data like listeners
      */
@@ -1080,11 +1056,8 @@ public class Unpacker extends Thread
     /**
      * Adds additional unistall data to the uninstall data object.
      * 
-     * @param udata
-     *            unistall data
-     * @param customData
-     *            array of lists of custom action data like uninstaller
-     *            listeners
+     * @param udata unistall data
+     * @param customData array of lists of custom action data like uninstaller listeners
      */
     private void handleAdditionalUninstallData(UninstallData udata, List[] customData)
     {
@@ -1101,16 +1074,12 @@ public class Unpacker extends Thread
 
     // This method is only used if a file related custom action exist.
     /**
-     * Creates the given directory recursive and calls the method &quot;afterDir&quot; of
-     * each listener with the current file object and the pack file object. On
-     * error an exception is raised.
+     * Creates the given directory recursive and calls the method &quot;afterDir&quot; of each listener with
+     * the current file object and the pack file object. On error an exception is raised.
      * 
-     * @param dest
-     *            the directory which should be created
-     * @param pf
-     *            current pack file object
-     * @param customActions
-     *            all defined custom actions
+     * @param dest the directory which should be created
+     * @param pf current pack file object
+     * @param customActions all defined custom actions
      * @return false on error, true else
      * @throws Exception
      */
@@ -1155,8 +1124,7 @@ public class Unpacker extends Thread
     /**
      * Sets the discard interrupt flag.
      * 
-     * @param di
-     *            the discard interrupt flag to set
+     * @param di the discard interrupt flag to set
      */
     public static synchronized void setDiscardInterrupt(boolean di)
     {
@@ -1175,8 +1143,7 @@ public class Unpacker extends Thread
     }
 
     /**
-     * @param interruptDesired
-     *            The interrupt desired flag to set
+     * @param interruptDesired The interrupt desired flag to set
      */
     private static void setInterruptDesired(boolean interruptDesired)
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/Unpacker.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Johannes Lehtinen
- *
- *  File :               WebAccessor.java
- *  Description :        Prompt user for proxies and passwords
- *  Author's email :     mchenryc@acm.org
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.installer;
 
 import java.awt.BorderLayout;
@@ -47,8 +44,8 @@ import javax.swing.JTextField;
 import javax.swing.UIManager;
 
 /**
- * Dialogs for password authentication and firewall specification, when needed,
- * during web installation.
+ * Dialogs for password authentication and firewall specification, when needed, during web
+ * installation.
  * 
  * @author Chadwick McHenry
  * @version 1.0
@@ -98,12 +95,10 @@ public class WebAccessor
     }
 
     /**
-     * Create a WebAccessor that prompts for proxies and passwords using a
-     * JDialog.
+     * Create a WebAccessor that prompts for proxies and passwords using a JDialog.
      * 
-     * @param parent
-     *            determines the frame in which the dialog is displayed; if the
-     *            parentComponent has no Frame, a default Frame is used
+     * @param parent determines the frame in which the dialog is displayed; if the parentComponent
+     * has no Frame, a default Frame is used
      */
     public WebAccessor(Component parent)
     {
@@ -116,11 +111,9 @@ public class WebAccessor
     }
 
     /**
-     * Opens a URL connection and returns it's InputStream for the specified
-     * URL.
+     * Opens a URL connection and returns it's InputStream for the specified URL.
      * 
-     * @param url
-     *            the url to open the stream to.
+     * @param url the url to open the stream to.
      * @return an input stream ready to read, or null on failure
      */
     public InputStream openInputStream(URL url)
@@ -263,8 +256,7 @@ public class WebAccessor
     }
 
     /**
-     * Only to be called after an initial error has indicated a connection
-     * problem
+     * Only to be called after an initial error has indicated a connection problem
      */
     private JPanel getProxyPanel()
     {</diff>
      <filename>src/lib/com/izforge/izpack/installer/WebAccessor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2003 Julien Ponge, Tino Schwarze
- *
- *  File :               CompilePanel.java
- *  Description :        A panel to compile files after installation
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 package com.izforge.izpack.panels;
 
@@ -116,10 +112,8 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public CompilePanel(InstallerFrame parent, InstallData idata) throws IOException
     {
@@ -350,8 +344,7 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * Release the GUI - allow input.
      * 
-     * @param allowconfig
-     *            allow the user to enter new configuration
+     * @param allowconfig allow the user to enter new configuration
      */
     protected void releaseGUI(boolean allowconfig)
     {
@@ -370,8 +363,7 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * An error was encountered.
      * 
-     * @param error
-     *            The error information.
+     * @param error The error information.
      * @see com.izforge.izpack.installer.CompileHandler
      */
     public void handleCompileError(CompileResult error)
@@ -442,10 +434,8 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * Normal progress indicator.
      * 
-     * @param val
-     *            The progression value.
-     * @param msg
-     *            The progression message.
+     * @param val The progression value.
+     * @param msg The progression message.
      */
     public void progress(int val, String msg)
     {
@@ -457,12 +447,9 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * Job changing.
      * 
-     * @param jobName
-     *            The job name.
-     * @param max
-     *            The new maximum progress.
-     * @param jobNo
-     *            The job number.
+     * @param jobName The job name.
+     * @param max The new maximum progress.
+     * @param jobNo The job number.
      */
     public void nextStep(String jobName, int max, int jobNo)
     {
@@ -516,9 +503,8 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
     /**
      * Show a special dialog for compiler errors.
      * 
-     * This dialog is neccessary because we have lots of information if
-     * compilation failed. We'd also like the user to chose whether to ignore
-     * the error or not.
+     * This dialog is neccessary because we have lots of information if compilation failed. We'd
+     * also like the user to chose whether to ignore the error or not.
      */
     protected class CompilerErrorDialog extends JDialog implements ActionListener
     {
@@ -549,8 +535,7 @@ public class CompilePanel extends IzPanel implements ActionListener, CompileHand
         }
 
         /**
-         * This method is called from within the constructor to initialize the
-         * form.
+         * This method is called from within the constructor to initialize the form.
          * 
          * Generated with help from NetBeans IDE.
          */</diff>
      <filename>src/lib/com/izforge/izpack/panels/CompilePanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,25 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               CompilePanelAutomationHelper.java
- *  Description :        Automation support functions for CompilePanel.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ /*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.io.IOException;
@@ -56,10 +54,8 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Save data for running automated.
      * 
-     * @param installData
-     *            installation parameters
-     * @param panelRoot
-     *            unused.
+     * @param installData installation parameters
+     * @param panelRoot unused.
      */
     public void makeXMLData(AutomatedInstallData installData, XMLElement panelRoot)
     {
@@ -70,8 +66,7 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Perform the installation actions.
      * 
-     * @param panelRoot
-     *            The panel XML tree root.
+     * @param panelRoot The panel XML tree root.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -116,8 +111,7 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Reports progress on System.out
      * 
-     * @see com.izforge.izpack.util.AbstractUIProgressHandler#startAction(String,
-     *      int)
+     * @see com.izforge.izpack.util.AbstractUIProgressHandler#startAction(String, int)
      */
     public void startAction(String name, int noOfJobs)
     {
@@ -128,8 +122,7 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Reports the error to System.err
      * 
-     * @param error
-     *            the error
+     * @param error the error
      * @see CompileHandler#handleCompileError(CompileResult)
      */
     public void handleCompileError(CompileResult error)
@@ -170,8 +163,7 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
      * 
      * @param val
      * @param msg
-     * @see com.izforge.izpack.util.AbstractUIProgressHandler#progress(int,
-     *      String)
+     * @see com.izforge.izpack.util.AbstractUIProgressHandler#progress(int, String)
      */
     public void progress(int val, String msg)
     {
@@ -192,14 +184,10 @@ public class CompilePanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Reports progress to System.out
      * 
-     * @param jobName
-     *            The next job's name.
-     * @param max
-     *            unused
-     * @param jobNo
-     *            The next job's number.
-     * @see com.izforge.izpack.util.AbstractUIProgressHandler#nextStep(String,
-     *      int, int)
+     * @param jobName The next job's name.
+     * @param max unused
+     * @param jobNo The next job's number.
+     * @see com.izforge.izpack.util.AbstractUIProgressHandler#nextStep(String, int, int)
      */
     public void nextStep(String jobName, int max, int jobNo)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/CompilePanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,21 +1,39 @@
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
+ */
+
 package com.izforge.izpack.panels;
 
 import com.izforge.izpack.installer.InstallData;
 import com.izforge.izpack.installer.InstallerFrame;
 
 /**
- * This panel adds some conditional behavior to the standard UserInputPanel.
- * &lt;br/&gt; &lt;b&gt;Usage:&lt;/b&gt;&lt;br/&gt; In the &quot;panels&quot; list, just use
- * ConditionalUserInputPanel like the normal UserInputPanel. The specification
- * goes also into userInputSpec.xml and userInputLang.xml_XXX. To specify a
- * condition for a certain ConditionalUserInputPanel, you have to specify the
- * condition in the &quot;variables&quot;-section by defining the following variables:&lt;br/&gt;
- * &lt;li&gt;&lt;i&gt;compareToVariable.&quot;panel-order&quot;&lt;/i&gt;: The variable name containing
- * the value to compare with
- * &lt;li&gt;&lt;i&gt;compareToOperator.&quot;panel-order&quot;&lt;/i&gt;: The compare operator to use,
- * currently only &quot;=&quot; and &quot;!=&quot; are allowed
- * &lt;li&gt;&lt;i&gt;compareToValue.&quot;panel-order&quot;&lt;/i&gt;: The value to compare with&lt;br/&gt; If
- * the compare fails, the panel will be skipped.
+ * This panel adds some conditional behavior to the standard UserInputPanel. &lt;br/&gt; &lt;b&gt;Usage:&lt;/b&gt;&lt;br/&gt;
+ * In the &quot;panels&quot; list, just use ConditionalUserInputPanel like the normal UserInputPanel. The
+ * specification goes also into userInputSpec.xml and userInputLang.xml_XXX. To specify a condition
+ * for a certain ConditionalUserInputPanel, you have to specify the condition in the
+ * &quot;variables&quot;-section by defining the following variables:&lt;br/&gt;
+ * &lt;li&gt;&lt;i&gt;compareToVariable.&quot;panel-order&quot;&lt;/i&gt;: The variable name containing the value to compare
+ * with
+ * &lt;li&gt;&lt;i&gt;compareToOperator.&quot;panel-order&quot;&lt;/i&gt;: The compare operator to use, currently only &quot;=&quot; and
+ * &quot;!=&quot; are allowed
+ * &lt;li&gt;&lt;i&gt;compareToValue.&quot;panel-order&quot;&lt;/i&gt;: The value to compare with&lt;br/&gt; If the compare fails,
+ * the panel will be skipped.
  * 
  * @see UserInputPanel
  * </diff>
      <filename>src/lib/com/izforge/izpack/panels/ConditionalUserInputPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ExtendedInstallPanel.java
- *  Description :        A panel to launch the installation process.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import com.izforge.izpack.installer.InstallData;
@@ -28,8 +26,7 @@ import com.izforge.izpack.installer.InstallerFrame;
 import com.izforge.izpack.util.ExtendedUIProgressHandler;
 
 /**
- * The install panel class. Launches the actual installation job with extensions
- * for custom actions.
+ * The install panel class. Launches the actual installation job with extensions for custom actions.
  * 
  * @author Klaus Bartz
  */
@@ -43,10 +40,8 @@ public class ExtendedInstallPanel extends InstallPanel implements ExtendedUIProg
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public ExtendedInstallPanel(InstallerFrame parent, InstallData idata)
     {
@@ -57,7 +52,7 @@ public class ExtendedInstallPanel extends InstallPanel implements ExtendedUIProg
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.util.ExtendedUIProgressHandler#startAction(java.lang.String,
-     *      java.lang.String, java.lang.String, int)
+     * java.lang.String, java.lang.String, int)
      */
     public void restartAction(String name, String overallMsg, String tipMsg, int no_of_steps)
     {
@@ -70,10 +65,8 @@ public class ExtendedInstallPanel extends InstallPanel implements ExtendedUIProg
     /**
      * Normal progress indicator.
      * 
-     * @param val
-     *            The progression value.
-     * @param msg
-     *            The progression message.
+     * @param val The progression value.
+     * @param msg The progression message.
      */
     public void progress(int val, String msg)
     {
@@ -86,7 +79,7 @@ public class ExtendedInstallPanel extends InstallPanel implements ExtendedUIProg
      * (non-Javadoc)
      * 
      * @see com.izforge.izpack.util.ExtendedUIProgressHandler#progress(java.lang.String,
-     *      java.lang.String)
+     * java.lang.String)
      */
     public void progress(String stepMessage)
     {
@@ -98,12 +91,9 @@ public class ExtendedInstallPanel extends InstallPanel implements ExtendedUIProg
     /**
      * Pack changing.
      * 
-     * @param packName
-     *            The pack name.
-     * @param stepno
-     *            The number of the pack.
-     * @param max
-     *            The new maximum progress.
+     * @param packName The pack name.
+     * @param stepno The number of the pack.
+     * @param max The new maximum progress.
      */
     public void nextStep(String packName, int stepno, int max)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/ExtendedInstallPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               FinishPanel.java
- *  Description :        A panel to end with the installation.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -73,10 +68,8 @@ public class FinishPanel extends IzPanel implements ActionListener
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent.
+     * @param idata The installation data.
      */
     public FinishPanel(InstallerFrame parent, InstallData idata)
     {
@@ -151,8 +144,7 @@ public class FinishPanel extends IzPanel implements ActionListener
     /**
      * Actions-handling method.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {
@@ -190,8 +182,7 @@ public class FinishPanel extends IzPanel implements ActionListener
     /**
      * Translates a relative path to a local system path.
      * 
-     * @param destination
-     *            The path to translate.
+     * @param destination The path to translate.
      * @return The translated path.
      */
     private String translatePath(String destination)</diff>
      <filename>src/lib/com/izforge/izpack/panels/FinishPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               HTMLInfoPanel.java
- *  Description :        A panel to show some HTML information.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -66,10 +61,8 @@ public class HTMLInfoPanel extends IzPanel implements HyperlinkListener
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent.
+     * @param idata The installation data.
      */
     public HTMLInfoPanel(InstallerFrame parent, InstallData idata)
     {
@@ -142,8 +135,7 @@ public class HTMLInfoPanel extends IzPanel implements HyperlinkListener
     /**
      * Hyperlink events handler.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void hyperlinkUpdate(HyperlinkEvent e)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/HTMLInfoPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               HTMLLicencePanel.java
- *  Description :        A panel to prompt the user for a licence agreement.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -76,10 +71,8 @@ public class HTMLLicencePanel extends IzPanel implements HyperlinkListener, Acti
     /**
      * The constructor.
      * 
-     * @param idata
-     *            The installation data.
-     * @param parent
-     *            Description of the Parameter
+     * @param idata The installation data.
+     * @param parent Description of the Parameter
      */
     public HTMLLicencePanel(InstallerFrame parent, InstallData idata)
     {
@@ -167,8 +160,7 @@ public class HTMLLicencePanel extends IzPanel implements HyperlinkListener, Acti
     /**
      * Actions-handling method (here it launches the installation).
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {
@@ -197,8 +189,7 @@ public class HTMLLicencePanel extends IzPanel implements HyperlinkListener, Acti
     /**
      * Hyperlink events handler.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void hyperlinkUpdate(HyperlinkEvent e)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/HTMLLicencePanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               HelloPanel.java
- *  Description :        A panel to welcome the user.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -70,10 +65,8 @@ public class HelloPanel extends IzPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent.
+     * @param idata The installation data.
      */
     public HelloPanel(InstallerFrame parent, InstallData idata)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/HelloPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,26 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge, Volker Friedritz
- *
- *  File : ImgPacksPanel.java
- *  Description : A panel to select the packs to install.
- *  Author's email : julien@izforge.com
- *  Author's email : volker.friedritz@gmx.de
- *  Author's Website : http://www.izforge.com
- *  
- *  Portions are Copyright (C) 2002 Marcus Wolschon
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Volker Friedritz
+ * Copyright 2002 Marcus Wolschon
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Component;
@@ -49,11 +44,10 @@ import com.izforge.izpack.installer.ResourceManager;
 import com.izforge.izpack.util.IoHelper;
 
 /**
- * The ImgPacks panel class. Allows the packages selection with a small picture
- * displayed for every pack. This new version combines the old PacksPanel and
- * the ImgPacksPanel so that the positive characteristics of both are combined.
- * This class handles only the layout and some related stuff. Common stuff are
- * handled by the base class.
+ * The ImgPacks panel class. Allows the packages selection with a small picture displayed for every
+ * pack. This new version combines the old PacksPanel and the ImgPacksPanel so that the positive
+ * characteristics of both are combined. This class handles only the layout and some related stuff.
+ * Common stuff are handled by the base class.
  * 
  * @author Julien Ponge
  * @author Volker Friedritz
@@ -88,10 +82,8 @@ public class ImgPacksPanel extends PacksPanelBase
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public ImgPacksPanel(InstallerFrame parent, InstallData idata)
     {
@@ -192,8 +184,8 @@ public class ImgPacksPanel extends PacksPanelBase
     }
 
     /**
-     * Try to find a good preferredSize for imgScroller by checking all loaded
-     * images' width and height.
+     * Try to find a good preferredSize for imgScroller by checking all loaded images' width and
+     * height.
      */
     private Dimension getPreferredSizeFromImages()
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/ImgPacksPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               ImgPacksPanelAutomationHelper.java
- *  Description :        Automation support functions for ImgPacksPanel.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.util.Vector;
@@ -44,10 +41,8 @@ public class ImgPacksPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to make the XML panel data.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The XML root to write the data in.
+     * @param idata The installation data.
+     * @param panelRoot The XML root to write the data in.
      */
     public void makeXMLData(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -72,10 +67,8 @@ public class ImgPacksPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to run in the automated mode.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The root of the panel data.
+     * @param idata The installation data.
+     * @param panelRoot The root of the panel data.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/ImgPacksPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               InfoPanel.java
- *  Description :        A panel to show some textual information.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -69,10 +64,8 @@ public class InfoPanel extends IzPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public InfoPanel(InstallerFrame parent, InstallData idata)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/InfoPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               InstallPanel.java
- *  Description :        A panel to launch the installation process.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Dimension;
@@ -79,10 +74,8 @@ public class InstallPanel extends IzPanel implements AbstractUIProgressHandler
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public InstallPanel(InstallerFrame parent, InstallData idata)
     {
@@ -173,8 +166,7 @@ public class InstallPanel extends IzPanel implements AbstractUIProgressHandler
     /**
      * An error was encountered.
      * 
-     * @param error
-     *            The error text.
+     * @param error The error text.
      */
     public void emitError(String title, String error)
     {
@@ -216,10 +208,8 @@ public class InstallPanel extends IzPanel implements AbstractUIProgressHandler
     /**
      * Normal progress indicator.
      * 
-     * @param val
-     *            The progression value.
-     * @param msg
-     *            The progression message.
+     * @param val The progression value.
+     * @param msg The progression message.
      */
     public void progress(int val, String msg)
     {
@@ -230,12 +220,9 @@ public class InstallPanel extends IzPanel implements AbstractUIProgressHandler
     /**
      * Pack changing.
      * 
-     * @param packName
-     *            The pack name.
-     * @param stepno
-     *            The number of the pack.
-     * @param max
-     *            The new maximum progress.
+     * @param packName The pack name.
+     * @param stepno The number of the pack.
+     * @param max The new maximum progress.
      */
     public void nextStep(String packName, int stepno, int max)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/InstallPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               InstallPanelAutomationHelper.java
- *  Description :        Automation support functions for InstallPanel.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import net.n3.nanoxml.XMLElement;
@@ -49,10 +46,8 @@ public class InstallPanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Null op - this panel type has no state to serialize.
      * 
-     * @param installData
-     *            unused.
-     * @param panelRoot
-     *            unused.
+     * @param installData unused.
+     * @param panelRoot unused.
      */
     public void makeXMLData(AutomatedInstallData installData, XMLElement panelRoot)
     {
@@ -62,8 +57,7 @@ public class InstallPanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Perform the installation actions.
      * 
-     * @param panelRoot
-     *            The panel XML tree root.
+     * @param panelRoot The panel XML tree root.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -110,8 +104,7 @@ public class InstallPanelAutomationHelper extends PanelAutomationHelper implemen
      * 
      * @param val
      * @param msg
-     * @see com.izforge.izpack.util.AbstractUIProgressHandler#progress(int,
-     *      String)
+     * @see com.izforge.izpack.util.AbstractUIProgressHandler#progress(int, String)
      */
     public void progress(int val, String msg)
     {
@@ -122,14 +115,10 @@ public class InstallPanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Reports progress to System.out
      * 
-     * @param packName
-     *            The currently installing pack.
-     * @param stepno
-     *            The number of the pack
-     * @param stepsize
-     *            unused
-     * @see com.izforge.izpack.util.AbstractUIProgressHandler#nextStep(String,
-     *      int, int)
+     * @param packName The currently installing pack.
+     * @param stepno The number of the pack
+     * @param stepsize unused
+     * @see com.izforge.izpack.util.AbstractUIProgressHandler#nextStep(String, int, int)
      */
     public void nextStep(String packName, int stepno, int stepsize)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/InstallPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               JDKPathPanel.java
- *  Description :        A panel to selct the JDK path.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.io.File;
@@ -55,10 +53,8 @@ public class JDKPathPanel extends PathInputPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public JDKPathPanel(InstallerFrame parent, InstallData idata)
     {
@@ -277,8 +273,7 @@ public class JDKPathPanel extends PathInputPanel
     /**
      * Sets the given value as current detected version.
      * 
-     * @param string
-     *            version string to be used as detected version
+     * @param string version string to be used as detected version
      */
     protected void setDetectedVersion(String string)
     {
@@ -288,8 +283,7 @@ public class JDKPathPanel extends PathInputPanel
     /**
      * Sets the given value as maximum for version control.
      * 
-     * @param string
-     *            version string to be used as maximum
+     * @param string version string to be used as maximum
      */
     protected void setMaxVersion(String string)
     {
@@ -299,8 +293,7 @@ public class JDKPathPanel extends PathInputPanel
     /**
      * Sets the given value as minimum for version control.
      * 
-     * @param string
-     *            version string to be used as minimum
+     * @param string version string to be used as minimum
      */
     protected void setMinVersion(String string)
     {
@@ -320,8 +313,7 @@ public class JDKPathPanel extends PathInputPanel
     /**
      * Sets the name for the variable which should be set with the path.
      * 
-     * @param string
-     *            variable name to be used
+     * @param string variable name to be used
      */
     public void setVariableName(String string)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/JDKPathPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               LicencePanel.java
- *  Description :        A panel to prompt the user for a licence agreement.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Dimension;
@@ -73,10 +68,8 @@ public class LicencePanel extends IzPanel implements ActionListener
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public LicencePanel(InstallerFrame parent, InstallData idata)
     {
@@ -137,8 +130,7 @@ public class LicencePanel extends IzPanel implements ActionListener
     /**
      * Actions-handling method (here it allows the installation).
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/LicencePanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,26 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               PacksModel.java
- *  Description :        A table model for packs.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Marcus Wolschon
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *  Portions are Copyright (C) 2004 Gaganis Giorgos (gaganis@users.berlios.de)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Marcus Wolschon
+ * Copyright 2002 Jan Blok
+ * Copyright 2004 Gaganis Giorgos
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.util.HashMap;
@@ -160,8 +155,8 @@ class PacksModel extends AbstractTableModel
     }
 
     /**
-     * Given a map of names and Integer for position and a name it return the
-     * position of this name as an int
+     * Given a map of names and Integer for position and a name it return the position of this name
+     * as an int
      * 
      * @return position of the name
      */
@@ -301,10 +296,10 @@ class PacksModel extends AbstractTableModel
     }
 
     /**
-     * This function updates the checkboxes after a change by disabling packs
-     * that cannot be installed anymore and enabling those that can after the
-     * change. This is accomplished by running a search that pinpoints the packs
-     * that must be disabled by a non-fullfiled dependency.
+     * This function updates the checkboxes after a change by disabling packs that cannot be
+     * installed anymore and enabling those that can after the change. This is accomplished by
+     * running a search that pinpoints the packs that must be disabled by a non-fullfiled
+     * dependency.
      */
     private void updateDeps()
     {
@@ -332,9 +327,9 @@ class PacksModel extends AbstractTableModel
     }
 
     /**
-     * We use a modified dfs graph search algorithm as described in: Thomas H.
-     * Cormen, Charles Leiserson, Ronald Rivest and Clifford Stein. Introduction
-     * to algorithms 2nd Edition 540-549,MIT Press, 2001
+     * We use a modified dfs graph search algorithm as described in: Thomas H. Cormen, Charles
+     * Leiserson, Ronald Rivest and Clifford Stein. Introduction to algorithms 2nd Edition
+     * 540-549,MIT Press, 2001
      */
     private int dfs(int[] status)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/PacksModel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,30 +1,25 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               PacksPanel.java
- *  Description :        A panel to select the packs to install.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Marcus Wolschon
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Marcus Wolschon
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Dimension;
@@ -38,8 +33,8 @@ import com.izforge.izpack.installer.InstallerFrame;
 import com.izforge.izpack.util.IoHelper;
 
 /**
- * The packs selection panel class. This class handles only the layout. Common
- * stuff are handled by the base class.
+ * The packs selection panel class. This class handles only the layout. Common stuff are handled by
+ * the base class.
  * 
  * @author Julien Ponge
  * @author Jan Blok
@@ -56,10 +51,8 @@ public class PacksPanel extends PacksPanelBase
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public PacksPanel(InstallerFrame parent, InstallData idata)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/PacksPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               PacksPanelAutomationHelper.java
- *  Description :        Automation support functions for PacksPanel.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.util.Iterator;
@@ -45,10 +42,8 @@ public class PacksPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to make the XML panel data.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The XML tree to write the data in.
+     * @param idata The installation data.
+     * @param panelRoot The XML tree to write the data in.
      */
     public void makeXMLData(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -69,10 +64,8 @@ public class PacksPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to run in the automated mode.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The root of the panel data.
+     * @param idata The installation data.
+     * @param panelRoot The root of the panel data.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/PacksPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,26 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               PacksPanel.java
- *  Description :        Base panel to select the packs to install.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (C) 2002 Marcus Wolschon
- *  Portions are Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *  Portions are Copyright (C) 2004 Klaus Bartz
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Marcus Wolschon
+ * Copyright 2002 Jan Blok
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Color;
@@ -73,11 +68,10 @@ import com.izforge.izpack.installer.ResourceManager;
 import com.izforge.izpack.util.IoHelper;
 
 /**
- * The base class for Packs panels. It brings the common member and methods of
- * the different packs panels together. This class handles the common logic of
- * pack selection. The derived class should be create the layout and other
- * specific actions. There are some helper methods to simplify layout creation
- * in the derived class.
+ * The base class for Packs panels. It brings the common member and methods of the different packs
+ * panels together. This class handles the common logic of pack selection. The derived class should
+ * be create the layout and other specific actions. There are some helper methods to simplify layout
+ * creation in the derived class.
  * 
  * @author Julien Ponge
  * @author Klaus Bartz
@@ -127,10 +121,8 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public PacksPanelBase(InstallerFrame parent, InstallData idata)
     {
@@ -151,8 +143,7 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     }
 
     /**
-     * The Implementation of this method should create the layout for the
-     * current class.
+     * The Implementation of this method should create the layout for the current class.
      */
     abstract protected void createNormalLayout();
 
@@ -238,8 +229,7 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     /**
      * Asks to make the XML panel data.
      * 
-     * @param panelRoot
-     *            The XML tree to write the data in.
+     * @param panelRoot The XML tree to write the data in.
      */
     public void makeXMLData(XMLElement panelRoot)
     {
@@ -302,19 +292,14 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
 
     /**
      * Layout helper method:&lt;br&gt;
-     * Creates an label with a message given by msgId and an icon given by the
-     * iconId. If layout and constraints are not null, the label will be added
-     * to layout with the given constraints. The label will be added to this
-     * object.
+     * Creates an label with a message given by msgId and an icon given by the iconId. If layout and
+     * constraints are not null, the label will be added to layout with the given constraints. The
+     * label will be added to this object.
      * 
-     * @param msgId
-     *            identifier for the IzPack langpack
-     * @param iconId
-     *            identifier for the IzPack icons
-     * @param layout
-     *            layout to be used
-     * @param constraints
-     *            constraints to be used
+     * @param msgId identifier for the IzPack langpack
+     * @param iconId identifier for the IzPack icons
+     * @param layout layout to be used
+     * @param constraints constraints to be used
      * @return the created label
      */
     protected JLabel createLabel(String msgId, String iconId, GridBagLayout layout,
@@ -328,18 +313,14 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     }
 
     /**
-     * Creates a panel containing a anonymous label on the left with the message
-     * for the given msgId and a label on the right side with initial no text.
-     * The right label will be returned. If layout and constraints are not null,
-     * the label will be added to layout with the given constraints. The panel
-     * will be added to this object.
+     * Creates a panel containing a anonymous label on the left with the message for the given msgId
+     * and a label on the right side with initial no text. The right label will be returned. If
+     * layout and constraints are not null, the label will be added to layout with the given
+     * constraints. The panel will be added to this object.
      * 
-     * @param msgId
-     *            identifier for the IzPack langpack
-     * @param layout
-     *            layout to be used
-     * @param constraints
-     *            constraints to be used
+     * @param msgId identifier for the IzPack langpack
+     * @param layout layout to be used
+     * @param constraints constraints to be used
      * @return the created (right) label
      */
     protected JLabel createPanelWithLabel(String msgId, GridBagLayout layout,
@@ -359,21 +340,16 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     }
 
     /**
-     * Creates a text area with standard settings and the title given by the
-     * msgId. If scroller is not null, the create text area will be added to the
-     * scroller and the scroller to this object, else the text area will be
-     * added directly to this object. If layout and constraints are not null,
-     * the text area or scroller will be added to layout with the given
-     * constraints. The text area will be returned.
+     * Creates a text area with standard settings and the title given by the msgId. If scroller is
+     * not null, the create text area will be added to the scroller and the scroller to this object,
+     * else the text area will be added directly to this object. If layout and constraints are not
+     * null, the text area or scroller will be added to layout with the given constraints. The text
+     * area will be returned.
      * 
-     * @param msgId
-     *            identifier for the IzPack langpack
-     * @param scroller
-     *            the scroller to be used
-     * @param layout
-     *            layout to be used
-     * @param constraints
-     *            constraints to be used
+     * @param msgId identifier for the IzPack langpack
+     * @param scroller the scroller to be used
+     * @param layout layout to be used
+     * @param constraints constraints to be used
      * @return the created text area
      */
     protected JTextArea createTextArea(String msgId, JScrollPane scroller, GridBagLayout layout,
@@ -411,17 +387,12 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     }
 
     /**
-     * Creates the table for the packs. All parameters are required. The table
-     * will be returned.
+     * Creates the table for the packs. All parameters are required. The table will be returned.
      * 
-     * @param width
-     *            of the table
-     * @param scroller
-     *            the scroller to be used
-     * @param layout
-     *            layout to be used
-     * @param constraints
-     *            constraints to be used
+     * @param width of the table
+     * @param scroller the scroller to be used
+     * @param layout layout to be used
+     * @param constraints constraints to be used
      * @return the created table
      */
     protected JTable createPacksTable(int width, JScrollPane scroller, GridBagLayout layout,
@@ -464,9 +435,8 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
     }
 
     /**
-     * Called when the panel becomes active. If a derived class implements this
-     * method also, it is recomanded to call this method with the super operator
-     * first.
+     * Called when the panel becomes active. If a derived class implements this method also, it is
+     * recomanded to call this method with the super operator first.
      * 
      */
     public void panelActivate()
@@ -607,7 +577,7 @@ public abstract class PacksPanelBase extends IzPanel implements PacksPanelInterf
 
         /**
          * @see javax.swing.table.TableCellEditor#getTableCellEditorComponent(javax.swing.JTable,
-         *      java.lang.Object, boolean, int, int)
+         * java.lang.Object, boolean, int, int)
          */
         public Component getTableCellEditorComponent(JTable table, Object value,
                 boolean isSelected, int row, int column)</diff>
      <filename>src/lib/com/izforge/izpack/panels/PacksPanelBase.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,36 +1,32 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Gaganis Giorgos
- *
- *  File :               PacksPanelInterface.java
- *  Description :        Provides a to access both PacksPanel &amp; ImgPacksPanel.
- *  Author's email :     gaganis@users.berlios.de
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Gaganis Giorgos
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import com.izforge.izpack.LocaleDatabase;
 
 /**
- * This interface is used to be able to access the common information in the
- * PackPanel and the ImgPacksPAnel through a common type. I introduced it so
- * that I can remove the duplicate PacksModel from each class and create a
- * common one for both.
+ * This interface is used to be able to access the common information in the PackPanel and the
+ * ImgPacksPAnel through a common type. I introduced it so that I can remove the duplicate
+ * PacksModel from each class and create a common one for both.
  * 
  * This could be avoided by inheriting ImgPacksPanel from PacksPanel
  * </diff>
      <filename>src/lib/com/izforge/izpack/panels/PacksPanelInterface.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               PasswordGroup.java
- * Description :        This class supports handling of multiple
- *                      related password fields. The primary use
- *                      is in the UserInputPanel.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -32,9 +27,9 @@ import javax.swing.JPasswordField;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class can be used to manage multiple related password fields. This is
- * used in the &lt;code&gt;UserInputPanel&lt;/code&gt; to manage communication with the
- * validator and processor for password fields.
+ * This class can be used to manage multiple related password fields. This is used in the
+ * &lt;code&gt;UserInputPanel&lt;/code&gt; to manage communication with the validator and processor for
+ * password fields.
  * 
  * @see com.izforge.izpack.panels.UserInputPanel
  * 
@@ -58,18 +53,13 @@ public class PasswordGroup implements ProcessingClient
     /**
      * Creates a passowrd group to manage one or more password fields.
      * 
-     * @param validator
-     *            A string that specifies a class that provides a password
-     *            validation service. The class must implement the
-     *            &lt;code&gt;Validator&lt;/code&gt; interface. If an attempt to
-     *            instantiate this class fails, no validation will be performed.
-     * @param processor
-     *            A string that specifies a class that provides a password
-     *            processing service, such as password encryption. The class
-     *            must implement the &lt;code&gt;Processor&lt;/code&gt; interface. If an
-     *            attempt to instantiate this class fails, no processing will be
-     *            performed. Insted the contents of the first field will be
-     *            returned.
+     * @param validator A string that specifies a class that provides a password validation service.
+     * The class must implement the &lt;code&gt;Validator&lt;/code&gt; interface. If an attempt to instantiate
+     * this class fails, no validation will be performed.
+     * @param processor A string that specifies a class that provides a password processing service,
+     * such as password encryption. The class must implement the &lt;code&gt;Processor&lt;/code&gt; interface.
+     * If an attempt to instantiate this class fails, no processing will be performed. Insted the
+     * contents of the first field will be returned.
      */
     /*--------------------------------------------------------------------------*/
     public PasswordGroup(String validator, String processor)
@@ -115,14 +105,11 @@ public class PasswordGroup implements ProcessingClient
     /**
      * Returns the contents of the field indicated by &lt;code&gt;index&lt;/code&gt;.
      * 
-     * @param index
-     *            the index of the sub-field from which the contents is
-     *            requested.
+     * @param index the index of the sub-field from which the contents is requested.
      * 
      * @return the contents of the indicated sub-field.
      * 
-     * @exception IndexOutOfBoundsException
-     *                if the index is out of bounds.
+     * @exception IndexOutOfBoundsException if the index is out of bounds.
      */
     /*--------------------------------------------------------------------------*/
     public String getFieldContents(int index) throws IndexOutOfBoundsException
@@ -135,11 +122,9 @@ public class PasswordGroup implements ProcessingClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Adds a &lt;code&gt;JPasswordField&lt;/code&gt; to the group of fields being managed
-     * by this object.
+     * Adds a &lt;code&gt;JPasswordField&lt;/code&gt; to the group of fields being managed by this object.
      * 
-     * @param field
-     *            &lt;code&gt;JPasswordField&lt;/code&gt; to add
+     * @param field &lt;code&gt;JPasswordField&lt;/code&gt; to add
      */
     /*--------------------------------------------------------------------------*/
     public void addField(JPasswordField field)
@@ -152,12 +137,11 @@ public class PasswordGroup implements ProcessingClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method validates the group content. Validating is performed through
-     * a user supplied service class that provides the validation rules.
+     * This method validates the group content. Validating is performed through a user supplied
+     * service class that provides the validation rules.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes or no implementation
-     *         of a validation rule exists. Otherwise &lt;code&gt;false&lt;/code&gt; is
-     *         returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes or no implementation of a validation
+     * rule exists. Otherwise &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     public boolean validateContents()
@@ -174,9 +158,9 @@ public class PasswordGroup implements ProcessingClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the password. If a processing service class was supplied it will
-     * be used to process the password before it is returned, otherwise the
-     * content of the first field will be returned.
+     * Returns the password. If a processing service class was supplied it will be used to process
+     * the password before it is returned, otherwise the content of the first field will be
+     * returned.
      * 
      * @return the password
      */</diff>
      <filename>src/lib/com/izforge/izpack/panels/PasswordGroup.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               PathInputPanel.java
- *  Description :        A base panel to handle selection of a paths.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -79,10 +77,8 @@ public class PathInputPanel extends IzPanel implements ActionListener
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public PathInputPanel(InstallerFrame parent, InstallData idata)
     {
@@ -128,9 +124,8 @@ public class PathInputPanel extends IzPanel implements ActionListener
     }
 
     /**
-     * This method does nothing. It is called from ctor of PathInputPanel, to
-     * give in a derived class the possibility to add more components under the
-     * path input components.
+     * This method does nothing. It is called from ctor of PathInputPanel, to give in a derived
+     * class the possibility to add more components under the path input components.
      */
     public void createLayoutBottom()
     {
@@ -139,8 +134,7 @@ public class PathInputPanel extends IzPanel implements ActionListener
     /**
      * Actions-handling method.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {
@@ -222,10 +216,9 @@ public class PathInputPanel extends IzPanel implements ActionListener
     }
 
     /**
-     * Returns whether the chosen path is true or not. If existFiles are not
-     * null, the existence of it under the choosen path are detected. This
-     * method can be also implemented in derived classes to handle special
-     * verification of the path.
+     * Returns whether the chosen path is true or not. If existFiles are not null, the existence of
+     * it under the choosen path are detected. This method can be also implemented in derived
+     * classes to handle special verification of the path.
      * 
      * @return true if existFiles are exist or not defined, else false
      */
@@ -253,8 +246,7 @@ public class PathInputPanel extends IzPanel implements ActionListener
     /**
      * Sets the must exist state. If it is true, the path must exist.
      * 
-     * @param b
-     *            must exist state
+     * @param b must exist state
      */
     public void setMustExist(boolean b)
     {
@@ -262,8 +254,7 @@ public class PathInputPanel extends IzPanel implements ActionListener
     }
 
     /**
-     * Returns the array of strings which are described the files which must
-     * exist.
+     * Returns the array of strings which are described the files which must exist.
      * 
      * @return paths of files which must exist
      */
@@ -275,8 +266,7 @@ public class PathInputPanel extends IzPanel implements ActionListener
     /**
      * Sets the paths of files which must exist under the chosen path.
      * 
-     * @param strings
-     *            paths of files which must exist under the chosen path
+     * @param strings paths of files which must exist under the chosen path
      */
     public void setExistFiles(String[] strings)
     {
@@ -284,8 +274,8 @@ public class PathInputPanel extends IzPanel implements ActionListener
     }
 
     /**
-     * Loads up the &quot;dir&quot; resource associated with TargetPanel. Acceptable dir
-     * resource names: &lt;code&gt;
+     * Loads up the &quot;dir&quot; resource associated with TargetPanel. Acceptable dir resource names:
+     * &lt;code&gt;
      *   TargetPanel.dir.macosx
      *   TargetPanel.dir.mac
      *   TargetPanel.dir.windows
@@ -295,9 +285,8 @@ public class PathInputPanel extends IzPanel implements ActionListener
      *     with any spaces replace with underscores
      *   TargetPanel.dir (generic that will be applied if none of above is found)
      *   &lt;/code&gt;
-     * As with all IzPack resources, each the above ids should be associated
-     * with a separate filename, which is set in the install.xml file at compile
-     * time.
+     * As with all IzPack resources, each the above ids should be associated with a separate
+     * filename, which is set in the install.xml file at compile time.
      */
     public static void loadDefaultInstallDir(InstallerFrame parentFrame)
     {
@@ -426,8 +415,7 @@ public class PathInputPanel extends IzPanel implements ActionListener
     /**
      * Sets the default for the installation directory to the given string.
      * 
-     * @param string
-     *            path for default for the installation directory
+     * @param string path for default for the installation directory
      */
     public static void setDefaultInstallDir(String string)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/PathInputPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               PathSelectionPanel.java
- *  Description :        A sub panel to handle selection of a paths.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.Dimension;
@@ -41,13 +39,12 @@ import com.izforge.izpack.installer.InstallData;
 import com.izforge.izpack.installer.IzPanel;
 
 /**
- * This is a sub panel which contains a text field and a browse button for path
- * selection. This is NOT an IzPanel, else it is made to use in an IzPanel for
- * any path selection. If the IzPanel parent implements ActionListener, the
- * ActionPerformed method will be called, if PathSelectionPanel.ActionPerformed
- * was called with a source other than the browse button. This can be used to
- * perform parentFrame.navigateNext in the IzPanel parent. An example
- * implementation is done in com.izforge.izpack.panels.PathInputPanel.
+ * This is a sub panel which contains a text field and a browse button for path selection. This is
+ * NOT an IzPanel, else it is made to use in an IzPanel for any path selection. If the IzPanel
+ * parent implements ActionListener, the ActionPerformed method will be called, if
+ * PathSelectionPanel.ActionPerformed was called with a source other than the browse button. This
+ * can be used to perform parentFrame.navigateNext in the IzPanel parent. An example implementation
+ * is done in com.izforge.izpack.panels.PathInputPanel.
  * 
  * @author Klaus Bartz
  * 
@@ -75,13 +72,10 @@ public class PathSelectionPanel extends JPanel implements ActionListener
     private InstallData idata;
 
     /**
-     * The constructor. Be aware, parent is the parent IzPanel, not the
-     * installer frame.
+     * The constructor. Be aware, parent is the parent IzPanel, not the installer frame.
      * 
-     * @param parent
-     *            The parent IzPanel.
-     * @param idata
-     *            The installer internal data.
+     * @param parent The parent IzPanel.
+     * @param idata The installer internal data.
      */
     public PathSelectionPanel(IzPanel parent, InstallData idata)
     {
@@ -138,8 +132,7 @@ public class PathSelectionPanel extends JPanel implements ActionListener
     /**
      * Actions-handling method.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {
@@ -183,8 +176,7 @@ public class PathSelectionPanel extends JPanel implements ActionListener
     /**
      * Sets the contents of the text field to the given path.
      * 
-     * @param path
-     *            the path to be set
+     * @param path the path to be set
      */
     public void setPath(String path)
     {
@@ -192,9 +184,8 @@ public class PathSelectionPanel extends JPanel implements ActionListener
     }
 
     /**
-     * Returns the text input field for the path. This methode can be used to
-     * differ in a ActionPerformed method of the parent between the browse
-     * button and the text field.
+     * Returns the text input field for the path. This methode can be used to differ in a
+     * ActionPerformed method of the parent between the browse button and the text field.
      * 
      * @return the text input field for the path
      */</diff>
      <filename>src/lib/com/izforge/izpack/panels/PathSelectionPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge, Tino Schwarze
- *
- *  File :               ProcessPanel.java
- *  Description :        A panel to execute processes during installation.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.BorderLayout;
@@ -89,10 +86,8 @@ public class ProcessPanel extends IzPanel implements AbstractUIProcessHandler
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public ProcessPanel(InstallerFrame parent, InstallData idata) throws IOException
     {
@@ -172,10 +167,8 @@ public class ProcessPanel extends IzPanel implements AbstractUIProcessHandler
     /**
      * Log a message.
      * 
-     * @param message
-     *            The message.
-     * @param stderr
-     *            Whether the message came from stderr or stdout.
+     * @param message The message.
+     * @param stderr Whether the message came from stderr or stdout.
      */
     public void logOutput(String message, boolean stderr)
     {
@@ -194,8 +187,7 @@ public class ProcessPanel extends IzPanel implements AbstractUIProcessHandler
     /**
      * Next job starts.
      * 
-     * @param jobName
-     *            The job name.
+     * @param jobName The job name.
      */
     public void startProcess(String jobName)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/ProcessPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               CompilePanelAutomationHelper.java
- *  Description :        Automation support functions for CompilePanel.
- *  Author's email :     jonathan.halliday@arjuna.com
- *  Author's Website :   http://www.arjuna.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.io.IOException;
@@ -53,10 +50,8 @@ public class ProcessPanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Save data for running automated.
      * 
-     * @param installData
-     *            installation parameters
-     * @param panelRoot
-     *            unused.
+     * @param installData installation parameters
+     * @param panelRoot unused.
      */
     public void makeXMLData(AutomatedInstallData installData, XMLElement panelRoot)
     {
@@ -67,8 +62,7 @@ public class ProcessPanelAutomationHelper extends PanelAutomationHelper implemen
     /**
      * Perform the installation actions.
      * 
-     * @param panelRoot
-     *            The panel XML tree root.
+     * @param panelRoot The panel XML tree root.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/ProcessPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,35 +1,29 @@
 /*
- * $Id$
- * Copyright (C) 2003 Elmar Grom
- *
- * File :               ProcessingClient.java
- * Description :        This interface must be implemented by any
- *                      class that wants to use processing or
- *                      validation services.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
 
 /*---------------------------------------------------------------------------*/
 /**
- * Implement this interface in any class that wants to use processing or
- * validation services.
+ * Implement this interface in any class that wants to use processing or validation services.
  * 
  * @see com.izforge.izpack.panels.Processor
  * @see com.izforge.izpack.panels.Validator
@@ -54,14 +48,11 @@ public interface ProcessingClient
     /**
      * Returns the contents of the field indicated by &lt;code&gt;index&lt;/code&gt;.
      * 
-     * @param index
-     *            the index of the sub-field from which the contents is
-     *            requested.
+     * @param index the index of the sub-field from which the contents is requested.
      * 
      * @return the contents of the indicated sub-field.
      * 
-     * @exception IndexOutOfBoundsException
-     *                if the index is out of bounds.
+     * @exception IndexOutOfBoundsException if the index is out of bounds.
      */
     /*--------------------------------------------------------------------------*/
     public String getFieldContents(int index);</diff>
      <filename>src/lib/com/izforge/izpack/panels/ProcessingClient.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               Processor.java
- * Description :        This is the public interface of classes that 
- *                      provide processing services for the UserInputPanel.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -42,8 +38,7 @@ public interface Processor
     /**
      * Processes the contend of an input field.
      * 
-     * @param client
-     *            the client object using the services of this processor.
+     * @param client the client object using the services of this processor.
      * 
      * @return The result of the encryption.
      */</diff>
      <filename>src/lib/com/izforge/izpack/panels/Processor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               RuleInputField.java
- * Description :        A Java component that serves as a serial number
- *                      input field with limited format verification.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -46,15 +42,13 @@ import org.apache.regexp.RE;
 /**
  * This class assists the user in entering serial numbers. &lt;BR&gt;
  * &lt;BR&gt;
- * Serial numbers, license number, CD keys and the like are often lenghty
- * alpha-numerical numbers. In many cases they are devided into multiple parts
- * by dash or point separators. Entering these in a single text field can be a
- * frustrating experience for the user. This class provides a way of presenting
- * the user with an assembly of input fields that are arranged in the same way
- * as the key, with the separators already in place. Immideate testing for
- * format compliance if performed ans soon as each field is completed. In
- * addition, the cursor is automatically advanced to make entering numbers as
- * painless as possible. &lt;br&gt;
+ * Serial numbers, license number, CD keys and the like are often lenghty alpha-numerical numbers.
+ * In many cases they are devided into multiple parts by dash or point separators. Entering these in
+ * a single text field can be a frustrating experience for the user. This class provides a way of
+ * presenting the user with an assembly of input fields that are arranged in the same way as the
+ * key, with the separators already in place. Immideate testing for format compliance if performed
+ * ans soon as each field is completed. In addition, the cursor is automatically advanced to make
+ * entering numbers as painless as possible. &lt;br&gt;
  * &lt;br&gt;
  * &lt;b&gt;Formatting:&lt;/b&gt;
  * 
@@ -68,12 +62,11 @@ import org.apache.regexp.RE;
  * &lt;br&gt;
  * &lt;code&gt;&quot;N:4:4 - H:6:6 - AN:3:3 x A:5:5&quot;&lt;/code&gt;&lt;br&gt;
  * &lt;br&gt;
- * This formatting string will produce a serial number field consisting of four
- * separate input fields. The fisrt input field will accept four numeric digits,
- * the second six hexa-decimal digits, the third three alpha-numeric digits and
- * the fourth five letters. The first three input fields will be separated by
- * '-' and the third and fourth by 'x'. The following snapshot was obtained with
- * this setting: &lt;br&gt;
+ * This formatting string will produce a serial number field consisting of four separate input
+ * fields. The fisrt input field will accept four numeric digits, the second six hexa-decimal
+ * digits, the third three alpha-numeric digits and the fourth five letters. The first three input
+ * fields will be separated by '-' and the third and fourth by 'x'. The following snapshot was
+ * obtained with this setting: &lt;br&gt;
  * &lt;br&gt;
  * &lt;img src=&quot;doc-files/RuleInputField-1.gif&quot;/&gt;
  * 
@@ -91,32 +84,30 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     private static final long serialVersionUID = 3832616275124958257L;
 
     /**
-     * Used to specify the retsult format. This constant specifies to return the
-     * contents of all fields concatenated into one long string, with separation
-     * between each component.
+     * Used to specify the retsult format. This constant specifies to return the contents of all
+     * fields concatenated into one long string, with separation between each component.
      */
     public static final int PLAIN_STRING = 1;
 
     /**
-     * Used to specify the retsult format. This constant specifies to return the
-     * contents of all fields together with all separators as specified in the
-     * field format concatenated into one long string. In this case the
-     * resulting string looks just like the user saw it during data entry
+     * Used to specify the retsult format. This constant specifies to return the contents of all
+     * fields together with all separators as specified in the field format concatenated into one
+     * long string. In this case the resulting string looks just like the user saw it during data
+     * entry
      */
     public static final int DISPLAY_FORMAT = 2;
 
     /**
-     * Used to specify the retsult format. This constant specifies to return the
-     * contents of all fields concatenated into one long string, with a special
-     * separator string inserted in between the individual components.
+     * Used to specify the retsult format. This constant specifies to return the contents of all
+     * fields concatenated into one long string, with a special separator string inserted in between
+     * the individual components.
      */
     public static final int SPECIAL_SEPARATOR = 3;
 
     /**
-     * Used to specify the retsult format. This constant specifies to return the
-     * contents of all fields in a somehow modified way. How the content is
-     * modified depends on the operation performed by a encryption service
-     * class. The class must be provided at object instatiation.
+     * Used to specify the retsult format. This constant specifies to return the contents of all
+     * fields in a somehow modified way. How the content is modified depends on the operation
+     * performed by a encryption service class. The class must be provided at object instatiation.
      */
     public static final int ENCRYPTED = 4;
 
@@ -126,8 +117,8 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     private Vector items = new Vector();
 
     /**
-     * This &lt;code&gt;Vector&lt;/code&gt; holds a reference to each input field, in the
-     * order in which they appear on the screen.
+     * This &lt;code&gt;Vector&lt;/code&gt; holds a reference to each input field, in the order in which they
+     * appear on the screen.
      */
     private Vector inputFields = new Vector();
 
@@ -146,20 +137,17 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     private int resultFormat = DEFAULT;
 
     /**
-     * Holds an instance of the &lt;code&gt;Validator&lt;/code&gt; if one was specified
-     * and available
+     * Holds an instance of the &lt;code&gt;Validator&lt;/code&gt; if one was specified and available
      */
     private Validator validationService;
 
     /**
-     * Holds an instance of the &lt;code&gt;Processor&lt;/code&gt; if one was specified
-     * and available
+     * Holds an instance of the &lt;code&gt;Processor&lt;/code&gt; if one was specified and available
      */
     private Processor encryptionService;
 
     /**
-     * @return true if this instance has any parameters to pass to the Validator
-     *         instance.
+     * @return true if this instance has any parameters to pass to the Validator instance.
      */
     public boolean hasParams()
     {
@@ -170,42 +158,30 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Constructs a rule input field.
      * 
-     * @param format
-     *            a string that specifies the formatting and to a limited degree
-     *            the behavior of this field.
-     * @param preset
-     *            a string that specifies preset values for specific sub-fields.
-     * @param separator
-     *            a string to be used for separating the contents of individual
-     *            fields in the string returned by &lt;code&gt;getText()&lt;/code&gt;
-     * @param validator
-     *            A string that specifies a class to perform validation
-     *            services. The string must completely identify the class, so
-     *            that it can be instantiated. The class must implement the
-     *            &lt;code&gt;RuleValidator&lt;/code&gt; interface. If an attempt to
-     *            instantiate this class fails, no validation will be performed.
-     * @param validatorParams
-     *            A &lt;code&gt;java.util.Map&lt;/code&gt; containing name/ value pairs,
-     *            which will be forwarded to the validator.
-     * @param processor
-     *            A string that specifies a class to perform processing
-     *            services. The string must completely identify the class, so
-     *            that it can be instantiated. The class must implement the
-     *            &lt;code&gt;Processor&lt;/code&gt; interface. If an attempt to
-     *            instantiate this class fails, no processing will be performed.
-     *            Instead, the text is returned in the default formatting.
-     * @param resultFormat
-     *            specifies in which format the resulting text should be
-     *            returned, wehn &lt;code&gt;getText()&lt;/code&gt; is called. The
-     *            following values are legal:&lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;PLAIN_STRING
-     *            &lt;li&gt;DISPLAY_FORMAT
-     *            &lt;li&gt;SPECIAL_SEPARATOR
-     *            &lt;li&gt;ENCRYPTED
-     *            &lt;/ul&gt;
-     * @param toolkit
-     *            needed to gain access to &lt;code&gt;beep()&lt;/code&gt;
+     * @param format a string that specifies the formatting and to a limited degree the behavior of
+     * this field.
+     * @param preset a string that specifies preset values for specific sub-fields.
+     * @param separator a string to be used for separating the contents of individual fields in the
+     * string returned by &lt;code&gt;getText()&lt;/code&gt;
+     * @param validator A string that specifies a class to perform validation services. The string
+     * must completely identify the class, so that it can be instantiated. The class must implement
+     * the &lt;code&gt;RuleValidator&lt;/code&gt; interface. If an attempt to instantiate this class fails, no
+     * validation will be performed.
+     * @param validatorParams A &lt;code&gt;java.util.Map&lt;/code&gt; containing name/ value pairs, which
+     * will be forwarded to the validator.
+     * @param processor A string that specifies a class to perform processing services. The string
+     * must completely identify the class, so that it can be instantiated. The class must implement
+     * the &lt;code&gt;Processor&lt;/code&gt; interface. If an attempt to instantiate this class fails, no
+     * processing will be performed. Instead, the text is returned in the default formatting.
+     * @param resultFormat specifies in which format the resulting text should be returned, wehn
+     * &lt;code&gt;getText()&lt;/code&gt; is called. The following values are legal:&lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;PLAIN_STRING
+     * &lt;li&gt;DISPLAY_FORMAT
+     * &lt;li&gt;SPECIAL_SEPARATOR
+     * &lt;li&gt;ENCRYPTED
+     * &lt;/ul&gt;
+     * @param toolkit needed to gain access to &lt;code&gt;beep()&lt;/code&gt;
      */
     /*--------------------------------------------------------------------------*/
     public RuleInputField(String format, String preset, String separator, String validator,
@@ -220,39 +196,28 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Constructs a rule input field.
      * 
-     * @param format
-     *            a string that specifies the formatting and to a limited degree
-     *            the behavior of this field.
-     * @param preset
-     *            a string that specifies preset values for specific sub-fields.
-     * @param separator
-     *            a string to be used for separating the contents of individual
-     *            fields in the string returned by &lt;code&gt;getText()&lt;/code&gt;
-     * @param validator
-     *            A string that specifies a class to perform validation
-     *            services. The string must completely identify the class, so
-     *            that it can be instantiated. The class must implement the
-     *            &lt;code&gt;RuleValidator&lt;/code&gt; interface. If an attempt to
-     *            instantiate this class fails, no validation will be performed.
-     * @param processor
-     *            A string that specifies a class to perform processing
-     *            services. The string must completely identify the class, so
-     *            that it can be instantiated. The class must implement the
-     *            &lt;code&gt;Processor&lt;/code&gt; interface. If an attempt to
-     *            instantiate this class fails, no processing will be performed.
-     *            Instead, the text is returned in the default formatting.
-     * @param resultFormat
-     *            specifies in which format the resulting text should be
-     *            returned, wehn &lt;code&gt;getText()&lt;/code&gt; is called. The
-     *            following values are legal:&lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;PLAIN_STRING
-     *            &lt;li&gt;DISPLAY_FORMAT
-     *            &lt;li&gt;SPECIAL_SEPARATOR
-     *            &lt;li&gt;ENCRYPTED
-     *            &lt;/ul&gt;
-     * @param toolkit
-     *            needed to gain access to &lt;code&gt;beep()&lt;/code&gt;
+     * @param format a string that specifies the formatting and to a limited degree the behavior of
+     * this field.
+     * @param preset a string that specifies preset values for specific sub-fields.
+     * @param separator a string to be used for separating the contents of individual fields in the
+     * string returned by &lt;code&gt;getText()&lt;/code&gt;
+     * @param validator A string that specifies a class to perform validation services. The string
+     * must completely identify the class, so that it can be instantiated. The class must implement
+     * the &lt;code&gt;RuleValidator&lt;/code&gt; interface. If an attempt to instantiate this class fails, no
+     * validation will be performed.
+     * @param processor A string that specifies a class to perform processing services. The string
+     * must completely identify the class, so that it can be instantiated. The class must implement
+     * the &lt;code&gt;Processor&lt;/code&gt; interface. If an attempt to instantiate this class fails, no
+     * processing will be performed. Instead, the text is returned in the default formatting.
+     * @param resultFormat specifies in which format the resulting text should be returned, wehn
+     * &lt;code&gt;getText()&lt;/code&gt; is called. The following values are legal:&lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;PLAIN_STRING
+     * &lt;li&gt;DISPLAY_FORMAT
+     * &lt;li&gt;SPECIAL_SEPARATOR
+     * &lt;li&gt;ENCRYPTED
+     * &lt;/ul&gt;
+     * @param toolkit needed to gain access to &lt;code&gt;beep()&lt;/code&gt;
      */
     /*--------------------------------------------------------------------------*/
     public RuleInputField(String format, String preset, String separator, String validator,
@@ -309,8 +274,7 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the number of sub-fields composing this
-     * &lt;code&gt;RuleInputField&lt;/code&gt;.
+     * Returns the number of sub-fields composing this &lt;code&gt;RuleInputField&lt;/code&gt;.
      * 
      * @return the number of sub-fields
      */
@@ -324,14 +288,11 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Returns the contents of the field indicated by &lt;code&gt;index&lt;/code&gt;.
      * 
-     * @param index
-     *            the index of the sub-field from which the contents is
-     *            requested.
+     * @param index the index of the sub-field from which the contents is requested.
      * 
      * @return the contents of the indicated sub-field.
      * 
-     * @exception IndexOutOfBoundsException
-     *                if the index is out of bounds.
+     * @exception IndexOutOfBoundsException if the index is out of bounds.
      */
     /*--------------------------------------------------------------------------*/
     public String getFieldContents(int index) throws IndexOutOfBoundsException
@@ -343,9 +304,8 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the validator parameters, if any. The caller should check for the
-     * existence of validator parameters via the &lt;code&gt;hasParams()&lt;/code&gt;
-     * method prior to invoking this method.
+     * Returns the validator parameters, if any. The caller should check for the existence of
+     * validator parameters via the &lt;code&gt;hasParams()&lt;/code&gt; method prior to invoking this method.
      * 
      * @return a java.util.Map containing the validator parameters.
      */
@@ -356,8 +316,7 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*---------------------------------------------------------------------------*/
     /**
-     * Returns the field contents, assembled acording to the encryption and
-     * separator rules.
+     * Returns the field contents, assembled acording to the encryption and separator rules.
      * 
      * @return the field contents
      */
@@ -440,32 +399,26 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Creates the items that make up this field. Both separators and input
-     * fields are considered items. The items created are stored in
-     * &lt;code&gt;items&lt;/code&gt;. In addition, all fields are stored in
-     * &lt;code&gt;inputFields&lt;/code&gt;.
+     * Creates the items that make up this field. Both separators and input fields are considered
+     * items. The items created are stored in &lt;code&gt;items&lt;/code&gt;. In addition, all fields are
+     * stored in &lt;code&gt;inputFields&lt;/code&gt;.
      * 
-     * @param format
-     *            a string that specifies the layout of the input fields and
-     *            separators.
+     * @param format a string that specifies the layout of the input fields and separators.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * I used a simple StringTokenizer to break the format string into
-     * individual tokens. The approach in building up the field is to consider
-     * each token a potential definition for an input field. Therefore I attempt
-     * to create an instance of FieldSpec from each token. FieldSpec analyzes
-     * the token and if it does not represent a valid specification for an input
-     * field throws an exception. If I catch an exception, I know the token does
-     * not represent a valid field specification. In this case I treat the token
-     * as a separator, even though this might not be what the user had intended.
-     * However, this approach allows me to implement robust behavior (no
-     * exception thrown) even though the user might have made a mistake in the
-     * definition. The mistake should become immediately obvious when testing
-     * the code, since a input field definition would show up as separator
-     * between two fields.
+     * I used a simple StringTokenizer to break the format string into individual tokens. The
+     * approach in building up the field is to consider each token a potential definition for an
+     * input field. Therefore I attempt to create an instance of FieldSpec from each token.
+     * FieldSpec analyzes the token and if it does not represent a valid specification for an input
+     * field throws an exception. If I catch an exception, I know the token does not represent a
+     * valid field specification. In this case I treat the token as a separator, even though this
+     * might not be what the user had intended. However, this approach allows me to implement robust
+     * behavior (no exception thrown) even though the user might have made a mistake in the
+     * definition. The mistake should become immediately obvious when testing the code, since a
+     * input field definition would show up as separator between two fields.
      * --------------------------------------------------------------------------
      */
     private void createItems(String format)
@@ -562,13 +515,10 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Sets each field to a pre-defined value.
      * 
-     * @param data
-     *            a &lt;code&gt;String&lt;/code&gt; containing the preset values for each
-     *            field. The format of the string is as follows: The content for
-     *            the individuals fields must be separated by whitespace. Each
-     *            data block is preceeded by the index of the field to set
-     *            (counting starts at 0) followed by a colon ':'and after that
-     *            the actual data for the field.
+     * @param data a &lt;code&gt;String&lt;/code&gt; containing the preset values for each field. The format
+     * of the string is as follows: The content for the individuals fields must be separated by
+     * whitespace. Each data block is preceeded by the index of the field to set (counting starts at
+     * 0) followed by a colon ':'and after that the actual data for the field.
      */
     /*--------------------------------------------------------------------------*/
     private void setFields(String data)
@@ -658,12 +608,11 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method validates the field content. Validating is performed through
-     * a user supplied service class that provides the validation rules.
+     * This method validates the field content. Validating is performed through a user supplied
+     * service class that provides the validation rules.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes or no implementation
-     *         of a validation rule exists. Otherwise &lt;code&gt;false&lt;/code&gt; is
-     *         returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes or no implementation of a validation
+     * rule exists. Otherwise &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     public boolean validateContents()
@@ -684,11 +633,10 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method is invoked when a key has been typed. The event occurs when a
-     * key press is followed by a key release.
+     * This method is invoked when a key has been typed. The event occurs when a key press is
+     * followed by a key release.
      * 
-     * @param event
-     *            the key event forwarded by the system.
+     * @param event the key event forwarded by the system.
      */
     /*--------------------------------------------------------------------------*/
     public void keyTyped(KeyEvent event)
@@ -697,15 +645,13 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method is invoked when a key has been pressed. This method verifies
-     * the condition of the input field in focus. Once the column count in the
-     * field has reached the specified maximum, the rule specified for the field
-     * in question is invoked. In case the test result is positive, focus is set
-     * to the next field. If hte test result is negative, the field content is
-     * marked and the caret set to the start of the field.
+     * This method is invoked when a key has been pressed. This method verifies the condition of the
+     * input field in focus. Once the column count in the field has reached the specified maximum,
+     * the rule specified for the field in question is invoked. In case the test result is positive,
+     * focus is set to the next field. If hte test result is negative, the field content is marked
+     * and the caret set to the start of the field.
      * 
-     * @param event
-     *            the key event forwarded by the system.
+     * @param event the key event forwarded by the system.
      */
     /*--------------------------------------------------------------------------*/
     public void keyPressed(KeyEvent event)
@@ -733,8 +679,7 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * This method is invoked when a key has been released.
      * 
-     * @param event
-     *            the key event forwarded by the system.
+     * @param event the key event forwarded by the system.
      */
     /*--------------------------------------------------------------------------*/
     public void keyReleased(KeyEvent event)
@@ -749,8 +694,7 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Invoked when a component gains the keyboard focus.
      * 
-     * @param event
-     *            the focus event forwardes by the sytem.
+     * @param event the focus event forwardes by the sytem.
      */
     /*--------------------------------------------------------------------------*/
     /*
@@ -776,11 +720,10 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Invoked when a component loses the keyboard focus. This method does
-     * nothing, we are only interested in 'focus gained' events.
+     * Invoked when a component loses the keyboard focus. This method does nothing, we are only
+     * interested in 'focus gained' events.
      * 
-     * @param event
-     *            the focus event forwardes by the sytem.
+     * @param event the focus event forwardes by the sytem.
      */
     /*--------------------------------------------------------------------------*/
     public void focusLost(FocusEvent event)
@@ -795,8 +738,7 @@ public class RuleInputField extends JComponent implements KeyListener, FocusList
     /**
      * Called when the caret position is updated.
      * 
-     * @param event
-     *            the caret event received from the text field
+     * @param event the caret event received from the text field
      */
     /*--------------------------------------------------------------------------*/
     public void caretUpdate(CaretEvent event)</diff>
      <filename>src/lib/com/izforge/izpack/panels/RuleInputField.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               RuleInputField.java
- * Description :        A Java component that serves as a text input field
- *                      with the abilty to impose limitations on the type
- *                      of data that can be entered.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;</diff>
      <filename>src/lib/com/izforge/izpack/panels/RuleTextField.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * IzPack version 3.1.0 pre2 (build 2002.10.19)
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               ShortcutData.java
- * Description :        This class is used as data structure in ShortcutPanel
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -108,13 +105,11 @@ public class ShortcutData implements Cloneable
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Clones a &lt;code&gt;String&lt;/code&gt;, that is it makes a copy of the content,
-     * not of the reference. In addition, if the original is &lt;code&gt;null&lt;/code&gt;
-     * then an empty &lt;code&gt;String&lt;/code&gt; is returned rather than
-     * &lt;code&gt;null&lt;/code&gt;.
+     * Clones a &lt;code&gt;String&lt;/code&gt;, that is it makes a copy of the content, not of the
+     * reference. In addition, if the original is &lt;code&gt;null&lt;/code&gt; then an empty
+     * &lt;code&gt;String&lt;/code&gt; is returned rather than &lt;code&gt;null&lt;/code&gt;.
      * 
-     * @param original
-     *            the &lt;code&gt;String&lt;/code&gt; to clone
+     * @param original the &lt;code&gt;String&lt;/code&gt; to clone
      * 
      * @return a clone of the original
      */</diff>
      <filename>src/lib/com/izforge/izpack/panels/ShortcutData.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,22 @@
 /*
- * $Id$
- *
- * IzPack
- * File is Copyright (C) 2002 Elmar Grom
- *
- * File :               ShortcutPanel.java
- * Description :        A panel to prompt the user to select a program group
- *                      and to accept creation of a desktop shortcut. This
- *                      panel creates shortcuts.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -88,22 +81,20 @@ import com.izforge.izpack.util.os.Shortcut;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class implements a panel for the creation of shortcuts. The panel
- * prompts the user to select a program group for shortcuts, accept the creation
- * of desktop shortcuts and actually creates the shortcuts.
+ * This class implements a panel for the creation of shortcuts. The panel prompts the user to select
+ * a program group for shortcuts, accept the creation of desktop shortcuts and actually creates the
+ * shortcuts.
  * 
  * &lt;h4&gt;Important&lt;/h4&gt;
- * It is neccesary that the installation has been completed before this panel is
- * called. To successfully create shortcuts this panel needs to have the
- * following in place: &lt;br&gt;
+ * It is neccesary that the installation has been completed before this panel is called. To
+ * successfully create shortcuts this panel needs to have the following in place: &lt;br&gt;
  * &lt;br&gt;
  * &lt;ul&gt;
  * &lt;li&gt;the launcher files that the shortcuts point to must exist
  * &lt;li&gt;it must be known which packs are installed
  * &lt;li&gt;where the launcher for the uninstaller is located
  * &lt;/ul&gt;
- * It is ok to present other panels after this one, as long as these conditions
- * are met.
+ * It is ok to present other panels after this one, as long as these conditions are met.
  * 
  * @see com.izforge.izpack.util.os.ShellLink
  * 
@@ -153,9 +144,8 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private static final String SEPARATOR_LINE = &quot;--------------------------------------------------------------------------------&quot;;
 
     /**
-     * The default file name for the text file in which the shortcut information
-     * should be stored, in case shortcuts can not be created on a particular
-     * target system.
+     * The default file name for the text file in which the shortcut information should be stored,
+     * in case shortcuts can not be created on a particular target system.
      */
     private static final String TEXT_FILE_NAME = &quot;Shortcuts.txt&quot;;
 
@@ -269,32 +259,28 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private JList targetList;
 
     /**
-     * UI element to present the default name for the program group and to
-     * support editing of this name.
+     * UI element to present the default name for the program group and to support editing of this
+     * name.
      */
     private JTextField programGroup;
 
     /**
-     * UI element to allow the user to revert to the default name of the program
-     * group
+     * UI element to allow the user to revert to the default name of the program group
      */
     private JButton defaultButton;
 
     /**
-     * UI element to allow the user to save a text file with the shortcut
-     * information
+     * UI element to allow the user to save a text file with the shortcut information
      */
     private JButton saveButton;
 
     /**
-     * UI element to allow the user to decide if shortcuts should be placed on
-     * the desktop or not.
+     * UI element to allow the user to decide if shortcuts should be placed on the desktop or not.
      */
     private JCheckBox allowDesktopShortcut;
 
     /**
-     * UI element instruct this panel to create shortcuts for the current user
-     * only
+     * UI element instruct this panel to create shortcuts for the current user only
      */
     private JRadioButton currentUser;
 
@@ -308,8 +294,7 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private GridBagConstraints constraints;
 
     /**
-     * The default name to use for the program group. This comes from the XML
-     * specification.
+     * The default name to use for the program group. This comes from the XML specification.
      */
     private String suggestedProgramGroup;
 
@@ -317,10 +302,9 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private String groupName;
 
     /**
-     * The location for placign the program group. This is the same as the
-     * location (type) of a shortcut, only that it applies to the program group.
-     * Note that there are only two locations that make sense as location for a
-     * program group: &lt;br&gt;
+     * The location for placign the program group. This is the same as the location (type) of a
+     * shortcut, only that it applies to the program group. Note that there are only two locations
+     * that make sense as location for a program group: &lt;br&gt;
      * 
      * &lt;ul&gt;
      * &lt;li&gt; applications
@@ -334,8 +318,8 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private XMLElement spec;
 
     /**
-     * Set to &lt;code&gt;true&lt;/code&gt; by &lt;code&gt;analyzeShortcutSpec()&lt;/code&gt; if
-     * there are any desktop shortcuts to create.
+     * Set to &lt;code&gt;true&lt;/code&gt; by &lt;code&gt;analyzeShortcutSpec()&lt;/code&gt; if there are any desktop
+     * shortcuts to create.
      */
     private boolean hasDesktopShortcuts = false;
 
@@ -346,40 +330,37 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     private Shortcut shortcut;
 
     /**
-     * A list of &lt;code&gt;ShortcutData&lt;/code&gt; objects. Each object is the
-     * complete specification for one shortcut that must be created.
+     * A list of &lt;code&gt;ShortcutData&lt;/code&gt; objects. Each object is the complete specification for
+     * one shortcut that must be created.
      */
     private Vector shortcuts = new Vector();
 
     /**
-     * Holds a list of all the shortcut files that have been created. &lt;b&gt;Note:
-     * &lt;/b&gt; this variable contains valid data only after
-     * &lt;code&gt;createShortcuts()&lt;/code&gt; has been called. This list is created so
-     * that the files can be added to the uninstaller.
+     * Holds a list of all the shortcut files that have been created. &lt;b&gt;Note: &lt;/b&gt; this variable
+     * contains valid data only after &lt;code&gt;createShortcuts()&lt;/code&gt; has been called. This list is
+     * created so that the files can be added to the uninstaller.
      */
     private Vector files = new Vector();
 
     /**
-     * If &lt;code&gt;true&lt;/code&gt; it indicates that there are shortcuts to create.
-     * The value is set by &lt;code&gt;analyzeShortcutSpec()&lt;/code&gt;
+     * If &lt;code&gt;true&lt;/code&gt; it indicates that there are shortcuts to create. The value is set by
+     * &lt;code&gt;analyzeShortcutSpec()&lt;/code&gt;
      */
     private boolean shortcutsToCreate = false;
 
     /**
-     * If &lt;code&gt;true&lt;/code&gt; it indicates that the spec file is existing and
-     * could be read.
+     * If &lt;code&gt;true&lt;/code&gt; it indicates that the spec file is existing and could be read.
      */
     private boolean haveShortcutSpec = false;
 
     /**
-     * This is set to true if the shortcut spec instructs to simulate running on
-     * an operating system that is not supported.
+     * This is set to true if the shortcut spec instructs to simulate running on an operating system
+     * that is not supported.
      */
     private boolean simulteNotSupported = false;
 
     /**
-     * Avoids bogus behaviour when the user goes back then returns to this
-     * panel.
+     * Avoids bogus behaviour when the user goes back then returns to this panel.
      */
     private boolean firstTime = true;
 
@@ -389,10 +370,8 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     /**
      * Constructor.
      * 
-     * @param parent
-     *            reference to the application frame
-     * @param installData
-     *            shared information about the installation
+     * @param parent reference to the application frame
+     * @param installData shared information about the installation
      */
     /*
      * --------------------------------------------------------------------------
@@ -432,11 +411,10 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method represents the &lt;code&gt;ActionListener&lt;/code&gt; interface,
-     * invoked when an action occurs.
+     * This method represents the &lt;code&gt;ActionListener&lt;/code&gt; interface, invoked when an action
+     * occurs.
      * 
-     * @param event
-     *            the action event.
+     * @param event the action event.
      */
     /*--------------------------------------------------------------------------*/
     public void actionPerformed(ActionEvent event)
@@ -492,11 +470,11 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns &lt;code&gt;true&lt;/code&gt; when all selections have valid settings. This
-     * indicates that it is legal to procede to the next panel.
+     * Returns &lt;code&gt;true&lt;/code&gt; when all selections have valid settings. This indicates that it
+     * is legal to procede to the next panel.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if it is legal to procede to the next panel,
-     *         otherwise &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if it is legal to procede to the next panel, otherwise
+     * &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     public boolean isValidated()
@@ -566,12 +544,10 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method is called by the &lt;code&gt;groupList&lt;/code&gt; when the user makes
-     * a selection. It updates the content of the &lt;code&gt;programGroup&lt;/code&gt;
-     * with the result of the selection.
+     * This method is called by the &lt;code&gt;groupList&lt;/code&gt; when the user makes a selection. It
+     * updates the content of the &lt;code&gt;programGroup&lt;/code&gt; with the result of the selection.
      * 
-     * @param event
-     *            the list selection event
+     * @param event the list selection event
      */
     /*--------------------------------------------------------------------------*/
     public void valueChanged(ListSelectionEvent event)
@@ -596,8 +572,7 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification for the shortcuts to create. The result is
-     * stored in spec.
+     * Reads the XML specification for the shortcuts to create. The result is stored in spec.
      * 
      * 
      */
@@ -641,8 +616,8 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method analyzes the specifications for creating shortcuts and builds
-     * a list of all the Shortcuts that need to be created.
+     * This method analyzes the specifications for creating shortcuts and builds a list of all the
+     * Shortcuts that need to be created.
      * 
      */
     /*--------------------------------------------------------------------------*/
@@ -965,29 +940,25 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Verifies if the shortcut is required for any of the packs listed. The
-     * shortcut is required for a pack in the list if that pack is actually
-     * selected for installation. &lt;br&gt;
+     * Verifies if the shortcut is required for any of the packs listed. The shortcut is required
+     * for a pack in the list if that pack is actually selected for installation. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always
-     * returnd. The same is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
+     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always returnd. The same
+     * is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
      * 
-     * @param packs
-     *            a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of
-     *            the strings denotes a pack for which the schortcut should be
-     *            created if the pack is actually installed.
+     * @param packs a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of the strings denotes
+     * a pack for which the schortcut should be created if the pack is actually installed.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the shortcut is required for at least on
-     *         pack in the list, otherwise returns &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the shortcut is required for at least on pack in the list,
+     * otherwise returns &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * The information about the installed packs comes from
-     * InstallData.selectedPacks. This assumes that this panel is presented to
-     * the user AFTER the PacksPanel.
+     * The information about the installed packs comes from InstallData.selectedPacks. This assumes
+     * that this panel is presented to the user AFTER the PacksPanel.
      * --------------------------------------------------------------------------
      */
     private boolean shortcutRequiredFor(Vector packs)
@@ -1014,8 +985,8 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Determines if the named attribute in true. True is represented by any of
-     * the following strings and is not case sensitive. &lt;br&gt;
+     * Determines if the named attribute in true. True is represented by any of the following
+     * strings and is not case sensitive. &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;yes
      * &lt;li&gt;1
@@ -1023,17 +994,14 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
      * &lt;li&gt;on
      * &lt;/ul&gt;
      * &lt;br&gt;
-     * Every other string, including the empty string as well as the
-     * non-existence of the attribute will cuase &lt;code&gt;false&lt;/code&gt; to be
-     * returned.
+     * Every other string, including the empty string as well as the non-existence of the attribute
+     * will cuase &lt;code&gt;false&lt;/code&gt; to be returned.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
-     * @param name
-     *            the name of the attribute to test.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
+     * @param name the name of the attribute to test.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the attribute value equals one of the
-     *         pre-defined strings, &lt;code&gt;false&lt;/code&gt; otherwise.
+     * @return &lt;code&gt;true&lt;/code&gt; if the attribute value equals one of the pre-defined strings,
+     * &lt;code&gt;false&lt;/code&gt; otherwise.
      */
     /*--------------------------------------------------------------------------*/
     private boolean attributeIsTrue(XMLElement element, String name)
@@ -1059,14 +1027,12 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Replaces any ocurrence of '/' or '\' in a path string with the correct
-     * version for the operating system.
+     * Replaces any ocurrence of '/' or '\' in a path string with the correct version for the
+     * operating system.
      * 
-     * @param path
-     *            a system path
+     * @param path a system path
      * 
-     * @return a path string that uniformely uses the proper version of the
-     *         separator character.
+     * @return a path string that uniformely uses the proper version of the separator character.
      */
     /*--------------------------------------------------------------------------*/
     private String fixSeparatorChar(String path)
@@ -1081,14 +1047,10 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
     /**
      * This method creates the UI for this panel.
      * 
-     * @param groups
-     *            A &lt;code&gt;Vector&lt;/code&gt; that contains &lt;code&gt;Strings&lt;/code&gt;
-     *            with all the names of the existing program groups. These will
-     *            be placed in the &lt;code&gt;groupList&lt;/code&gt;.
-     * @param currentUserList
-     *            if &lt;code&gt;true&lt;/code&gt; it indicates that the list of groups is
-     *            valid for the current user, otherwise it is considered valid
-     *            for all users.
+     * @param groups A &lt;code&gt;Vector&lt;/code&gt; that contains &lt;code&gt;Strings&lt;/code&gt; with all the names
+     * of the existing program groups. These will be placed in the &lt;code&gt;groupList&lt;/code&gt;.
+     * @param currentUserList if &lt;code&gt;true&lt;/code&gt; it indicates that the list of groups is valid
+     * for the current user, otherwise it is considered valid for all users.
      */
     /*--------------------------------------------------------------------------*/
     private void buildUI(Vector groups, boolean currentUserList)
@@ -1218,14 +1180,12 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method creates an alternative UI for this panel. This UI can be used
-     * when the creation of shortcuts is not supported on the target system. It
-     * displays an apology for the inability to create shortcuts on this system,
-     * along with information about the intended targets. In addition, there is
-     * a button that allows the user to save more complete information in a text
-     * file. Based on this information the user might be able to create the
-     * necessary shortcut him or herself. At least there will be information
-     * about how to launch the application.
+     * This method creates an alternative UI for this panel. This UI can be used when the creation
+     * of shortcuts is not supported on the target system. It displays an apology for the inability
+     * to create shortcuts on this system, along with information about the intended targets. In
+     * addition, there is a button that allows the user to save more complete information in a text
+     * file. Based on this information the user might be able to create the necessary shortcut him
+     * or herself. At least there will be information about how to launch the application.
      */
     /*--------------------------------------------------------------------------*/
     private void buildAlternateUI()
@@ -1320,8 +1280,7 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Overriding the superclass implementation. This method returns the size of
-     * the container.
+     * Overriding the superclass implementation. This method returns the size of the container.
      * 
      * @return the size of the container
      */
@@ -1518,20 +1477,18 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Adds iformation about the shortcuts that have been created during the
-     * installation to the XML tree.
+     * Adds iformation about the shortcuts that have been created during the installation to the XML
+     * tree.
      * 
-     * @param panelRoot
-     *            the root of the XML tree
+     * @param panelRoot the root of the XML tree
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * The information needed to create shortcuts has been collected in the
-     * Vector 'shortcuts'. Take the data from there and package it in XML form
-     * for storage by the installer. The group name is only stored once in a
-     * separate XML element, since there is only one.
+     * The information needed to create shortcuts has been collected in the Vector 'shortcuts'. Take
+     * the data from there and package it in XML form for storage by the installer. The group name
+     * is only stored once in a separate XML element, since there is only one.
      * --------------------------------------------------------------------------
      */
     public void makeXMLData(XMLElement panelRoot)
@@ -1591,21 +1548,18 @@ public class ShortcutPanel extends IzPanel implements ActionListener, ListSelect
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Creates shortcuts based on teh information in &lt;code&gt;panelRoot&lt;/code&gt;
-     * without UI.
+     * Creates shortcuts based on teh information in &lt;code&gt;panelRoot&lt;/code&gt; without UI.
      * 
-     * @param panelRoot
-     *            the root of the XML tree
+     * @param panelRoot the root of the XML tree
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * Reconstitute the information needed to create shortcuts from XML data
-     * that was previously stored by the installer through makeXMLData(). Create
-     * a new Vector containing this data and stroe it in 'shortcuts' for use by
-     * createShortcuts(). Once this has been completed, call createShortcuts()
-     * to complete the operation.
+     * Reconstitute the information needed to create shortcuts from XML data that was previously
+     * stored by the installer through makeXMLData(). Create a new Vector containing this data and
+     * stroe it in 'shortcuts' for use by createShortcuts(). Once this has been completed, call
+     * createShortcuts() to complete the operation.
      * --------------------------------------------------------------------------
      */
     public void runAutomated(XMLElement panelRoot)</diff>
      <filename>src/lib/com/izforge/izpack/panels/ShortcutPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,28 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               SimpleFinishPanel.java
- *  Description :        A simple and fancy panel to end with the installation
- *                       without offering automated installation features.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -66,10 +60,8 @@ public class SimpleFinishPanel extends IzPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent.
+     * @param idata The installation data.
      */
     public SimpleFinishPanel(InstallerFrame parent, InstallData idata)
     {
@@ -139,8 +131,7 @@ public class SimpleFinishPanel extends IzPanel
     /**
      * Translates a relative path to a local system path.
      * 
-     * @param destination
-     *            The path to translate.
+     * @param destination The path to translate.
      * @return The translated path.
      */
     private String translatePath(String destination)</diff>
      <filename>src/lib/com/izforge/izpack/panels/SimpleFinishPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  File :               SudoPanel.java
- *  Description :        A panel doing a linux/unix/macosx 'sudo' for administrator (native (sub)) installs.
- *  Author's email :     jblok@profdata.nl
- *  Author's Website :   http://www.profdata.nl
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -76,10 +72,8 @@ public class SudoPanel extends IzPanel implements ActionListener
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public SudoPanel(InstallerFrame parent, InstallData idata)
     {
@@ -131,8 +125,7 @@ public class SudoPanel extends IzPanel implements ActionListener
     /**
      * Actions-handling method.
      * 
-     * @param e
-     *            The event.
+     * @param e The event.
      */
     public void actionPerformed(ActionEvent e)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/SudoPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               SummaryPanel.java
- *  Description :        A panel to give a summary of sampled data.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -39,9 +35,9 @@ import com.izforge.izpack.util.MultiLineLabel;
 import com.izforge.izpack.util.SummaryProcessor;
 
 /**
- * Summary panel to use before InstallPanel. This panel calls the
- * {@link SummaryProcessor} which calls all declared panels for a summary and
- * shows the given captiond and messaged in a &lt;code&gt;JEditorPane&lt;/code&gt;.
+ * Summary panel to use before InstallPanel. This panel calls the {@link SummaryProcessor} which
+ * calls all declared panels for a summary and shows the given captiond and messaged in a
+ * &lt;code&gt;JEditorPane&lt;/code&gt;.
  * 
  * @author Klaus Bartz
  * 
@@ -66,10 +62,8 @@ public class SummaryPanel extends IzPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent.
+     * @param idata The installation data.
      */
     public SummaryPanel(InstallerFrame parent, InstallData idata)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/SummaryPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge, 2004 Klaus Bartz
- *
- *  File :               TargetPanel.java
- *  Description :        A panel to select the installation path.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import net.n3.nanoxml.XMLElement;
@@ -45,10 +42,8 @@ public class TargetPanel extends PathInputPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public TargetPanel(InstallerFrame parent, InstallData idata)
     {
@@ -73,9 +68,8 @@ public class TargetPanel extends PathInputPanel
     }
 
     /**
-     * This method simple delegates to
-     * &lt;code&gt;PathInputPanel.loadDefaultInstallDir&lt;/code&gt; with the current
-     * parent as installer frame.
+     * This method simple delegates to &lt;code&gt;PathInputPanel.loadDefaultInstallDir&lt;/code&gt; with the
+     * current parent as installer frame.
      */
     public void loadDefaultDir()
     {
@@ -110,8 +104,7 @@ public class TargetPanel extends PathInputPanel
      * Sets the default install directory to the given String. This is equal to
      * &lt;code&gt;PathInputPanel.setDefaultInstallDir&lt;/code&gt;
      * 
-     * @param defaultDir
-     *            path to be used for the install directory
+     * @param defaultDir path to be used for the install directory
      */
     public void setDefaultDir(String defaultDir)
     {
@@ -121,8 +114,7 @@ public class TargetPanel extends PathInputPanel
     /**
      * Asks to make the XML panel data.
      * 
-     * @param panelRoot
-     *            The tree to put the data in.
+     * @param panelRoot The tree to put the data in.
      */
     public void makeXMLData(XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/TargetPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2003 Jonathan Halliday, Julien Ponge
- *
- *  File :               TargetPanelAutomationHelper.java
- *  Description :        Automation support functions for TargetPanel.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import net.n3.nanoxml.XMLElement;
@@ -41,10 +38,8 @@ public class TargetPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to make the XML panel data.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The tree to put the data in.
+     * @param idata The installation data.
+     * @param panelRoot The tree to put the data in.
      */
     public void makeXMLData(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -64,10 +59,8 @@ public class TargetPanelAutomationHelper implements PanelAutomation
     /**
      * Asks to run in the automated mode.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The XML tree to read the data from.
+     * @param idata The installation data.
+     * @param panelRoot The XML tree to read the data from.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/TargetPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               UserInputPanel.java
- * Description :        A panel to collect input form the end user.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -74,9 +71,9 @@ import com.izforge.izpack.util.VariableSubstitutor;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This panel is designed to collect user input during the installation process.
- * The panel is initially blank and is populated with input elements based on
- * the XML specification in a resource file.
+ * This panel is designed to collect user input during the installation process. The panel is
+ * initially blank and is populated with input elements based on the XML specification in a resource
+ * file.
  * 
  * 
  * @version 0.0.1 / 10/19/02
@@ -86,34 +83,30 @@ import com.izforge.izpack.util.VariableSubstitutor;
 /*
  * $ @design
  * 
- * Each field is specified in its own node, containing attributes and data. When
- * this class is instantiated, the specification is read and analyzed. Each
- * field node is processed based on its type. An specialized member function is
- * called for each field type that creates the necessary UI elements. All UI
- * elements are stored in the uiElements vector. Elements are packaged in an
- * object array that must follow this pattern:
+ * Each field is specified in its own node, containing attributes and data. When this class is
+ * instantiated, the specification is read and analyzed. Each field node is processed based on its
+ * type. An specialized member function is called for each field type that creates the necessary UI
+ * elements. All UI elements are stored in the uiElements vector. Elements are packaged in an object
+ * array that must follow this pattern:
  * 
- * index 0 - a String object, that specifies the field type. This is identical
- * to the string used to identify the field type in the XML file. index 1 - a
- * String object that contains the variable name for substitution. index 2 - the
- * constraints object that should be used for positioning the UI element index 3 -
- * the UI element itself index 4 - a Vector containg a list of pack for which
- * the item should be created. This is used by buildUI() to decide if the item
- * should be added to the UI.
+ * index 0 - a String object, that specifies the field type. This is identical to the string used to
+ * identify the field type in the XML file. index 1 - a String object that contains the variable
+ * name for substitution. index 2 - the constraints object that should be used for positioning the
+ * UI element index 3 - the UI element itself index 4 - a Vector containg a list of pack for which
+ * the item should be created. This is used by buildUI() to decide if the item should be added to
+ * the UI.
  * 
- * In some cases additional entries are used. The use depends on the specific
- * needs of the type of input field.
+ * In some cases additional entries are used. The use depends on the specific needs of the type of
+ * input field.
  * 
- * When the panel is activated, the method buildUI() walks the list of UI
- * elements adds them to the panel together with the matching constraint.
+ * When the panel is activated, the method buildUI() walks the list of UI elements adds them to the
+ * panel together with the matching constraint.
  * 
- * When an attempt is made to move on to another panel, the method readInput()
- * walks the list of UI elements again and calls specialized methods that know
- * how to read the user input from each of the UI elemnts and set the associated
- * varaible.
+ * When an attempt is made to move on to another panel, the method readInput() walks the list of UI
+ * elements again and calls specialized methods that know how to read the user input from each of
+ * the UI elemnts and set the associated varaible.
  * 
- * The actual variable substitution is not performed by this panel but by the
- * variable substitutor.
+ * The actual variable substitution is not performed by this panel but by the variable substitutor.
  * 
  * To Do: ------ * make sure all header documentation is complete and correct
  * --------------------------------------------------------------------------
@@ -320,11 +313,10 @@ public class UserInputPanel extends IzPanel
     private boolean uiBuilt = false;
 
     /**
-     * If there is a possibility that some UI elements will not get added we can
-     * not allow to go back to the PacksPanel, because the process of building
-     * the UI is not reversable. This variable keeps track if any packs have
-     * been defined and will be used to make a decision for locking the
-     * 'previous' button.
+     * If there is a possibility that some UI elements will not get added we can not allow to go
+     * back to the PacksPanel, because the process of building the UI is not reversable. This
+     * variable keeps track if any packs have been defined and will be used to make a decision for
+     * locking the 'previous' button.
      */
     private boolean packsDefined = false;
 
@@ -345,8 +337,8 @@ public class UserInputPanel extends IzPanel
     private Vector passwordGroups = new Vector();
 
     /**
-     * used for temporary storage of references to password groups that have
-     * already been read in a given read cycle.
+     * used for temporary storage of references to password groups that have already been read in a
+     * given read cycle.
      */
     private Vector passwordGroupsRead = new Vector();
 
@@ -375,10 +367,8 @@ public class UserInputPanel extends IzPanel
     /**
      * Constructs a &lt;code&gt;UserInputPanel&lt;/code&gt;.
      * 
-     * @param parent
-     *            reference to the application frame
-     * @param installData
-     *            shared information about the installation
+     * @param parent reference to the application frame
+     * @param installData shared information about the installation
      */
     /*--------------------------------------------------------------------------*/
     public UserInputPanel(InstallerFrame parent, InstallData installData)
@@ -493,9 +483,9 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Indicates wether the panel has been validated or not. The installer won't
-     * let the user go further through the installation process until the panel
-     * is validated. Default behavior is to return true.
+     * Indicates wether the panel has been validated or not. The installer won't let the user go
+     * further through the installation process until the panel is validated. Default behavior is to
+     * return true.
      * 
      * @return A boolean stating wether the panel has been validated or not.
      */
@@ -551,12 +541,10 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Asks the panel to set its own XML data that can be brought back for an
-     * automated installation process. Use it as a blackbox if your panel needs
-     * to do something even in automated mode.
+     * Asks the panel to set its own XML data that can be brought back for an automated installation
+     * process. Use it as a blackbox if your panel needs to do something even in automated mode.
      * 
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     /*--------------------------------------------------------------------------*/
     public void makeXMLData(XMLElement panelRoot)
@@ -630,11 +618,9 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the input data from all UI elements and sets the associated
-     * variables.
+     * Reads the input data from all UI elements and sets the associated variables.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the operation is successdul, otherwise
-     *         &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the operation is successdul, otherwise &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readInput()
@@ -710,11 +696,9 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification for the panel layout. The result is stored in
-     * spec.
+     * Reads the XML specification for the panel layout. The result is stored in spec.
      * 
-     * @exception Exception
-     *                for any problems in reading the specification
+     * @exception Exception for any problems in reading the specification
      */
     /*--------------------------------------------------------------------------*/
     private void readSpec() throws Exception
@@ -778,13 +762,11 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Adds the title to the panel. There can only be one title, if mutiple
-     * titles are defined, they keep overwriting what has already be defined, so
-     * that the last definition is the one that prevails.
+     * Adds the title to the panel. There can only be one title, if mutiple titles are defined, they
+     * keep overwriting what has already be defined, so that the last definition is the one that
+     * prevails.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the title.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the title.
      */
     /*--------------------------------------------------------------------------*/
     private void addTitle(XMLElement spec)
@@ -827,9 +809,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a rule field to the list of UI elements.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the rule field.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the rule field.
      */
     /*--------------------------------------------------------------------------*/
     private void addRuleField(XMLElement spec)
@@ -976,16 +956,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the data from the rule input field and sets the associated
-     * variable.
+     * Reads the data from the rule input field and sets the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readRuleField(Object[] field)
@@ -1034,9 +1011,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a text field to the list of UI elements
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the text field.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the text field.
      */
     /*--------------------------------------------------------------------------*/
     private void addTextField(XMLElement spec)
@@ -1114,13 +1089,11 @@ public class UserInputPanel extends IzPanel
     /**
      * Reads data from the text field and sets the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readTextField(Object[] field)
@@ -1154,22 +1127,22 @@ public class UserInputPanel extends IzPanel
      * &lt;pre&gt;
      * 
      *  
-     *   &amp;lt;field type=&amp;quot;combo&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
-     *     &amp;lt;description text=&amp;quot;Description for the combo box&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
-     *     &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;choice 1&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 1&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;choice 2&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 2&amp;quot; set=&amp;quot;true&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;choice 3&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 3&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;choice 4&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 4&amp;quot;/&amp;gt;
-     *     &amp;lt;/spec&amp;gt;
-     *   &amp;lt;/field&amp;gt;
+     *   
+     *    &amp;lt;field type=&amp;quot;combo&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
+     *      &amp;lt;description text=&amp;quot;Description for the combo box&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
+     *      &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;choice 1&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 1&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;choice 2&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 2&amp;quot; set=&amp;quot;true&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;choice 3&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 3&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;choice 4&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;combo box 4&amp;quot;/&amp;gt;
+     *      &amp;lt;/spec&amp;gt;
+     *    &amp;lt;/field&amp;gt;
+     *    
      *   
      *  
      * &lt;/pre&gt;
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the combo box.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the combo box.
      */
     /*--------------------------------------------------------------------------*/
     private void addComboBox(XMLElement spec)
@@ -1277,16 +1250,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the content of the combobox field and substitutes the associated
-     * variable.
+     * Reads the content of the combobox field and substitutes the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readComboBox(Object[] field)
@@ -1320,23 +1290,24 @@ public class UserInputPanel extends IzPanel
      * &lt;pre&gt;
      * 
      *  
-     *   &amp;lt;field type=&amp;quot;radio&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
-     *     &amp;lt;description text=&amp;quot;Description for the radio buttons&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
-     *     &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;radio 1&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;radio 2&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot; set=&amp;quot;true&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;radio 3&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;radio 4&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
-     *       &amp;lt;choice text=&amp;quot;radio 5&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
-     *     &amp;lt;/spec&amp;gt;
-     *   &amp;lt;/field&amp;gt;
+     *   
+     *    &amp;lt;field type=&amp;quot;radio&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
+     *      &amp;lt;description text=&amp;quot;Description for the radio buttons&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
+     *      &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;radio 1&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;radio 2&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot; set=&amp;quot;true&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;radio 3&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;radio 4&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
+     *        &amp;lt;choice text=&amp;quot;radio 5&amp;quot; id=&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;/&amp;gt;
+     *      &amp;lt;/spec&amp;gt;
+     *    &amp;lt;/field&amp;gt;
+     *    
      *   
      *  
      * &lt;/pre&gt;
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the radio button set.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the radio button
+     * set.
      */
     /*--------------------------------------------------------------------------*/
     private void addRadioButton(XMLElement spec)
@@ -1406,16 +1377,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the content of the radio button field and substitutes the
-     * associated variable.
+     * Reads the content of the radio button field and substitutes the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readRadioButton(Object[] field)
@@ -1451,22 +1419,23 @@ public class UserInputPanel extends IzPanel
      * &lt;pre&gt;
      * 
      *  
-     *   &amp;lt;field type=&amp;quot;password&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
-     *     &amp;lt;description align=&amp;quot;left&amp;quot; txt=&amp;quot;Please enter your password&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
-     *     &amp;lt;spec&amp;gt;
-     *       &amp;lt;pwd txt=&amp;quot;Password&amp;quot; id=&amp;quot;key for the label&amp;quot; size=&amp;quot;10&amp;quot; set=&amp;quot;&amp;quot;/&amp;gt;
-     *       &amp;lt;pwd txt=&amp;quot;Retype password&amp;quot; id=&amp;quot;another key for the label&amp;quot; size=&amp;quot;10&amp;quot; set=&amp;quot;&amp;quot;/&amp;gt;
-     *     &amp;lt;/spec&amp;gt;
-     *     &amp;lt;validator class=&amp;quot;com.izforge.sample.PWDValidator&amp;quot; txt=&amp;quot;Both versions of the password must match&amp;quot; id=&amp;quot;key for the error text&amp;quot;/&amp;gt;
-     *     &amp;lt;processor class=&amp;quot;com.izforge.sample.PWDEncryptor&amp;quot;/&amp;gt;
-     *   &amp;lt;/field&amp;gt;
+     *   
+     *    &amp;lt;field type=&amp;quot;password&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
+     *      &amp;lt;description align=&amp;quot;left&amp;quot; txt=&amp;quot;Please enter your password&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
+     *      &amp;lt;spec&amp;gt;
+     *        &amp;lt;pwd txt=&amp;quot;Password&amp;quot; id=&amp;quot;key for the label&amp;quot; size=&amp;quot;10&amp;quot; set=&amp;quot;&amp;quot;/&amp;gt;
+     *        &amp;lt;pwd txt=&amp;quot;Retype password&amp;quot; id=&amp;quot;another key for the label&amp;quot; size=&amp;quot;10&amp;quot; set=&amp;quot;&amp;quot;/&amp;gt;
+     *      &amp;lt;/spec&amp;gt;
+     *      &amp;lt;validator class=&amp;quot;com.izforge.sample.PWDValidator&amp;quot; txt=&amp;quot;Both versions of the password must match&amp;quot; id=&amp;quot;key for the error text&amp;quot;/&amp;gt;
+     *      &amp;lt;processor class=&amp;quot;com.izforge.sample.PWDEncryptor&amp;quot;/&amp;gt;
+     *    &amp;lt;/field&amp;gt;
+     *    
      *   
      *  
      * &lt;/pre&gt;
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the set of password fields.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the set of password
+     * fields.
      */
     /*--------------------------------------------------------------------------*/
     private void addPasswordField(XMLElement spec)
@@ -1561,16 +1530,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the content of the password field and substitutes the associated
-     * variable.
+     * Reads the content of the password field and substitutes the associated variable.
      * 
-     * @param field
-     *            a password group that manages one or more passord fields.
+     * @param field a password group that manages one or more passord fields.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readPasswordField(Object[] field)
@@ -1610,9 +1576,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a chackbox to the list of UI elements.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the checkbox.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the checkbox.
      */
     /*--------------------------------------------------------------------------*/
     private void addCheckBox(XMLElement spec)
@@ -1668,16 +1632,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the content of the checkbox field and substitutes the associated
-     * variable.
+     * Reads the content of the checkbox field and substitutes the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readCheckBox(Object[] field)
@@ -1731,20 +1692,20 @@ public class UserInputPanel extends IzPanel
      * &lt;pre&gt;
      * 
      *  
-     *   &amp;lt;field type=&amp;quot;search&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
-     *     &amp;lt;description text=&amp;quot;Description for the search field&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
-     *     &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot; filename=&amp;quot;the_file_to_search&amp;quot; result=&amp;quot;directory&amp;quot; /&amp;gt; &amp;lt;!-- values for result: directory, file --&amp;gt;
-     *       &amp;lt;choice dir=&amp;quot;directory1&amp;quot; set=&amp;quot;true&amp;quot; /&amp;gt; &amp;lt;!-- default value --&amp;gt;
-     *       &amp;lt;choice dir=&amp;quot;dir2&amp;quot; /&amp;gt;
-     *     &amp;lt;/spec&amp;gt;
-     *   &amp;lt;/field&amp;gt;
+     *   
+     *    &amp;lt;field type=&amp;quot;search&amp;quot; variable=&amp;quot;testVariable&amp;quot;&amp;gt;
+     *      &amp;lt;description text=&amp;quot;Description for the search field&amp;quot; id=&amp;quot;a key for translated text&amp;quot;/&amp;gt;
+     *      &amp;lt;spec text=&amp;quot;label&amp;quot; id=&amp;quot;key for the label&amp;quot; filename=&amp;quot;the_file_to_search&amp;quot; result=&amp;quot;directory&amp;quot; /&amp;gt; &amp;lt;!-- values for result: directory, file --&amp;gt;
+     *        &amp;lt;choice dir=&amp;quot;directory1&amp;quot; set=&amp;quot;true&amp;quot; /&amp;gt; &amp;lt;!-- default value --&amp;gt;
+     *        &amp;lt;choice dir=&amp;quot;dir2&amp;quot; /&amp;gt;
+     *      &amp;lt;/spec&amp;gt;
+     *    &amp;lt;/field&amp;gt;
+     *    
      *   
      *  
      * &lt;/pre&gt;
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the search field
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the search field
      */
     /*--------------------------------------------------------------------------*/
     private void addSearch(XMLElement spec)
@@ -1918,16 +1879,13 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the content of the search field and substitutes the associated
-     * variable.
+     * Reads the content of the search field and substitutes the associated variable.
      * 
-     * @param field
-     *            the object array that holds the details of the field.
+     * @param field the object array that holds the details of the field.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or
-     *         if there was an irrecovarable problem. If there was a problem
-     *         that can be corrected by the operator, an error dialog is popped
-     *         up and &lt;code&gt;false&lt;/code&gt; is returned.
+     * @return &lt;code&gt;true&lt;/code&gt; if there was no problem reading the data or if there was an
+     * irrecovarable problem. If there was a problem that can be corrected by the operator, an error
+     * dialog is popped up and &lt;code&gt;false&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private boolean readSearch(Object[] field)
@@ -1965,9 +1923,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds text to the list of UI elements
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the text.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the text.
      */
     /*--------------------------------------------------------------------------*/
     private void addText(XMLElement spec)
@@ -1982,10 +1938,8 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a dummy field to the list of UI elements to act as spacer.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing other specifications.
-     *            At present this information is not used but might be in future
-     *            versions.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing other specifications. At present this
+     * information is not used but might be in future versions.
      */
     /*--------------------------------------------------------------------------*/
     private void addSpace(XMLElement spec)
@@ -2006,9 +1960,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a dividing line to the list of UI elements act as separator.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing additional
-     *            specifications.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing additional specifications.
      */
     /*--------------------------------------------------------------------------*/
     private void addDivider(XMLElement spec)
@@ -2046,9 +1998,7 @@ public class UserInputPanel extends IzPanel
     /**
      * Adds a description to the list of UI elements.
      * 
-     * @param spec
-     *            a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for
-     *            the description.
+     * @param spec a &lt;code&gt;XMLElement&lt;/code&gt; containing the specification for the description.
      */
     /*--------------------------------------------------------------------------*/
     private void addDescription(XMLElement spec, Vector forPacks, Vector forOs)
@@ -2094,22 +2044,18 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Retrieves the value of a boolean attribute. If the attribute is found and
-     * the values equals the value of the constant &lt;code&gt;TRUE&lt;/code&gt; then true
-     * is returned. If it equals &lt;code&gt;FALSE&lt;/code&gt; the false is returned. In
-     * all other cases, including when the attribute is not found, the default
-     * value is returned.
+     * Retrieves the value of a boolean attribute. If the attribute is found and the values equals
+     * the value of the constant &lt;code&gt;TRUE&lt;/code&gt; then true is returned. If it equals
+     * &lt;code&gt;FALSE&lt;/code&gt; the false is returned. In all other cases, including when the attribute
+     * is not found, the default value is returned.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
-     * @param attribute
-     *            the attribute to search for
-     * @param defaultValue
-     *            the default value to use if the attribute does not exist or a
-     *            illegal value was discovered.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
+     * @param attribute the attribute to search for
+     * @param defaultValue the default value to use if the attribute does not exist or a illegal
+     * value was discovered.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the attribute is found and the value
-     *         equals the the constant &lt;code&gt;TRUE&lt;/code&gt;. &lt;&lt;code&gt; if the
+     * @return &lt;code&gt;true&lt;/code&gt; if the attribute is found and the value equals the the constant
+     * &lt;code&gt;TRUE&lt;/code&gt;. &lt;&lt;code&gt; if the
      *            attribute is &lt;code&gt;FALSE&lt;/code&gt;. In all other cases the
      *            default value is returned.
      */
@@ -2140,19 +2086,15 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Retrieves the value of an integer attribute. If the attribute is not
-     * found or the value is non-numeric then the default value is returned.
+     * Retrieves the value of an integer attribute. If the attribute is not found or the value is
+     * non-numeric then the default value is returned.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
-     * @param attribute
-     *            the attribute to search for
-     * @param defaultValue
-     *            the default value to use in case the attribute does not exist.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
+     * @param attribute the attribute to search for
+     * @param defaultValue the default value to use in case the attribute does not exist.
      * 
-     * @return the value of the attribute. If the attribute is not found or the
-     *         content is not a legal integer, then the default value is
-     *         returned.
+     * @return the value of the attribute. If the attribute is not found or the content is not a
+     * legal integer, then the default value is returned.
      */
     /*--------------------------------------------------------------------------*/
     private int getInt(XMLElement element, String attribute, int defaultValue)
@@ -2174,19 +2116,15 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Retrieves the value of a floating point attribute. If the attribute is
-     * not found or the value is non-numeric then the default value is returned.
+     * Retrieves the value of a floating point attribute. If the attribute is not found or the value
+     * is non-numeric then the default value is returned.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
-     * @param attribute
-     *            the attribute to search for
-     * @param defaultValue
-     *            the default value to use in case the attribute does not exist.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; to search for the attribute.
+     * @param attribute the attribute to search for
+     * @param defaultValue the default value to use in case the attribute does not exist.
      * 
-     * @return the value of the attribute. If the attribute is not found or the
-     *         content is not a legal integer, then the default value is
-     *         returned.
+     * @return the value of the attribute. If the attribute is not found or the content is not a
+     * legal integer, then the default value is returned.
      */
     /*--------------------------------------------------------------------------*/
     private float getFloat(XMLElement element, String attribute, float defaultValue)
@@ -2208,15 +2146,14 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Extracts the text from an &lt;code&gt;XMLElement&lt;/code&gt;. The text must be
-     * defined in the resource file under the key defined in the &lt;code&gt;id&lt;/code&gt;
-     * attribute or as value of the attribute &lt;code&gt;text&lt;/code&gt;.
+     * Extracts the text from an &lt;code&gt;XMLElement&lt;/code&gt;. The text must be defined in the
+     * resource file under the key defined in the &lt;code&gt;id&lt;/code&gt; attribute or as value of the
+     * attribute &lt;code&gt;text&lt;/code&gt;.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; from which to extract the text.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; from which to extract the text.
      * 
-     * @return The text defined in the &lt;code&gt;XMLElement&lt;/code&gt;. If no text
-     *         can be located, &lt;code&gt;null&lt;/code&gt; is returned.
+     * @return The text defined in the &lt;code&gt;XMLElement&lt;/code&gt;. If no text can be located,
+     * &lt;code&gt;null&lt;/code&gt; is returned.
      */
     /*--------------------------------------------------------------------------*/
     private String getText(XMLElement element)
@@ -2252,18 +2189,15 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Retreives the alignment setting for the &lt;code&gt;XMLElement&lt;/code&gt;. The
-     * default value in case the &lt;code&gt;ALIGNMENT&lt;/code&gt; attribute is not found
-     * or the value is illegal is &lt;code&gt;TwoColumnConstraints.LEFT&lt;/code&gt;.
+     * Retreives the alignment setting for the &lt;code&gt;XMLElement&lt;/code&gt;. The default value in case
+     * the &lt;code&gt;ALIGNMENT&lt;/code&gt; attribute is not found or the value is illegal is
+     * &lt;code&gt;TwoColumnConstraints.LEFT&lt;/code&gt;.
      * 
-     * @param element
-     *            the &lt;code&gt;XMLElement&lt;/code&gt; from which to extract the
-     *            alignment setting.
+     * @param element the &lt;code&gt;XMLElement&lt;/code&gt; from which to extract the alignment setting.
      * 
-     * @return the alignement setting for the &lt;code&gt;XMLElement&lt;/code&gt;. The
-     *         value is either &lt;code&gt;TwoColumnConstraints.LEFT&lt;/code&gt;,
-     *         &lt;code&gt;TwoColumnConstraints.CENTER&lt;/code&gt; or
-     *         &lt;code&gt;TwoColumnConstraints.RIGHT&lt;/code&gt;.
+     * @return the alignement setting for the &lt;code&gt;XMLElement&lt;/code&gt;. The value is either
+     * &lt;code&gt;TwoColumnConstraints.LEFT&lt;/code&gt;, &lt;code&gt;TwoColumnConstraints.CENTER&lt;/code&gt; or
+     * &lt;code&gt;TwoColumnConstraints.RIGHT&lt;/code&gt;.
      * 
      * @see com.izforge.izpack.gui.TwoColumnConstraints
      */
@@ -2294,20 +2228,16 @@ public class UserInputPanel extends IzPanel
     }
 
     /**
-     * Verifies if an item is required for the operating system the installer
-     * executed. The configuration for this feature is: &lt;br/&gt; &amp;lt;os
-     * family=&quot;unix&quot;/&amp;gt; &lt;br&gt;
+     * Verifies if an item is required for the operating system the installer executed. The
+     * configuration for this feature is: &lt;br/&gt; &amp;lt;os family=&quot;unix&quot;/&amp;gt; &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * If the list of the os is empty then &lt;code&gt;true&lt;/code&gt; is always
-     * returnd.
+     * If the list of the os is empty then &lt;code&gt;true&lt;/code&gt; is always returnd.
      * 
-     * @param os
-     *            The &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s.
-     *            containing the os names
+     * @param os The &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. containing the os names
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for the os, otherwise
-     *         returns &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for the os, otherwise returns
+     * &lt;code&gt;false&lt;/code&gt;.
      */
     public boolean itemRequiredForOs(Vector os)
     {
@@ -2337,29 +2267,25 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Verifies if an item is required for any of the packs listed. An item is
-     * required for a pack in the list if that pack is actually selected for
-     * installation. &lt;br&gt;
+     * Verifies if an item is required for any of the packs listed. An item is required for a pack
+     * in the list if that pack is actually selected for installation. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always
-     * returnd. The same is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
+     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always returnd. The same
+     * is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
      * 
-     * @param packs
-     *            a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of
-     *            the strings denotes a pack for which an item should be created
-     *            if the pack is actually installed.
+     * @param packs a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of the strings denotes
+     * a pack for which an item should be created if the pack is actually installed.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for at least one pack
-     *         in the list, otherwise returns &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for at least one pack in the list,
+     * otherwise returns &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * The information about the installed packs comes from
-     * InstallData.selectedPacks. This assumes that this panel is presented to
-     * the user AFTER the PacksPanel.
+     * The information about the installed packs comes from InstallData.selectedPacks. This assumes
+     * that this panel is presented to the user AFTER the PacksPanel.
      * --------------------------------------------------------------------------
      */
     private boolean itemRequiredFor(Vector packs)
@@ -2400,29 +2326,25 @@ public class UserInputPanel extends IzPanel
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Verifies if an item is required for any of the packs listed. An item is
-     * required for a pack in the list if that pack is actually NOT selected for
-     * installation. &lt;br&gt;
+     * Verifies if an item is required for any of the packs listed. An item is required for a pack
+     * in the list if that pack is actually NOT selected for installation. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always
-     * returnd. The same is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
+     * If the list of selected packs is empty then &lt;code&gt;true&lt;/code&gt; is always returnd. The same
+     * is true if the &lt;code&gt;packs&lt;/code&gt; list is empty.
      * 
-     * @param packs
-     *            a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of
-     *            the strings denotes a pack for which an item should be created
-     *            if the pack is actually installed.
+     * @param packs a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt;s. Each of the strings denotes
+     * a pack for which an item should be created if the pack is actually installed.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for at least one pack
-     *         in the list, otherwise returns &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the item is required for at least one pack in the list,
+     * otherwise returns &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * The information about the installed packs comes from
-     * InstallData.selectedPacks. This assumes that this panel is presented to
-     * the user AFTER the PacksPanel.
+     * The information about the installed packs comes from InstallData.selectedPacks. This assumes
+     * that this panel is presented to the user AFTER the PacksPanel.
      * --------------------------------------------------------------------------
      */
     private boolean itemRequiredForUnselected(Vector packs)
@@ -2480,13 +2402,10 @@ public class UserInputPanel extends IzPanel
 
         /*--------------------------------------------------------------------------*/
         /**
-         * Constructs a new Text/Value pair, initialized with the text and a
-         * value.
+         * Constructs a new Text/Value pair, initialized with the text and a value.
          * 
-         * @param text
-         *            the text that this object should represent
-         * @param value
-         *            the value that should be associated with this object
+         * @param text the text that this object should represent
+         * @param value the value that should be associated with this object
          */
         /*--------------------------------------------------------------------------*/
         public TextValuePair(String text, String value)
@@ -2499,8 +2418,7 @@ public class UserInputPanel extends IzPanel
         /**
          * Sets the text
          * 
-         * @param text
-         *            the text for this object
+         * @param text the text for this object
          */
         /*--------------------------------------------------------------------------*/
         public void setText(String text)
@@ -2512,8 +2430,7 @@ public class UserInputPanel extends IzPanel
         /**
          * Sets the value of this object
          * 
-         * @param value
-         *            the value for this object
+         * @param value the value for this object
          */
         /*--------------------------------------------------------------------------*/
         public void setValue(String value)
@@ -2550,9 +2467,8 @@ public class UserInputPanel extends IzPanel
     /**
      * This class encapsulates a lot of search field functionality.
      * 
-     * A search field supports searching directories and files on the target
-     * system. This is a helper class to manage all data belonging to a search
-     * field.
+     * A search field supports searching directories and files on the target system. This is a
+     * helper class to manage all data belonging to a search field.
      */
     /*---------------------------------------------------------------------------*/
 
@@ -2592,28 +2508,21 @@ public class UserInputPanel extends IzPanel
 
         /*---------------------------------------------------------------------------*/
         /**
-         * Constructor - initializes the object, adds it as action listener to
-         * the &quot;autodetect&quot; button.
+         * Constructor - initializes the object, adds it as action listener to the &quot;autodetect&quot;
+         * button.
          * 
-         * @param filename
-         *            the name of the file to search for (might be null for
-         *            searching directories)
-         * @param checkFilename
-         *            the name of the file to check when searching for
-         *            directories (the checkFilename is appended to a found
-         *            directory to figure out whether it is the right directory)
-         * @param combobox
-         *            the &lt;code&gt;JComboBox&lt;/code&gt; holding the list of choices;
-         *            it should be editable and contain only Strings
-         * @param autobutton
-         *            the autodetection button for triggering autodetection
-         * @param browsebutton
-         *            the browse button to look for the file
-         * @param search_type
-         *            what to search for - TYPE_FILE or TYPE_DIRECTORY
-         * @param result_type
-         *            what to return as the result - RESULT_FILE or
-         *            RESULT_DIRECTORY or RESULT_PARENTDIR
+         * @param filename the name of the file to search for (might be null for searching
+         * directories)
+         * @param checkFilename the name of the file to check when searching for directories (the
+         * checkFilename is appended to a found directory to figure out whether it is the right
+         * directory)
+         * @param combobox the &lt;code&gt;JComboBox&lt;/code&gt; holding the list of choices; it should be
+         * editable and contain only Strings
+         * @param autobutton the autodetection button for triggering autodetection
+         * @param browsebutton the browse button to look for the file
+         * @param search_type what to search for - TYPE_FILE or TYPE_DIRECTORY
+         * @param result_type what to return as the result - RESULT_FILE or RESULT_DIRECTORY or
+         * RESULT_PARENTDIR
          */
         /*---------------------------------------------------------------------------*/
         public SearchField(String filename, String checkFilename, InstallerFrame parent,
@@ -2636,8 +2545,8 @@ public class UserInputPanel extends IzPanel
         }
 
         /**
-         * Check whether the given combobox belongs to this searchfield. This is
-         * used when reading the results.
+         * Check whether the given combobox belongs to this searchfield. This is used when reading
+         * the results.
          */
         public boolean belongsTo(JComboBox combobox)
         {
@@ -2689,8 +2598,7 @@ public class UserInputPanel extends IzPanel
             Vector items = new Vector();
 
             /*
-             * Check if the user has entered data into the ComboBox and add it
-             * to the Itemlist
+             * Check if the user has entered data into the ComboBox and add it to the Itemlist
              */
             String selected = (String) this.pathComboBox.getSelectedItem();
             boolean found = false;
@@ -2827,8 +2735,8 @@ public class UserInputPanel extends IzPanel
         /**
          * Return the result of the search according to result type.
          * 
-         * Sometimes, the whole path of the file is wanted, sometimes only the
-         * directory where the file is in, sometimes the parent directory.
+         * Sometimes, the whole path of the file is wanted, sometimes only the directory where the
+         * file is in, sometimes the parent directory.
          * 
          * @return null on error
          */</diff>
      <filename>src/lib/com/izforge/izpack/panels/UserInputPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,25 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002-2003 Jonathan Halliday, Elmar Grom
- *
- * File :               UserInputPanelAutomationHelper.java
- * Description :        Automation support functions for UserInputPanel.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Jonathan Halliday
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.util.Iterator;
@@ -69,9 +67,7 @@ public class UserInputPanelAutomationHelper implements PanelAutomation
 
     /**
      * 
-     * @param entries
-     *            String-String key-value pairs representing the state of the
-     *            Panel
+     * @param entries String-String key-value pairs representing the state of the Panel
      */
     public UserInputPanelAutomationHelper(Map entries)
     {
@@ -81,10 +77,8 @@ public class UserInputPanelAutomationHelper implements PanelAutomation
     /**
      * Serialize state to XML and insert under panelRoot.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param idata The installation data.
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     public void makeXMLData(AutomatedInstallData idata, XMLElement panelRoot)
     {
@@ -117,10 +111,8 @@ public class UserInputPanelAutomationHelper implements PanelAutomation
     /**
      * Deserialize state from panelRoot and set idata variables accordingly.
      * 
-     * @param idata
-     *            The installation data.
-     * @param panelRoot
-     *            The XML root element of the panels blackbox tree.
+     * @param idata The installation data.
+     * @param panelRoot The XML root element of the panels blackbox tree.
      */
     public void runAutomated(AutomatedInstallData idata, XMLElement panelRoot)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/UserInputPanelAutomationHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * Copyright (C) 2002 Elmar Grom
- *
- * File :               Validator.java
- * Description :        This interface defines the public interface for
- *                      classes that perform validation services for
- *                      the UsserInputPanel.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.panels;
@@ -41,11 +36,9 @@ public interface Validator
     /**
      * Validates the contend of an input field.
      * 
-     * @param client
-     *            the client object using the services of this validator.
+     * @param client the client object using the services of this validator.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes, otherwise
-     *         &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the validation passes, otherwise &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     public boolean validate(ProcessingClient client);</diff>
      <filename>src/lib/com/izforge/izpack/panels/Validator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,31 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               XInfoPanel.java
- *  Description :        A panel to show some adaptative textual information.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  Portions are Copyright (c) 2001 Johannes Lehtinen
- *  johannes.lehtinen@iki.fi
- *  http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen 
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.panels;
 
 import java.awt.GridBagConstraints;
@@ -44,8 +37,7 @@ import com.izforge.izpack.installer.ResourceManager;
 import com.izforge.izpack.util.VariableSubstitutor;
 
 /**
- * The XInfo panel class - shows some adaptative text (ie by parsing for some
- * variables.
+ * The XInfo panel class - shows some adaptative text (ie by parsing for some variables.
  * 
  * @author Julien Ponge
  */
@@ -75,10 +67,8 @@ public class XInfoPanel extends IzPanel
     /**
      * The constructor.
      * 
-     * @param parent
-     *            The parent window.
-     * @param idata
-     *            The installation data.
+     * @param parent The parent window.
+     * @param idata The installation data.
      */
     public XInfoPanel(InstallerFrame parent, InstallData idata)
     {</diff>
      <filename>src/lib/com/izforge/izpack/panels/XInfoPanel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Destroyer.java
- *  Description :        The destroyer.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.uninstaller;
 
 import java.io.BufferedReader;
@@ -60,12 +55,9 @@ public class Destroyer extends Thread
     /**
      * The constructor.
      * 
-     * @param installPath
-     *            The installation path.
-     * @param forceDestroy
-     *            Shall we force the recursive deletion.
-     * @param handler
-     *            The destroyer listener.
+     * @param installPath The installation path.
+     * @param forceDestroy Shall we force the recursive deletion.
+     * @param handler The destroyer listener.
      */
     public Destroyer(String installPath, boolean forceDestroy, AbstractUIProgressHandler handler)
     {
@@ -132,8 +124,7 @@ public class Destroyer extends Thread
     /**
      * Asks the JVM for the uninstaller deletion.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void askUninstallerRemoval() throws Exception
     {
@@ -155,8 +146,7 @@ public class Destroyer extends Thread
      * Returns an ArrayList of the files to delete.
      * 
      * @return The files list.
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private ArrayList getFilesList() throws Exception
     {
@@ -198,10 +188,8 @@ public class Destroyer extends Thread
     /**
      * Makes some reccursive cleanups.
      * 
-     * @param file
-     *            The file to wipe.
-     * @exception Exception
-     *                Description of the Exception
+     * @param file The file to wipe.
+     * @exception Exception Description of the Exception
      */
     private void cleanup(File file) throws Exception
     {
@@ -252,14 +240,10 @@ public class Destroyer extends Thread
     /**
      * Informs all listeners.
      * 
-     * @param listeners
-     *            list with the listener objects
-     * @param action
-     *            identifier which callback should be called
-     * @param param
-     *            parameter for the call
-     * @param handler
-     *            the current progress handler
+     * @param listeners list with the listener objects
+     * @param action identifier which callback should be called
+     * @param param parameter for the call
+     * @param handler the current progress handler
      */
 
     private void informListeners(List listeners, int action, Object param,</diff>
      <filename>src/lib/com/izforge/izpack/uninstaller/Destroyer.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Chadwick A. McHenry
- *
- *  File :               SelfModifier.java
- *  Description :        Uninstaller helper.
- *  Author's email :     mchenryc@acm.org
- *  Author's Website :   http://www.acm.org/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Chadwick McHenry
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.uninstaller;
@@ -51,20 +47,18 @@ import java.util.zip.ZipEntry;
 import com.izforge.izpack.util.OsVersion;
 
 /**
- * Allows an application to modify the jar file from which it came, including
- * outright deletion. The jar file of an app is usually locked when java is run
- * so this is normally not possible.
+ * Allows an application to modify the jar file from which it came, including outright deletion. The
+ * jar file of an app is usually locked when java is run so this is normally not possible.
  * &lt;p&gt;
  * 
- * Create a SelfModifier with a target method, then invoke the SelfModifier with
- * arguments to be passed to the target method. The jar file containing the
- * target method's class (obtained by reflection) will be extracted to a
- * temporary directory, and a new java process will be spawned to invoke the
- * target method. The original jar file may now be modified.
+ * Create a SelfModifier with a target method, then invoke the SelfModifier with arguments to be
+ * passed to the target method. The jar file containing the target method's class (obtained by
+ * reflection) will be extracted to a temporary directory, and a new java process will be spawned to
+ * invoke the target method. The original jar file may now be modified.
  * &lt;p&gt;
  * 
- * If the constructor or invoke() methods fail, it is generally because
- * secondary java processes could not be started.
+ * If the constructor or invoke() methods fail, it is generally because secondary java processes
+ * could not be started.
  * 
  * &lt;b&gt;Requirements&lt;/b&gt;
  * &lt;ul&gt;
@@ -72,26 +66,25 @@ import com.izforge.izpack.util.OsVersion;
  * &lt;li&gt;The Self Modifier, and its inner classes must also be in the jar file.
  * &lt;/ul&gt;
  * 
- * There are three system processes (or &quot;phases&quot;) involved, the first invoked by
- * the user, the second and third by the SelfModifier.
+ * There are three system processes (or &quot;phases&quot;) involved, the first invoked by the user, the
+ * second and third by the SelfModifier.
  * &lt;p&gt;
  * 
  * &lt;b&gt;Phase 1:&lt;/b&gt;
  * &lt;ol&gt;
  * &lt;li&gt;Program is launched, SelfModifier is created, invoke(String[]) is called
- * &lt;li&gt;A temporary directory (or &quot;sandbox&quot;) is created in the default temp
- * directory, and the jar file contents ar extracted into it
- * &lt;li&gt;Phase 2 is spawned using the sandbox as it's classpath, SelfModifier as
- * the main class, the arguments to &quot;invoke(String[])&quot; as the main arguments,
- * and the &lt;a href=&quot;#selfmodsysprops&quot;&gt;SelfModifier system properties&lt;/a&gt; set.
+ * &lt;li&gt;A temporary directory (or &quot;sandbox&quot;) is created in the default temp directory, and the jar
+ * file contents ar extracted into it
+ * &lt;li&gt;Phase 2 is spawned using the sandbox as it's classpath, SelfModifier as the main class, the
+ * arguments to &quot;invoke(String[])&quot; as the main arguments, and the &lt;a
+ * href=&quot;#selfmodsysprops&quot;&gt;SelfModifier system properties&lt;/a&gt; set.
  * &lt;li&gt;Immidiately exit so the system unlocks the jar file
  * &lt;/ol&gt;
  * 
  * &lt;b&gt;Phase 2:&lt;/b&gt;
  * &lt;ol&gt;
  * &lt;li&gt;Initializes from system properties.
- * &lt;li&gt;Spawn phase 3 exactly as phase 2 except the self.modifier.phase system
- * properties set to 3.
+ * &lt;li&gt;Spawn phase 3 exactly as phase 2 except the self.modifier.phase system properties set to 3.
  * &lt;li&gt;Wait for phase 3 to die
  * &lt;li&gt;Delete the temporary sandbox
  * &lt;/ol&gt;
@@ -101,13 +94,12 @@ import com.izforge.izpack.util.OsVersion;
  * &lt;li&gt;Initializes from system properties.
  * &lt;li&gt;Redirect std err stream to the log
  * &lt;li&gt;Invoke the target method with arguments we were given
- * &lt;li&gt;The target method is expected to call exit(), or to not start any
- * looping threads (e.g. AWT thread). In other words, the target is the new
- * &quot;main&quot; method.
+ * &lt;li&gt;The target method is expected to call exit(), or to not start any looping threads (e.g. AWT
+ * thread). In other words, the target is the new &quot;main&quot; method.
  * &lt;/ol&gt;
  * 
- * &lt;a name=&quot;selfmodsysprops&quot;&gt;&lt;b&gt;SelfModifier system properties&lt;/b&gt;&lt;/a&gt; used
- * to pass information between processes. &lt;table border=&quot;1&quot;&gt;
+ * &lt;a name=&quot;selfmodsysprops&quot;&gt;&lt;b&gt;SelfModifier system properties&lt;/b&gt;&lt;/a&gt; used to pass information
+ * between processes. &lt;table border=&quot;1&quot;&gt;
  * &lt;tr&gt;
  * &lt;th&gt;Constant
  * &lt;th&gt;System property
@@ -229,13 +221,10 @@ public class SelfModifier
     }
 
     /**
-     * Internal constructor where target class and method are obtained from
-     * system properties.
+     * Internal constructor where target class and method are obtained from system properties.
      * 
-     * @throws IOException
-     *             for errors getting to the sandbox.
-     * @throws SecurityException
-     *             if access to the target method is denied
+     * @throws IOException for errors getting to the sandbox.
+     * @throws SecurityException if access to the target method is denied
      */
     private SelfModifier() throws IOException
     {
@@ -267,31 +256,23 @@ public class SelfModifier
     }
 
     /**
-     * Creates a SelfModifier which will invoke the target method in a separate
-     * process from which it may modify it's own jar file.
+     * Creates a SelfModifier which will invoke the target method in a separate process from which
+     * it may modify it's own jar file.
      * 
-     * The target method must be public, static, and take a single array of
-     * strings as its only parameter. The class which declares the method must
-     * also be public. Reflection is used to ensure this.
+     * The target method must be public, static, and take a single array of strings as its only
+     * parameter. The class which declares the method must also be public. Reflection is used to
+     * ensure this.
      * 
-     * @param method
-     *            a public, static method that accepts a String array as it's
-     *            only parameter. Any return value is ignored.
+     * @param method a public, static method that accepts a String array as it's only parameter. Any
+     * return value is ignored.
      * 
-     * @throws NullPointerException
-     *             if &lt;code&gt;method&lt;/code&gt; is null
-     * @throws IllegalArgumentException
-     *             if &lt;code&gt;method&lt;/code&gt; is not public, static, and take a
-     *             String array as it's only argument, or of it's declaring
-     *             class is not public.
-     * @throws IllegalStateException
-     *             if process was not invoked from a jar file, or an
-     *             IOExceptioin occured while accessing it
-     * @throws IOException
-     *             if java is unable to be executed as a separte process
-     * @throws SecurityException
-     *             if access to the method, or creation of a subprocess is
-     *             denied
+     * @throws NullPointerException if &lt;code&gt;method&lt;/code&gt; is null
+     * @throws IllegalArgumentException if &lt;code&gt;method&lt;/code&gt; is not public, static, and take a
+     * String array as it's only argument, or of it's declaring class is not public.
+     * @throws IllegalStateException if process was not invoked from a jar file, or an IOExceptioin
+     * occured while accessing it
+     * @throws IOException if java is unable to be executed as a separte process
+     * @throws SecurityException if access to the method, or creation of a subprocess is denied
      */
     public SelfModifier(Method method) throws IOException
     {
@@ -301,17 +282,12 @@ public class SelfModifier
     }
 
     /**
-     * Check the method for the required properties (public, static,
-     * params:(String[])).
+     * Check the method for the required properties (public, static, params:(String[])).
      * 
-     * @throws NullPointerException
-     *             if &lt;code&gt;method&lt;/code&gt; is null
-     * @throws IllegalArgumentException
-     *             if &lt;code&gt;method&lt;/code&gt; is not public, static, and take a
-     *             String array as it's only argument, or of it's declaring
-     *             class is not public.
-     * @throws SecurityException
-     *             if access to the method is denied
+     * @throws NullPointerException if &lt;code&gt;method&lt;/code&gt; is null
+     * @throws IllegalArgumentException if &lt;code&gt;method&lt;/code&gt; is not public, static, and take a
+     * String array as it's only argument, or of it's declaring class is not public.
+     * @throws SecurityException if access to the method is denied
      */
     private void initMethod(Method method)
     {
@@ -335,12 +311,9 @@ public class SelfModifier
     /**
      * This call ensures that java can be exec'd in a separate process.
      * 
-     * @throws IOException
-     *             if an I/O error occurs, indicating java is unable to be
-     *             exec'd
-     * @throws SecurityException
-     *             if a security manager exists and doesn't allow creation of a
-     *             subprocess
+     * @throws IOException if an I/O error occurs, indicating java is unable to be exec'd
+     * @throws SecurityException if a security manager exists and doesn't allow creation of a
+     * subprocess
      */
     private void initJavaExec() throws IOException
     {
@@ -361,33 +334,28 @@ public class SelfModifier
         }
     }
 
-    /***************************************************************************
-     * ---------------------------------------------------------------------
-     * Phase 1 (call from external spawn phase 2)
-     * ---------------------------------------------------------------------
+    /***********************************************************************************************
+     * --------------------------------------------------------------------- Phase 1 (call from
+     * external spawn phase 2) ---------------------------------------------------------------------
      */
 
     /**
-     * Invoke the target method in a separate process from which it may modify
-     * it's own jar file. This method does not normally return. After spawning
-     * the secondary process, the current process must die before the jar file
-     * is unlocked, therefore calling this method is akin to calling
-     * {@link System#exit(int)}.
+     * Invoke the target method in a separate process from which it may modify it's own jar file.
+     * This method does not normally return. After spawning the secondary process, the current
+     * process must die before the jar file is unlocked, therefore calling this method is akin to
+     * calling {@link System#exit(int)}.
      * &lt;p&gt;
      * 
-     * The contents of the current jar file are extracted copied to a 'sandbox'
-     * directory from which the method is invoked. The path to the original jar
-     * file is placed in the system property {@link #JAR_KEY}.
+     * The contents of the current jar file are extracted copied to a 'sandbox' directory from which
+     * the method is invoked. The path to the original jar file is placed in the system property
+     * {@link #JAR_KEY}.
      * &lt;p&gt;
      * 
-     * @param args
-     *            arguments to pass to the target method. May be empty or null
-     *            to indicate no arguments.
+     * @param args arguments to pass to the target method. May be empty or null to indicate no
+     * arguments.
      * 
-     * @throws IOException
-     *             for lots of things
-     * @throws IllegalStateException
-     *             if method's class was not loaded from a jar
+     * @throws IOException for lots of things
+     * @throws IllegalStateException if method's class was not loaded from a jar
      */
     public void invoke(String[] args) throws IOException
     {
@@ -425,8 +393,7 @@ public class SelfModifier
     /**
      * Run a new jvm with all the system parameters needed for phases 2 and 3.
      * 
-     * @throws IOException
-     *             if there is an error getting the cononical name of a path
+     * @throws IOException if there is an error getting the cononical name of a path
      */
     private Process spawn(String[] args, int nextPhase) throws IOException
     {
@@ -463,8 +430,7 @@ public class SelfModifier
      * Retrieve the jar file the specified class was loaded from.
      * 
      * @return null if file was not loaded from a jar file
-     * @throws SecurityException
-     *             if access to is denied by SecurityManager
+     * @throws SecurityException if access to is denied by SecurityManager
      */
     public static File findJarFile(Class clazz)
     {
@@ -565,20 +531,17 @@ public class SelfModifier
         }
     }
 
-    /***************************************************************************
-     * ---------------------------------------------------------------------
-     * Phase 2 (spawn the phase 3 and clean up)
-     * ---------------------------------------------------------------------
+    /***********************************************************************************************
+     * --------------------------------------------------------------------- Phase 2 (spawn the
+     * phase 3 and clean up) ---------------------------------------------------------------------
      */
 
     /**
-     * Invoke phase 2, which starts phase 3, then cleans up the sandbox. This is
-     * needed because GUI's often call the exit() method to kill the AWT thread,
-     * and early versions of java did not have exit hooks. In order to delete
-     * the sandbox on exit we invoke method in separate process and wait for
-     * that process to complete. Even worse, resources in the jar may be locked
-     * by the target process, which would prevent the sandbox from being deleted
-     * as well.
+     * Invoke phase 2, which starts phase 3, then cleans up the sandbox. This is needed because
+     * GUI's often call the exit() method to kill the AWT thread, and early versions of java did not
+     * have exit hooks. In order to delete the sandbox on exit we invoke method in separate process
+     * and wait for that process to complete. Even worse, resources in the jar may be locked by the
+     * target process, which would prevent the sandbox from being deleted as well.
      */
     private void invoke2(String[] args)
     {
@@ -638,9 +601,9 @@ public class SelfModifier
         return file.delete();
     }
 
-    /***************************************************************************
-     * ---------------------------------------------------------------------
-     * Phase 3 (invoke method, let it go as long as it likes)
+    /***********************************************************************************************
+     * --------------------------------------------------------------------- Phase 3 (invoke method,
+     * let it go as long as it likes)
      * ---------------------------------------------------------------------
      */
 
@@ -671,9 +634,8 @@ public class SelfModifier
         // now let the method call exit...
     }
 
-    /***************************************************************************
-     * ---------------------------------------------------------------------
-     * Logging
+    /***********************************************************************************************
+     * --------------------------------------------------------------------- Logging
      * ---------------------------------------------------------------------
      */
 
@@ -759,9 +721,8 @@ public class SelfModifier
         }
     }
 
-    /***************************************************************************
-     * ---------------------------------------------------------------------
-     * Apache ant code
+    /***********************************************************************************************
+     * --------------------------------------------------------------------- Apache ant code
      * ---------------------------------------------------------------------
      */
     // TODO: comply with licensing issues
@@ -781,12 +742,10 @@ public class SelfModifier
      * &lt;/p&gt;
      * 
      * &lt;p&gt;
-     * Swallows '%' that are not followed by two characters, doesn't deal with
-     * non-ASCII characters.
+     * Swallows '%' that are not followed by two characters, doesn't deal with non-ASCII characters.
      * &lt;/p&gt;
      * 
-     * @param uri
-     *            the URI designating a file in the local filesystem.
+     * @param uri the URI designating a file in the local filesystem.
      * @return the local file system path for the file.
      */
     public static String fromURI(String uri)</diff>
      <filename>src/lib/com/izforge/izpack/uninstaller/SelfModifier.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               Uninstaller.java
- *  Description :        The uninstaller class.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.uninstaller;
 
 import java.lang.reflect.Method;
@@ -39,8 +34,7 @@ public class Uninstaller
     /**
      * The main method (program entry point).
      * 
-     * @param args
-     *            The arguments passed on the command line.
+     * @param args The arguments passed on the command line.
      */
     public static void main(String[] args)
     {</diff>
      <filename>src/lib/com/izforge/izpack/uninstaller/Uninstaller.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               UninstallerFrame.java
- *  Description :        The uninstaller frame class.
- *  Author's email :     julien@izforge.com
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.uninstaller;
 
 import java.awt.Color;
@@ -108,8 +103,7 @@ public class UninstallerFrame extends JFrame
     /**
      * The constructor.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     public UninstallerFrame() throws Exception
     {
@@ -205,8 +199,7 @@ public class UninstallerFrame extends JFrame
     /**
      * Centers a window on screen.
      * 
-     * @param frame
-     *            The window to center.
+     * @param frame The window to center.
      */
     private void centerFrame(Window frame)
     {
@@ -219,20 +212,13 @@ public class UninstallerFrame extends JFrame
     /**
      * Sets the parameters of a GridBagConstraints object.
      * 
-     * @param gbc
-     *            The constraints object.
-     * @param gx
-     *            The x coordinates.
-     * @param gy
-     *            The y coordinates.
-     * @param gw
-     *            The width.
-     * @param wx
-     *            The x wheight.
-     * @param wy
-     *            The y wheight.
-     * @param gh
-     *            Description of the Parameter
+     * @param gbc The constraints object.
+     * @param gx The x coordinates.
+     * @param gy The y coordinates.
+     * @param gw The width.
+     * @param wx The x wheight.
+     * @param wy The y wheight.
+     * @param gh Description of the Parameter
      */
     private void buildConstraints(GridBagConstraints gbc, int gx, int gy, int gw, int gh,
             double wx, double wy)
@@ -248,8 +234,7 @@ public class UninstallerFrame extends JFrame
     /**
      * Gets the installation path from the log file.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void getInstallPath() throws Exception
     {
@@ -263,8 +248,7 @@ public class UninstallerFrame extends JFrame
     /**
      * Loads the icons.
      * 
-     * @exception Exception
-     *                Description of the Exception
+     * @exception Exception Description of the Exception
      */
     private void loadIcons() throws Exception
     {
@@ -318,8 +302,7 @@ public class UninstallerFrame extends JFrame
         /**
          * We can't avoid the exit here, so don't call exit elsewhere.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void windowClosing(WindowEvent e)
         {
@@ -330,9 +313,8 @@ public class UninstallerFrame extends JFrame
     /**
      * The destroyer handler.
      * 
-     * This class also implements the InstallListener because the FileExecutor
-     * needs it. TODO: get rid of the InstallListener - implement generic
-     * Listener
+     * This class also implements the InstallListener because the FileExecutor needs it. TODO: get
+     * rid of the InstallListener - implement generic Listener
      * 
      * @author Julien Ponge
      * @author Tino Schwarze
@@ -344,10 +326,8 @@ public class UninstallerFrame extends JFrame
         /**
          * The destroyer starts.
          * 
-         * @param name
-         *            The name of the overall action. Not used here.
-         * @param max
-         *            The maximum value of the progress.
+         * @param name The name of the overall action. Not used here.
+         * @param max The maximum value of the progress.
          */
         public void startAction(String name, int max)
         {
@@ -368,10 +348,8 @@ public class UninstallerFrame extends JFrame
         /**
          * The destroyer progresses.
          * 
-         * @param pos
-         *            The actual position.
-         * @param message
-         *            The message.
+         * @param pos The actual position.
+         * @param message The message.
          */
         public void progress(int pos, String message)
         {
@@ -408,8 +386,7 @@ public class UninstallerFrame extends JFrame
         /**
          * The destroyer encountered an error.
          * 
-         * @param error
-         *            The error message.
+         * @param error The error message.
          */
         public void emitError(String title, String error)
         {
@@ -420,12 +397,9 @@ public class UninstallerFrame extends JFrame
         /**
          * Ask the user a question.
          * 
-         * @param title
-         *            Message title.
-         * @param question
-         *            The question.
-         * @param choices
-         *            The set of choices to present.
+         * @param title Message title.
+         * @param question The question.
+         * @param choices The set of choices to present.
          * 
          * @return The user's choice.
          * 
@@ -439,14 +413,10 @@ public class UninstallerFrame extends JFrame
         /**
          * Ask the user a question.
          * 
-         * @param title
-         *            Message title.
-         * @param question
-         *            The question.
-         * @param choices
-         *            The set of choices to present.
-         * @param default_choice
-         *            The default choice. (-1 = no default choice)
+         * @param title Message title.
+         * @param question The question.
+         * @param choices The set of choices to present.
+         * @param default_choice The default choice. (-1 = no default choice)
          * 
          * @return The user's choice.
          * @see AbstractUIHandler#askQuestion(String, String, int, int)
@@ -485,8 +455,7 @@ public class UninstallerFrame extends JFrame
         /**
          * Action handling method.
          * 
-         * @param e
-         *            The event.
+         * @param e The event.
          */
         public void actionPerformed(ActionEvent e)
         {
@@ -501,13 +470,15 @@ public class UninstallerFrame extends JFrame
             }
         }
     }
-  /**
-   * Returns the langpack.
-   * @return Returns the langpack.
-   */
-  public static LocaleDatabase getLangpack()
-  {
-    return langpack;
-  }
+
+    /**
+     * Returns the langpack.
+     * 
+     * @return Returns the langpack.
+     */
+    public static LocaleDatabase getLangpack()
+    {
+        return langpack;
+    }
 
 }</diff>
      <filename>src/lib/com/izforge/izpack/uninstaller/UninstallerFrame.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * IzPack
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *  Copyright (C) 2001-2003 Tino Schwarze, Julien Ponge
- *
- *  File :               AbstractUIHandler.java
- *  Description :        An interface for user interaction.
- *  Author's email :     tino.schwarze@informatik.tu-chemnitz.de
- *  Author's Website :   http://www.tisc.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -29,9 +24,8 @@ package com.izforge.izpack.util;
 /**
  * This interface describes basic functionality neccessary for user interaction.
  * 
- * All methods or functions which perform work and need to notify or ask the
- * user use a listener for such purposes. This way, we can separate UI from
- * function.
+ * All methods or functions which perform work and need to notify or ask the user use a listener for
+ * such purposes. This way, we can separate UI from function.
  * 
  */
 
@@ -41,22 +35,18 @@ public interface AbstractUIHandler
     /**
      * Notify the user about something.
      * 
-     * The difference between notification and warning is that a notification
-     * should not need user interaction and can savely be ignored.
+     * The difference between notification and warning is that a notification should not need user
+     * interaction and can savely be ignored.
      * 
-     * @param message
-     *            The notification.
+     * @param message The notification.
      */
     public void emitNotification(String message);
 
     /**
      * Warn the user about something.
      * 
-     * @param title
-     *            The message title (used for dialog name, might not be
-     *            displayed)
-     * @param message
-     *            The warning message.
+     * @param title The message title (used for dialog name, might not be displayed)
+     * @param message The warning message.
      * @return true if the user decided not to continue
      */
     public boolean emitWarning(String title, String message);
@@ -64,11 +54,8 @@ public interface AbstractUIHandler
     /**
      * Notify the user of some error.
      * 
-     * @param title
-     *            The message title (used for dialog name, might not be
-     *            displayed)
-     * @param message
-     *            The error message.
+     * @param title The message title (used for dialog name, might not be displayed)
+     * @param message The error message.
      * @return true if the user decided not to continue
      */
     public void emitError(String title, String message);
@@ -89,13 +76,9 @@ public interface AbstractUIHandler
     /**
      * Ask the user a question.
      * 
-     * @param title
-     *            The title of the question (useful for dialogs). Might be null.
-     * @param question
-     *            The question.
-     * @param choices
-     *            The set of choices to present. Either CHOICES_YES_NO or
-     *            CHOICES_YES_NO_CANCEL
+     * @param title The title of the question (useful for dialogs). Might be null.
+     * @param question The question.
+     * @param choices The set of choices to present. Either CHOICES_YES_NO or CHOICES_YES_NO_CANCEL
      * 
      * @return The user's choice. (ANSWER_CANCEL, ANSWER_YES or ANSWER_NO)
      */
@@ -104,16 +87,10 @@ public interface AbstractUIHandler
     /**
      * Ask the user a question.
      * 
-     * @param title
-     *            The title of the question (useful for dialogs). Might be null.
-     * @param question
-     *            The question.
-     * @param choices
-     *            The set of choices to present. Either CHOICES_YES_NO or
-     *            CHOICES_YES_NO_CANCEL
-     * @param default_choice
-     *            The default choice. One of ANSWER_CANCEL, ANSWER_YES or
-     *            ANSWER_NO.
+     * @param title The title of the question (useful for dialogs). Might be null.
+     * @param question The question.
+     * @param choices The set of choices to present. Either CHOICES_YES_NO or CHOICES_YES_NO_CANCEL
+     * @param default_choice The default choice. One of ANSWER_CANCEL, ANSWER_YES or ANSWER_NO.
      * 
      * @return The user's choice. (ANSWER_CANCEL, ANSWER_YES or ANSWER_NO)
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/AbstractUIHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Olexij Tkatchenko
- *
- *  File :               FileExecutor.java
- *  Description :        File execution class.
- *  Author's email :     ot@parcs.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Olexij Tkatchenko
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 /**
@@ -36,8 +33,7 @@ public interface AbstractUIProcessHandler extends AbstractUIHandler
      * Log the given message.
      * 
      * @param message
-     * @param stderr
-     *            true if this is a message received from a program via stderr
+     * @param stderr true if this is a message received from a program via stderr
      */
     public void logOutput(String message, boolean stderr);
 </diff>
      <filename>src/lib/com/izforge/izpack/util/AbstractUIProcessHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,39 +1,33 @@
 /*
- * $Id$
- * IzPack
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *  Copyright (C) 2001-2003 Tino Schwarze, Julien Ponge
- *
- *  File :               AbstractUIProgress.java
- *  Description :        An interface for user interaction and progress notification.
- *  Author's email :     tino.schwarze@informatik.tu-chemnitz.de
- *  Author's Website :   http://www.tisc.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
 
 /**
- * This interface is used by functions which need to notify the user of some
- * progress.
+ * This interface is used by functions which need to notify the user of some progress.
  * 
- * For example, the installation progress and compilation progress are
- * communicated to the user using this interface. The interface supports a
- * two-stage progress indication: The whole action is divided into steps (for
- * example, packs when installing) and sub-steps (for example, files of a pack).
+ * For example, the installation progress and compilation progress are communicated to the user
+ * using this interface. The interface supports a two-stage progress indication: The whole action is
+ * divided into steps (for example, packs when installing) and sub-steps (for example, files of a
+ * pack).
  */
 public interface AbstractUIProgressHandler extends AbstractUIHandler
 {
@@ -41,10 +35,8 @@ public interface AbstractUIProgressHandler extends AbstractUIHandler
     /**
      * The action starts.
      * 
-     * @param name
-     *            The name of the action.
-     * @param no_of_steps
-     *            The number of steps the action consists of.
+     * @param name The name of the action.
+     * @param no_of_steps The number of steps the action consists of.
      */
     public void startAction(String name, int no_of_steps);
 
@@ -56,22 +48,17 @@ public interface AbstractUIProgressHandler extends AbstractUIHandler
     /**
      * The next step starts.
      * 
-     * @param step_name
-     *            The name of the step which starts now.
-     * @param step_no
-     *            The number of the step.
-     * @param no_of_substeps
-     *            The number of sub-steps this step consists of.
+     * @param step_name The name of the step which starts now.
+     * @param step_no The number of the step.
+     * @param no_of_substeps The number of sub-steps this step consists of.
      */
     public void nextStep(String step_name, int step_no, int no_of_substeps);
 
     /**
      * Notify of progress.
      * 
-     * @param substep_no
-     *            The substep which will be performed next.
-     * @param message
-     *            An additional message describing the substep.
+     * @param substep_no The substep which will be performed next.
+     * @param message An additional message describing the substep.
      */
     public void progress(int substep_no, String message);
 </diff>
      <filename>src/lib/com/izforge/izpack/util/AbstractUIProgressHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,34 +1,30 @@
 /*
- * $Id$
- * IzPack 
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               CleanupClient.java
- * Description :        Interface for classes that use Housekeeper
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
 
 /*---------------------------------------------------------------------------*/
 /**
- * Any class that wants to perform cleanup operations and to be notified by
- * &lt;code&gt;Hosekeeper&lt;/code&gt; for this purpose must implement this interface.
+ * Any class that wants to perform cleanup operations and to be notified by &lt;code&gt;Hosekeeper&lt;/code&gt;
+ * for this purpose must implement this interface.
  * 
  * @version 0.0.1 / 2/9/02
  * @author Elmar Grom</diff>
      <filename>src/lib/com/izforge/izpack/util/CleanupClient.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  File :               Console.java
- *  Description :        a Console.
- *  Author's email :     jblok@profdata.nl
- *  Author's Website :   http://www.profdata.nl
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.awt.Dimension;
@@ -64,9 +61,8 @@ public final class Console
         {
 
             /*
-             * Start a new process in which to execute the commands in cmd,
-             * using the environment in env and use pwd as the current working
-             * directory.
+             * Start a new process in which to execute the commands in cmd, using the environment in
+             * env and use pwd as the current working directory.
              */
             p = rt.exec(args);// , env, pwd);
             new Console(p);
@@ -75,8 +71,8 @@ public final class Console
         catch (IOException e)
         {
             /*
-             * Couldn't even get the command to start. Most likely it couldn't
-             * be found because of a typo.
+             * Couldn't even get the command to start. Most likely it couldn't be found because of a
+             * typo.
              */
             System.out.println(&quot;Error starting: &quot; + args[0]);
             System.out.println(e);
@@ -127,9 +123,8 @@ public final class Console
         // From here down your shell should be pretty much
         // as it is written here!
         /*
-         * Start up StdOut, StdIn and StdErr threads that write the output
-         * generated by the process p to the screen, and feed the keyboard input
-         * into p.
+         * Start up StdOut, StdIn and StdErr threads that write the output generated by the process
+         * p to the screen, and feed the keyboard input into p.
          */
         so = new StdOut(p, cta);
         se = new StdOut(p, cta);
@@ -154,8 +149,8 @@ public final class Console
         }
 
         /*
-         * Now signal the StdOut, StdErr and StdIn threads that the process is
-         * done, and wait for them to complete.
+         * Now signal the StdOut, StdErr and StdIn threads that the process is done, and wait for
+         * them to complete.
          */
         try
         {
@@ -246,9 +241,8 @@ class StdOut extends Thread
         try
         {
             /*
-             * Loop as long as there is output from the process to be displayed
-             * or as long as the process is still running even if there is
-             * presently no output.
+             * Loop as long as there is output from the process to be displayed or as long as the
+             * process is still running even if there is presently no output.
              */
             while (output.ready() || processRunning)
             {</diff>
      <filename>src/lib/com/izforge/izpack/util/Console.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Jan Blok (jblok@profdata.nl - PDM - www.profdata.nl)
- *
- *  File :               Debug.java
- *  Description :        a ButtonFactory.
- *  Author's email :     jblok@profdata.nl
- *  Author's Website :   http://www.profdata.nl
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Jan Blok
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.io.File;</diff>
      <filename>src/lib/com/izforge/izpack/util/Debug.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               ExtendedUIProgressHandler.java
- *  Description :        Interface for extended UI progress handler.
- *  Author's email :     klaus.bartz@coi.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 /**
@@ -38,22 +36,17 @@ public interface ExtendedUIProgressHandler
     /**
      * The action restarts.
      * 
-     * @param name
-     *            The name of the action.
-     * @param overallMsg
-     *            message to be used in the overall label.
-     * @param tipMsg
-     *            message to be used in the tip label.
-     * @param no_of_steps
-     *            The number of steps the action consists of.
+     * @param name The name of the action.
+     * @param overallMsg message to be used in the overall label.
+     * @param tipMsg message to be used in the tip label.
+     * @param no_of_steps The number of steps the action consists of.
      */
     void restartAction(String name, String overallMsg, String tipMsg, int no_of_steps);
 
     /**
      * Notify of progress with automatic counting.
      * 
-     * @param stepMessage
-     *            an additional message describing the substep the type of the substep
+     * @param stepMessage an additional message describing the substep the type of the substep
      */
     public void progress(String stepMessage);
 </diff>
      <filename>src/lib/com/izforge/izpack/util/ExtendedUIProgressHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Olexij Tkatchenko
- *
- *  File :               FileExecutor.java
- *  Description :        File execution class.
- *  Author's email :     ot@parcs.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Olexij Tkatchenko
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.io.BufferedReader;
@@ -40,10 +37,10 @@ import java.util.List;
 import com.izforge.izpack.ExecutableFile;
 
 /**
- * Executes a bunch of files. This class is intended to do a system dependent
- * installation postprocessing. Executable file can be any file installed with
- * current package. After execution the file can be optionally removed. Before
- * execution on Unix systems execution flag will be set on processed file.
+ * Executes a bunch of files. This class is intended to do a system dependent installation
+ * postprocessing. Executable file can be any file installed with current package. After execution
+ * the file can be optionally removed. Before execution on Unix systems execution flag will be set
+ * on processed file.
  * 
  * @author Olexij Tkatchenko &lt;ot@parcs.de&gt;
  */
@@ -51,9 +48,8 @@ public class FileExecutor
 {
 
     /**
-     * This is a grabber for stdout and stderr. It will be launched once at
-     * command execution end terminates if the apropriate stream runs out of
-     * data.
+     * This is a grabber for stdout and stderr. It will be launched once at command execution end
+     * terminates if the apropriate stream runs out of data.
      * 
      * @author Olexij Tkatchenko &lt;ot@parcs.de&gt;
      */
@@ -122,12 +118,10 @@ public class FileExecutor
     }
 
     /**
-     * Constructs a new executor. The executable files specified must have
-     * pretranslated paths (variables expanded and file separator characters
-     * converted if necessary).
+     * Constructs a new executor. The executable files specified must have pretranslated paths
+     * (variables expanded and file separator characters converted if necessary).
      * 
-     * @param files
-     *            the executable files to process
+     * @param files the executable files to process
      */
     public FileExecutor(Collection files)
     {
@@ -145,11 +139,9 @@ public class FileExecutor
     /**
      * Executed a system command and waits for completion.
      * 
-     * @param params
-     *            system command as string array
-     * @param output
-     *            contains output of the command index 0 = standard output index
-     *            1 = standard error
+     * @param params system command as string array
+     * @param output contains output of the command index 0 = standard output index 1 = standard
+     * error
      * @return exit status of process
      */
     public int executeCommand(String[] params, String[] output)
@@ -241,10 +233,8 @@ public class FileExecutor
     /**
      * Executes files specified at construction time.
      * 
-     * @param currentStage
-     *            the stage of the installation
-     * @param handler
-     *            The AbstractUIHandler to notify on errors.
+     * @param currentStage the stage of the installation
+     * @param handler The AbstractUIHandler to notify on errors.
      * 
      * @return 0 on success, else the exit status of the last failed command
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/FileExecutor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,34 +1,29 @@
 /*
- * $Id$
- * IzPack 
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               FreeThread.java
- * Description :        used to free native libraries
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class implements a thred that can be used to free native libraries
- * safely.
+ * This class implements a thred that can be used to free native libraries safely.
  * 
  * @version 0.0.1 / 2/6/02
  * @author Elmar Grom
@@ -45,14 +40,10 @@ public class FreeThread extends Thread
     /**
      * Standard constructor.
      * 
-     * @param name
-     *            the name of the library to free. The exact form of the name
-     *            may be operating system dependent. On Microsoft Windows this
-     *            must be just the library name, without path but with
-     *            extension.
-     * @param client
-     *            reference of the client object that is linked with the library
-     *            to be freed.
+     * @param name the name of the library to free. The exact form of the name may be operating
+     * system dependent. On Microsoft Windows this must be just the library name, without path but
+     * with extension.
+     * @param client reference of the client object that is linked with the library to be freed.
      */
     /*--------------------------------------------------------------------------*/
     public FreeThread(String name, NativeLibraryClient client)
@@ -63,9 +54,8 @@ public class FreeThread extends Thread
 
     /*--------------------------------------------------------------------------*/
     /**
-     * The run() method. Frees the library. Note that the thread is likely to
-     * get 'frozen' and the application can only be treminated through a call to
-     * &lt;code&gt;System.exit()&lt;/code&gt;.
+     * The run() method. Frees the library. Note that the thread is likely to get 'frozen' and the
+     * application can only be treminated through a call to &lt;code&gt;System.exit()&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     public void run()</diff>
      <filename>src/lib/com/izforge/izpack/util/FreeThread.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,24 +1,22 @@
-/* 
- *  Copyright (C) 2004 Thorsten Kamann
- *
- *  File :               HostAddressValidator.java
- *  Description :        Validates a given host:port whether it is available or not
- *  Author's email :     thorsten.kamann@planetes.de
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Thorsten Kamann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -32,8 +30,8 @@ import com.izforge.izpack.panels.Validator;
 /**
  * A validator to check wheter a host:port is available (free).
  * 
- * This validator can be used for rule input fields in the UserInputPanel to
- * make sure that the port the user entered is not in use.
+ * This validator can be used for rule input fields in the UserInputPanel to make sure that the port
+ * the user entered is not in use.
  * 
  * @author thorque
  */</diff>
      <filename>src/lib/com/izforge/izpack/util/HostAddressValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               Housekeeper.java
- * Description :        Performs housekeeping and cleanup tasks for IzForge
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -29,15 +25,14 @@ import java.util.Vector;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class performs housekeeping and cleanup tasks. There can only be one
- * instance of &lt;code&gt;Housekeeper&lt;/code&gt; per Java runtime, therefore this class
- * is implemented as a 'Singleton'. &lt;br&gt;
+ * This class performs housekeeping and cleanup tasks. There can only be one instance of
+ * &lt;code&gt;Housekeeper&lt;/code&gt; per Java runtime, therefore this class is implemented as a
+ * 'Singleton'. &lt;br&gt;
  * &lt;br&gt;
- * It is VERY important to perform pre-shutdown cleanup operations through this
- * class. Do NOT rely on operations like &lt;code&gt;deleteOnExit()&lt;/code&gt; shutdown
- * hooks or &lt;code&gt;finalize()&lt;/code&gt;for cleanup. Because
- * &lt;code&gt;shutDown()&lt;/code&gt; uses &lt;code&gt;System.exit()&lt;/code&gt; to terminate,
- * these methods will not work at all or will not work reliably.
+ * It is VERY important to perform pre-shutdown cleanup operations through this class. Do NOT rely
+ * on operations like &lt;code&gt;deleteOnExit()&lt;/code&gt; shutdown hooks or &lt;code&gt;finalize()&lt;/code&gt;for
+ * cleanup. Because &lt;code&gt;shutDown()&lt;/code&gt; uses &lt;code&gt;System.exit()&lt;/code&gt; to terminate, these
+ * methods will not work at all or will not work reliably.
  * 
  * @version 0.0.1 / 2/9/02
  * @author Elmar Grom
@@ -55,13 +50,12 @@ public class Housekeeper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This class is implemented as a 'Singleton'. Therefore the constructor is
-     * private to prevent instantiation of this class. Use
-     * &lt;code&gt;getInstance()&lt;/code&gt; to obtain an instance for use. &lt;br&gt;
+     * This class is implemented as a 'Singleton'. Therefore the constructor is private to prevent
+     * instantiation of this class. Use &lt;code&gt;getInstance()&lt;/code&gt; to obtain an instance for use.
+     * &lt;br&gt;
      * &lt;br&gt;
-     * For more information about the 'Singleton' pattern I highly recommend the
-     * book Design Patterns by Gamma, Helm, Johnson and Vlissides ISBN
-     * 0-201-63361-2.
+     * For more information about the 'Singleton' pattern I highly recommend the book Design
+     * Patterns by Gamma, Helm, Johnson and Vlissides ISBN 0-201-63361-2.
      */
     /*--------------------------------------------------------------------------*/
     private Housekeeper()
@@ -87,12 +81,10 @@ public class Housekeeper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Use to register objects that need to perform cleanup operations before
-     * the application shuts down.
+     * Use to register objects that need to perform cleanup operations before the application shuts
+     * down.
      * 
-     * @param client
-     *            reference of to an object that needs to perform cleanup
-     *            operations.
+     * @param client reference of to an object that needs to perform cleanup operations.
      */
     /*--------------------------------------------------------------------------*/
     public void registerForCleanup(CleanupClient client)
@@ -102,14 +94,13 @@ public class Housekeeper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This methods shuts the application down. First, it will call all clients
-     * that have registered for cleanup operations. Once this has been
-     * accomplished, the application will be forceably terminated. &lt;br&gt;
+     * This methods shuts the application down. First, it will call all clients that have registered
+     * for cleanup operations. Once this has been accomplished, the application will be forceably
+     * terminated. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;THIS METHOD DOES NOT RETURN!&lt;/b&gt;
      * 
-     * @param exitCode
-     *            the exit code that should be returned to the calling process.
+     * @param exitCode the exit code that should be returned to the calling process.
      */
     /*--------------------------------------------------------------------------*/
     public void shutDown(int exitCode)</diff>
      <filename>src/lib/com/izforge/izpack/util/Housekeeper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               IoHelper.java
- *  Description :        Helper for IO related stuff.
- *  Author's email :     bartzkau@users.berlios.de
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Elmar Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -66,10 +63,8 @@ public class IoHelper
     /**
      * Copies the contents of inFile into outFile.
      * 
-     * @param inFile
-     *            path of file which should be copied
-     * @param outFile
-     *            path of file to create and copy the contents of inFile into
+     * @param inFile path of file which should be copied
+     * @param outFile path of file to create and copy the contents of inFile into
      */
     public static void copyFile(String inFile, String outFile) throws IOException
     {
@@ -77,15 +72,12 @@ public class IoHelper
     }
 
     /**
-     * Creates an in- and output stream for the given File objects and copies
-     * all the data from the specified input to the specified output.
+     * Creates an in- and output stream for the given File objects and copies all the data from the
+     * specified input to the specified output.
      * 
-     * @param inFile
-     *            File object for input
-     * @param outFile
-     *            File object for output
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param inFile File object for input
+     * @param outFile File object for output
+     * @exception IOException if an I/O error occurs
      */
     public static void copyFile(File inFile, File outFile) throws IOException
     {
@@ -93,18 +85,14 @@ public class IoHelper
     }
 
     /**
-     * Creates an in- and output stream for the given File objects and copies
-     * all the data from the specified input to the specified output. If
-     * permissions is not null, a chmod will be done on the output file.
+     * Creates an in- and output stream for the given File objects and copies all the data from the
+     * specified input to the specified output. If permissions is not null, a chmod will be done on
+     * the output file.
      * 
-     * @param inFile
-     *            File object for input
-     * @param outFile
-     *            File object for output
-     * @param permissions
-     *            permissions for the output file
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param inFile File object for input
+     * @param outFile File object for output
+     * @param permissions permissions for the output file
+     * @exception IOException if an I/O error occurs
      */
     public static void copyFile(File inFile, File outFile, String permissions) throws IOException
     {
@@ -112,18 +100,14 @@ public class IoHelper
     }
 
     /**
-     * Creates an in- and output stream for the given File objects and copies
-     * all the data from the specified input to the specified output. If the
-     * VariableSubstitutor is not null, a substition will be done during copy.
+     * Creates an in- and output stream for the given File objects and copies all the data from the
+     * specified input to the specified output. If the VariableSubstitutor is not null, a substition
+     * will be done during copy.
      * 
-     * @param inFile
-     *            File object for input
-     * @param outFile
-     *            File object for output
-     * @param vss
-     *            substitutor which is used during copying
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param inFile File object for input
+     * @param outFile File object for output
+     * @param vss substitutor which is used during copying
+     * @exception IOException if an I/O error occurs
      */
     public static void copyFile(File inFile, File outFile, VariableSubstitutor vss)
             throws IOException
@@ -132,21 +116,16 @@ public class IoHelper
     }
 
     /**
-     * Creates an in- and output stream for the given File objects and copies
-     * all the data from the specified input to the specified output. If the
-     * VariableSubstitutor is not null, a substition will be done during copy.
-     * If permissions is not null, a chmod will be done on the output file.
+     * Creates an in- and output stream for the given File objects and copies all the data from the
+     * specified input to the specified output. If the VariableSubstitutor is not null, a substition
+     * will be done during copy. If permissions is not null, a chmod will be done on the output
+     * file.
      * 
-     * @param inFile
-     *            File object for input
-     * @param outFile
-     *            File object for output
-     * @param permissions
-     *            permissions for the output file
-     * @param vs
-     *            substitutor which is used during copying
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param inFile File object for input
+     * @param outFile File object for output
+     * @param permissions permissions for the output file
+     * @param vs substitutor which is used during copying
+     * @exception IOException if an I/O error occurs
      */
     public static void copyFile(File inFile, File outFile, String permissions,
             VariableSubstitutor vs) throws IOException
@@ -155,24 +134,17 @@ public class IoHelper
     }
 
     /**
-     * Creates an in- and output stream for the given File objects and copies
-     * all the data from the specified input to the specified output. If the
-     * VariableSubstitutor is not null, a substition will be done during copy.
-     * If permissions is not null, a chmod will be done on the output file. If
-     * type is not null, that type is used as file type at substitution.
+     * Creates an in- and output stream for the given File objects and copies all the data from the
+     * specified input to the specified output. If the VariableSubstitutor is not null, a substition
+     * will be done during copy. If permissions is not null, a chmod will be done on the output
+     * file. If type is not null, that type is used as file type at substitution.
      * 
-     * @param inFile
-     *            File object for input
-     * @param outFile
-     *            File object for output
-     * @param permissions
-     *            permissions for the output file
-     * @param vs
-     *            substitutor which is used during copying
-     * @param type
-     *            file type for the substitutor
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param inFile File object for input
+     * @param outFile File object for output
+     * @param permissions permissions for the output file
+     * @param vs substitutor which is used during copying
+     * @param type file type for the substitutor
+     * @exception IOException if an I/O error occurs
      */
     public static void copyFile(File inFile, File outFile, String permissions,
             VariableSubstitutor vs, String type) throws IOException
@@ -207,14 +179,12 @@ public class IoHelper
     }
 
     /**
-     * Creates a temp file with delete on exit rule. The extension is extracted
-     * from the template if possible, else the default extension is used. The
-     * contents of template will be copied into the temporary file.
+     * Creates a temp file with delete on exit rule. The extension is extracted from the template if
+     * possible, else the default extension is used. The contents of template will be copied into
+     * the temporary file.
      * 
-     * @param template
-     *            file to copy from and define file extension
-     * @param defaultExtension
-     *            file extension if no is contained in template
+     * @param template file to copy from and define file extension
+     * @param defaultExtension file extension if no is contained in template
      * @return newly created and filled temporary file
      * @throws IOException
      */
@@ -224,18 +194,14 @@ public class IoHelper
     }
 
     /**
-     * Creates a temp file with delete on exit rule. The extension is extracted
-     * from the template if possible, else the default extension is used. The
-     * contents of template will be copied into the temporary file. If the
-     * variable substitutor is not null, variables will be replaced during
-     * copying.
+     * Creates a temp file with delete on exit rule. The extension is extracted from the template if
+     * possible, else the default extension is used. The contents of template will be copied into
+     * the temporary file. If the variable substitutor is not null, variables will be replaced
+     * during copying.
      * 
-     * @param template
-     *            file to copy from and define file extension
-     * @param defaultExtension
-     *            file extension if no is contained in template
-     * @param vss
-     *            substitutor which is used during copying
+     * @param template file to copy from and define file extension
+     * @param defaultExtension file extension if no is contained in template
+     * @param vss substitutor which is used during copying
      * @return newly created and filled temporary file
      * @throws IOException
      */
@@ -253,14 +219,12 @@ public class IoHelper
     }
 
     /**
-     * Creates a temp file with delete on exit rule. The extension is extracted
-     * from the template if possible, else the default extension is used. The
-     * contents of template will be copied into the temporary file.
+     * Creates a temp file with delete on exit rule. The extension is extracted from the template if
+     * possible, else the default extension is used. The contents of template will be copied into
+     * the temporary file.
      * 
-     * @param template
-     *            file to copy from and define file extension
-     * @param defaultExtension
-     *            file extension if no is contained in template
+     * @param template file to copy from and define file extension
+     * @param defaultExtension file extension if no is contained in template
      * @return newly created and filled temporary file
      * @throws IOException
      */
@@ -272,12 +236,9 @@ public class IoHelper
     /**
      * Changes the permissions of the given file to the given POSIX permissions.
      * 
-     * @param file
-     *            the file for which the permissions should be changed
-     * @param permissions
-     *            POSIX permissions to be set
-     * @throws IOException
-     *             if an I/O error occurs
+     * @param file the file for which the permissions should be changed
+     * @param permissions POSIX permissions to be set
+     * @throws IOException if an I/O error occurs
      */
     public static void chmod(File file, String permissions) throws IOException
     {
@@ -285,16 +246,12 @@ public class IoHelper
     }
 
     /**
-     * Changes the permissions of the given file to the given POSIX permissions.
-     * This method will be raised an exception, if the OS is not UNIX.
+     * Changes the permissions of the given file to the given POSIX permissions. This method will be
+     * raised an exception, if the OS is not UNIX.
      * 
-     * @param path
-     *            the absolute path of the file for which the permissions should
-     *            be changed
-     * @param permissions
-     *            POSIX permissions to be set
-     * @throws IOException
-     *             if an I/O error occurs
+     * @param path the absolute path of the file for which the permissions should be changed
+     * @param permissions POSIX permissions to be set
+     * @throws IOException if an I/O error occurs
      */
     public static void chmod(String path, String permissions) throws IOException
     {
@@ -313,11 +270,9 @@ public class IoHelper
     }
 
     /**
-     * Returns the free (disk) space for the given path. If it is not
-     * ascertainable -1 returns.
+     * Returns the free (disk) space for the given path. If it is not ascertainable -1 returns.
      * 
-     * @param path
-     *            path for which the free space should be detected
+     * @param path path for which the free space should be detected
      * @return the free space for the given path
      */
     public static long getFreeSpace(String path)
@@ -354,16 +309,12 @@ public class IoHelper
     }
 
     /**
-     * Returns whether the given method will be supported with the given
-     * environment. Some methods of this class are not supported on all
-     * operation systems.
+     * Returns whether the given method will be supported with the given environment. Some methods
+     * of this class are not supported on all operation systems.
      * 
-     * @param method
-     *            name of the method
-     * @return true if the method will be supported with the current enivronment
-     *         else false
-     * @throws RuntimeException
-     *             if the given method name does not exist
+     * @param method name of the method
+     * @return true if the method will be supported with the current enivronment else false
+     * @throws RuntimeException if the given method name does not exist
      */
     public static boolean supported(String method)
     {
@@ -404,8 +355,7 @@ public class IoHelper
     /**
      * Returns the first existing parent directory in a path
      * 
-     * @param path
-     *            path which should be scanned
+     * @param path path which should be scanned
      * @return the first existing parent directory in a path
      */
     public static File existingParent(File path)
@@ -420,21 +370,15 @@ public class IoHelper
     }
 
     /**
-     * Extracts a long value from a string in a special manner. The string will
-     * be broken into tokens with a standard StringTokenizer. Arround the
-     * assumed place (with the given half range) the tokens are scaned reverse
-     * for a token which represents a long. if useNotIdentifier is not null,
-     * tokens which are contains this string will be ignored. The first founded
-     * long returns.
+     * Extracts a long value from a string in a special manner. The string will be broken into
+     * tokens with a standard StringTokenizer. Arround the assumed place (with the given half range)
+     * the tokens are scaned reverse for a token which represents a long. if useNotIdentifier is not
+     * null, tokens which are contains this string will be ignored. The first founded long returns.
      * 
-     * @param in
-     *            the string which should be parsed
-     * @param assumedPlace
-     *            token number which should contain the value
-     * @param halfRange
-     *            half range for detection range
-     * @param useNotIdentifier
-     *            string which determines tokens which should be ignored
+     * @param in the string which should be parsed
+     * @param assumedPlace token number which should contain the value
+     * @param halfRange half range for detection range
+     * @param useNotIdentifier string which determines tokens which should be ignored
      * @return founded long
      */
     private static long extractLong(String in, int assumedPlace, int halfRange,
@@ -485,8 +429,8 @@ public class IoHelper
     }
 
     /**
-     * Returns the primary group of the current user. This feature will be
-     * supported only on Unix. On other systems null returns.
+     * Returns the primary group of the current user. This feature will be supported only on Unix.
+     * On other systems null returns.
      * 
      * @return the primary group of the current user
      */
@@ -528,20 +472,15 @@ public class IoHelper
     }
 
     /**
-     * Returns a string resulting from replacing all occurrences of what in this
-     * string with with. In opposite to the String.replaceAll method this method
-     * do not use regular expression or other methods which are only available
-     * in JRE 1.4 and later. This method was special made to mask masked slashes
-     * to avert a conversion during path translation.
+     * Returns a string resulting from replacing all occurrences of what in this string with with.
+     * In opposite to the String.replaceAll method this method do not use regular expression or
+     * other methods which are only available in JRE 1.4 and later. This method was special made to
+     * mask masked slashes to avert a conversion during path translation.
      * 
-     * @param destination
-     *            string for which the replacing should be performed
-     * @param what
-     *            what string should be replaced
-     * @param with
-     *            with what string what should be replaced
-     * @return a new String object if what was found in the given string, else
-     *         the given string self
+     * @param destination string for which the replacing should be performed
+     * @param what what string should be replaced
+     * @param with with what string what should be replaced
+     * @return a new String object if what was found in the given string, else the given string self
      */
     public static String replaceString(String destination, String what, String with)
     {
@@ -568,8 +507,7 @@ public class IoHelper
     /**
      * Translates a relative path to a local system path.
      * 
-     * @param destination
-     *            The path to translate.
+     * @param destination The path to translate.
      * @return The translated path.
      */
     public static String translatePath(String destination, VariableSubstitutor vs)
@@ -607,13 +545,11 @@ public class IoHelper
     }
 
     /**
-     * Returns the value of the environment variable given by key. This method
-     * is a work around for VM versions which do not support getenv in an other
-     * way. At the first call all environment variables will be loaded via an
-     * exec. On Windows keys are not case sensitive.
+     * Returns the value of the environment variable given by key. This method is a work around for
+     * VM versions which do not support getenv in an other way. At the first call all environment
+     * variables will be loaded via an exec. On Windows keys are not case sensitive.
      * 
-     * @param key
-     *            variable name for which the value should be resolved
+     * @param key variable name for which the value should be resolved
      * @return the value of the environment variable given by key
      */
     public static String getenv(String key)
@@ -678,9 +614,8 @@ public class IoHelper
     }
 
     /**
-     * Extracts key and value from the given string var. The key should be
-     * separated from the value by a sign. On Windows all chars of the key are
-     * translated to upper case.
+     * Extracts key and value from the given string var. The key should be separated from the value
+     * by a sign. On Windows all chars of the key are translated to upper case.
      * 
      * @param var
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/IoHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,22 @@
-/* 
- *  Copyright (C) 2004 Thorsten Kamann
- *
- *  File :               IsPortValidator.java
- *  Description :        Checks whether the given port is a valid port in the range 
- * 								from 0 until 32000
- *  Author's email :     thorsten.kamann@planetes.de
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Thorsten Kamann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;</diff>
      <filename>src/lib/com/izforge/izpack/util/IsPortValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               Librarian.java
- * Description :        Supports the loading of native libraries
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -39,15 +35,14 @@ import java.util.Vector;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class handles loading of native libraries. There must only be one
- * instance of &lt;code&gt;Librarian&lt;/code&gt; per Java runtime, therefore this class
- * is implemented as a 'Singleton'. &lt;br&gt;
+ * This class handles loading of native libraries. There must only be one instance of
+ * &lt;code&gt;Librarian&lt;/code&gt; per Java runtime, therefore this class is implemented as a 'Singleton'.
+ * &lt;br&gt;
  * &lt;br&gt;
- * &lt;code&gt;Librarian&lt;/code&gt; is capable of loading native libraries from a
- * variety of different source locations. However, you should place your library
- * files in the 'native' directory. The primary reason for supporting different
- * source locations is to facilitate testing in a development environment,
- * without the need to actually packing the application into a *.jar file.
+ * &lt;code&gt;Librarian&lt;/code&gt; is capable of loading native libraries from a variety of different
+ * source locations. However, you should place your library files in the 'native' directory. The
+ * primary reason for supporting different source locations is to facilitate testing in a
+ * development environment, without the need to actually packing the application into a *.jar file.
  * 
  * @version 1.0 / 1/30/02
  * @author Elmar Grom
@@ -67,15 +62,13 @@ public class Librarian implements CleanupClient
     private static final String FILE_PROTOCOL = &quot;file&quot;;
 
     /**
-     * The key used to retrieve the location of temporary files form the system
-     * properties.
+     * The key used to retrieve the location of temporary files form the system properties.
      */
     private static final String TEMP_LOCATION_KEY = &quot;java.io.tmpdir&quot;;
 
     /**
-     * The extension appended to the client name when searching for it as a
-     * resource. Since the client is an object, the extension should always be
-     * '.class'
+     * The extension appended to the client name when searching for it as a resource. Since the
+     * client is an object, the extension should always be '.class'
      */
     private static final String CLIENT_EXTENSION = &quot;.class&quot;;
 
@@ -90,36 +83,34 @@ public class Librarian implements CleanupClient
     // ------------------------------------------------------------------------
 
     /**
-     * The reference to the single instance of &lt;code&gt;Librarian&lt;/code&gt;. Used
-     * in static methods in place of &lt;code&gt;this&lt;/code&gt;.
+     * The reference to the single instance of &lt;code&gt;Librarian&lt;/code&gt;. Used in static methods in
+     * place of &lt;code&gt;this&lt;/code&gt;.
      */
     private static Librarian me = null;
 
     /**
-     * A list that is used to track all libraries that have been loaded. This
-     * list is used to ensure that each library is loaded only once.
+     * A list that is used to track all libraries that have been loaded. This list is used to ensure
+     * that each library is loaded only once.
      */
     private Vector trackList = new Vector();
 
     /**
-     * A list of references to clients that use libraries that were extracted
-     * from a *.jar file. This is needed because the clients need to be called
-     * for freeing their libraries.
+     * A list of references to clients that use libraries that were extracted from a *.jar file.
+     * This is needed because the clients need to be called for freeing their libraries.
      */
     private Vector clients = new Vector();
 
     /**
-     * A list of library names as they appear in the temporary directory. This
-     * is needed to free each library through the client. The index of each name
-     * corresponds to the index of the respective client in the
-     * &lt;code&gt;clients&lt;/code&gt; list.
+     * A list of library names as they appear in the temporary directory. This is needed to free
+     * each library through the client. The index of each name corresponds to the index of the
+     * respective client in the &lt;code&gt;clients&lt;/code&gt; list.
      */
     private Vector libraryNames = new Vector();
 
     /**
-     * A list of fully qualified library names. This is needed to delete the
-     * temporary library files after use. The index of each name corresponds to
-     * the index of the respective client in the &lt;code&gt;clients&lt;/code&gt; list.
+     * A list of fully qualified library names. This is needed to delete the temporary library files
+     * after use. The index of each name corresponds to the index of the respective client in the
+     * &lt;code&gt;clients&lt;/code&gt; list.
      */
     private Vector temporaryFileNames = new Vector();
 
@@ -131,13 +122,12 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This class is implemented as a 'Singleton'. Therefore the constructor is
-     * private to prevent instantiation of this class. Use
-     * &lt;code&gt;getInstance()&lt;/code&gt; to obtain an instance for use. &lt;br&gt;
+     * This class is implemented as a 'Singleton'. Therefore the constructor is private to prevent
+     * instantiation of this class. Use &lt;code&gt;getInstance()&lt;/code&gt; to obtain an instance for use.
+     * &lt;br&gt;
      * &lt;br&gt;
-     * For more information about the 'Singleton' pattern I highly recommend the
-     * book Design Patterns by Gamma, Helm, Johnson and Vlissides ISBN
-     * 0-201-63361-2.
+     * For more information about the 'Singleton' pattern I highly recommend the book Design
+     * Patterns by Gamma, Helm, Johnson and Vlissides ISBN 0-201-63361-2.
      */
     /*--------------------------------------------------------------------------*/
     private Librarian()
@@ -165,50 +155,43 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Loads the requested library. If the library is already loaded, this
-     * method returns immediately, without an attempt to load the library again.
+     * Loads the requested library. If the library is already loaded, this method returns
+     * immediately, without an attempt to load the library again. &lt;br&gt;
      * &lt;br&gt;
-     * &lt;br&gt;
-     * &lt;b&gt;Invocation Example:&lt;/b&gt; This assumes that the call is made from the
-     * class that links with the library. If this is not the case,
-     * &lt;code&gt;this&lt;/code&gt; must be replaced by the reference of the class that
-     * links with the library. &lt;br&gt;
+     * &lt;b&gt;Invocation Example:&lt;/b&gt; This assumes that the call is made from the class that links with
+     * the library. If this is not the case, &lt;code&gt;this&lt;/code&gt; must be replaced by the reference
+     * of the class that links with the library. &lt;br&gt;
      * &lt;br&gt;
      * &lt;code&gt;
      * Librarian.getInstance ().loadLibrary (&quot;MyLibrary&quot;, this);
-     * &lt;/code&gt;
-     * &lt;br&gt;
+     * &lt;/code&gt; &lt;br&gt;
      * &lt;br&gt;
      * Loading of a native library file works as follows:&lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;If the library is already loaded there is nothing to do.
-     * &lt;li&gt;An attempt is made to load the library by its name. If there is no
-     * system path set to the library, this attempt will fail.
-     * &lt;li&gt;If the client is located on the local file system, an attempt is
-     * made to load the library from the local files system as well.
-     * &lt;li&gt;If the library is located inside a *.jar file, it is extracted to
-     * 'java.io.tmpdir' and an attempt is made to load it from there.
+     * &lt;li&gt;An attempt is made to load the library by its name. If there is no system path set to
+     * the library, this attempt will fail.
+     * &lt;li&gt;If the client is located on the local file system, an attempt is made to load the
+     * library from the local files system as well.
+     * &lt;li&gt;If the library is located inside a *.jar file, it is extracted to 'java.io.tmpdir' and
+     * an attempt is made to load it from there.
      * &lt;/ul&gt;
      * &lt;br&gt;
      * &lt;br&gt;
-     * Loading from the local file system and from the *.jar file is attempted
-     * for the following potential locations of the library in this order:&lt;br&gt;
+     * Loading from the local file system and from the *.jar file is attempted for the following
+     * potential locations of the library in this order:&lt;br&gt;
      * &lt;ol&gt;
      * &lt;li&gt;The same directory where the client is located
      * &lt;li&gt;The native library directory
      * &lt;/ol&gt;
      * 
-     * @param name
-     *            the name of the library. A file extension and path are not
-     *            needed, in fact if supplied, both is stripped off. A specific
-     *            extension is appended.
-     * @param client
-     *            the object that made the load request
+     * @param name the name of the library. A file extension and path are not needed, in fact if
+     * supplied, both is stripped off. A specific extension is appended.
+     * @param client the object that made the load request
      * 
      * @see #setNativeDirectory
      * 
-     * @exception Exception
-     *                if all attempts to load the library fail.
+     * @exception Exception if all attempts to load the library fail.
      */
     /*--------------------------------------------------------------------------*/
     public synchronized void loadLibrary(String name, NativeLibraryClient client) throws Exception
@@ -298,14 +281,13 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Verifies if the library has already been loaded and keeps track of all
-     * libraries that are verified.
+     * Verifies if the library has already been loaded and keeps track of all libraries that are
+     * verified.
      * 
-     * @param name
-     *            name of the library to verify
+     * @param name name of the library to verify
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the library had already been loaded,
-     *         otherwise &lt;code&gt;false&lt;/code&gt;.
+     * @return &lt;code&gt;true&lt;/code&gt; if the library had already been loaded, otherwise
+     * &lt;code&gt;false&lt;/code&gt;.
      */
     /*--------------------------------------------------------------------------*/
     private boolean loaded(String name)
@@ -325,8 +307,7 @@ public class Librarian implements CleanupClient
     /**
      * Strips the extension of the library name, if it has one.
      * 
-     * @param name
-     *            the name of the library
+     * @param name the name of the library
      * 
      * @return the name without an extension
      */
@@ -357,23 +338,17 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Makes an attempt to extract the named library from the jar file and to
-     * store it on the local file system for temporary use. If the attempt is
-     * successful, the fully qualified file name of the library on the local
-     * file system is returned.
+     * Makes an attempt to extract the named library from the jar file and to store it on the local
+     * file system for temporary use. If the attempt is successful, the fully qualified file name of
+     * the library on the local file system is returned.
      * 
-     * @param name
-     *            the simple name of the library
-     * @param destination
-     *            the fully qualified name of the destination file.
-     * @param client
-     *            the class that made the load request.
+     * @param name the simple name of the library
+     * @param destination the fully qualified name of the destination file.
+     * @param client the class that made the load request.
      * 
-     * @exception Exception
-     *                if the library can not be extracted from the *.jar file.
-     * @exception FileNotFoundException
-     *                if the *.jar file does not exist. The way things operate
-     *                here, this should actually never happen.
+     * @exception Exception if the library can not be extracted from the *.jar file.
+     * @exception FileNotFoundException if the *.jar file does not exist. The way things operate
+     * here, this should actually never happen.
      */
     /*--------------------------------------------------------------------------*/
     private void extractFromJar(String name, String destination, NativeLibraryClient client)
@@ -445,14 +420,11 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the complete path (including file name) for the native library,
-     * assuming the native library is located in the same directory from which
-     * the client was loaded.
+     * Returns the complete path (including file name) for the native library, assuming the native
+     * library is located in the same directory from which the client was loaded.
      * 
-     * @param name
-     *            the simple name of the library
-     * @param clientURL
-     *            a URL that points to the client class
+     * @param name the simple name of the library
+     * @param clientURL a URL that points to the client class
      * 
      * @return the path to the client
      */
@@ -476,14 +448,11 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the complete path (including file name) for the native library,
-     * assuming the native library is located in a directory where native
-     * libraries are ordinarily expected.
+     * Returns the complete path (including file name) for the native library, assuming the native
+     * library is located in a directory where native libraries are ordinarily expected.
      * 
-     * @param name
-     *            the simple name of the library
-     * @param client
-     *            the class that made the load request.
+     * @param name the simple name of the library
+     * @param client the class that made the load request.
      * 
      * @return the path to the location of the native libraries.
      */
@@ -506,11 +475,10 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Revises the given path to a file compatible path. In fact this method
-     * replaces URI-like entries with it chars (e.g. %20 with a space).
+     * Revises the given path to a file compatible path. In fact this method replaces URI-like
+     * entries with it chars (e.g. %20 with a space).
      * 
-     * @param in
-     *            path to be revised
+     * @param in path to be revised
      * @return revised path
      */
     /*--------------------------------------------------------------------------*/
@@ -549,15 +517,12 @@ public class Librarian implements CleanupClient
     /**
      * Opens an &lt;code&gt;InputStream&lt;/code&gt; to the native library.
      * 
-     * @param name
-     *            the simple name of the library
-     * @param client
-     *            the class that made the load request.
+     * @param name the simple name of the library
+     * @param client the class that made the load request.
      * 
      * @return an &lt;code&gt;InputStream&lt;/code&gt; from which the library can be read.
      * 
-     * @exception Exception
-     *                if the library can not be located.
+     * @exception Exception if the library can not be located.
      */
     /*--------------------------------------------------------------------------*/
     private InputStream openInputStream(String name, NativeLibraryClient client) throws Exception
@@ -596,20 +561,18 @@ public class Librarian implements CleanupClient
     /**
      * Builds a temporary file name for the native library.
      * 
-     * @param name
-     *            the file name of the library
+     * @param name the file name of the library
      * 
-     * @return a fully qualified file name that can be used to store the file on
-     *         the local file system.
+     * @return a fully qualified file name that can be used to store the file on the local file
+     * system.
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * Avoid overwriting any existing files on the user's system. If by some
-     * remote chance a file by the same name should exist on the user's system,
-     * modify the temporary file name until a version is found that is unique on
-     * the system and thus won't interfere.
+     * Avoid overwriting any existing files on the user's system. If by some remote chance a file by
+     * the same name should exist on the user's system, modify the temporary file name until a
+     * version is found that is unique on the system and thus won't interfere.
      * --------------------------------------------------------------------------
      */
     private String getTempFileName(String name)
@@ -645,14 +608,12 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the directory where &lt;code&gt;Librarian&lt;/code&gt; will search for native
-     * files. Directories are denoted relative to the root, where the root is
-     * the same location where the top level Java package directory is located
-     * (usually called &lt;code&gt;com&lt;/code&gt;). The default directory is
-     * &lt;code&gt;native&lt;/code&gt;.
+     * Sets the directory where &lt;code&gt;Librarian&lt;/code&gt; will search for native files. Directories
+     * are denoted relative to the root, where the root is the same location where the top level
+     * Java package directory is located (usually called &lt;code&gt;com&lt;/code&gt;). The default directory
+     * is &lt;code&gt;native&lt;/code&gt;.
      * 
-     * @param directory
-     *            the directory where native files are located.
+     * @param directory the directory where native files are located.
      */
     /*--------------------------------------------------------------------------*/
     public void setNativeDirectory(String directory)
@@ -669,8 +630,8 @@ public class Librarian implements CleanupClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method attempts to remove all native libraries that have been
-     * temporarily created from the system.
+     * This method attempts to remove all native libraries that have been temporarily created from
+     * the system.
      */
     /*--------------------------------------------------------------------------*/
     public void cleanUp()</diff>
      <filename>src/lib/com/izforge/izpack/util/Librarian.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * IzPack version
- * Copyright (C) 1997 - 2002 Elmar Grom
- *
- * File :               MultiLineLabel.java
- * Description :        A swing component to display static text that spans
- *                      multiple lines.
- * Author's email :     elmar@grom.net
- * Author's Website :   http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 1997,2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -38,22 +33,18 @@ import javax.swing.JComponent;
 /*---------------------------------------------------------------------------*/
 /**
  * &lt;BR&gt;
- * &lt;code&gt;MultiLineLabel&lt;/code&gt; may be used in place of javax.swing.JLabel.
- * &lt;BR&gt;
+ * &lt;code&gt;MultiLineLabel&lt;/code&gt; may be used in place of javax.swing.JLabel. &lt;BR&gt;
  * &lt;BR&gt;
- * This class implements a component that is capable of displaying multiple
- * lines of text. Line breaks are inserted automatically whenever a line of text
- * extends beyond the predefined maximum line length. Line breaks will only be
- * inserted between words, except where a single word is longer than the maximum
- * line length. Line breaks may be forced at any location in the text by
- * inserting a newline (\n). White space that is not valuable (i.e. is placed at
- * the beginning of a new line or at the very beginning or end of the text) is
- * removed. &lt;br&gt;
+ * This class implements a component that is capable of displaying multiple lines of text. Line
+ * breaks are inserted automatically whenever a line of text extends beyond the predefined maximum
+ * line length. Line breaks will only be inserted between words, except where a single word is
+ * longer than the maximum line length. Line breaks may be forced at any location in the text by
+ * inserting a newline (\n). White space that is not valuable (i.e. is placed at the beginning of a
+ * new line or at the very beginning or end of the text) is removed. &lt;br&gt;
  * &lt;br&gt;
- * &lt;b&gt;Note:&lt;/b&gt; you can set the maximum width of the label either through one
- * of the constructors or you can call &lt;code&gt;setMaxWidth()&lt;/code&gt; explicitly.
- * If this is not set, &lt;code&gt;MultiLineLabel&lt;/code&gt; will derive its width from
- * the parent component.
+ * &lt;b&gt;Note:&lt;/b&gt; you can set the maximum width of the label either through one of the constructors
+ * or you can call &lt;code&gt;setMaxWidth()&lt;/code&gt; explicitly. If this is not set,
+ * &lt;code&gt;MultiLineLabel&lt;/code&gt; will derive its width from the parent component.
  * 
  * @version 0.0.1 / 05-15-97
  * @version 1.0 / 04-13-02
@@ -133,16 +124,11 @@ public class MultiLineLabel extends JComponent
     /**
      * Constructor
      * 
-     * @param text
-     *            the text to be displayed
-     * @param horMargin
-     *            the horizontal margin for the label
-     * @param vertMargin
-     *            the vertical margin for the label
-     * @param maxWidth
-     *            the maximum allowed width of the text
-     * @param justify
-     *            the text alignment for the label
+     * @param text the text to be displayed
+     * @param horMargin the horizontal margin for the label
+     * @param vertMargin the vertical margin for the label
+     * @param maxWidth the maximum allowed width of the text
+     * @param justify the text alignment for the label
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -161,12 +147,9 @@ public class MultiLineLabel extends JComponent
     /**
      * Constructor using default max-width and alignment.
      * 
-     * @param label
-     *            the text to be displayed
-     * @param marginWidth
-     *            the horizontal margin for the label
-     * @param marginHeight
-     *            the vertical margin for the label
+     * @param label the text to be displayed
+     * @param marginWidth the horizontal margin for the label
+     * @param marginHeight the vertical margin for the label
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -182,10 +165,8 @@ public class MultiLineLabel extends JComponent
     /**
      * Constructor using default max-width, and margin.
      * 
-     * @param label
-     *            the text to be displayed
-     * @param alignment
-     *            the text alignment for the label
+     * @param label the text to be displayed
+     * @param alignment the text alignment for the label
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -200,8 +181,7 @@ public class MultiLineLabel extends JComponent
     /**
      * Constructor using default max-width, alignment, and margin.
      * 
-     * @param label
-     *            the text to be displayed
+     * @param label the text to be displayed
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -213,23 +193,17 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method searches the target string for occurences of any of the
-     * characters in the source string. The return value is the position of the
-     * first hit. Based on the mode parameter the hit position is either the
-     * position where any of the source characters first was found or the first
-     * position where none of the source characters where found.
+     * This method searches the target string for occurences of any of the characters in the source
+     * string. The return value is the position of the first hit. Based on the mode parameter the
+     * hit position is either the position where any of the source characters first was found or the
+     * first position where none of the source characters where found.
      * 
      * 
      * @return position of the first occurence
-     * @param target
-     *            the text to be searched
-     * @param start
-     *            the start position for the search
-     * @param source
-     *            the list of characters to be searched for
-     * @param mode
-     *            the search mode FOUND = reports first found NOT_FOUND =
-     *            reports first not found
+     * @param target the text to be searched
+     * @param start the start position for the search
+     * @param source the list of characters to be searched for
+     * @param mode the search mode FOUND = reports first found NOT_FOUND = reports first not found
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -299,14 +273,12 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method scans the input string until the max allowed width is
-     * reached. The return value indicates the position just before this
-     * happens.
+     * This method scans the input string until the max allowed width is reached. The return value
+     * indicates the position just before this happens.
      * 
      * 
      * @return position character position just before the string is too long
-     * @param word
-     *            word to break
+     * @param word word to break
      */
     /*-------------------------------------------------------------------*
      * &lt;detailed description / implementation details if applicable&gt;
@@ -340,11 +312,10 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method breaks the label text up into multiple lines of text. Line
-     * breaks are established based on the maximum available space. A new line
-     * is started whenever a line break is encountered, even if the permissible
-     * length is not yet reached. Words are broken only if a single word happens
-     * to be longer than one line.
+     * This method breaks the label text up into multiple lines of text. Line breaks are established
+     * based on the maximum available space. A new line is started whenever a line break is
+     * encountered, even if the permissible length is not yet reached. Words are broken only if a
+     * single word happens to be longer than one line.
      */
     /*-------------------------------------------------------------------*/
     private void divideLabel()
@@ -475,8 +446,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method draws the label.
      * 
-     * @param graphics
-     *            the device context
+     * @param graphics the device context
      */
     /*-------------------------------------------------------------------*/
     public void paint(Graphics graphics)
@@ -514,8 +484,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to set the label text
      * 
-     * @param labelText
-     *            the text to be displayed
+     * @param labelText the text to be displayed
      */
     /*-------------------------------------------------------------------*/
     public void setText(String labelText)
@@ -526,11 +495,9 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method may be used to set the font that should be used to draw the
-     * label
+     * This method may be used to set the font that should be used to draw the label
      * 
-     * @param font
-     *            font to be used within the label
+     * @param font font to be used within the label
      */
     /*-------------------------------------------------------------------*/
     public void setFont(Font font)
@@ -541,11 +508,9 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method may be used to set the color in which the text should be
-     * drawn
+     * This method may be used to set the color in which the text should be drawn
      * 
-     * @param color
-     *            the text color
+     * @param color the text color
      */
     /*-------------------------------------------------------------------*/
     public void setColor(Color color)
@@ -558,8 +523,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to set the text alignment for the label
      * 
-     * @param alignment
-     *            the alignment, possible values are LEFT, CENTER, RIGHT
+     * @param alignment the alignment, possible values are LEFT, CENTER, RIGHT
      */
     /*-------------------------------------------------------------------*/
     public void setJustify(int alignment)
@@ -572,8 +536,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to set the max allowed line width
      * 
-     * @param width
-     *            the max allowed line width in pixels
+     * @param width the max allowed line width in pixels
      */
     /*-------------------------------------------------------------------*/
     public void setMaxWidth(int width)
@@ -587,8 +550,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to set the horizontal margin
      * 
-     * @param margin
-     *            the margin to the left and to the right of the label
+     * @param margin the margin to the left and to the right of the label
      */
     /*-------------------------------------------------------------------*/
     public void setMarginWidth(int margin)
@@ -601,8 +563,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to set the vertical margin for the label
      * 
-     * @param margin
-     *            the margin on the top and bottom of the label
+     * @param margin the margin on the top and bottom of the label
      */
     /*-------------------------------------------------------------------*/
     public void setMarginHeight(int margin)
@@ -613,18 +574,14 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * Moves and resizes this component. The new location of the top-left corner
-     * is specified by &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt;, and the new size
-     * is specified by &lt;code&gt;width&lt;/code&gt; and &lt;code&gt;height&lt;/code&gt;.
+     * Moves and resizes this component. The new location of the top-left corner is specified by
+     * &lt;code&gt;x&lt;/code&gt; and &lt;code&gt;y&lt;/code&gt;, and the new size is specified by &lt;code&gt;width&lt;/code&gt;
+     * and &lt;code&gt;height&lt;/code&gt;.
      * 
-     * @param x
-     *            The new x-coordinate of this component.
-     * @param y
-     *            The new y-coordinate of this component.
-     * @param width
-     *            The new width of this component.
-     * @param height
-     *            The new height of this component.
+     * @param x The new x-coordinate of this component.
+     * @param y The new y-coordinate of this component.
+     * @param width The new width of this component.
+     * @param height The new height of this component.
      */
     /*-------------------------------------------------------------------*/
     public void setBounds(int x, int y, int width, int height)
@@ -650,8 +607,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to retrieve the horizontal margin for the label
      * 
-     * @return marginWidth the margin currently in use to the left and right of
-     *         the label
+     * @return marginWidth the margin currently in use to the left and right of the label
      */
     /*-------------------------------------------------------------------*/
     public int getMarginWidth()
@@ -663,8 +619,7 @@ public class MultiLineLabel extends JComponent
     /**
      * This method may be used to retrieve the vertical margin for the label
      * 
-     * @return marginHeight the margin currently in use on the top and bottom of
-     *         the label
+     * @return marginHeight the margin currently in use on the top and bottom of the label
      */
     /*-------------------------------------------------------------------*/
     public int getMarginHeight()
@@ -674,8 +629,8 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method is typically used by the layout manager, it reports the
-     * necessary space to display the label comfortably.
+     * This method is typically used by the layout manager, it reports the necessary space to
+     * display the label comfortably.
      */
     /*-------------------------------------------------------------------*/
     public Dimension getPreferredSize()
@@ -687,8 +642,8 @@ public class MultiLineLabel extends JComponent
 
     /*-------------------------------------------------------------------*/
     /**
-     * This method is typically used by the layout manager, it reports the
-     * absolute minimum space required to display the entire label.
+     * This method is typically used by the layout manager, it reports the absolute minimum space
+     * required to display the entire label.
      * 
      */
     /*-------------------------------------------------------------------*/</diff>
      <filename>src/lib/com/izforge/izpack/util/MultiLineLabel.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,35 +1,31 @@
 /*
- * $Id$
- * IzPack 
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               NativeLibraryClient.java
- * Description :        Interface for classes that use native libraries
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
 
 /*---------------------------------------------------------------------------*/
 /**
- * Any class in IzPack that uses native libraries must implement this interface.
- * See the package documentation for more details on requirements relating to
- * the use of native libraries within IzPack.
+ * Any class in IzPack that uses native libraries must implement this interface. See the package
+ * documentation for more details on requirements relating to the use of native libraries within
+ * IzPack.
  * 
  * @version 0.0.1 / 2/6/2002
  * @author Elmar Grom
@@ -40,25 +36,23 @@ public interface NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method is used to free the library at the end of progam execution.
-     * After this call, any instance of this calss will not be usable any more!
-     * &lt;b&gt;&lt;i&gt;&lt;u&gt;This method is very likely NOT to return!&lt;/u&gt;&lt;/i&gt;&lt;/b&gt; &lt;br&gt;
+     * This method is used to free the library at the end of progam execution. After this call, any
+     * instance of this calss will not be usable any more! &lt;b&gt;&lt;i&gt;&lt;u&gt;This method is very likely NOT
+     * to return!&lt;/u&gt;&lt;/i&gt;&lt;/b&gt; &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;DO NOT CALL THIS METHOD DIRECTLY!&lt;/b&gt;&lt;br&gt;
-     * It is used by the librarian to free a native library before physically
-     * deleting it from its temporary loaction. A call to this method is likely
-     * to irrecoverably freeze the application! &lt;br&gt;
+     * It is used by the librarian to free a native library before physically deleting it from its
+     * temporary loaction. A call to this method is likely to irrecoverably freeze the application!
+     * &lt;br&gt;
      * &lt;br&gt;
-     * The contract for this method implementation is that a call will bring the
-     * native library into a state where it can be deleted. This translates into
-     * an operation to free the library. Since no libraries should be left
-     * behind when the installer shuts down, it is necessary that each library
-     * provides the means to free itself. For instance in a MS-Windows
-     * environment the library must call &lt;code&gt;FreeLibraryAndExitThread()&lt;/code&gt;.
-     * This will result in a native fuction call that does not return.
+     * The contract for this method implementation is that a call will bring the native library into
+     * a state where it can be deleted. This translates into an operation to free the library. Since
+     * no libraries should be left behind when the installer shuts down, it is necessary that each
+     * library provides the means to free itself. For instance in a MS-Windows environment the
+     * library must call &lt;code&gt;FreeLibraryAndExitThread()&lt;/code&gt;. This will result in a native
+     * fuction call that does not return.
      * 
-     * @param name
-     *            the name of the library, without path but with extension
+     * @param name the name of the library, without path but with extension
      */
     /*--------------------------------------------------------------------------*/
     public void freeLibrary(String name);</diff>
      <filename>src/lib/com/izforge/izpack/util/NativeLibraryClient.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,24 @@
-//******************************************************************
-// NotEmptyValidator
-// Copyright &#65533; 2003 by Tino Schwarze
-//******************************************************************
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Tino Schwarze
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
+ */
+
 package com.izforge.izpack.util;
 
 import com.izforge.izpack.panels.ProcessingClient;
@@ -10,8 +27,8 @@ import com.izforge.izpack.panels.Validator;
 /**
  * A validator to enforce non-empty fields.
  * 
- * This validator can be used for rule input fields in the UserInputPanel to
- * make sure that the user entered something.
+ * This validator can be used for rule input fields in the UserInputPanel to make sure that the user
+ * entered something.
  * 
  * @author tisc
  */</diff>
      <filename>src/lib/com/izforge/izpack/util/NotEmptyValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,28 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               OSClassHelper.java
- *  Description :        Base class for system dependant
- *                       classes. 
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -59,8 +53,7 @@ public class OSClassHelper
      * not possible, only the stack trace will be printed, no exception will be raised. To determine
      * the state, there is the method good.
      * 
-     * @param className
-     *            full qualified class name of the needed worker
+     * @param className full qualified class name of the needed worker
      */
     public OSClassHelper(String className)
     {</diff>
      <filename>src/lib/com/izforge/izpack/util/OSClassHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2002 Olexij Tkatchenko
- *
- *  File :               OsConstraint.java
- *  Description :        A constraint on the OS to perform some action on.
- *  Author's email :     ot@parcs.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Olexij Tkatchenko
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.util.ArrayList;
@@ -31,11 +28,11 @@ import java.util.List;
 import net.n3.nanoxml.XMLElement;
 
 /**
- * Encapsulates OS constraints specified on creation time and allows to check
- * them against the current OS.
+ * Encapsulates OS constraints specified on creation time and allows to check them against the
+ * current OS.
  * 
- * For example, this is used for &amp;lt;executable&amp;gt;s to check whether the
- * executable is suitable for the current OS.
+ * For example, this is used for &amp;lt;executable&amp;gt;s to check whether the executable is suitable for
+ * the current OS.
  * 
  * @author Olexij Tkatchenko &lt;ot@parcs.de&gt;
  */
@@ -60,19 +57,12 @@ public class OsConstraint implements java.io.Serializable
     private String arch;
 
     /**
-     * Constructs a new instance. Please remember, MacOSX belongs to Unix
-     * family.
+     * Constructs a new instance. Please remember, MacOSX belongs to Unix family.
      * 
-     * @param family
-     *            The OS family (unix, windows or mac).
-     * @param name
-     *            The exact OS name.
-     * @param version
-     *            The exact OS version (check property &lt;code&gt;os.version&lt;/code&gt;
-     *            for values).
-     * @param arch
-     *            The machine architecture (check property &lt;code&gt;os.arch&lt;/code&gt;
-     *            for values).
+     * @param family The OS family (unix, windows or mac).
+     * @param name The exact OS name.
+     * @param version The exact OS version (check property &lt;code&gt;os.version&lt;/code&gt; for values).
+     * @param arch The machine architecture (check property &lt;code&gt;os.arch&lt;/code&gt; for values).
      */
     public OsConstraint(String family, String name, String version, String arch)
     {
@@ -126,8 +116,7 @@ public class OsConstraint implements java.io.Serializable
     /**
      * Extract a list of OS constraints from given element.
      * 
-     * @param element
-     *            parent XMLElement
+     * @param element parent XMLElement
      * @return List of OsConstraint (or empty List if no constraints found)
      */
     static public List getOsList(XMLElement element)
@@ -156,12 +145,10 @@ public class OsConstraint implements java.io.Serializable
     /**
      * Helper function: Scan a list of OsConstraints for a match.
      * 
-     * @param constraint_list
-     *            List of OsConstraint to check
+     * @param constraint_list List of OsConstraint to check
      * 
-     * @return true if one of the OsConstraints matched the current system or
-     *         constraint_list is null (no constraints), false if none of the
-     *         OsConstraints matched
+     * @return true if one of the OsConstraints matched the current system or constraint_list is
+     * null (no constraints), false if none of the OsConstraints matched
      */
     public static boolean oneMatchesCurrentSystem(List constraint_list)
     {
@@ -193,14 +180,11 @@ public class OsConstraint implements java.io.Serializable
     }
 
     /**
-     * Helper function: Check whether the given XMLElement is &quot;suitable&quot; for the
-     * current OS.
+     * Helper function: Check whether the given XMLElement is &quot;suitable&quot; for the current OS.
      * 
-     * @param el
-     *            The XMLElement to check for OS constraints.
+     * @param el The XMLElement to check for OS constraints.
      * 
-     * @return true if there were no OS constraints or the constraints matched
-     *         the current OS.
+     * @return true if there were no OS constraints or the constraints matched the current OS.
      * 
      */
     public static boolean oneMatchesCurrentSystem(XMLElement el)</diff>
      <filename>src/lib/com/izforge/izpack/util/OsConstraint.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,25 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Hani Suleiman
- *
- *  File :               OsVersion.java
- *  Description :        Helper for OS version handling.
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Hani Suleiman
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 /**</diff>
      <filename>src/lib/com/izforge/izpack/util/OsVersion.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,24 +1,22 @@
-/* 
- *  Copyright (C) 2004 Thorsten Kamann
- *
- *  File :               PortProcessor.java
- *  Description :       Arises the port until it is free
- *  Author's email :     thorsten.kamann@planetes.de
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Thorsten Kamman
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -30,8 +28,8 @@ import com.izforge.izpack.panels.ProcessingClient;
 import com.izforge.izpack.panels.Processor;
 
 /**
- * Checks whether the value of the field comtemt is a port and is free. If false
- * the next free port will be searched.
+ * Checks whether the value of the field comtemt is a port and is free. If false the next free port
+ * will be searched.
  * 
  * @author Thorsten Kamann &lt;thorsten.kamann@planetes.de&gt;
  */
@@ -106,8 +104,7 @@ public class PortProcessor implements Processor
     /**
      * Creates the return value
      * 
-     * @param client
-     *            The ProcessingClient
+     * @param client The ProcessingClient
      */
     private String getReturnValue(ProcessingClient client, String host, String port)
     {</diff>
      <filename>src/lib/com/izforge/izpack/util/PortProcessor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,24 +1,22 @@
-/* 
- *  Copyright (C) 2004 Thorsten Kamann
- *
- *  File :               PortValidator.java
- *  Description :        Validates a given port whether it is available or not
- *  Author's email :     thorsten.kamann@planetes.de
- *  Author's Website :   http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+/*
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Thorsten Kamann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -32,8 +30,8 @@ import com.izforge.izpack.panels.Validator;
 /**
  * A validator to check whether a port is available (free) on the localhost.
  * 
- * This validator can be used for rule input fields in the UserInputPanel to
- * make sure that the port the user entered is not in use.
+ * This validator can be used for rule input fields in the UserInputPanel to make sure that the port
+ * the user entered is not in use.
  * 
  * @author thorque
  */</diff>
      <filename>src/lib/com/izforge/izpack/util/PortValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001-2004 Julien Ponge
- *
- *  File :               RegularExpressionValidator.java
- *  Description :        A validator to enforce non-empty fields.
- *  Author's email :     mike.cunneen@screwfix.com
- *  Author's Website :   N/A
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.util.Map;
@@ -35,8 +30,8 @@ import com.izforge.izpack.panels.Validator;
 /**
  * A validator to enforce non-empty fields.
  * 
- * This validator can be used for rule input fields in the UserInputPanel to
- * make sure that the user's entry matches a specified regular expression.
+ * This validator can be used for rule input fields in the UserInputPanel to make sure that the
+ * user's entry matches a specified regular expression.
  * 
  * @author Mike Cunneen &lt;mike dot cunneen at screwfix dot com&gt;
  */</diff>
      <filename>src/lib/com/izforge/izpack/util/RegularExpressionValidator.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2004 Klaus Bartz
- *
- *  File :               SpecHelper.java
- *  Description :        Helper for XML specifications.
- *  Author's email :     klaus.bartz@coi.de
- *  Author's Website :   http://www.coi.de/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2004 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -42,8 +38,7 @@ import com.izforge.izpack.installer.InstallerException;
 import com.izforge.izpack.installer.ResourceManager;
 
 /**
- * This class contains some helper methods to simplify handling of xml
- * specification files.
+ * This class contains some helper methods to simplify handling of xml specification files.
  * 
  * @author Klaus Bartz
  * 
@@ -75,11 +70,9 @@ public class SpecHelper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification given by the file name. The result is stored
-     * in spec.
+     * Reads the XML specification given by the file name. The result is stored in spec.
      * 
-     * @exception Exception
-     *                for any problems in reading the specification
+     * @exception Exception for any problems in reading the specification
      */
     /*--------------------------------------------------------------------------*/
     public void readSpec(String specFileName) throws Exception
@@ -89,11 +82,9 @@ public class SpecHelper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification given by the file name. The result is stored
-     * in spec.
+     * Reads the XML specification given by the file name. The result is stored in spec.
      * 
-     * @exception Exception
-     *                for any problems in reading the specification
+     * @exception Exception for any problems in reading the specification
      */
     /*--------------------------------------------------------------------------*/
     public void readSpec(String specFileName, VariableSubstitutor substitutor) throws Exception
@@ -124,11 +115,9 @@ public class SpecHelper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification given by the input stream. The result is
-     * stored in spec.
+     * Reads the XML specification given by the input stream. The result is stored in spec.
      * 
-     * @exception Exception
-     *                for any problems in reading the specification
+     * @exception Exception for any problems in reading the specification
      */
     /*--------------------------------------------------------------------------*/
     public void readSpec(InputStream input) throws Exception
@@ -138,11 +127,9 @@ public class SpecHelper
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Reads the XML specification given by the input stream. The result is
-     * stored in spec.
+     * Reads the XML specification given by the input stream. The result is stored in spec.
      * 
-     * @exception Exception
-     *                for any problems in reading the specification
+     * @exception Exception for any problems in reading the specification
      */
     /*--------------------------------------------------------------------------*/
     public void readSpec(InputStream input, VariableSubstitutor substitutor) throws Exception
@@ -167,8 +154,7 @@ public class SpecHelper
     /**
      * Gets the stream to a resource.
      * 
-     * @param res
-     *            The resource id.
+     * @param res The resource id.
      * @return The resource value, null if not found
      */
     public InputStream getResource(String res)
@@ -187,8 +173,7 @@ public class SpecHelper
     /**
      * Returns a XML element which represents the pack for the given name.
      * 
-     * @param packDestName
-     *            name of the pack which should be returned
+     * @param packDestName name of the pack which should be returned
      * @return a XML element which represents the pack for the given name
      */
     public XMLElement getPackForName(String packDestName)
@@ -209,13 +194,11 @@ public class SpecHelper
     }
 
     /**
-     * Create parse error with consistent messages. Includes file name and line #
-     * of parent. It is an error for 'parent' to be null.
+     * Create parse error with consistent messages. Includes file name and line # of parent. It is
+     * an error for 'parent' to be null.
      * 
-     * @param parent
-     *            The element in which the error occured
-     * @param message
-     *            Brief message explaining error
+     * @param parent The element in which the error occured
+     * @param message Brief message explaining error
      */
     public void parseError(XMLElement parent, String message) throws InstallerException
     {
@@ -253,14 +236,11 @@ public class SpecHelper
     }
 
     /**
-     * Returns a Vector with all leafs of the tree which is described with
-     * childdef.
+     * Returns a Vector with all leafs of the tree which is described with childdef.
      * 
-     * @param root
-     *            the XMLElement which is the current root for the search
-     * @param childdef
-     *            a String array which describes the tree; the last element
-     *            contains the leaf name
+     * @param root the XMLElement which is the current root for the search
+     * @param childdef a String array which describes the tree; the last element contains the leaf
+     * name
      * @return a Vector of XMLElements of all leafs founded under root
      */
     public Vector getAllSubChildren(XMLElement root, String[] childdef)
@@ -269,16 +249,13 @@ public class SpecHelper
     }
 
     /**
-     * Returns a Vector with all leafs of the tree which is described with
-     * childdef beginning at the given depth.
+     * Returns a Vector with all leafs of the tree which is described with childdef beginning at the
+     * given depth.
      * 
-     * @param root
-     *            the XMLElement which is the current root for the search
-     * @param childdef
-     *            a String array which describes the tree; the last element
-     *            contains the leaf name
-     * @param depth
-     *            depth to start in childdef
+     * @param root the XMLElement which is the current root for the search
+     * @param childdef a String array which describes the tree; the last element contains the leaf
+     * name
+     * @param depth depth to start in childdef
      * @return a Vector of XMLElements of all leafs founded under root
      */
     private Vector getSubChildren(XMLElement root, String[] childdef, int depth)
@@ -306,14 +283,11 @@ public class SpecHelper
     }
 
     /**
-     * Creates an temp file in to the substitutor the substituted contents of
-     * input writes; close it and (re)open it as FileInputStream. The file will
-     * be deleted on exit.
+     * Creates an temp file in to the substitutor the substituted contents of input writes; close it
+     * and (re)open it as FileInputStream. The file will be deleted on exit.
      * 
-     * @param input
-     *            the opened input stream which contents should be substituted
-     * @param substitutor
-     *            substitutor which should substitute the contents of input
+     * @param input the opened input stream which contents should be substituted
+     * @param substitutor substitutor which should substitute the contents of input
      * @return a file input stream of the created temporary file
      * @throws Exception
      */
@@ -336,16 +310,12 @@ public class SpecHelper
     }
 
     /**
-     * Returns whether the value to the given attribute is &quot;yes&quot; or not. If the
-     * attribute does not exist, or the value is not &quot;yes&quot; and not &quot;no&quot;, the
-     * default value is returned.
+     * Returns whether the value to the given attribute is &quot;yes&quot; or not. If the attribute does not
+     * exist, or the value is not &quot;yes&quot; and not &quot;no&quot;, the default value is returned.
      * 
-     * @param element
-     *            the XML element which contains the attribute
-     * @param attribute
-     *            the name of the attribute
-     * @param defaultValue
-     *            the default value
+     * @param element the XML element which contains the attribute
+     * @param attribute the name of the attribute
+     * @param defaultValue the default value
      * @return whether the value to the given attribute is &quot;yes&quot; or not
      */
     public boolean isAttributeYes(XMLElement element, String attribute, boolean defaultValue)
@@ -358,13 +328,11 @@ public class SpecHelper
     }
 
     /**
-     * Returns the attribute for the given attribute name. If no attribute
-     * exist, an InstallerException with a detail message is thrown.
+     * Returns the attribute for the given attribute name. If no attribute exist, an
+     * InstallerException with a detail message is thrown.
      * 
-     * @param element
-     *            XML element which should contain the attribute
-     * @param attrName
-     *            key of the attribute
+     * @param element XML element which should contain the attribute
+     * @param attrName key of the attribute
      * @return the attribute as string
      * @throws Exception
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/SpecHelper.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,30 +1,24 @@
 /*
- * Created on 11.11.2003
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Marc Eppelmann
- *
- * File :               StringTool.java
- * Description :        Extended implemenation of Pythons string.replace and more...
- * Author's email :     marc.eppelmann@gmx.de
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- *
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Marc Eppelmann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.io.File;
@@ -54,8 +48,7 @@ public class StringTool
     /**
      * Test method
      * 
-     * @param args
-     *            Commandline Args
+     * @param args Commandline Args
      */
     public static void main(String[] args)
     {
@@ -66,12 +59,9 @@ public class StringTool
     /**
      * Replaces &lt;b&gt;from&lt;/b&gt; with &lt;b&gt;to&lt;/b&gt; in given String: &lt;b&gt;value&lt;/b&gt;
      * 
-     * @param value
-     *            original String
-     * @param from
-     *            Search Pattern
-     * @param to
-     *            Replace with this
+     * @param value original String
+     * @param from Search Pattern
+     * @param to Replace with this
      * 
      * @return the replaced String
      */
@@ -83,14 +73,10 @@ public class StringTool
     /**
      * Replaces &lt;b&gt;from&lt;/b&gt; with &lt;b&gt;to&lt;/b&gt; in given String: &lt;b&gt;value&lt;/b&gt;
      * 
-     * @param value
-     *            original String
-     * @param from
-     *            Search Pattern
-     * @param to
-     *            Replace with this
-     * @param aCaseSensitiveFlag
-     *            set to true be case sensitive.
+     * @param value original String
+     * @param from Search Pattern
+     * @param to Replace with this
+     * @param aCaseSensitiveFlag set to true be case sensitive.
      * 
      * @return the replaced String
      */
@@ -136,14 +122,12 @@ public class StringTool
     /**
      * Normalizes a Windows or Unix Path.
      * 
-     * Reason: Javas File accepts / or \ for Pathes. Batches or ShellScripts
-     * does it not!
+     * Reason: Javas File accepts / or \ for Pathes. Batches or ShellScripts does it not!
      * 
      * TODO: implement support for MAC &lt; MacOSX
      * 
      * @param destination
-     * @param fileSeparator
-     *            a target-system fileseparator
+     * @param fileSeparator a target-system fileseparator
      * 
      * @return the normalized path
      */
@@ -175,13 +159,10 @@ public class StringTool
     }
 
     /**
-     * Normalizes a mixed Windows/Unix Path. Does Only work for Windows or Unix
-     * Pathes Reason: Java.File accepts / or \ for Pathes. Batches or
-     * ShellScripts does it not!
+     * Normalizes a mixed Windows/Unix Path. Does Only work for Windows or Unix Pathes Reason:
+     * Java.File accepts / or \ for Pathes. Batches or ShellScripts does it not!
      * 
-     * @param destination
-     *            accepted mixed form by java.File like
-     *            &quot;C:/a/mixed\path\accepted/by\Java&quot;
+     * @param destination accepted mixed form by java.File like &quot;C:/a/mixed\path\accepted/by\Java&quot;
      * 
      * @return the normalized Path
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/StringTool.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               SummaryProcessor.java
- *  Description :        A helper which creates a summary of all panels.
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -31,9 +27,9 @@ import com.izforge.izpack.installer.AutomatedInstallData;
 import com.izforge.izpack.installer.IzPanel;
 
 /**
- * A helper class which creates a summary from all panels. This class calls all
- * declared panels for a summary To differ between caption and message, HTML is
- * used to draw caption in bold and indent messaged a little bit.
+ * A helper class which creates a summary from all panels. This class calls all declared panels for
+ * a summary To differ between caption and message, HTML is used to draw caption in bold and indent
+ * messaged a little bit.
  * 
  * @author Klaus Bartz
  * 
@@ -68,12 +64,11 @@ public class SummaryProcessor
     }
 
     /**
-     * Returns a HTML formated string which contains the summary of all panels.
-     * To get the summary, the methods * {@link IzPanel#getSummaryCaption} and
-     * {@link IzPanel#getSummaryBody()} of all panels are called.
+     * Returns a HTML formated string which contains the summary of all panels. To get the summary,
+     * the methods * {@link IzPanel#getSummaryCaption} and {@link IzPanel#getSummaryBody()} of all
+     * panels are called.
      * 
-     * @param idata
-     *            AutomatedInstallData which contains the panel references
+     * @param idata AutomatedInstallData which contains the panel references
      * @return a HTML formated string with the summary of all panels
      */
     public static String getSummary(AutomatedInstallData idata)</diff>
      <filename>src/lib/com/izforge/izpack/util/SummaryProcessor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               TargetFactory.java
- * Description :        provides factory methods and related functionality for OS specific isntantiations
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util;
@@ -33,11 +29,10 @@ import java.util.StringTokenizer;
 
 /*---------------------------------------------------------------------------*/
 /**
- * The &lt;code&gt;TargetFactory&lt;/code&gt; serves as a central mechanism to instantiate
- * OS specific class flavors, provide OS specific file extension types, default
- * install directories and similar functionality. In addition it provides
- * services that are related to OS versions and flavors. For a tutorial on using
- * some of the features in this class see the &lt;A
+ * The &lt;code&gt;TargetFactory&lt;/code&gt; serves as a central mechanism to instantiate OS specific class
+ * flavors, provide OS specific file extension types, default install directories and similar
+ * functionality. In addition it provides services that are related to OS versions and flavors. For
+ * a tutorial on using some of the features in this class see the &lt;A
  * HREF=doc-files/TargetFactory.html&gt;TargetFactory Tutorial&lt;/A&gt;.
  * 
  * @version 0.0.1 / 1/3/2002
@@ -51,13 +46,11 @@ import java.util.StringTokenizer;
  * 
  * OS OS Name Version Architecture Native Report (ver)
  * ----------------------------------------------------------------------------------------------------------
- * Windows 95 Windows 98 Windows 98 4.10 x86 Windows 98 [Version 4.10.1998]
- * Windows-ME Windows Me 4.90 x86 Windows Millennium [Version 4.90.3000]
- * Windows-NT 3.5 Windows-NT 4.0 Windows NT 4.0 x86 Windows NT Version 4.0
- * Windows 2000 Windows 2000 5.0 x86 Microsoft Windows 2000 [Version 5.00.2195]
- * Windows-XP Windows 2000 5.1 x86 Microsoft Windows XP [Version 5.1.2600]
- * Windows-XP Windows XP 5.1 x86 Mac Mac OS-X Linux Linux 2.4.7-10 i386 Linux
- * Linux 2.4.18-4GB i386 Solaris
+ * Windows 95 Windows 98 Windows 98 4.10 x86 Windows 98 [Version 4.10.1998] Windows-ME Windows Me
+ * 4.90 x86 Windows Millennium [Version 4.90.3000] Windows-NT 3.5 Windows-NT 4.0 Windows NT 4.0 x86
+ * Windows NT Version 4.0 Windows 2000 Windows 2000 5.0 x86 Microsoft Windows 2000 [Version
+ * 5.00.2195] Windows-XP Windows 2000 5.1 x86 Microsoft Windows XP [Version 5.1.2600] Windows-XP
+ * Windows XP 5.1 x86 Mac Mac OS-X Linux Linux 2.4.7-10 i386 Linux Linux 2.4.18-4GB i386 Solaris
  * 
  * ---------------------------------------------------------------------------
  */
@@ -85,8 +78,8 @@ public class TargetFactory
     public static final int STANDARD = 0;
 
     /**
-     * Used to identify the Windows-NT class of operating systems in terms of an
-     * OS flavor. It is reported for Windows-NT, 2000 and XP.
+     * Used to identify the Windows-NT class of operating systems in terms of an OS flavor. It is
+     * reported for Windows-NT, 2000 and XP.
      */
     public static final int NT = 1;
 
@@ -102,9 +95,9 @@ public class TargetFactory
     public static final int OTHER = 1;
 
     /**
-     * The extensions used for native libraries on various operating systems.
-     * The string positions correspond to the basic operating system indexes.
-     * The following values are legal to use : &lt;br&gt;
+     * The extensions used for native libraries on various operating systems. The string positions
+     * correspond to the basic operating system indexes. The following values are legal to use :
+     * &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;WINDOWS
@@ -116,10 +109,9 @@ public class TargetFactory
     static final String[] LIBRARY_EXTENSION = { &quot;dll&quot;, &quot;so&quot;, &quot;&quot;, &quot;&quot;};
 
     /**
-     * The os specific class prefixes for classes that implement different
-     * versions for the various operating systems. The string positions
-     * correspond to the basic operating system indexes. The following values
-     * are legal to use : &lt;br&gt;
+     * The os specific class prefixes for classes that implement different versions for the various
+     * operating systems. The string positions correspond to the basic operating system indexes. The
+     * following values are legal to use : &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;WINDOWS
@@ -131,9 +123,9 @@ public class TargetFactory
     static final String[] CLASS_PREFIX = { &quot;Win_&quot;, &quot;Mac_&quot;, &quot;Unix_&quot;, &quot;&quot;};
 
     /**
-     * The os favor specific class prefixes for classes the implement different
-     * versions for various os favors. The string positions correspond to the
-     * flavor indexes. The following values are legal to use : &lt;br&gt;
+     * The os favor specific class prefixes for classes the implement different versions for various
+     * os favors. The string positions correspond to the flavor indexes. The following values are
+     * legal to use : &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;STANDARD
@@ -144,9 +136,8 @@ public class TargetFactory
     static final String[] CLASS_FLAVOR_PREFIX = { &quot;&quot;, &quot;NT_&quot;, &quot;X_&quot;};
 
     /**
-     * The list of processor architecture specific prefixes. The string
-     * positions correspond to the architecture indexes. The following values
-     * are leegal to use : &lt;br&gt;
+     * The list of processor architecture specific prefixes. The string positions correspond to the
+     * architecture indexes. The following values are leegal to use : &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;X86
@@ -159,11 +150,10 @@ public class TargetFactory
     };
 
     /**
-     * The list of default install path fragments. Depending on the operating
-     * system, a path fragment might represent either a part of the default
-     * install path or the entire path to use. For MS-Windows it is always only
-     * a part of the full install path. The string positions correspond to the
-     * basic operating system indexes. The following values are leegal to use :
+     * The list of default install path fragments. Depending on the operating system, a path
+     * fragment might represent either a part of the default install path or the entire path to use.
+     * For MS-Windows it is always only a part of the full install path. The string positions
+     * correspond to the basic operating system indexes. The following values are leegal to use :
      * &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
@@ -178,16 +168,14 @@ public class TargetFactory
             File.separator + &quot;apps&quot; + File.separator};
 
     /**
-     * This is a list of keys to use when looking for resources that define the
-     * default install path to use. The list is organized as two dimensional
-     * array of &lt;code&gt;String&lt;/code&gt;s. To access the array, denote the first
-     * dimension with the operating system index and the second dimension with
-     * the flavor index. For example to access the key for Windows-NT use
-     * &lt;code&gt;INSTALL_PATH_RESOURCE_KEY[WINDOWS][NT]&lt;/code&gt; The array uses a
-     * sparse population, that is, not all array locations actually contain a
-     * key. Only locations for which a real operating system/flavor combination
-     * exists are populated. For example, there is no such thing as
-     * &lt;code&gt;INSTALL_PATH_RESOURCE_KEY[UNIX][X]&lt;/code&gt;
+     * This is a list of keys to use when looking for resources that define the default install path
+     * to use. The list is organized as two dimensional array of &lt;code&gt;String&lt;/code&gt;s. To access
+     * the array, denote the first dimension with the operating system index and the second
+     * dimension with the flavor index. For example to access the key for Windows-NT use
+     * &lt;code&gt;INSTALL_PATH_RESOURCE_KEY[WINDOWS][NT]&lt;/code&gt; The array uses a sparse population,
+     * that is, not all array locations actually contain a key. Only locations for which a real
+     * operating system/flavor combination exists are populated. For example, there is no such thing
+     * as &lt;code&gt;INSTALL_PATH_RESOURCE_KEY[UNIX][X]&lt;/code&gt;
      */
     static final String[][] INSTALL_PATH_RESOURCE_KEY = {
     // Standard NT X
@@ -204,8 +192,8 @@ public class TargetFactory
     // Variable Declarations
     // ------------------------------------------------------------------------
     /**
-     * The reference to the single instance of &lt;code&gt;TargetFactory&lt;/code&gt;.
-     * Used in static methods in place of &lt;code&gt;this&lt;/code&gt;.
+     * The reference to the single instance of &lt;code&gt;TargetFactory&lt;/code&gt;. Used in static methods
+     * in place of &lt;code&gt;this&lt;/code&gt;.
      */
     private static TargetFactory me = null;
 
@@ -229,8 +217,7 @@ public class TargetFactory
     /*
      * $ @design
      * 
-     * Identify the following about the target system: - OS type - architecture -
-     * version
+     * Identify the following about the target system: - OS type - architecture - version
      * 
      * and store this information for later use.
      * --------------------------------------------------------------------------
@@ -307,13 +294,12 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method returns an OS and OS flavor specific instance of the
-     * requested class. &lt;br&gt;
+     * This method returns an OS and OS flavor specific instance of the requested class. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Class Naming Rules&lt;/b&gt;&lt;br&gt;
-     * Class versions must be named with the OS and OS flavor as prefix. The
-     * prefixes are simply concatenated, with the OS prefix first and the flavor
-     * prefix second. Use the following OS specific prefixes:&lt;br&gt;
+     * Class versions must be named with the OS and OS flavor as prefix. The prefixes are simply
+     * concatenated, with the OS prefix first and the flavor prefix second. Use the following OS
+     * specific prefixes:&lt;br&gt;
      * &lt;br&gt;
      * &lt;TABLE BORDER=1&gt;
      * &lt;TR&gt;
@@ -352,39 +338,32 @@ public class TargetFactory
      * &lt;br&gt;
      * &lt;b&gt;Naming Example:&lt;/b&gt; &lt;br&gt;
      * &lt;br&gt;
-     * For the class &lt;code&gt;MyClass&lt;/code&gt;, the specific version for Windows
-     * NT must be in the same package as &lt;code&gt;MyClass&lt;/code&gt; and the name
-     * must be &lt;code&gt;Win_NT_MyClass&lt;/code&gt;. A version that should be
-     * instantiated for any non-NT flavor would be called
-     * &lt;code&gt;Win_MyClass&lt;/code&gt;. This would also be the version instantiated
-     * on Windows NT if the version &lt;code&gt;Win_NT_MyClass&lt;/code&gt; does not
-     * exist. &lt;br&gt;
+     * For the class &lt;code&gt;MyClass&lt;/code&gt;, the specific version for Windows NT must be in the
+     * same package as &lt;code&gt;MyClass&lt;/code&gt; and the name must be &lt;code&gt;Win_NT_MyClass&lt;/code&gt;. A
+     * version that should be instantiated for any non-NT flavor would be called
+     * &lt;code&gt;Win_MyClass&lt;/code&gt;. This would also be the version instantiated on Windows NT if the
+     * version &lt;code&gt;Win_NT_MyClass&lt;/code&gt; does not exist. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;The Loading Process&lt;/b&gt; &lt;br&gt;
      * &lt;br&gt;
-     * The process is completed after the first successful attempt to load a
-     * class. &lt;br&gt;
+     * The process is completed after the first successful attempt to load a class. &lt;br&gt;
      * &lt;ol&gt;
      * &lt;li&gt;load a version that is OS and OS-Flavor specific
      * &lt;li&gt;load a version that is OS specific
      * &lt;li&gt;load the base version (without OS or OS-Flavor prefix)
      * &lt;/ol&gt;
      * &lt;br&gt;
-     * See the &lt;A HREF=doc-files/TargetFactory.html&gt;TargetFactory Tutorial&lt;/A&gt;
-     * for more information.&lt;br&gt;
+     * See the &lt;A HREF=doc-files/TargetFactory.html&gt;TargetFactory Tutorial&lt;/A&gt; for more
+     * information.&lt;br&gt;
      * &lt;br&gt;
      * 
-     * @param name
-     *            the fully qualified name of the class to load without the
-     *            extension.
+     * @param name the fully qualified name of the class to load without the extension.
      * 
-     * @return An instance of the requested class. Note that specific
-     *         initialization that can not be accomplished in the default
-     *         constructor still needs to be performed before the object can be
-     *         used.
+     * @return An instance of the requested class. Note that specific initialization that can not be
+     * accomplished in the default constructor still needs to be performed before the object can be
+     * used.
      * 
-     * @exception Exception
-     *                if all attempts to instantiate class fail
+     * @exception Exception if all attempts to instantiate class fail
      */
     /*--------------------------------------------------------------------------*/
     public Object makeObject(String name) throws Exception
@@ -425,29 +404,26 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns true if the version in the parameter string is higher than the
-     * version of the target os.
+     * Returns true if the version in the parameter string is higher than the version of the target
+     * os.
      * 
-     * @param version
-     *            the version number to compare to
+     * @param version the version number to compare to
      * 
-     * @return &lt;code&gt;false&lt;/code&gt; if the version of the target system is
-     *         higher, otherwise &lt;code&gt;true&lt;/code&gt;
+     * @return &lt;code&gt;false&lt;/code&gt; if the version of the target system is higher, otherwise
+     * &lt;code&gt;true&lt;/code&gt;
      */
     /*--------------------------------------------------------------------------*/
     /*
      * $ @design
      * 
-     * Version numbers are assumed to be constructed as follows: - a list of one
-     * or more numbers, separated by periods as in X.X.X. ... or periods and
-     * dashes as in X.X.X-Y. ... - the numbers follow the decimal number system -
-     * the left most number is of highest significance
+     * Version numbers are assumed to be constructed as follows: - a list of one or more numbers,
+     * separated by periods as in X.X.X. ... or periods and dashes as in X.X.X-Y. ... - the numbers
+     * follow the decimal number system - the left most number is of highest significance
      * 
-     * The process compares each set of numbers, beginning at the most
-     * significant and working down the ranks (this is working left to right).
-     * The process is stopped as soon as the pair of numbers compaired is not
-     * equal. If the numer for the target system is higher, flase is returned,
-     * otherwise true.
+     * The process compares each set of numbers, beginning at the most significant and working down
+     * the ranks (this is working left to right). The process is stopped as soon as the pair of
+     * numbers compaired is not equal. If the numer for the target system is higher, flase is
+     * returned, otherwise true.
      * --------------------------------------------------------------------------
      */
     public boolean versionIsHigher(String version) throws Exception
@@ -482,8 +458,7 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the index number for the target operating system that was
-     * detected.
+     * Returns the index number for the target operating system that was detected.
      * 
      * @return an index number for the OS
      * 
@@ -499,8 +474,8 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the index number for the operating system flavor that was
-     * detected on the target system.
+     * Returns the index number for the operating system flavor that was detected on the target
+     * system.
      * 
      * @return an index for the OS flavor
      * 
@@ -516,8 +491,7 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns an index number that identified the processor architecture of the
-     * target system.
+     * Returns an index number that identified the processor architecture of the target system.
      * 
      * @return an index for the processor architecture
      * 
@@ -532,12 +506,11 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the file extension customarily used on the target OS for
-     * dynamically loadable libraries.
+     * Returns the file extension customarily used on the target OS for dynamically loadable
+     * libraries.
      * 
-     * @return a &lt;code&gt;String&lt;/code&gt; containing the customary library
-     *         extension for the target OS. Note that the string might be empty
-     *         if there no such specific extension for the target OS.
+     * @return a &lt;code&gt;String&lt;/code&gt; containing the customary library extension for the target OS.
+     * Note that the string might be empty if there no such specific extension for the target OS.
      */
     /*--------------------------------------------------------------------------*/
     public String getNativeLibraryExtension()
@@ -547,29 +520,25 @@ public class TargetFactory
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the system dependent default install path. This is typically used
-     * to suggest an istall path to the end user, when performing an
-     * installation. The default install path is assembled form the OS specific
-     * path fragment specified in &lt;code&gt;INSTALL_PATH_FRAGMENT&lt;/code&gt;,
-     * possibly a drive letter and the application name. The user the option to
-     * define resources that define default paths which differ from the path
-     * fragments defined here. The following resource names will be recognized
-     * by this method: &lt;br&gt;
+     * Returns the system dependent default install path. This is typically used to suggest an
+     * istall path to the end user, when performing an installation. The default install path is
+     * assembled form the OS specific path fragment specified in &lt;code&gt;INSTALL_PATH_FRAGMENT&lt;/code&gt;,
+     * possibly a drive letter and the application name. The user the option to define resources
+     * that define default paths which differ from the path fragments defined here. The following
+     * resource names will be recognized by this method: &lt;br&gt;
      * &lt;br&gt;
      * &lt;ul&gt;
      * &lt;li&gt;&lt;code&gt;TargetPanel.dir.windows&lt;/code&gt;
      * &lt;li&gt;&lt;code&gt;TargetPanel.dir.macosx&lt;/code&gt;
      * &lt;li&gt;&lt;code&gt;TargetPanel.dir.unix&lt;/code&gt;
      * &lt;li&gt;&lt;code&gt;TargetPanel.dir&lt;/code&gt; plus the all lower case version of
-     * &lt;code&gt;System.getProperty (&quot;os.name&quot;)&lt;/code&gt;, with all spaces replaced
-     * by an underscore ('_').
+     * &lt;code&gt;System.getProperty (&quot;os.name&quot;)&lt;/code&gt;, with all spaces replaced by an underscore
+     * ('_').
      * &lt;li&gt;&lt;code&gt;TargetPanel.dir&lt;/code&gt;
      * &lt;/ul&gt;
      * 
-     * @param appName
-     *            the name of the application to install. If no specific
-     *            resource has been set, then this name will be appended to the
-     *            OS specific default path fragment.
+     * @param appName the name of the application to install. If no specific resource has been set,
+     * then this name will be appended to the OS specific default path fragment.
      * 
      * @return the default install path for the target system
      */
@@ -577,14 +546,12 @@ public class TargetFactory
     /*
      * $ @design
      * 
-     * First try to read a path string from a resource file. This approach
-     * allows the user to customize the default install path that is suggested
-     * to the end user by IzPack. There are a number of choices for the naming
-     * of this resource, so we need to go through a few steps in order to
-     * exhaust the different possibilities. If this was not successful we use
-     * the default install path that is defined for the operating system we are
-     * running on. This path should be expanded by the application name to form
-     * the full path that to returne.
+     * First try to read a path string from a resource file. This approach allows the user to
+     * customize the default install path that is suggested to the end user by IzPack. There are a
+     * number of choices for the naming of this resource, so we need to go through a few steps in
+     * order to exhaust the different possibilities. If this was not successful we use the default
+     * install path that is defined for the operating system we are running on. This path should be
+     * expanded by the application name to form the full path that to returne.
      * --------------------------------------------------------------------------
      */
     public String getDefaultInstallPath(String appName)
@@ -695,8 +662,8 @@ public class TargetFactory
     }
 
     /**
-     * Gets a prefix alias for the current platform. &quot;Win_&quot; on Windows Systems
-     * &quot;Win_NT_&quot; on WinNT4, 2000, XP Mac on Mac Mac_X on macosx and Unix_
+     * Gets a prefix alias for the current platform. &quot;Win_&quot; on Windows Systems &quot;Win_NT_&quot; on WinNT4,
+     * 2000, XP Mac on Mac Mac_X on macosx and Unix_
      * 
      * @return a prefix alias for the current platform
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/TargetFactory.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2001 Johannes Lehtinen
- *
- *  File :               VariableSubstitutor.java
- *  Description :        Variable substitutor backend.
- *  Author's email :     johannes.lehtinen@iki.fi
- *  Author's Website :   http://www.iki.fi/jle/
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2001 Johannes Lehtinen
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util;
 
 import java.io.IOException;
@@ -39,16 +36,14 @@ import java.util.HashMap;
 import java.util.Map;
 
 /**
- * Substitutes variables occurring in an input stream or a string. This
- * implementation supports a generic variable value mapping and escapes the
- * possible special characters occurring in the substituted values. The file
- * types specifically supported are plain text files (no escaping), Java
- * properties files, and XML files. A valid variable name matches the regular
- * expression [a-zA-Z][a-zA-Z0-9_]* and names are case sensitive. Variables are
- * referenced either by $NAME or ${NAME} (the latter syntax being useful in
- * situations like ${NAME}NOTPARTOFNAME). If a referenced variable is undefined
- * then it is not substituted but the corresponding part of the stream is copied
- * as is.
+ * Substitutes variables occurring in an input stream or a string. This implementation supports a
+ * generic variable value mapping and escapes the possible special characters occurring in the
+ * substituted values. The file types specifically supported are plain text files (no escaping),
+ * Java properties files, and XML files. A valid variable name matches the regular expression
+ * [a-zA-Z][a-zA-Z0-9_]* and names are case sensitive. Variables are referenced either by $NAME or
+ * ${NAME} (the latter syntax being useful in situations like ${NAME}NOTPARTOFNAME). If a referenced
+ * variable is undefined then it is not substituted but the corresponding part of the stream is
+ * copied as is.
  * 
  * @author Johannes Lehtinen &lt;johannes.lehtinen@iki.fi&gt;
  */
@@ -96,12 +91,10 @@ public class VariableSubstitutor implements Serializable
     }
 
     /**
-     * Constructs a new substitutor using the specified variable value mappings.
-     * The environment hashtable is copied by reference. Braces are not required
-     * by default
+     * Constructs a new substitutor using the specified variable value mappings. The environment
+     * hashtable is copied by reference. Braces are not required by default
      * 
-     * @param variables
-     *            the map with variable value mappings
+     * @param variables the map with variable value mappings
      */
     public VariableSubstitutor(Map variables)
     {
@@ -125,16 +118,13 @@ public class VariableSubstitutor implements Serializable
     }
 
     /**
-     * Substitutes the variables found in the specified string. Escapes special
-     * characters using file type specific escaping if necessary.
+     * Substitutes the variables found in the specified string. Escapes special characters using
+     * file type specific escaping if necessary.
      * 
-     * @param str
-     *            the string to check for variables
-     * @param type
-     *            the escaping type or null for plain
+     * @param str the string to check for variables
+     * @param type the escaping type or null for plain
      * @return the string with substituted variables
-     * @exception IllegalArgumentException
-     *                if unknown escaping type specified
+     * @exception IllegalArgumentException if unknown escaping type specified
      */
     public String substitute(String str, String type) throws IllegalArgumentException
     {
@@ -160,23 +150,16 @@ public class VariableSubstitutor implements Serializable
     }
 
     /**
-     * Substitutes the variables found in the specified input stream. Escapes
-     * special characters using file type specific escaping if necessary.
+     * Substitutes the variables found in the specified input stream. Escapes special characters
+     * using file type specific escaping if necessary.
      * 
-     * @param in
-     *            the input stream to read
-     * @param out
-     *            the output stream to write
-     * @param type
-     *            the file type or null for plain
-     * @param encoding
-     *            the character encoding or null for default
-     * @exception IllegalArgumentException
-     *                if unknown file type specified
-     * @exception UnsupportedEncodingException
-     *                if encoding not supported
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param in the input stream to read
+     * @param out the output stream to write
+     * @param type the file type or null for plain
+     * @param encoding the character encoding or null for default
+     * @exception IllegalArgumentException if unknown file type specified
+     * @exception UnsupportedEncodingException if encoding not supported
+     * @exception IOException if an I/O error occurs
      * 
      * @return the number of substitutions made
      */
@@ -214,20 +197,14 @@ public class VariableSubstitutor implements Serializable
     }
 
     /**
-     * Substitutes the variables found in the data read from the specified
-     * reader. Escapes special characters using file type specific escaping if
-     * necessary.
+     * Substitutes the variables found in the data read from the specified reader. Escapes special
+     * characters using file type specific escaping if necessary.
      * 
-     * @param reader
-     *            the reader to read
-     * @param writer
-     *            the writer used to write data out
-     * @param type
-     *            the file type or null for plain
-     * @exception IllegalArgumentException
-     *                if unknown file type specified
-     * @exception IOException
-     *                if an I/O error occurs
+     * @param reader the reader to read
+     * @param writer the writer used to write data out
+     * @param type the file type or null for plain
+     * @exception IllegalArgumentException if unknown file type specified
+     * @exception IOException if an I/O error occurs
      * 
      * @return the number of substitutions made
      */
@@ -323,8 +300,7 @@ public class VariableSubstitutor implements Serializable
     /**
      * Returns the internal constant for the specified file type.
      * 
-     * @param type
-     *            the type name or null for plain
+     * @param type the type name or null for plain
      * @return the file type constant
      */
     protected int getTypeConstant(String type)
@@ -338,13 +314,10 @@ public class VariableSubstitutor implements Serializable
     }
 
     /**
-     * Escapes the special characters in the specified string using file type
-     * specific rules.
+     * Escapes the special characters in the specified string using file type specific rules.
      * 
-     * @param str
-     *            the string to check for special characters
-     * @param type
-     *            the target file type (one of TYPE_xxx)
+     * @param str the string to check for special characters
+     * @param type the target file type (one of TYPE_xxx)
      * @return the string with the special characters properly escaped
      */
     protected String escapeSpecialChars(String str, int type)</diff>
      <filename>src/lib/com/izforge/izpack/util/VariableSubstitutor.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryDefaultHandler.java
- *  Description :        The default handler for registry related
- *                       stuff at installation time (Active only on windows). 
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util.os;
 
 import com.izforge.izpack.util.TargetFactory;
@@ -33,7 +28,7 @@ import com.izforge.izpack.util.TargetFactory;
  * be use only one handler.
  * 
  * @author Klaus Bartz
- *  
+ * 
  */
 public class RegistryDefaultHandler
 {
@@ -69,7 +64,7 @@ public class RegistryDefaultHandler
             initialized = true;
         }
         if (registryHandler != null &amp;&amp; (!registryHandler.good() || !registryHandler.doPerform()))
-                registryHandler = null;
+            registryHandler = null;
 
         return (registryHandler);
     }</diff>
      <filename>src/lib/com/izforge/izpack/util/os/RegistryDefaultHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               RegistryHandler.java
- *  Description :        The handler for registry related
- *                       stuff at installation time (Active only on windows). 
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util.os;
 
 import java.io.File;
@@ -41,9 +36,9 @@ import com.izforge.izpack.util.Debug;
 import com.izforge.izpack.util.OSClassHelper;
 
 /**
- * This class represents a registry handler in a operating system independent way. 
- * OS specific subclasses are used to implement the necessary mapping from
- * this generic API to the classes that reflect the system dependent AIP.
+ * This class represents a registry handler in a operating system independent way. OS specific
+ * subclasses are used to implement the necessary mapping from this generic API to the classes that
+ * reflect the system dependent AIP.
  * 
  * @author Klaus Bartz
  * 
@@ -90,8 +85,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Creates an registry handler which uses an oblect of the given class as worker.
      * 
-     * @param className
-     *            full qualified class name of the class which should be used as worker
+     * @param className full qualified class name of the class which should be used as worker
      */
     public RegistryHandler(String className)
     {
@@ -112,12 +106,9 @@ public class RegistryHandler extends OSClassHelper
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_SZ is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -136,12 +127,9 @@ public class RegistryHandler extends OSClassHelper
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_BINARY is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -155,12 +143,9 @@ public class RegistryHandler extends OSClassHelper
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_DWORD is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -172,12 +157,9 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns the contents of the key/value pair if value exist, else the given default value.
      * 
-     * @param key
-     *            the registry key which should be used
-     * @param value
-     *            the registry value from which the contents should be requested
-     * @param defaultVal
-     *            value to be used if no value exist in the registry
+     * @param key the registry key which should be used
+     * @param value the registry value from which the contents should be requested
+     * @param defaultVal value to be used if no value exist in the registry
      * @return requested value if exist, else the default value
      * @throws NativeLibException
      */
@@ -189,8 +171,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns whether a key exist or not.
      * 
-     * @param key
-     *            key to be evaluated
+     * @param key key to be evaluated
      * @return whether a key exist or not
      * @throws NativeLibException
      */
@@ -202,10 +183,8 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns whether a the given value under the given key exist or not.
      * 
-     * @param key
-     *            key to be used as path for the value
-     * @param value
-     *            value name to be evaluated
+     * @param key key to be used as path for the value
+     * @param value value name to be evaluated
      * @return whether a the given value under the given key exist or not
      * @throws NativeLibException
      */
@@ -217,8 +196,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns all keys which are defined under the given key.
      * 
-     * @param key
-     *            key to be used as path for the sub keys
+     * @param key key to be used as path for the sub keys
      * @return all keys which are defined under the given key
      * @throws NativeLibException
      */
@@ -230,8 +208,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns all value names which are defined under the given key.
      * 
-     * @param key
-     *            key to be used as path for the value names
+     * @param key key to be used as path for the value names
      * @return all value names which are defined under the given key
      * @throws NativeLibException
      */
@@ -243,10 +220,8 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Returns the contents of the key/value pair if value exist, else an exception is raised.
      * 
-     * @param key
-     *            the registry key which should be used
-     * @param value
-     *            the registry value from which the contents should be requested
+     * @param key the registry key which should be used
+     * @param value the registry value from which the contents should be requested
      * @return requested value if exist, else an exception
      * @throws NativeLibException
      */
@@ -258,8 +233,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Creates the given key in the registry.
      * 
-     * @param key
-     *            key to be created
+     * @param key key to be created
      * @throws NativeLibException
      */
     public void createKey(String key) throws NativeLibException
@@ -270,8 +244,7 @@ public class RegistryHandler extends OSClassHelper
     /**
      * Sets the root for the next registry access.
      * 
-     * @param i
-     *            an integer which refers to a HKEY
+     * @param i an integer which refers to a HKEY
      * @throws NativeLibException
      */
     public void setRoot(int i) throws NativeLibException</diff>
      <filename>src/lib/com/izforge/izpack/util/os/RegistryHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,27 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               ShellLink.java
- * Description :        Represents a MS-Windows Shell Link (shortcut)
- *                      This is the Java side of the implementation
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util.os;
@@ -33,15 +28,14 @@ import com.izforge.izpack.util.NativeLibraryClient;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class represents a MS-Windows shell link, aka shortcut. It supports
- * creation, modification and deletion as well as reporting on details of shell
- * links. This class uses a number of native methods to access the MS-Windows
- * registry and load save and manipulate link data. The native code is contained
- * in the file &lt;code&gt;ShellLink.cpp&lt;/code&gt;. &lt;br&gt;
+ * This class represents a MS-Windows shell link, aka shortcut. It supports creation, modification
+ * and deletion as well as reporting on details of shell links. This class uses a number of native
+ * methods to access the MS-Windows registry and load save and manipulate link data. The native code
+ * is contained in the file &lt;code&gt;ShellLink.cpp&lt;/code&gt;. &lt;br&gt;
+ * &lt;br&gt;
+ * For more detailed information on Windows shortcuts read the win32 documentation from Microsoft on
+ * the IShellLink interface. There are also useful articles on this topic on the MIcrosoft website.
  * &lt;br&gt;
- * For more detailed information on Windows shortcuts read the win32
- * documentation from Microsoft on the IShellLink interface. There are also
- * useful articles on this topic on the MIcrosoft website. &lt;br&gt;
  * &lt;br&gt;
  * &lt;A
  * HREF=http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnmgmt/html/msdn_shellnk1.asp&gt;Using
@@ -63,30 +57,28 @@ public class ShellLink implements NativeLibraryClient
     // Constant Definitions
     // ------------------------------------------------------------------------
     /**
-     * Note: each of the subclasses will convert these values as appropriate
-     * before calling the OS's routines. For example Win 98 &amp; up will use
-     * SW_SNOWMINNOACTIVE (7) when passed HIDE (0) or MINIMIZED (2) &lt;br&gt;
+     * Note: each of the subclasses will convert these values as appropriate before calling the OS's
+     * routines. For example Win 98 &amp; up will use SW_SNOWMINNOACTIVE (7) when passed HIDE (0) or
+     * MINIMIZED (2) &lt;br&gt;
      * &lt;br&gt;
      * and this conversion is done in Win_Shortcut.java
      */
     /**
-     * Hide the window when starting. This is particularly useful when launching
-     * from a *.bat file, because no DOS window and no button for the DOS window
-     * on the task bar will show! &lt;br&gt;
+     * Hide the window when starting. This is particularly useful when launching from a *.bat file,
+     * because no DOS window and no button for the DOS window on the task bar will show! &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt; this option is not available through the Windows 98+ UI!
      */
     public static final int HIDE = 0;
 
     /**
-     * Show the window 'normal' when starting. Restores the window properties at
-     * the last shut-down.
+     * Show the window 'normal' when starting. Restores the window properties at the last shut-down.
      */
     public static final int NORMAL = 1;
 
     /**
-     * Show the window minimized when starting. The window will not show but a
-     * corresponding button in the task bar will.
+     * Show the window minimized when starting. The window will not show but a corresponding button
+     * in the task bar will.
      */
     /** newer IShellLink only allows Normal, MinNoActive, Maximized. */
     public static final int MINIMIZED = 2;
@@ -95,8 +87,8 @@ public class ShellLink implements NativeLibraryClient
     public static final int MAXIMIZED = 3;
 
     /**
-     * Show the window minimized when starting. note- for win98 and newer, use
-     * MINNOACTIVE instead of MINIMIZED
+     * Show the window minimized when starting. note- for win98 and newer, use MINNOACTIVE instead
+     * of MINIMIZED
      */
     public static final int MINNOACTIVE = 7;
 
@@ -144,27 +136,26 @@ public class ShellLink implements NativeLibraryClient
     private static final int SL_NOT_INITIALIZED = -3;
 
     /**
-     * Return value from native uninitialization functions if there are no more
-     * interface handles available
+     * Return value from native uninitialization functions if there are no more interface handles
+     * available
      */
     private static final int SL_OUT_OF_HANDLES = -4;
 
     /**
-     * Return value from native uninitialization functions if nohandle for the
-     * IPersist interface could be obtained
+     * Return value from native uninitialization functions if nohandle for the IPersist interface
+     * could be obtained
      */
     private static final int SL_NO_IPERSIST = -5;
 
     /**
-     * Return value from native uninitialization functions if the save operation
-     * fort the link failed
+     * Return value from native uninitialization functions if the save operation fort the link
+     * failed
      */
     private static final int SL_NO_SAVE = -6;
 
     /**
-     * Return value if the function called had to deal with unexpected data
-     * types. This might be returned by registry functions if they receive an
-     * unexpected data type from the registry.
+     * Return value if the function called had to deal with unexpected data types. This might be
+     * returned by registry functions if they receive an unexpected data type from the registry.
      */
     private static final int SL_WRONG_DATA_TYPE = -7;
 
@@ -186,24 +177,22 @@ public class ShellLink implements NativeLibraryClient
     // Variable Declarations
     // ------------------------------------------------------------------------
     /**
-     * This handle links us to a specific native instance. Do not use or modify,
-     * the variable is for exclusive use by the native side.
+     * This handle links us to a specific native instance. Do not use or modify, the variable is for
+     * exclusive use by the native side.
      */
     private int nativeHandle = UNINITIALIZED;
 
     /**
-     * Path to the location where links for the current user are stored. The
-     * exact content depends on the circumstances. It can be set during object
-     * construction or from native code. It will point to the location where
-     * links of the most recently requested type are stored.
+     * Path to the location where links for the current user are stored. The exact content depends
+     * on the circumstances. It can be set during object construction or from native code. It will
+     * point to the location where links of the most recently requested type are stored.
      */
     private String currentUserLinkPath = &quot;&quot;;
 
     /**
-     * Path to the location where links for all users are stored. The exact
-     * content depends on the circumstances. It can be set during object
-     * construction or from native code. It will point to the location where
-     * links of the most recently requested type are stored.
+     * Path to the location where links for all users are stored. The exact content depends on the
+     * circumstances. It can be set during object construction or from native code. It will point to
+     * the location where links of the most recently requested type are stored.
      */
     private String allUsersLinkPath = &quot;&quot;;
 
@@ -212,17 +201,15 @@ public class ShellLink implements NativeLibraryClient
     private String linkName = &quot;&quot;;
 
     /**
-     * this is the fully qualified name of the link on disk. Note that this
-     * variable contains only valid data if the link was created from a disk
-     * file or after a successful save operation. At other times the content is
-     * upredicatable.
+     * this is the fully qualified name of the link on disk. Note that this variable contains only
+     * valid data if the link was created from a disk file or after a successful save operation. At
+     * other times the content is upredicatable.
      */
     private String linkFileName = &quot;&quot;;
 
     /**
-     * Contains the directory where the link file is stored after any save
-     * operation that needs to create that directory. Otherwise it contains
-     * &lt;code&gt;null&lt;/code&gt;.
+     * Contains the directory where the link file is stored after any save operation that needs to
+     * create that directory. Otherwise it contains &lt;code&gt;null&lt;/code&gt;.
      */
     private String linkDirectory = &quot;&quot;;
 
@@ -237,17 +224,18 @@ public class ShellLink implements NativeLibraryClient
     private String workingDirectory = &quot;&quot;;
 
     /**
-     * there seems to be an error in JNI that causes an access violation if a
-     * String that is accessed from native code borders on another type of
-     * variable. This caused problems in &lt;code&gt;set()&lt;/code&gt; For this reason,
-     * the dummy string is placed here. Observed with version:
+     * there seems to be an error in JNI that causes an access violation if a String that is
+     * accessed from native code borders on another type of variable. This caused problems in
+     * &lt;code&gt;set()&lt;/code&gt; For this reason, the dummy string is placed here. Observed with version:
      * 
      * &lt;pre&gt;
      * 
      *  
-     *       java version &amp;quot;1.3.0&amp;quot;
-     *       Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0-C)
-     *       Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode) 
+     *   
+     *        java version &amp;quot;1.3.0&amp;quot;
+     *        Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0-C)
+     *        Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode) 
+     *   
      *  
      * &lt;/pre&gt;
      */
@@ -315,44 +303,37 @@ public class ShellLink implements NativeLibraryClient
     private native int GetFullLinkPath(int usertype, int linktype);
 
     /**
-     * This method is used to free the library at the end of progam execution.
-     * After this call, any instance of this calss will not be usable any more!
+     * This method is used to free the library at the end of progam execution. After this call, any
+     * instance of this calss will not be usable any more!
      */
     private native void FreeLibrary(String name);
 
     /**
-     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; of a specific type.
-     * Initializes currentUserLinkPath and allUsersLinkPath.
+     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; of a specific type. Initializes
+     * currentUserLinkPath and allUsersLinkPath.
      * &lt;p&gt;
      * 
-     * A LinkPath is empty if the combination of linkType and userType, are not
-     * valid.
+     * A LinkPath is empty if the combination of linkType and userType, are not valid.
      * &lt;p&gt;
      * 
-     * Note: If a linkPath is empty, the userType is reset to the other
-     * userType.
+     * Note: If a linkPath is empty, the userType is reset to the other userType.
      * &lt;p&gt;
      * 
      * If both linkPaths are empty, an IllegalArgumentException is thrown.
      * 
-     * @param type
-     *            The type of link desired. The following values can be set:&lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.DESKTOP&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.PROGRAM_MENU&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.START_MENU&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.STARTUP&lt;/code&gt;
-     *            &lt;/ul&gt;
-     * @param name
-     *            The name that the link should display on a menu or on the
-     *            desktop. Do not include a file extension.
-     * 
-     * @exception IllegalArgumentException
-     *                if any of the call parameters are incorrect, or if no
-     *                linkPaths are returned.
-     * @exception Exception
-     *                if problems are encountered in initializing the native
-     *                interface
+     * @param type The type of link desired. The following values can be set:&lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.DESKTOP&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.PROGRAM_MENU&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.START_MENU&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.STARTUP&lt;/code&gt;
+     * &lt;/ul&gt;
+     * @param name The name that the link should display on a menu or on the desktop. Do not include
+     * a file extension.
+     * 
+     * @exception IllegalArgumentException if any of the call parameters are incorrect, or if no
+     * linkPaths are returned.
+     * @exception Exception if problems are encountered in initializing the native interface
      */
     public ShellLink(int type, String name) throws Exception, IllegalArgumentException
     {
@@ -371,21 +352,16 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; from an existing shell
-     * link on disk.
+     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; from an existing shell link on disk.
      * 
-     * @param name
-     *            the fully qualified file name of the link.
-     * @param userType
-     *            the type of user for the link path.
+     * @param name the fully qualified file name of the link.
+     * @param userType the type of user for the link path.
      * 
      * @see #CURRENT_USER
      * @see #ALL_USERS
      * 
-     * @exception IllegalArgumentException
-     *                if the name was null
-     * @exception Exception
-     *                if problems are encountered in reading the file
+     * @exception IllegalArgumentException if the name was null
+     * @exception Exception if problems are encountered in reading the file
      */
     public ShellLink(String name, int userType) throws Exception, IllegalArgumentException
     {
@@ -421,34 +397,25 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; from an existing shell
-     * link on disk.
-     * 
-     * @param type
-     *            The type of link, one of the following values: &lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.DESKTOP&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.PROGRAM_MENU&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.START_MENU&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.STARTUP&lt;/code&gt;
-     *            &lt;/ul&gt;
-     * @param userType
-     *            the type of user for the link path.
-     * @param group
-     *            The program group (directory) of this link. If the link is not
-     *            part of a program group, pass an empty string or null for this
-     *            parameter. (...\\Desktop\\group).
-     * @param name
-     *            The file name of this link. Do not include a file extension.
+     * Creates an instance of &lt;code&gt;ShellLink&lt;/code&gt; from an existing shell link on disk.
+     * 
+     * @param type The type of link, one of the following values: &lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.DESKTOP&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.PROGRAM_MENU&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.START_MENU&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.STARTUP&lt;/code&gt;
+     * &lt;/ul&gt;
+     * @param userType the type of user for the link path.
+     * @param group The program group (directory) of this link. If the link is not part of a program
+     * group, pass an empty string or null for this parameter. (...\\Desktop\\group).
+     * @param name The file name of this link. Do not include a file extension.
      * 
      * @see #CURRENT_USER
      * @see #ALL_USERS
      * 
-     * @exception IllegalArgumentException
-     *                if any of the call parameters are incorrect
-     * @exception Exception
-     *                if problems are encountered in initializing the native
-     *                interface
+     * @exception IllegalArgumentException if any of the call parameters are incorrect
+     * @exception Exception if problems are encountered in initializing the native interface
      */
     public ShellLink(int type, int userType, String group, String name) throws Exception,
             IllegalArgumentException
@@ -483,8 +450,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Initializes COM and gets an instance of the IShellLink interface.
      * 
-     * @exception Exception
-     *                if problems are encountered
+     * @exception Exception if problems are encountered
      */
     private void initialize() throws Exception
     {
@@ -549,18 +515,16 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method is used to free the library at the end of progam execution.
-     * After this call, any instance of this calss will not be usable any more!
-     * &lt;b&gt;&lt;i&gt;&lt;u&gt;Note that this method does NOT return!&lt;/u&gt;&lt;/i&gt;&lt;/b&gt; &lt;br&gt;
+     * This method is used to free the library at the end of progam execution. After this call, any
+     * instance of this calss will not be usable any more! &lt;b&gt;&lt;i&gt;&lt;u&gt;Note that this method does NOT
+     * return!&lt;/u&gt;&lt;/i&gt;&lt;/b&gt; &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;DO NOT CALL THIS METHOD DIRECTLY!&lt;/b&gt;&lt;br&gt;
-     * It is used by the librarian to free the native library before physically
-     * deleting it from its temporary loaction. A call to this method will
-     * freeze the application irrecoverably!
+     * It is used by the librarian to free the native library before physically deleting it from its
+     * temporary loaction. A call to this method will freeze the application irrecoverably!
      * 
-     * @param name
-     *            the name of the library to free. Use only the name and
-     *            extension but not the path.
+     * @param name the name of the library to free. Use only the name and extension but not the
+     * path.
      * 
      * @see com.izforge.izpack.util.NativeLibraryClient#freeLibrary
      */
@@ -581,8 +545,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Constructs and returns the full path for the link file.
      * 
-     * @param userType
-     *            the type of user for the link path.
+     * @param userType the type of user for the link path.
      * 
      * @return the path to use for storing the link
      * 
@@ -618,8 +581,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Constructs and returns the fully qualified name for the link file.
      * 
-     * @param userType
-     *            the type of user for the link path.
+     * @param userType the type of user for the link path.
      * 
      * @return the fully qualified file name to use for storing the link
      * 
@@ -643,8 +605,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets all members on the native side.
      * 
-     * @exception Exception
-     *                if any problem is encountered during this operation.
+     * @exception Exception if any problem is encountered during this operation.
      */
     private void set() throws Exception
     {
@@ -663,8 +624,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Gets all members from the native side.
      * 
-     * @exception Exception
-     *                if any problem is encountered during this operation.
+     * @exception Exception if any problem is encountered during this operation.
      * 
      */
     private void get() throws Exception
@@ -683,8 +643,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the name of the program group this ShellLinbk should be placed in.
      * 
-     * @param groupName
-     *            the name of the program group
+     * @param groupName the name of the program group
      */
     public void setProgramGroup(String groupName)
     {
@@ -693,11 +652,9 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the command line arguments that will be passed to the target when
-     * the link is activated.
+     * Sets the command line arguments that will be passed to the target when the link is activated.
      * 
-     * @param arguments
-     *            the command line arguments
+     * @param arguments the command line arguments
      * 
      * @see #getArguments
      */
@@ -708,11 +665,9 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the description string that is used to identify the link in a menu
-     * or on the desktop.
+     * Sets the description string that is used to identify the link in a menu or on the desktop.
      * 
-     * @param description
-     *            the descriptiojn string
+     * @param description the descriptiojn string
      * 
      * @see #getDescription
      */
@@ -725,10 +680,8 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the hotkey that can be used to activate the link.
      * 
-     * @param hotkey
-     *            a valid Windows virtual key code. Modifiers (e.g. for alt or
-     *            shift key) are added in the upper byte. Note that only the
-     *            lower 16 bits for tis parameter are used.
+     * @param hotkey a valid Windows virtual key code. Modifiers (e.g. for alt or shift key) are
+     * added in the upper byte. Note that only the lower 16 bits for tis parameter are used.
      * 
      * @see #getHotkey
      */
@@ -739,14 +692,11 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the location of the icon that is shown for the shortcut on the
-     * desktop.
+     * Sets the location of the icon that is shown for the shortcut on the desktop.
      * 
-     * @param path
-     *            a fully qualified file name of a file that contains the icon.
-     * @param index
-     *            the index of the specific icon to use in the file. If there is
-     *            only one icon in the file, use an index of 0.
+     * @param path a fully qualified file name of a file that contains the icon.
+     * @param index the index of the specific icon to use in the file. If there is only one icon in
+     * the file, use an index of 0.
      * 
      * @see #getIconLocation
      */
@@ -760,8 +710,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the absolute path to the shortcut target.
      * 
-     * @param path
-     *            the fully qualified file name of the target
+     * @param path the fully qualified file name of the target
      * 
      * @see #getTargetPath
      */
@@ -772,28 +721,25 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the show command that is passed to the target application when the
-     * link is activated. The show command determines if the the window will be
-     * restored to the previous size, minimized, maximized or visible at all.
-     * &lt;br&gt;
+     * Sets the show command that is passed to the target application when the link is activated.
+     * The show command determines if the the window will be restored to the previous size,
+     * minimized, maximized or visible at all. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * Using &lt;code&gt;HIDE&lt;/code&gt; will cause the target window not to show at
-     * all. There is not even a button on the taskbar. This is a very useful
-     * setting when batch files are used to launch a Java application as it will
-     * then appear to run just like any native Windows application.&lt;br&gt;
+     * Using &lt;code&gt;HIDE&lt;/code&gt; will cause the target window not to show at all. There is not even
+     * a button on the taskbar. This is a very useful setting when batch files are used to launch a
+     * Java application as it will then appear to run just like any native Windows application.&lt;br&gt;
      * &lt;b&gt;Note1:&lt;/b&gt;&lt;br&gt;
      * &lt;code&gt;HIDE&lt;/code&gt; doesn't work in Win98 and newer systems.&lt;br&gt;
      * use MINIMIZED (MINNOACTIVE), instead.&lt;br&gt;
      * 
-     * @param show
-     *            the show command. Valid settings are: &lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.HIDE&lt;/code&gt; (deprecated)
-     *            &lt;li&gt;&lt;code&gt;ShellLink.NORMAL&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.MINNOACTIVE&lt;/code&gt;
-     *            &lt;li&gt;&lt;code&gt;ShellLink.MAXIMIZED&lt;/code&gt;
-     *            &lt;/ul&gt;
+     * @param show the show command. Valid settings are: &lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.HIDE&lt;/code&gt; (deprecated)
+     * &lt;li&gt;&lt;code&gt;ShellLink.NORMAL&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.MINNOACTIVE&lt;/code&gt;
+     * &lt;li&gt;&lt;code&gt;ShellLink.MAXIMIZED&lt;/code&gt;
+     * &lt;/ul&gt;
      * 
      * @see #getShowCommand
      */
@@ -809,8 +755,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the working directory for the link target.
      * 
-     * @param dir
-     *            the working directory
+     * @param dir the working directory
      * 
      * @see #getWorkingDirectory
      */
@@ -823,9 +768,8 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the name shown in a menu or on the desktop for the link.
      * 
-     * @param name
-     *            The name that the link should display on a menu or on the
-     *            desktop. Do not include a file extension.
+     * @param name The name that the link should display on a menu or on the desktop. Do not include
+     * a file extension.
      */
     public void setLinkName(String name)
     {
@@ -836,17 +780,15 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the type of link
      * 
-     * @param type
-     *            The type of link desired. The following values can be set:&lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;{@link #DESKTOP}
-     *            &lt;li&gt;{@link #PROGRAM_MENU}
-     *            &lt;li&gt;{@link #START_MENU}
-     *            &lt;li&gt;{@link #STARTUP}
-     *            &lt;/ul&gt;
-     * 
-     * @exception IllegalArgumentException
-     *                if an an invalid type is passed
+     * @param type The type of link desired. The following values can be set:&lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;{@link #DESKTOP}
+     * &lt;li&gt;{@link #PROGRAM_MENU}
+     * &lt;li&gt;{@link #START_MENU}
+     * &lt;li&gt;{@link #STARTUP}
+     * &lt;/ul&gt;
+     * 
+     * @exception IllegalArgumentException if an an invalid type is passed
      */
     public void setLinkType(int type) throws IllegalArgumentException
     {
@@ -880,14 +822,12 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Sets the (ShellLink) user type for link
      * 
-     * @param type
-     *            the type of user for the link.
+     * @param type the type of user for the link.
      * 
      * @see #CURRENT_USER
      * @see #ALL_USERS
      * 
-     * @exception IllegalArgumentException
-     *                if an an invalid type is passed
+     * @exception IllegalArgumentException if an an invalid type is passed
      */
     public void setUserType(int type) throws IllegalArgumentException
     {
@@ -903,8 +843,8 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the (ShellLink) user type for the link. Either
-     * {@link #CURRENT_USER} or {@link #ALL_USERS}
+     * Returns the (ShellLink) user type for the link. Either {@link #CURRENT_USER} or
+     * {@link #ALL_USERS}
      * 
      * @see #setUserType
      */
@@ -915,12 +855,11 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the path where the links of the selected type are stroed. This
-     * method is useful for discovering which program groups already exist.
+     * Returns the path where the links of the selected type are stroed. This method is useful for
+     * discovering which program groups already exist.
      * 
-     * @param userType
-     *            the type of user for the link path. One of {@link
-     *            #CURRENT_USER} or {@link #ALL_USERS}
+     * @param userType the type of user for the link path. One of {@link #CURRENT_USER} or
+     * {@link #ALL_USERS}
      * 
      * @return the path to the type of link set for this instance.
      */
@@ -977,8 +916,8 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the path and file name of the file that contains the icon that is
-     * associated with the link.
+     * Returns the path and file name of the file that contains the icon that is associated with the
+     * link.
      * 
      * @return the path to the icon
      * 
@@ -1017,8 +956,7 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the initial condition of the target window (HIDE, NORMAL,
-     * MINIMIZED, MAXIMIZED).
+     * Returns the initial condition of the target window (HIDE, NORMAL, MINIMIZED, MAXIMIZED).
      * 
      * @return the target show command
      * 
@@ -1044,10 +982,9 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the fully qualified file name under which the link is saved on
-     * disk. &lt;b&gt;Note:&lt;/b&gt; this method returns valid results only if the
-     * instance was created from a file on disk or after a successful save
-     * operation.
+     * Returns the fully qualified file name under which the link is saved on disk. &lt;b&gt;Note:&lt;/b&gt;
+     * this method returns valid results only if the instance was created from a file on disk or
+     * after a successful save operation.
      * 
      * @return the fully qualified file name for the shell link
      */
@@ -1058,16 +995,14 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the path of the directory where the link file is stored, if it
-     * was necessary during the previous save operation to create the directory.
-     * This method returns &lt;code&gt;null&lt;/code&gt; if no save operation was carried
-     * out or there was no need to create a directory during the previous save
-     * operation.
-     * 
-     * @return the path of the directory where the link file is stored or
-     *         &lt;code&gt;null&lt;/code&gt; if no save operation was carried out or there
-     *         was no need to create a directory during the previous save
-     *         operation.
+     * Returns the path of the directory where the link file is stored, if it was necessary during
+     * the previous save operation to create the directory. This method returns &lt;code&gt;null&lt;/code&gt;
+     * if no save operation was carried out or there was no need to create a directory during the
+     * previous save operation.
+     * 
+     * @return the path of the directory where the link file is stored or &lt;code&gt;null&lt;/code&gt; if no
+     * save operation was carried out or there was no need to create a directory during the previous
+     * save operation.
      */
     public String getDirectoryCreated()
     {
@@ -1111,8 +1046,7 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Saves this link.
      * 
-     * @exception Exception
-     *                if problems are encountered
+     * @exception Exception if problems are encountered
      */
     public void save() throws Exception
     {
@@ -1155,13 +1089,10 @@ public class ShellLink implements NativeLibraryClient
     /**
      * Saves this link to any desired location.
      * 
-     * @param name
-     *            the fully qualified file name for the link
+     * @param name the fully qualified file name for the link
      * 
-     * @exception IllegalArgumentException
-     *                if the parameter was null
-     * @exception Exception
-     *                if the save operation could not be carried out
+     * @exception IllegalArgumentException if the parameter was null
+     * @exception Exception if the save operation could not be carried out
      */
     public void save(String name) throws Exception
     {
@@ -1193,9 +1124,9 @@ public class ShellLink implements NativeLibraryClient
 
     /*--------------------------------------------------------------------------*/
     /**
-     * sets currentUsersLinkPath and allUsersLinkPath. If the path is empty,
-     * resets userType to a valid userType for this type of link. If no
-     * linkPaths are valid, an IllegalArgumentException is thrown.
+     * sets currentUsersLinkPath and allUsersLinkPath. If the path is empty, resets userType to a
+     * valid userType for this type of link. If no linkPaths are valid, an IllegalArgumentException
+     * is thrown.
      * 
      * @throws IllegalArgumentException
      */</diff>
      <filename>src/lib/com/izforge/izpack/util/os/ShellLink.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               Shortcut.java
- * Description :        mapping class for the shortcut API
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util.os;
@@ -29,9 +25,9 @@ import java.util.Vector;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This class represents a shortcut in a operating system independent way. OS
- * specific subclasses are used to implement the necessary mapping from this
- * generic API to the classes that reflect the system dependent AIP.
+ * This class represents a shortcut in a operating system independent way. OS specific subclasses
+ * are used to implement the necessary mapping from this generic API to the classes that reflect the
+ * system dependent AIP.
  * 
  * @see com.izforge.izpack.util.TargetFactory
  * 
@@ -56,8 +52,8 @@ public class Shortcut
     public static final int HIDE = 0;
 
     /**
-     * Show the window 'normal' when starting. Usually restores the window
-     * properties at the last shut-down.
+     * Show the window 'normal' when starting. Usually restores the window properties at the last
+     * shut-down.
      */
     public static final int NORMAL = 1;
 
@@ -74,15 +70,11 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method initializes the object. It is used as a replacement for the
-     * contructor because of the way it is instantiated through the
-     * &lt;code&gt;TargetFactory&lt;/code&gt;.
+     * This method initializes the object. It is used as a replacement for the contructor because of
+     * the way it is instantiated through the &lt;code&gt;TargetFactory&lt;/code&gt;.
      * 
-     * @param type
-     *            the type or classification of the program group in which the
-     *            link should exist.
-     * @param name
-     *            the name of the shortcut.
+     * @param type the type or classification of the program group in which the link should exist.
+     * @param name the name of the shortcut.
      */
     public void initialize(int type, String name) throws Exception
     {
@@ -90,10 +82,9 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the base path of the shortcut depending on type. The base path is
-     * the directory that the short cut, (or its program group) will be created
-     * in. For instance, on Windows NT, a shortcut with user-type ALL_USERS, and
-     * link-type DESKTOP might have the base path
+     * Returns the base path of the shortcut depending on type. The base path is the directory that
+     * the short cut, (or its program group) will be created in. For instance, on Windows NT, a
+     * shortcut with user-type ALL_USERS, and link-type DESKTOP might have the base path
      * &quot;C:\Program&amp;nbsp;Files\All&amp;nbsp;Users\Desktop&quot;
      * 
      * @see #setLinkType(int)
@@ -106,17 +97,14 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns a list of currently existing program groups, based on the
-     * requested type. For example if the type is &lt;code&gt;APPLICATIONS&lt;/code&gt;
-     * then all the names of the program groups in the Start Menu\Programs menu
-     * would be returned.
+     * Returns a list of currently existing program groups, based on the requested type. For example
+     * if the type is &lt;code&gt;APPLICATIONS&lt;/code&gt; then all the names of the program groups in the
+     * Start Menu\Programs menu would be returned.
      * 
-     * @param userType
-     *            the type of user for the program group set.
+     * @param userType the type of user for the program group set.
      * 
-     * @return a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt; objects that
-     *         represent the names of the existing program groups. It is
-     *         theoretically possible that this list is empty.
+     * @return a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt; objects that represent the names of
+     * the existing program groups. It is theoretically possible that this list is empty.
      * 
      * @see #APPLICATIONS
      * @see #START_MENU
@@ -128,11 +116,10 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Subclass implementations return the fully qualified file name under which
-     * the link is saved on disk. &lt;b&gt;Note:&lt;/b&gt; this method returns valid
-     * results only if the instance was created from a file on disk or after a
-     * successful save operation. An instance of this class returns an empty
-     * string.
+     * Subclass implementations return the fully qualified file name under which the link is saved
+     * on disk. &lt;b&gt;Note:&lt;/b&gt; this method returns valid results only if the instance was created
+     * from a file on disk or after a successful save operation. An instance of this class returns
+     * an empty string.
      * 
      * @return an empty &lt;code&gt;String&lt;/code&gt;
      */
@@ -143,11 +130,10 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Subclass implementations return the path of the directory where the link
-     * file is stored, if it was necessary during the previous save operation to
-     * create the directory. This method returns &lt;code&gt;null&lt;/code&gt; if no save
-     * operation was carried out or there was no need to create a directory
-     * during the previous save operation.
+     * Subclass implementations return the path of the directory where the link file is stored, if
+     * it was necessary during the previous save operation to create the directory. This method
+     * returns &lt;code&gt;null&lt;/code&gt; if no save operation was carried out or there was no need to
+     * create a directory during the previous save operation.
      * 
      * @return this implementation returns always &lt;code&gt;null&lt;/code&gt;.
      */
@@ -158,11 +144,9 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns &lt;code&gt;true&lt;/code&gt; if the target OS supports current user and
-     * all users.
+     * Returns &lt;code&gt;true&lt;/code&gt; if the target OS supports current user and all users.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the target OS supports current and all
-     *         users.
+     * @return &lt;code&gt;true&lt;/code&gt; if the target OS supports current and all users.
      */
     public boolean multipleUsers()
     {
@@ -171,20 +155,18 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Determines if a specific instance of this class supports the creation of
-     * shortcuts. The use of this method might seem odd, since one would not
-     * implement a flavor of this class that does not actually support the
-     * creation of shortcuts. In other words all flavors will in all probability
-     * return true. The only version that can be expected to return false is
-     * this class itself, since it has no actual implementation for shortcut
-     * creation. This is left to OS specific flavors. If the installer is
-     * launched on a unsupported OS there will be no appropriate flavor of this
-     * class, which will cause this class itself to be instantiated. The client
-     * code can now determine by calling this method if the active OS is
-     * supported and take appropriate action.
-     * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the creation of shortcuts is supported,
-     *         &lt;code&gt;flase&lt;/code&gt; if this is not supported.
+     * Determines if a specific instance of this class supports the creation of shortcuts. The use
+     * of this method might seem odd, since one would not implement a flavor of this class that does
+     * not actually support the creation of shortcuts. In other words all flavors will in all
+     * probability return true. The only version that can be expected to return false is this class
+     * itself, since it has no actual implementation for shortcut creation. This is left to OS
+     * specific flavors. If the installer is launched on a unsupported OS there will be no
+     * appropriate flavor of this class, which will cause this class itself to be instantiated. The
+     * client code can now determine by calling this method if the active OS is supported and take
+     * appropriate action.
+     * 
+     * @return &lt;code&gt;true&lt;/code&gt; if the creation of shortcuts is supported, &lt;code&gt;flase&lt;/code&gt;
+     * if this is not supported.
      */
     public boolean supported()
     {
@@ -193,11 +175,9 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the command line arguments that will be passed to the target when
-     * the link is activated.
+     * Sets the command line arguments that will be passed to the target when the link is activated.
      * 
-     * @param arguments
-     *            the command line arguments
+     * @param arguments the command line arguments
      */
     public void setArguments(String arguments)
     {
@@ -205,11 +185,9 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the description string that is used to identify the link in a menu
-     * or on the desktop.
+     * Sets the description string that is used to identify the link in a menu or on the desktop.
      * 
-     * @param description
-     *            the descriptiojn string
+     * @param description the descriptiojn string
      */
     public void setDescription(String description)
     {
@@ -217,14 +195,11 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the location of the icon that is shown for the shortcut on the
-     * desktop.
+     * Sets the location of the icon that is shown for the shortcut on the desktop.
      * 
-     * @param path
-     *            a fully qualified file name of a file that contains the icon.
-     * @param index
-     *            the index of the specific icon to use in the file. If there is
-     *            only one icon in the file, use an index of 0.
+     * @param path a fully qualified file name of a file that contains the icon.
+     * @param index the index of the specific icon to use in the file. If there is only one icon in
+     * the file, use an index of 0.
      */
     public void setIconLocation(String path, int index)
     {
@@ -245,8 +220,7 @@ public class Shortcut
     /**
      * Sets the name of the program group this ShellLinbk should be placed in.
      * 
-     * @param groupName
-     *            the name of the program group
+     * @param groupName the name of the program group
      */
     public void setProgramGroup(String groupName)
     {
@@ -254,25 +228,22 @@ public class Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the show command that is passed to the target application when the
-     * link is activated. The show command determines if the the window will be
-     * restored to the previous size, minimized, maximized or visible at all.
-     * &lt;br&gt;
+     * Sets the show command that is passed to the target application when the link is activated.
+     * The show command determines if the the window will be restored to the previous size,
+     * minimized, maximized or visible at all. &lt;br&gt;
      * &lt;br&gt;
      * &lt;b&gt;Note:&lt;/b&gt;&lt;br&gt;
-     * Using &lt;code&gt;HIDE&lt;/code&gt; will cause the target window not to show at
-     * all. There is not even a button on the taskbar. This is a very useful
-     * setting when batch files are used to launch a Java application as it will
-     * then appear to run just like any native Windows application.&lt;br&gt;
-     * 
-     * @param show
-     *            the show command. Valid settings are: &lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#HIDE}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#NORMAL}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#MINIMIZED}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#MAXIMIZED}
-     *            &lt;/ul&gt;
+     * Using &lt;code&gt;HIDE&lt;/code&gt; will cause the target window not to show at all. There is not even
+     * a button on the taskbar. This is a very useful setting when batch files are used to launch a
+     * Java application as it will then appear to run just like any native Windows application.&lt;br&gt;
+     * 
+     * @param show the show command. Valid settings are: &lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#HIDE}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#NORMAL}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#MINIMIZED}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#MAXIMIZED}
+     * &lt;/ul&gt;
      * 
      * @see #getShowCommand
      */
@@ -292,8 +263,7 @@ public class Shortcut
     /**
      * Sets the absolute path to the shortcut target.
      * 
-     * @param path
-     *            the fully qualified file name of the target
+     * @param path the fully qualified file name of the target
      */
     public void setTargetPath(String path)
     {
@@ -303,8 +273,7 @@ public class Shortcut
     /**
      * Sets the working directory for the link target.
      * 
-     * @param dir
-     *            the working directory
+     * @param dir the working directory
      */
     public void setWorkingDirectory(String dir)
     {
@@ -325,9 +294,8 @@ public class Shortcut
     /**
      * Sets the name shown in a menu or on the desktop for the link.
      * 
-     * @param name
-     *            The name that the link should display on a menu or on the
-     *            desktop. Do not include a file extension.
+     * @param name The name that the link should display on a menu or on the desktop. Do not include
+     * a file extension.
      */
     public void setLinkName(String name)
     {
@@ -353,17 +321,15 @@ public class Shortcut
     /**
      * Sets the type of link
      * 
-     * @param type
-     *            The type of link desired. The following values can be set:&lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#DESKTOP}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#APPLICATIONS}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_MENU}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_UP}
-     *            &lt;/ul&gt;
+     * @param type The type of link desired. The following values can be set:&lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#DESKTOP}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#APPLICATIONS}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_MENU}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_UP}
+     * &lt;/ul&gt;
      * 
-     * @exception IllegalArgumentException
-     *                if an an invalid type is passed
+     * @exception IllegalArgumentException if an an invalid type is passed
      */
     public void setLinkType(int type) throws IllegalArgumentException
     {
@@ -373,8 +339,7 @@ public class Shortcut
     /**
      * Sets the user type for the link
      * 
-     * @param type
-     *            the type of user for the link.
+     * @param type the type of user for the link.
      * 
      * @see #CURRENT_USER
      * @see #ALL_USERS
@@ -400,8 +365,7 @@ public class Shortcut
     /**
      * Saves this link.
      * 
-     * @exception Exception
-     *                if problems are encountered
+     * @exception Exception if problems are encountered
      */
     public void save() throws Exception
     {</diff>
      <filename>src/lib/com/izforge/izpack/util/os/Shortcut.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,7 +1,25 @@
 /*
- * Created on 10.11.2003 by marc.eppelmann
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
  * 
+ * Copyright 2003 Marc Eppelmann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
+ */
+
+/*
  * This represents a Implementation of the KDE/GNOME DesktopEntry.
  * which is standard from
  * &quot;Desktop Entry Standard&quot;
@@ -29,26 +47,6 @@
  //  X-KDE-SubstituteUID=$false
  //  X-KDE-Username=$
  *
- *
- * * File :             Unix_Shortcut.java
- * Description :        UNix-Implementaion of the shortcut API
- * Author's email :     marc.eppelmann@gmx.de
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- *
  */
 package com.izforge.izpack.util.os;
 
@@ -64,8 +62,7 @@ import com.izforge.izpack.util.StringTool;
 /**
  * @author marc.eppelmann
  * 
- * This is the Implementaion of the RFC-Based Desktop-Link. Used in KDE and
- * GNOME.
+ * This is the Implementaion of the RFC-Based Desktop-Link. Used in KDE and GNOME.
  */
 public class Unix_Shortcut extends Shortcut implements Unix_ShortcutConstants
 {
@@ -180,8 +177,7 @@ public class Unix_Shortcut extends Shortcut implements Unix_ShortcutConstants
     /**
      * Overridden Method
      * 
-     * @see com.izforge.izpack.util.os.Shortcut#initialize(int,
-     *      java.lang.String)
+     * @see com.izforge.izpack.util.os.Shortcut#initialize(int, java.lang.String)
      */
     public void initialize(int aType, String aName) throws Exception
     {
@@ -384,8 +380,7 @@ public class Unix_Shortcut extends Shortcut implements Unix_ShortcutConstants
     /**
      * Sets The Icon Path
      * 
-     * @see com.izforge.izpack.util.os.Shortcut#setIconLocation(java.lang.String,
-     *      int)
+     * @see com.izforge.izpack.util.os.Shortcut#setIconLocation(java.lang.String, int)
      */
     public void setIconLocation(String path, int index)
     {
@@ -503,8 +498,7 @@ public class Unix_Shortcut extends Shortcut implements Unix_ShortcutConstants
     /**
      * Test Method
      * 
-     * @param args
-     *            Commnandline-Args
+     * @param args Commnandline-Args
      */
     public static void main(String[] args)
     {</diff>
      <filename>src/lib/com/izforge/izpack/util/os/Unix_Shortcut.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,24 +1,22 @@
 /*
- * Created on 11.11.2003
- *
- * File :             Unix_ShortcutConstants.java
- * Description :        ConstantsCollection for UnixShortcuts
- * Author's email :     marc.eppelmann@gmx.de
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2003 Marc Eppelmann
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util.os;
@@ -26,11 +24,9 @@ package com.izforge.izpack.util.os;
 /**
  * Unix_ShortcutConstants
  * 
- * This is the Interface which holds only the Constants for
- * Unix_Shortcut-Placeholders.
+ * This is the Interface which holds only the Constants for Unix_Shortcut-Placeholders.
  * 
- * One Dollar marks simple placeholders. Two Dollars marks localized
- * placeholders.
+ * One Dollar marks simple placeholders. Two Dollars marks localized placeholders.
  * 
  * @author marc.eppelmann&amp;#064;reddot.de
  */</diff>
      <filename>src/lib/com/izforge/izpack/util/os/Unix_ShortcutConstants.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,29 +1,24 @@
 /*
- *  $Id$
- *  IzPack
- *  Copyright (C) 2005 Klaus Bartz
- *
- *  File :               Win_RegistryHandler.java
- *  Description :        The OS specific handler for registry related
- *                       stuff at installation time (Active only on windows). 
- *  Author's email :     bartzkau@users.berlios.de
- *  Website :            http://www.izforge.com
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
  * 
- *
- *  This program is free software; you can redistribute it and/or
- *  modify it under the terms of the GNU General Public License
- *  as published by the Free Software Foundation; either version 2
- *  of the License, or any later version.
- *
- *  This program is distributed in the hope that it will be useful,
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- *  GNU General Public License for more details.
- *
- *  You should have received a copy of the GNU General Public License
- *  along with this program; if not, write to the Free Software
- *  Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2005 Klaus Bartz
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
+
 package com.izforge.izpack.util.os;
 
 import java.util.List;
@@ -35,7 +30,7 @@ import com.coi.tools.os.win.NativeLibException;
  * This is the Microsoft Windows specific implementation of &lt;code&gt;RegistryHandler&lt;/code&gt;.
  * 
  * @author bartzkau
- *  
+ * 
  */
 public class Win_RegistryHandler extends RegistryHandler
 {
@@ -56,12 +51,9 @@ public class Win_RegistryHandler extends RegistryHandler
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_SZ is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      * @throws NativeLibException
@@ -77,12 +69,9 @@ public class Win_RegistryHandler extends RegistryHandler
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_MULTI_SZ is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -97,12 +86,9 @@ public class Win_RegistryHandler extends RegistryHandler
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_BINARY is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -117,12 +103,9 @@ public class Win_RegistryHandler extends RegistryHandler
      * not exist, it will be created. The return value is a String array which contains the names of
      * the keys and values which are created. REG_DWORD is used as registry value type.
      * 
-     * @param key
-     *            the registry key which should be used or created
-     * @param value
-     *            the registry value into which the contents should be set
-     * @param contents
-     *            the contents for the value
+     * @param key the registry key which should be used or created
+     * @param value the registry value into which the contents should be set
+     * @param contents the contents for the value
      * @return an string array which contains the names of the keys and values which are created
      * @throws NativeLibException
      */
@@ -135,12 +118,9 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns the contents of the key/value pair if value exist, else the given default value.
      * 
-     * @param key
-     *            the registry key which should be used
-     * @param value
-     *            the registry value from which the contents should be requested
-     * @param defaultVal
-     *            value to be used if no value exist in the registry
+     * @param key the registry key which should be used
+     * @param value the registry value from which the contents should be requested
+     * @param defaultVal value to be used if no value exist in the registry
      * @return requested value if exist, else the default value
      * @throws Exception
      */
@@ -154,8 +134,7 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns whether a key exist or not.
      * 
-     * @param key
-     *            key to be evaluated
+     * @param key key to be evaluated
      * @return whether a key exist or not
      * @throws Exception
      */
@@ -168,10 +147,8 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns whether a the given value under the given key exist or not.
      * 
-     * @param key
-     *            key to be used as path for the value
-     * @param value
-     *            value name to be evaluated
+     * @param key key to be used as path for the value
+     * @param value value name to be evaluated
      * @return whether a the given value under the given key exist or not
      * @throws Exception
      */
@@ -184,8 +161,7 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns all keys which are defined under the given key.
      * 
-     * @param key
-     *            key to be used as path for the sub keys
+     * @param key key to be used as path for the sub keys
      * @return all keys which are defined under the given key
      * @throws Exception
      */
@@ -198,8 +174,7 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns all value names which are defined under the given key.
      * 
-     * @param key
-     *            key to be used as path for the value names
+     * @param key key to be used as path for the value names
      * @return all value names which are defined under the given key
      * @throws Exception
      */
@@ -212,10 +187,8 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Returns the contents of the key/value pair if value exist, else an exception is raised.
      * 
-     * @param key
-     *            the registry key which should be used
-     * @param value
-     *            the registry value from which the contents should be requested
+     * @param key the registry key which should be used
+     * @param value the registry value from which the contents should be requested
      * @return requested value if exist, else an exception
      * @throws Exception
      */
@@ -228,8 +201,7 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Creates the given key in the registry.
      * 
-     * @param key
-     *            key to be created
+     * @param key key to be created
      * @throws Exception
      */
     public void createKey(String key) throws NativeLibException
@@ -241,8 +213,7 @@ public class Win_RegistryHandler extends RegistryHandler
     /**
      * Sets the root for the next registry access.
      * 
-     * @param i
-     *            an integer which refers to a HKEY
+     * @param i an integer which refers to a HKEY
      * @throws Exception
      */
     public void setRoot(int i) throws NativeLibException</diff>
      <filename>src/lib/com/izforge/izpack/util/os/Win_RegistryHandler.java</filename>
    </modified>
    <modified>
      <diff>@@ -1,26 +1,22 @@
 /*
- * $Id$
- * IzPack
- * Copyright (C) 2002 by Elmar Grom
- *
- * File :               Win_Shortcut.java
- * Description :        mapping class for the shortcut API
- * Author's email :     elmar@grom.net
- * Website :            http://www.izforge.com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ * IzPack - Copyright 2001-2005 Julien Ponge, All Rights Reserved.
+ * 
+ * http://www.izforge.com/izpack/
+ * http://developer.berlios.de/projects/izpack/
+ * 
+ * Copyright 2002 Elmar Grom
+ * 
+ * Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
+ * 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 &quot;AS IS&quot; 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.
  */
 
 package com.izforge.izpack.util.os;
@@ -30,8 +26,7 @@ import java.util.Vector;
 
 /*---------------------------------------------------------------------------*/
 /**
- * This is the Microsoft Windows specific implementation of
- * &lt;code&gt;Shortcut&lt;/code&gt;.
+ * This is the Microsoft Windows specific implementation of &lt;code&gt;Shortcut&lt;/code&gt;.
  * 
  * @version 0.0.1 / 3/4/02
  * @author Elmar Grom
@@ -51,21 +46,18 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * This method initializes the object. It is used as a replacement for the
-     * constructor because of the way it is instantiated through the
-     * &lt;code&gt;TargetFactory&lt;/code&gt;.
-     * 
-     * @param type
-     *            the type or classification of the program group in which the
-     *            link should exist. The following types are recognized: &lt;br&gt;
-     *            &lt;ul&gt;
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#APPLICATIONS}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_MENU}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#DESKTOP}
-     *            &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_UP}
-     *            &lt;/ul&gt;
-     * @param name
-     *            the name of the shortcut.
+     * This method initializes the object. It is used as a replacement for the constructor because
+     * of the way it is instantiated through the &lt;code&gt;TargetFactory&lt;/code&gt;.
+     * 
+     * @param type the type or classification of the program group in which the link should exist.
+     * The following types are recognized: &lt;br&gt;
+     * &lt;ul&gt;
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#APPLICATIONS}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_MENU}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#DESKTOP}
+     * &lt;li&gt;{@link com.izforge.izpack.util.os.Shortcut#START_UP}
+     * &lt;/ul&gt;
+     * @param name the name of the shortcut.
      */
     public void initialize(int type, String name) throws Exception
     {
@@ -96,10 +88,9 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the base path of the shortcut depending on type. The base path is
-     * the directory that the short cut, (or its program group) will be created
-     * in. For instance, on Windows NT, a shortcut with user-type ALL_USERS, and
-     * link-type DESKTOP might have the base path
+     * Returns the base path of the shortcut depending on type. The base path is the directory that
+     * the short cut, (or its program group) will be created in. For instance, on Windows NT, a
+     * shortcut with user-type ALL_USERS, and link-type DESKTOP might have the base path
      * &quot;C:\Program&amp;nbsp;Files\All&amp;nbsp;Users\Desktop&quot;
      * 
      * @see #setLinkType(int)
@@ -113,18 +104,14 @@ public class Win_Shortcut extends Shortcut
     }
 
     /**
-     * Returns a list of currently existing program groups, based on the
-     * requested type. For example if the type is &lt;code&gt;APPLICATIONS&lt;/code&gt;
-     * then all the names of the program groups in the Start Menu\Programs menu
-     * would be returned.
+     * Returns a list of currently existing program groups, based on the requested type. For example
+     * if the type is &lt;code&gt;APPLICATIONS&lt;/code&gt; then all the names of the program groups in the
+     * Start Menu\Programs menu would be returned.
      * 
-     * @param userType
-     *            the type of user for the program group set. (as
-     *            Shortcut.utype)
+     * @param userType the type of user for the program group set. (as Shortcut.utype)
      * 
-     * @return a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt; objects that
-     *         represent the names of the existing program groups. It is
-     *         theoretically possible that this list is empty.
+     * @return a &lt;code&gt;Vector&lt;/code&gt; of &lt;code&gt;String&lt;/code&gt; objects that represent the names of
+     * the existing program groups. It is theoretically possible that this list is empty.
      * 
      * @see #APPLICATIONS
      * @see #START_MENU
@@ -181,10 +168,9 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the fully qualified file name under which the link is saved on
-     * disk. &lt;b&gt;Note:&lt;/b&gt; this method returns valid results only if the
-     * instance was created from a file on disk or after a successful save
-     * operation.
+     * Returns the fully qualified file name under which the link is saved on disk. &lt;b&gt;Note:&lt;/b&gt;
+     * this method returns valid results only if the instance was created from a file on disk or
+     * after a successful save operation.
      * 
      * @return the fully qualified file name for the shell link
      */
@@ -195,16 +181,14 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns the path of the directory where the link file is stored, if it
-     * was necessary during the previous save operation to create the directory.
-     * This method returns &lt;code&gt;null&lt;/code&gt; if no save operation was carried
-     * out or there was no need to create a directory during the previous save
-     * operation.
-     * 
-     * @return the path of the directory where the link file is stored or
-     *         &lt;code&gt;null&lt;/code&gt; if no save operation was carried out or there
-     *         was no need to create a directory during the previous save
-     *         operation.
+     * Returns the path of the directory where the link file is stored, if it was necessary during
+     * the previous save operation to create the directory. This method returns &lt;code&gt;null&lt;/code&gt;
+     * if no save operation was carried out or there was no need to create a directory during the
+     * previous save operation.
+     * 
+     * @return the path of the directory where the link file is stored or &lt;code&gt;null&lt;/code&gt; if no
+     * save operation was carried out or there was no need to create a directory during the previous
+     * save operation.
      */
     public String getDirectoryCreated()
     {
@@ -213,11 +197,9 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Returns &lt;code&gt;true&lt;/code&gt; if the target OS supports current user and
-     * all users.
+     * Returns &lt;code&gt;true&lt;/code&gt; if the target OS supports current user and all users.
      * 
-     * @return &lt;code&gt;true&lt;/code&gt; if the target OS supports current and all
-     *         users.
+     * @return &lt;code&gt;true&lt;/code&gt; if the target OS supports current and all users.
      */
     public boolean multipleUsers()
     {
@@ -233,9 +215,8 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Signals that this flavor of
-     * &lt;code&gt;{@link com.izforge.izpack.util.os.Shortcut}&lt;/code&gt; supports the
-     * creation of shortcuts.
+     * Signals that this flavor of &lt;code&gt;{@link com.izforge.izpack.util.os.Shortcut}&lt;/code&gt;
+     * supports the creation of shortcuts.
      * 
      * @return always &lt;code&gt;true&lt;/code&gt;
      */
@@ -246,11 +227,9 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the command line arguments that will be passed to the target when
-     * the link is activated.
+     * Sets the command line arguments that will be passed to the target when the link is activated.
      * 
-     * @param arguments
-     *            the command line arguments
+     * @param arguments the command line arguments
      */
     public void setArguments(String arguments)
     {
@@ -259,11 +238,9 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the description string that is used to identify the link in a menu
-     * or on the desktop.
+     * Sets the description string that is used to identify the link in a menu or on the desktop.
      * 
-     * @param description
-     *            the descriptiojn string
+     * @param description the descriptiojn string
      */
     public void setDescription(String description)
     {
@@ -272,14 +249,11 @@ public class Win_Shortcut extends Shortcut
 
     /*--------------------------------------------------------------------------*/
     /**
-     * Sets the location of the icon that is shown for the shortcut on the
-     * desktop.
-     * 
-     * @param path
-     *            a fully qualified file name of a file that contains the icon.
-     * @param index
-     *            the index of the specific icon to use in the file. If there is
-     *            only one icon in the file, use an index of 0.
+     * Sets the location of the icon that is shown for the shortcut on the desktop.
+     * 
+     * @param path a fully qualified file name of a file that contains the icon.
+     * @param index the index of the specific icon to use in the file. If there is only one icon in
+     * the file, use an index of 0.
      */
