Added more event and listener interface definitions.
diff --git a/net/api/src/main/java/org/onlab/onos/net/provider/ProviderBroker.java b/net/api/src/main/java/org/onlab/onos/net/provider/ProviderBroker.java
index 9c1b231..a8e294e 100644
--- a/net/api/src/main/java/org/onlab/onos/net/provider/ProviderBroker.java
+++ b/net/api/src/main/java/org/onlab/onos/net/provider/ProviderBroker.java
@@ -3,10 +3,10 @@
/**
* Broker used for registering/unregistering information providers with the core.
*
- * @param <T> type of the information provider
+ * @param <P> type of the information provider
* @param <S> type of the provider service
*/
-public interface ProviderBroker<T extends Provider, S extends ProviderService> {
+public interface ProviderBroker<P extends Provider, S extends ProviderService<P>> {
/**
* Registers the supplied provider with the core.
@@ -14,14 +14,15 @@
* @param provider provider to be registered
* @return provider service for injecting information into core
*/
- S register(T provider);
+ S register(P provider);
/**
* Unregisters the supplied provider. As a result the previously issued
- * provider service will be invalidated.
+ * provider service will be invalidated and any subsequent invocations
+ * of its methods may throw {@link java.lang.IllegalStateException}.
*
* @param provider provider to be unregistered
*/
- void unregister(T provider);
+ void unregister(P provider);
}