import org.mxchange.jcontacts.contact.gender.Gender;
import org.mxchange.jcontacts.contact.utils.ContactUtils;
import org.mxchange.jcontacts.events.contact.add.AdminAddedContactEvent;
+import org.mxchange.jcontacts.events.contact.deleted.AdminDeletedContactEvent;
import org.mxchange.jcontacts.events.contact.update.AdminUpdatedContactEvent;
import org.mxchange.jcontacts.exceptions.ContactNotFoundException;
import org.mxchange.jcountry.data.Country;
this.clear();
}
+ @Override
+ public void afterAdminDeletedContactEvent (@Observes final AdminDeletedContactEvent event) {
+ // event should not be null
+ if (null == event) {
+ // Throw NPE
+ throw new NullPointerException("event is null"); //NOI18N
+ } else if (event.getDeletedContact() == null) {
+ // Throw NPE again
+ throw new NullPointerException("event.deletedContact is null"); //NOI18N
+ } else if (event.getDeletedContact().getContactId() == null) {
+ // userId is null
+ throw new NullPointerException("event.deletedContact.contactId is null"); //NOI18N
+ } else if (event.getDeletedContact().getContactId() < 1) {
+ // Not avalid id
+ throw new IllegalArgumentException(MessageFormat.format("userId of user={0} is not valid: {1}", event.getDeletedContact(), event.getDeletedContact().getContactId())); //NOI18N
+ }
+
+ // Remove from both lists
+ this.contactList.remove(event.getDeletedContact());
+ this.selectableContacts.remove(event.getDeletedContact());
+
+ // Clear all data
+ this.clear();
+ }
+
@Override
public void afterAdminLinkedUser (@Observes final AdminLinkedUserEvent event) {
// event should not be null
import org.mxchange.jcontacts.contact.Contact;
import org.mxchange.jcontacts.contact.gender.Gender;
import org.mxchange.jcontacts.events.contact.add.AdminAddedContactEvent;
+import org.mxchange.jcontacts.events.contact.deleted.AdminDeletedContactEvent;
import org.mxchange.jcontacts.events.contact.update.AdminUpdatedContactEvent;
import org.mxchange.jcontacts.exceptions.ContactNotFoundException;
import org.mxchange.jcountry.data.Country;
*/
void afterAdminAddedUserEvent (final AdminAddedUserEvent event);
+ /**
+ * Event observer for deleted contact instance by administrator
+ * <p>
+ * @param event Event being fired
+ */
+ void afterAdminDeletedContactEvent (final AdminDeletedContactEvent event);
+
/**
* Event observer when user confirmed account.
* <p>
* Setter for controller type
* <p>
* @param controllerType Controller type
+ *
* @deprecated Don't use this method.
*/
@Deprecated