/****************************************************************************
 * Copyright (C) 2012-2015 ecsec GmbH.
 * All rights reserved.
 * Contact: ecsec GmbH (info@ecsec.de)
 *
 * This file is part of the Open eCard App.
 *
 * GNU General Public License Usage
 * This file may be used under the terms of the GNU General Public
 * License version 3.0 as published by the Free Software Foundation
 * and appearing in the file LICENSE.GPL included in the packaging of
 * this file. Please review the following information to ensure the
 * GNU General Public License version 3.0 requirements will be met:
 * http://www.gnu.org/copyleft/gpl.html.
 *
 * Other Usage
 * Alternatively, this file may be used in accordance with the terms
 * and conditions contained in a signed written agreement between
 * you and ecsec GmbH.
 *
 ***************************************************************************/

package org.openecard.common.interfaces;

import java.util.List;
import org.openecard.common.enums.EventType;


/**
 *
 * @author Johannes.Schmoelz
 */
public interface EventManager {

    void initialize();
    void terminate();

    void register(EventCallback callback, EventFilter filter);
    void register(EventCallback callback, EventType type);
    void register(EventCallback callback, List<EventType> types);

    void registerAllEvents(EventCallback callback);

    void unregister(EventCallback callback);

}

@@ -941,16 +941,80 @@
 faces;%0A%0A
+import iso.std.iso_iec._24727.tech.schema.ConnectionHandleType;%0A
 import j
@@ -1079,16 +1079,218 @@
 ;%0A%0A%0A/**%0A
+ * Interface describing an EventManager.%0A * The EventManager provides functions to register and unregister %7B@link EventCallbacks%7D. Furthermore the reset of a%0A * card is may be propagated to the system.%0A
  *%0A * @a
@@ -1303,17 +1303,17 @@
 Johannes
-.
+ 
 Schmoelz
@@ -1358,334 +1358,2268 @@
     
-void initialize();%0A    void terminate();%0A%0A    void register(EventCallback callback, EventFilter filter);%0A    void register(EventCallback callback, EventType type);%0A    void register(EventCallback callback, List%3CEventType%3E types);%0A%0A    void registerAllEvents(EventCallback callback);%0A%0A    void unregister(EventCallback callback
+/**%0A     * Initializes the components of the EventManager.%0A     */%0A    void initialize();%0A%0A    /**%0A     * Terminates all components of the EventManger.%0A     */%0A    void terminate();%0A%0A    /**%0A     * Registers an EventCallback implementation with the given EventFilter implementation.%0A     *%0A     * @param callback %7B@link EventCallback%7D implementation which reacts to an event if the given %7B@code filter%7D defines%0A     * it as valid for the %7B@code callback%7D.%0A     * @param filter %7B@link EventFilter%7D implementation to which filters the events for which the %7B@code callback%7D is%0A     * valid.%0A     */%0A    void register(EventCallback callback, EventFilter filter);%0A%0A    /**%0A     * Registers an EventCallback implementation for a specific event type.%0A     *%0A     * @param callback %7B@link EventCallback%7D implementation which shall be registered for the given %7B@code type%7D.%0A     * @param type The %7B@link EventType%7D for which the %7B@code callback%7D shall be registered.%0A     */%0A    void register(EventCallback callback, EventType type);%0A%0A    /**%0A     * Registers an EventCallback implementation for a list of specific events.%0A     *%0A     * @param callback %7B@link EventCallback%7D implementation which shall be registered for the given list of event types.%0A     * @param types A list of %7B@link EventType%7D objects for which the %7B@code callback%7D shall be registered.%0A     */%0A    void register(EventCallback callback, List%3CEventType%3E types);%0A%0A    /**%0A     * Registers the given EventCallback implementation for all events.%0A     *%0A     * @param callback %7B@link EventCallback%7D implementation which shall be registered for all events.%0A     */%0A    void registerAllEvents(EventCallback callback);%0A%0A    /**%0A     * Unregisters the given EventCallback implementation.%0A     *%0A     * @param callback An %7B@link EventCallback%7D implementation to unregister.%0A     */%0A    void unregister(EventCallback callback);%0A    %0A    /**%0A     * Resets a card given as connection handle.%0A     * %0A     * @param removeHandle %7B@link ConnectionHandleType%7D object representing a card which shall be removed.%0A     * @param insertHandle %7B@link ConnectionHandleType%7D object representing a card which shall be inserted.%0A     */%0A    void resetCard(ConnectionHandleType removeHandle, ConnectionHandleType insertHandle
 );%0A%0A

Add new interface method resetCard and add java doc.