[izpack-devel] mutually exclusive packs

Vladimir Ralev vralev at redhat.com
Wed Nov 15 13:35:46 CET 2006

Bartz, Klaus wrote:
> Hi Vladimir,
> seems so it can resolve the logical and declarative symmetry
> problems we have had.
> First I will write what I understand (or better anticipate)
> about "your" exclude group that we can verify that we speak about 
> the same "thing".
> There are some points added for the behavior if some premises
> are not exist.
> 1. "excludeGroup" is an attribute (ATTLIST) of element "packs"
The element "pack", but I guess you just misspelled it?
> 2. "excludeGroup" can only contain one group.
> 3. This group is a String which is unique for one group of all 
> "excludeGroup"s, but has no relation to other groups like the 
> "installGroups" or the pack name or id.
> 4. A functional  "excludeGroup" can contain at least two members. A member is 
> a pack which has the attribute "excludeGroup" with the given name.
> If only one member is declared, nothing will be done.
> 5. A member in the "excludeGroup" cannot have the attribute "required="yes"".
> If so, an exception should be thrown at compile (packaging) time and no
> installer should be created.
> 6. Only one member in the "excludeGroup" can have the attribute "preselected="yes"".
> Therefore it is a precondition that the attribute "preselected" exist because the
> default is "yes". A contempt will be responsed with an exception and a break
> at compile (packaging) time.
> 7. The handling at install time of this feature will be done in the class
> com.izforge.izpack.panels.PacksModel. There is no new panel to handle something.
> 8. From all members of an "excludeGroup" only one member can be 
> selected. One member of the group is mutually exclusive to each other member.
> If a secound will be selected, the previous will be deselected. If no previos 
> selected exist, only the selection will be performed.
> Unclear:
> What about informations for the installer (user)? For dependens there is an
> extra text field in the PacksPanel. For an additonal text field we have no
> place, I think. What todo? 
How about this? Replace the "The selected package requires the following 
packs to be installed" frame with one named "The selected package has 
the following dependencies", which would contain something like this:

"<b>Requires:</b> pack1, pack2, pack3. <b>Excludes:</b> pack4."
> Is this what you would implement? What is missing? I think a text like this
> can be used as description. Then we have solved the exasperating point docu.
> You confirm? Or can you write it better?
Yes, I may add some other minor rules, but this is the main idea. When I 
implement it, I will review the rules again and will see if something 
needs to be added or changed. Thanks.
> Cheers
> Klaus
Vladimir Ralev, JBoss/RedHat

More information about the izpack-devel mailing list