Relinquish mastership when device reports "permission" denied event

Also reduces default pipeconf watchdog probe interval
Also fixes NPE on GDP when device is unreachable

Change-Id: Ie2fe1874b0883a037596d9a555a2f8cc030a55a6
diff --git a/core/api/src/main/java/org/onosproject/net/device/DeviceAgentEvent.java b/core/api/src/main/java/org/onosproject/net/device/DeviceAgentEvent.java
index 22eab99..d2520b0 100644
--- a/core/api/src/main/java/org/onosproject/net/device/DeviceAgentEvent.java
+++ b/core/api/src/main/java/org/onosproject/net/device/DeviceAgentEvent.java
@@ -64,6 +64,12 @@
          */
         ROLE_NONE,
 
+        /**
+         * Signifies that the agent cannot perform operations on the device
+         * because its role is not master.
+         */
+        NOT_MASTER,
+
     }
 
     /**
diff --git a/core/net/src/main/java/org/onosproject/net/pi/impl/PiPipeconfWatchdogManager.java b/core/net/src/main/java/org/onosproject/net/pi/impl/PiPipeconfWatchdogManager.java
index 8376295..6b41fd5 100644
--- a/core/net/src/main/java/org/onosproject/net/pi/impl/PiPipeconfWatchdogManager.java
+++ b/core/net/src/main/java/org/onosproject/net/pi/impl/PiPipeconfWatchdogManager.java
@@ -108,7 +108,7 @@
     private ComponentConfigService componentConfigService;
 
     private static final String PROBE_INTERVAL = "probeInterval";
-    private static final int DEFAULT_PROBE_INTERVAL = 30;
+    private static final int DEFAULT_PROBE_INTERVAL = 15;
     @Property(name = PROBE_INTERVAL, intValue = DEFAULT_PROBE_INTERVAL,
             label = "Configure interval in seconds for device pipeconf probing")
     private int probeInterval = DEFAULT_PROBE_INTERVAL;