private void archetypeMayBeChanged() {
   MavenArchetype selectedArchetype = getSelectedArchetype();
   if (((myBuilder.getArchetype() == null) != (selectedArchetype == null))) {
     myBuilder.setArchetype(selectedArchetype);
     skipUpdateUI = true;
     try {
       if (myStep != null) {
         myStep.fireStateChanged();
       }
     } finally {
       skipUpdateUI = false;
     }
   }
 }
  public void requestUpdate() {

    MavenArchetype selectedArch = getSelectedArchetype();
    if (selectedArch == null) {
      selectedArch = myBuilder.getArchetype();
    }
    if (selectedArch != null) myUseArchetypeCheckBox.setSelected(true);

    if (myArchetypesTree.getRowCount() == 0) updateArchetypesList(selectedArch);
  }
 @Override
 public void updateDataModel() {
   MavenArchetype selectedArchetype = getSelectedArchetype();
   myBuilder.setArchetype(selectedArchetype);
 }