Decouple config and netconf subsystems.
[controller.git] / opendaylight / config / config-api / src / main / java / org / opendaylight / controller / config / api / jmx / notifications / ConfigJMXNotification.java
@@ -6,14 +6,14 @@
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
 
-package org.opendaylight.controller.netconf.api.jmx;
+package org.opendaylight.controller.config.api.jmx.notifications;
 
-import java.util.Set;
 import javax.management.Notification;
 import javax.management.NotificationBroadcasterSupport;
-import org.w3c.dom.Element;
+import javax.management.ObjectName;
+import org.opendaylight.controller.config.api.jmx.ObjectNameUtil;
 
-public abstract class NetconfJMXNotification extends Notification {
+public abstract class ConfigJMXNotification extends Notification {
 
     /**
      *
@@ -22,10 +22,13 @@ public abstract class NetconfJMXNotification extends Notification {
 
     private static long sequenceNumber = 1;
 
-    private final TransactionProviderJMXNotificationType type;
+    public static String TYPE_NAME = "configfNotificationProvider";
+    public static ObjectName OBJECT_NAME = ObjectNameUtil.createONWithDomainAndType(TYPE_NAME);
 
-    protected NetconfJMXNotification(TransactionProviderJMXNotificationType type,
-            NotificationBroadcasterSupport source, String message) {
+    private final NotificationType type;
+
+    protected ConfigJMXNotification(NotificationType type,
+                                    NotificationBroadcasterSupport source, String message) {
         super(type.toString(), source, sequenceNumber++, System.nanoTime(), message);
         this.type = type;
     }
@@ -50,13 +53,12 @@ public abstract class NetconfJMXNotification extends Notification {
      * @param transactionName
      * @param cfgSnapshot
      */
-    public static CommitJMXNotification afterCommit(NotificationBroadcasterSupport source, String message,
-            Element cfgSnapshot, Set<String> capabilities) {
-        return new CommitJMXNotification(source, message, cfgSnapshot, capabilities);
+    public static CommitJMXNotification afterCommit(NotificationBroadcasterSupport source, String messages) {
+        return new CommitJMXNotification(source, messages);
     }
 
-    static enum TransactionProviderJMXNotificationType {
-        commit;
+    enum NotificationType {
+        COMMIT;
     }
 
 }