/** @see org.eclipse.epf.authoring.ui.forms.AssociationFormPage#addItemsToModel2() */
 protected void addItemsToModel2(ArrayList addItems) {
   if (!addItems.isEmpty()) {
     for (Iterator it = addItems.iterator(); it.hasNext(); ) {
       CustomCategory customCategory = (CustomCategory) it.next();
       LibraryManager.getInstance()
           .addToCustomCategory(getActionManager(), customCategory, role, usedCategories);
     }
   }
 }
 /** @see org.eclipse.epf.authoring.ui.forms.AssociationFormPage#removeItemsFromModel2() */
 protected void removeItemsFromModel2(ArrayList rmItems) {
   // Update the model.
   if (!rmItems.isEmpty()) {
     for (Iterator it = rmItems.iterator(); it.hasNext(); ) {
       CustomCategory customCategory = (CustomCategory) it.next();
       LibraryManager.getInstance()
           .removeFromCustomCategory(getActionManager(), customCategory, role, usedCategories);
     }
   }
 }
 /**
  * @see org.eclipse.epf.authoring.ui.forms.AssociationFormPage#removeItemsFromModel1(ArrayList)
  */
 protected void removeItemsFromModel1(ArrayList rmItems) {
   // Update the model.
   if (!rmItems.isEmpty()) {
     for (Iterator it = rmItems.iterator(); it.hasNext(); ) {
       RoleSet roleSet = (RoleSet) it.next();
       // TODO: Test on-the-fly creation of category contributor
       LibraryManager.getInstance()
           .removeFromRoleSet(getActionManager(), roleSet, role, usedCategories);
     }
   }
 }