Refactor PCE and PCEP test adapters to remove redundant classes

Change-Id: I407c3dcd42588c03ba7f5c438d0bf61409d64d69
diff --git a/providers/pcep/topology/BUCK b/providers/pcep/topology/BUCK
index dbb033a..2299326 100644
--- a/providers/pcep/topology/BUCK
+++ b/providers/pcep/topology/BUCK
@@ -13,6 +13,13 @@
     '//lib:netty',
 ]
 
+TEST_DEPS = [
+    '//lib:TEST',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api-tests',
+    '//apps/pcep-api:onos-apps-pcep-api-tests',
+]
+
 osgi_jar_with_tests (
     deps = COMPILE_DEPS,
+    test_deps = TEST_DEPS,
 )
diff --git a/providers/pcep/topology/pom.xml b/providers/pcep/topology/pom.xml
index c7f6e46..583615f 100644
--- a/providers/pcep/topology/pom.xml
+++ b/providers/pcep/topology/pom.xml
@@ -43,5 +43,19 @@
              <artifactId>onos-optical-model</artifactId>
              <version>${project.version}</version>
          </dependency>
+         <dependency>
+             <groupId>org.onosproject</groupId>
+             <artifactId>onos-pcep-server-api</artifactId>
+             <version>${project.version}</version>
+             <classifier>tests</classifier>
+             <scope>test</scope>
+         </dependency>
+         <dependency>
+             <groupId>org.onosproject</groupId>
+             <artifactId>onos-apps-pcep-api</artifactId>
+             <version>${project.version}</version>
+             <classifier>tests</classifier>
+             <scope>test</scope>
+         </dependency>
      </dependencies>
 </project>
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java
deleted file mode 100644
index 5174091..0000000
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientAdapter.java
+++ /dev/null
@@ -1,189 +0,0 @@
-/*
- * Copyright 2016-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.pcep.topology.impl;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.RejectedExecutionException;
-
-import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.server.ClientCapability;
-import org.onosproject.pcep.server.PccId;
-import org.onosproject.pcep.server.LspKey;
-import org.onosproject.pcep.server.PcepClient;
-import org.onosproject.pcep.server.PcepSyncStatus;
-import org.onosproject.pcepio.protocol.PcepFactories;
-import org.onosproject.pcepio.protocol.PcepFactory;
-import org.onosproject.pcepio.protocol.PcepMessage;
-import org.onosproject.pcepio.protocol.PcepStateReport;
-import org.onosproject.pcepio.protocol.PcepVersion;
-
-/**
- * Representation of PCEP client adapter.
- */
-public class PcepClientAdapter implements PcepClient {
-
-    private Channel channel;
-    protected String channelId;
-
-    private boolean connected;
-    private PccId pccId;
-    private ClientCapability capability;
-
-    private PcepVersion pcepVersion;
-    private PcepSyncStatus lspDbSyncStatus;
-    private PcepSyncStatus labelDbSyncStatus;
-    private Map<LspKey, Boolean> lspDelegationInfo = new HashMap<>();
-
-    /**
-     * Initialize instance with specified parameters.
-     *
-     * @param pccId PCC id
-     * @param pcepVersion PCEP message version
-     */
-    public void init(PccId pccId, PcepVersion pcepVersion) {
-        this.pccId = pccId;
-        this.pcepVersion = pcepVersion;
-    }
-
-    @Override
-    public final void disconnectClient() {
-        this.channel.close();
-    }
-
-    @Override
-    public final void sendMessage(PcepMessage m) {
-    }
-
-    @Override
-    public final void sendMessage(List<PcepMessage> msgs) {
-        try {
-            PcepMessage pcepMsg = msgs.get(0);
-            assertNotNull("PCEP MSG should be created.", pcepMsg);
-        } catch (RejectedExecutionException e) {
-            throw e;
-        }
-    }
-
-    @Override
-    public final boolean isConnected() {
-        return this.connected;
-    }
-
-    @Override
-    public String channelId() {
-        return channelId;
-    }
-
-    @Override
-    public final PccId getPccId() {
-        return this.pccId;
-    }
-
-    @Override
-    public final String getStringId() {
-        return this.pccId.toString();
-    }
-
-    @Override
-    public final void handleMessage(PcepMessage m) {
-    }
-
-    @Override
-    public boolean isOptical() {
-        return false;
-    }
-
-    @Override
-    public PcepFactory factory() {
-        return PcepFactories.getFactory(pcepVersion);
-    }
-
-    @Override
-    public void setLspDbSyncStatus(PcepSyncStatus syncStatus) {
-        this.lspDbSyncStatus = syncStatus;
-    }
-
-    @Override
-    public PcepSyncStatus lspDbSyncStatus() {
-        return lspDbSyncStatus;
-    }
-
-    @Override
-    public void setLabelDbSyncStatus(PcepSyncStatus syncStatus) {
-        this.labelDbSyncStatus = syncStatus;
-    }
-
-    @Override
-    public PcepSyncStatus labelDbSyncStatus() {
-        return labelDbSyncStatus;
-    }
-
-    @Override
-    public void setCapability(ClientCapability capability) {
-        this.capability = capability;
-    }
-
-    @Override
-    public ClientCapability capability() {
-        return capability;
-    }
-
-    @Override
-    public void addNode(PcepClient pc) {
-    }
-
-    @Override
-    public void deleteNode(PccId pccId) {
-    }
-
-    @Override
-    public void setLspAndDelegationInfo(LspKey lspKey, boolean dFlag) {
-        lspDelegationInfo.put(lspKey, dFlag);
-    }
-
-    @Override
-    public Boolean delegationInfo(LspKey lspKey) {
-        return lspDelegationInfo.get(lspKey);
-    }
-
-    @Override
-    public void initializeSyncMsgList(PccId pccId) {
-        // TODO Auto-generated method stub
-
-    }
-
-    @Override
-    public List<PcepStateReport> getSyncMsgList(PccId pccId) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public void removeSyncMsgList(PccId pccId) {
-        // TODO Auto-generated method stub
-
-    }
-
-    @Override
-    public void addSyncMsgToList(PccId pccId, PcepStateReport rptMsg) {
-        // TODO Auto-generated method stub
-
-    }
-}
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java
deleted file mode 100644
index 5e3a58e..0000000
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepClientControllerAdapter.java
+++ /dev/null
@@ -1,343 +0,0 @@
-/*
- * Copyright 2016-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.pcep.topology.impl;
-
-
-
-import org.apache.felix.scr.annotations.Activate;
-import org.apache.felix.scr.annotations.Deactivate;
-import org.onlab.packet.IpAddress;
-import org.onosproject.incubator.net.tunnel.DefaultLabelStack;
-import org.onosproject.incubator.net.tunnel.LabelStack;
-import org.onosproject.incubator.net.tunnel.Tunnel;
-import org.onosproject.net.Path;
-import org.onosproject.pcep.server.ClientCapability;
-import org.onosproject.pcep.server.PccId;
-import org.onosproject.pcep.server.PcepClient;
-import org.onosproject.pcep.server.PcepClientController;
-import org.onosproject.pcep.server.PcepClientListener;
-import org.onosproject.pcep.server.PcepEventListener;
-import org.onosproject.pcep.server.PcepNodeListener;
-import org.onosproject.pcep.server.driver.PcepAgent;
-import org.onosproject.pcepio.protocol.PcepError;
-import org.onosproject.pcepio.protocol.PcepErrorInfo;
-import org.onosproject.pcepio.protocol.PcepErrorMsg;
-import org.onosproject.pcepio.protocol.PcepErrorObject;
-import org.onosproject.pcepio.protocol.PcepFactory;
-import org.onosproject.pcepio.protocol.PcepMessage;
-import org.onosproject.pcepio.protocol.PcepVersion;
-import org.onosproject.pcepio.types.PcepValueType;
-
-import com.google.common.collect.Sets;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.List;
-import java.util.Map;
-
-import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_TYPE_19;
-import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_VALUE_5;
-
-/**
- * Representation of PCEP client controller adapter.
- */
-public class PcepClientControllerAdapter implements PcepClientController {
-
-    protected ConcurrentHashMap<PccId, PcepClient> connectedClients =
-            new ConcurrentHashMap<PccId, PcepClient>();
-
-    protected PcepClientAgent agent = new PcepClientAgent();
-    protected Set<PcepClientListener> pcepClientListener = new HashSet<>();
-
-    protected Set<PcepEventListener> pcepEventListener = Sets.newHashSet();
-    public Set<PcepNodeListener> pcepNodeListener = Sets.newHashSet();
-
-    @Activate
-    public void activate() {
-    }
-
-    @Deactivate
-    public void deactivate() {
-    }
-
-    @Override
-    public Collection<PcepClient> getClients() {
-        return connectedClients.values();
-    }
-
-    @Override
-    public PcepClient getClient(PccId pccId) {
-        if (null != connectedClients.get(pccId)) {
-            return connectedClients.get(pccId);
-        }
-        PcepClientAdapter pc = new PcepClientAdapter();
-        if (pccId.ipAddress().equals(IpAddress.valueOf(0xC010103))
-            || pccId.ipAddress().equals(IpAddress.valueOf(0xB6024E22))) {
-            pc.setCapability(new ClientCapability(true, false, false, false, false));
-        } else {
-            pc.setCapability(new ClientCapability(true, true, true, false, false));
-        }
-        pc.init(PccId.pccId(pccId.ipAddress()), PcepVersion.PCEP_1);
-        connectedClients.put(pccId, pc);
-        return pc;
-    }
-
-    @Override
-    public void addListener(PcepClientListener listener) {
-        if (!pcepClientListener.contains(listener)) {
-            this.pcepClientListener.add(listener);
-        }
-    }
-
-    @Override
-    public void addNodeListener(PcepNodeListener listener) {
-        pcepNodeListener.add(listener);
-    }
-
-    @Override
-    public void removeNodeListener(PcepNodeListener listener) {
-        pcepNodeListener.remove(listener);
-    }
-
-    @Override
-    public void removeListener(PcepClientListener listener) {
-        this.pcepClientListener.remove(listener);
-    }
-
-    @Override
-    public void addEventListener(PcepEventListener listener) {
-        pcepEventListener.add(listener);
-    }
-
-    @Override
-    public void removeEventListener(PcepEventListener listener) {
-        pcepEventListener.remove(listener);
-    }
-
-    @Override
-    public void writeMessage(PccId pccId, PcepMessage msg) {
-        this.getClient(pccId).sendMessage(msg);
-    }
-
-    @Override
-    public void processClientMessage(PccId pccId, PcepMessage msg) {
-
-        PcepClient pc = getClient(pccId);
-
-        switch (msg.getType()) {
-        case NONE:
-            break;
-        case OPEN:
-            break;
-        case KEEP_ALIVE:
-            //log.debug("Sending Keep Alive Message  to {" + pccIpAddress.toString() + "}");
-            pc.sendMessage(Collections.singletonList(pc.factory().buildKeepaliveMsg().build()));
-            break;
-        case PATH_COMPUTATION_REQUEST:
-            break;
-        case PATH_COMPUTATION_REPLY:
-            break;
-        case NOTIFICATION:
-            break;
-        case ERROR:
-            break;
-        case CLOSE:
-            //log.debug("Sending Close Message  to { }", pccIpAddress.toString());
-            pc.sendMessage(Collections.singletonList(pc.factory().buildCloseMsg().build()));
-            break;
-        case INITIATE:
-            if (!pc.capability().pcInstantiationCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case REPORT:
-            //Only update the listener if respective capability is supported else send PCEP-ERR msg
-            if (pc.capability().statefulPceCapability()) {
-                for (PcepEventListener l : pcepEventListener) {
-                    l.handleMessage(pccId, msg);
-                }
-            } else {
-                // Send PCEP-ERROR message.
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case UPDATE:
-            if (!pc.capability().statefulPceCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                       ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case LABEL_UPDATE:
-            if (!pc.capability().pceccCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case MAX:
-            break;
-        case END:
-            break;
-        default:
-            break;
-        }
-    }
-
-    @Override
-    public void closeConnectedClients() {
-        PcepClient pc;
-        for (PccId id : connectedClients.keySet()) {
-            pc = getClient(id);
-            pc.disconnectClient();
-        }
-    }
-
-    private PcepErrorMsg getErrMsg(PcepFactory factory, byte errorType, byte errorValue) {
-        LinkedList<PcepError> llPcepErr = new LinkedList<>();
-
-        LinkedList<PcepErrorObject> llerrObj = new LinkedList<>();
-        PcepErrorMsg errMsg;
-
-        PcepErrorObject errObj = factory.buildPcepErrorObject().setErrorValue(errorValue).setErrorType(errorType)
-                .build();
-
-        llerrObj.add(errObj);
-        PcepError pcepErr = factory.buildPcepError().setErrorObjList(llerrObj).build();
-
-        llPcepErr.add(pcepErr);
-
-        PcepErrorInfo errInfo = factory.buildPcepErrorInfo().setPcepErrorList(llPcepErr).build();
-
-        errMsg = factory.buildPcepErrorMsg().setPcepErrorInfo(errInfo).build();
-        return errMsg;
-    }
-
-    /**
-     * Implementation of an Pcep Agent which is responsible for
-     * keeping track of connected clients and the state in which
-     * they are.
-     */
-    public class PcepClientAgent implements PcepAgent {
-
-        @Override
-        public boolean addConnectedClient(PccId pccId, PcepClient pc) {
-
-            if (connectedClients.get(pccId) != null) {
-                return false;
-            } else {
-                connectedClients.put(pccId, pc);
-                for (PcepClientListener l : pcepClientListener) {
-                    l.clientConnected(pccId);
-                }
-                return true;
-            }
-        }
-
-        @Override
-        public boolean validActivation(PccId pccId) {
-            if (connectedClients.get(pccId) == null) {
-                //log.error("Trying to activate client but is not in "
-                //        + "connected switches: pccIp {}. Aborting ..", pccIpAddress.toString());
-                return false;
-            }
-
-            return true;
-        }
-
-        @Override
-        public void removeConnectedClient(PccId pccId) {
-            connectedClients.remove(pccId);
-            for (PcepClientListener l : pcepClientListener) {
-                //log.warn("removal for {}", pccIpAddress.toString());
-                l.clientDisconnected(pccId);
-            }
-        }
-
-        @Override
-        public void processPcepMessage(PccId pccId, PcepMessage m) {
-            processClientMessage(pccId, m);
-        }
-
-        @Override
-        public void addNode(PcepClient pc) {
-            for (PcepNodeListener l : pcepNodeListener) {
-                l.addDevicePcepConfig(pc);
-            }
-        }
-
-        @Override
-        public void deleteNode(PccId pccId) {
-            for (PcepNodeListener l : pcepNodeListener) {
-                l.deleteDevicePcepConfig(pccId);
-            }
-        }
-
-        @Override
-        public boolean analyzeSyncMsgList(PccId pccId) {
-            // TODO Auto-generated method stub
-            return false;
-        }
-    }
-
-    @Override
-    public LabelStack computeLabelStack(Path path) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public LinkedList<PcepValueType> createPcepLabelStack(DefaultLabelStack labelStack, Path path) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public Map<String, List<String>> getPcepExceptions() {
-        return null;
-    }
-
-    @Override
-    public Map<Integer, Integer> getPcepErrorMsg() {
-        return null;
-    }
-
-    @Override
-    public Map<String, String> getPcepSessionMap() {
-        return null;
-    }
-
-    @Override
-    public Map<String, Byte> getPcepSessionIdMap() {
-        return null;
-    }
-
-    @Override
-    public void peerErrorMsg(String peerId, Integer errorType, Integer errValue) {
-        return;
-    }
-
-
-    @Override
-    public boolean allocateLocalLabel(Tunnel tunnel) {
-        // TODO Auto-generated method stub
-        return false;
-    }
-}
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepControllerAdapter.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepControllerAdapter.java
deleted file mode 100644
index 086bbf1..0000000
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepControllerAdapter.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * Copyright 2016-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.onosproject.provider.pcep.topology.impl;
-
-import org.onosproject.net.DeviceId;
-import org.onosproject.pcep.api.PcepController;
-import org.onosproject.pcep.api.PcepDpid;
-import org.onosproject.pcep.api.PcepLinkListener;
-import org.onosproject.pcep.api.PcepSwitch;
-import org.onosproject.pcep.api.PcepSwitchListener;
-import org.onosproject.pcep.api.PcepTunnel;
-import org.onosproject.pcep.api.PcepTunnelListener;
-
-/**
- * Implementation of PCEP controller.
- */
-public class PcepControllerAdapter implements PcepController {
-
-    @Override
-    public Iterable<PcepSwitch> getSwitches() {
-        return null;
-    }
-
-    @Override
-    public PcepSwitch getSwitch(PcepDpid did) {
-        return null;
-    }
-
-    @Override
-    public void addListener(PcepSwitchListener listener) {
-
-    }
-
-    @Override
-    public void removeListener(PcepSwitchListener listener) {
-    }
-
-    @Override
-    public void addLinkListener(PcepLinkListener listener) {
-    }
-
-    @Override
-    public void removeLinkListener(PcepLinkListener listener) {
-    }
-
-    @Override
-    public void addTunnelListener(PcepTunnelListener listener) {
-    }
-
-    @Override
-    public void removeTunnelListener(PcepTunnelListener listener) {
-    }
-
-    @Override
-    public PcepTunnel applyTunnel(DeviceId srcDid, DeviceId dstDid, long srcPort, long dstPort, long bandwidth,
-                                  String name) {
-        return null;
-    }
-
-    @Override
-    public Boolean deleteTunnel(String id) {
-        return null;
-    }
-
-    @Override
-    public Boolean updateTunnelBandwidth(String id, long bandwidth) {
-        return null;
-    }
-
-    @Override
-    public void getTunnelStatistics(String pcepTunnelId) {
-
-    }
-}
diff --git a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
index 991122d..84231e0 100644
--- a/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
+++ b/providers/pcep/topology/src/test/java/org/onosproject/provider/pcep/topology/impl/PcepTopologyProviderTest.java
@@ -12,15 +12,10 @@
  */
 package org.onosproject.provider.pcep.topology.impl;
 
-import static org.onosproject.net.Link.State.ACTIVE;
-
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
+import com.fasterxml.jackson.databind.JsonNode;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.JsonNodeFactory;
+import com.fasterxml.jackson.databind.node.ObjectNode;
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -50,18 +45,24 @@
 import org.onosproject.net.link.LinkProviderService;
 import org.onosproject.net.provider.ProviderId;
 import org.onosproject.pcep.api.DeviceCapability;
+import org.onosproject.pcep.api.PcepControllerAdapter;
 import org.onosproject.pcep.server.ClientCapability;
 import org.onosproject.pcep.server.PccId;
 import org.onosproject.pcep.server.PcepClient;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
 import org.onosproject.pcep.server.PcepNodeListener;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.node.JsonNodeFactory;
-import com.fasterxml.jackson.databind.node.ObjectNode;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.core.Is.is;
 import static org.hamcrest.core.IsNull.nullValue;
+import static org.onosproject.net.Link.State.ACTIVE;
 /**
  * Test for PCEP topology provider.
  */
diff --git a/providers/pcep/tunnel/BUCK b/providers/pcep/tunnel/BUCK
index c230490..94bbc5e 100644
--- a/providers/pcep/tunnel/BUCK
+++ b/providers/pcep/tunnel/BUCK
@@ -14,6 +14,9 @@
     '//lib:TEST_ADAPTERS',
     '//lib:netty',
     '//lib:netty-transport',
+    '//protocols/pcep/server/api:onos-protocols-pcep-server-api-tests',
+    '//apps/pcep-api:onos-apps-pcep-api-tests',
+    '//incubator/api:onos-incubator-api-tests',
 ]
 
 osgi_jar_with_tests (
diff --git a/providers/pcep/tunnel/pom.xml b/providers/pcep/tunnel/pom.xml
index ce2871d..46f98ec 100644
--- a/providers/pcep/tunnel/pom.xml
+++ b/providers/pcep/tunnel/pom.xml
@@ -53,5 +53,26 @@
             <artifactId>onos-pcep-server-impl</artifactId>
             <version>${project.version} </version>
         </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-pcep-server-api</artifactId>
+            <version>${project.version}</version>
+            <scope>test</scope>
+            <classifier>tests</classifier>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-apps-pcep-api</artifactId>
+            <version>${project.version}</version>
+            <classifier>tests</classifier>
+            <scope>test</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onosproject</groupId>
+            <artifactId>onos-incubator-api</artifactId>
+            <classifier>tests</classifier>
+            <version>${project.version}</version>
+            <scope>test</scope>
+        </dependency>
     </dependencies>
 </project>
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java
deleted file mode 100644
index e96a2e2..0000000
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientAdapter.java
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * Copyright 2015-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.pcep.tunnel.impl;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.RejectedExecutionException;
-
-import org.jboss.netty.channel.Channel;
-import org.onosproject.pcep.server.ClientCapability;
-import org.onosproject.pcep.server.LspKey;
-import org.onosproject.pcep.server.PccId;
-import org.onosproject.pcep.server.PcepClient;
-import org.onosproject.pcep.server.PcepSyncStatus;
-import org.onosproject.pcepio.protocol.PcepFactories;
-import org.onosproject.pcepio.protocol.PcepFactory;
-import org.onosproject.pcepio.protocol.PcepMessage;
-import org.onosproject.pcepio.protocol.PcepStateReport;
-import org.onosproject.pcepio.protocol.PcepVersion;
-
-/**
- * Representation of PCEP client adapter.
- */
-public class PcepClientAdapter implements PcepClient {
-
-    private Channel channel;
-    protected String channelId;
-
-    private boolean connected;
-    private PccId pccId;
-    private ClientCapability capability;
-
-    private PcepVersion pcepVersion;
-    private PcepSyncStatus lspDbSyncStatus;
-    private PcepSyncStatus labelDbSyncStatus;
-    private Map<LspKey, Boolean> lspDelegationInfo = new HashMap<>();
-    private Map<PccId, List<PcepStateReport>> sycRptCache = new HashMap<>();
-
-    /**
-     * Initialize instance with specified parameters.
-     *
-     * @param pccId PCC id
-     * @param pcepVersion PCEP message version
-     */
-    public void init(PccId pccId, PcepVersion pcepVersion) {
-        this.pccId = pccId;
-        this.pcepVersion = pcepVersion;
-    }
-
-    @Override
-    public final void disconnectClient() {
-        this.channel.close();
-    }
-
-    @Override
-    public final void sendMessage(PcepMessage m) {
-    }
-
-    @Override
-    public final void sendMessage(List<PcepMessage> msgs) {
-        try {
-            PcepMessage pcepMsg = msgs.get(0);
-            assertNotNull("PCEP MSG should be created.", pcepMsg);
-        } catch (RejectedExecutionException e) {
-            throw e;
-        }
-    }
-
-    @Override
-    public final boolean isConnected() {
-        return this.connected;
-    }
-
-    @Override
-    public String channelId() {
-        return channelId;
-    }
-
-    @Override
-    public final PccId getPccId() {
-        return this.pccId;
-    }
-
-    @Override
-    public final String getStringId() {
-        return this.pccId.toString();
-    }
-
-    @Override
-    public final void handleMessage(PcepMessage m) {
-    }
-
-    @Override
-    public boolean isOptical() {
-        return false;
-    }
-
-    @Override
-    public PcepFactory factory() {
-        return PcepFactories.getFactory(pcepVersion);
-    }
-
-    @Override
-    public void setLspDbSyncStatus(PcepSyncStatus syncStatus) {
-        this.lspDbSyncStatus = syncStatus;
-    }
-
-    @Override
-    public PcepSyncStatus lspDbSyncStatus() {
-        return lspDbSyncStatus;
-    }
-
-    @Override
-    public void setLabelDbSyncStatus(PcepSyncStatus syncStatus) {
-        this.labelDbSyncStatus = syncStatus;
-    }
-
-    @Override
-    public PcepSyncStatus labelDbSyncStatus() {
-        return labelDbSyncStatus;
-    }
-
-    @Override
-    public void setCapability(ClientCapability capability) {
-        this.capability = capability;
-    }
-
-    @Override
-    public ClientCapability capability() {
-        return capability;
-    }
-
-    @Override
-    public void addNode(PcepClient pc) {
-    }
-
-    @Override
-    public void deleteNode(PccId pccId) {
-    }
-
-    @Override
-    public void setLspAndDelegationInfo(LspKey lspKey, boolean dFlag) {
-        lspDelegationInfo.put(lspKey, dFlag);
-    }
-
-    @Override
-    public Boolean delegationInfo(LspKey lspKey) {
-        return lspDelegationInfo.get(lspKey);
-    }
-
-    @Override
-    public void initializeSyncMsgList(PccId pccId) {
-        List<PcepStateReport> rptMsgList = new LinkedList<>();
-        sycRptCache.put(pccId, rptMsgList);
-    }
-
-    @Override
-    public List<PcepStateReport> getSyncMsgList(PccId pccId) {
-        return sycRptCache.get(pccId);
-    }
-
-    @Override
-    public void removeSyncMsgList(PccId pccId) {
-        sycRptCache.remove(pccId);
-    }
-
-    @Override
-    public void addSyncMsgToList(PccId pccId, PcepStateReport rptMsg) {
-        List<PcepStateReport> rptMsgList = sycRptCache.get(pccId);
-        rptMsgList.add(rptMsg);
-        sycRptCache.put(pccId, rptMsgList);
-    }
-}
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java
deleted file mode 100644
index 6d582a0..0000000
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepClientControllerAdapter.java
+++ /dev/null
@@ -1,333 +0,0 @@
-/*
- * Copyright 2015-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.pcep.tunnel.impl;
-
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.felix.scr.annotations.Activate;
-import org.apache.felix.scr.annotations.Deactivate;
-import org.onosproject.incubator.net.tunnel.DefaultLabelStack;
-import org.onosproject.incubator.net.tunnel.LabelStack;
-import org.onosproject.incubator.net.tunnel.Tunnel;
-import org.onosproject.net.Path;
-import org.onosproject.pcep.server.PccId;
-import org.onosproject.pcep.server.PcepClient;
-import org.onosproject.pcep.server.PcepClientController;
-import org.onosproject.pcep.server.PcepClientListener;
-import org.onosproject.pcep.server.PcepEventListener;
-import org.onosproject.pcep.server.PcepNodeListener;
-import org.onosproject.pcep.server.driver.PcepAgent;
-import org.onosproject.pcepio.protocol.PcepError;
-import org.onosproject.pcepio.protocol.PcepErrorInfo;
-import org.onosproject.pcepio.protocol.PcepErrorMsg;
-import org.onosproject.pcepio.protocol.PcepErrorObject;
-import org.onosproject.pcepio.protocol.PcepFactory;
-import org.onosproject.pcepio.protocol.PcepMessage;
-import org.onosproject.pcepio.protocol.PcepVersion;
-import org.onosproject.pcepio.types.PcepValueType;
-
-import com.google.common.collect.Sets;
-
-import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_TYPE_19;
-import static org.onosproject.pcepio.types.PcepErrorDetailInfo.ERROR_VALUE_5;
-
-/**
- * Representation of PCEP client controller adapter.
- */
-public class PcepClientControllerAdapter implements PcepClientController {
-
-    protected ConcurrentHashMap<PccId, PcepClient> connectedClients =
-            new ConcurrentHashMap<PccId, PcepClient>();
-
-    protected PcepClientAgent agent = new PcepClientAgent();
-    protected Set<PcepClientListener> pcepClientListener = new HashSet<>();
-
-    protected Set<PcepEventListener> pcepEventListener = Sets.newHashSet();
-    public Set<PcepNodeListener> pcepNodeListener = Sets.newHashSet();
-
-    @Activate
-    public void activate() {
-    }
-
-    @Deactivate
-    public void deactivate() {
-    }
-
-    @Override
-    public Collection<PcepClient> getClients() {
-        return connectedClients.values();
-    }
-
-    @Override
-    public PcepClient getClient(PccId pccId) {
-        if (connectedClients.get(pccId) != null) {
-            return connectedClients.get(pccId);
-        }
-        PcepClientAdapter pc = new PcepClientAdapter();
-
-        pc.init(PccId.pccId(pccId.ipAddress()), PcepVersion.PCEP_1);
-        connectedClients.put(pccId, pc);
-        return pc;
-    }
-
-    @Override
-    public void addListener(PcepClientListener listener) {
-        if (!pcepClientListener.contains(listener)) {
-            this.pcepClientListener.add(listener);
-        }
-    }
-
-    @Override
-    public void addNodeListener(PcepNodeListener listener) {
-        pcepNodeListener.add(listener);
-    }
-
-    @Override
-    public void removeNodeListener(PcepNodeListener listener) {
-        pcepNodeListener.remove(listener);
-    }
-
-    @Override
-    public void removeListener(PcepClientListener listener) {
-        this.pcepClientListener.remove(listener);
-    }
-
-    @Override
-    public void addEventListener(PcepEventListener listener) {
-        pcepEventListener.add(listener);
-    }
-
-    @Override
-    public void removeEventListener(PcepEventListener listener) {
-        pcepEventListener.remove(listener);
-    }
-
-    @Override
-    public void writeMessage(PccId pccId, PcepMessage msg) {
-        this.getClient(pccId).sendMessage(msg);
-    }
-
-    @Override
-    public void processClientMessage(PccId pccId, PcepMessage msg) {
-
-        PcepClient pc = getClient(pccId);
-
-        switch (msg.getType()) {
-        case NONE:
-            break;
-        case OPEN:
-            break;
-        case KEEP_ALIVE:
-            //log.debug("Sending Keep Alive Message  to {" + pccIpAddress.toString() + "}");
-            pc.sendMessage(Collections.singletonList(pc.factory().buildKeepaliveMsg().build()));
-            break;
-        case PATH_COMPUTATION_REQUEST:
-            break;
-        case PATH_COMPUTATION_REPLY:
-            break;
-        case NOTIFICATION:
-            break;
-        case ERROR:
-            break;
-        case CLOSE:
-            //log.debug("Sending Close Message  to { }", pccIpAddress.toString());
-            pc.sendMessage(Collections.singletonList(pc.factory().buildCloseMsg().build()));
-            break;
-        case INITIATE:
-            if (!pc.capability().pcInstantiationCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case REPORT:
-            //Only update the listener if respective capability is supported else send PCEP-ERR msg
-            if (pc.capability().statefulPceCapability()) {
-                for (PcepEventListener l : pcepEventListener) {
-                    l.handleMessage(pccId, msg);
-                }
-            } else {
-                // Send PCEP-ERROR message.
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case UPDATE:
-            if (!pc.capability().statefulPceCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                       ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case LABEL_UPDATE:
-            if (!pc.capability().pceccCapability()) {
-                pc.sendMessage(Collections.singletonList(getErrMsg(pc.factory(),
-                        ERROR_TYPE_19, ERROR_VALUE_5)));
-            }
-            break;
-        case MAX:
-            break;
-        case END:
-            break;
-        default:
-            break;
-        }
-    }
-
-    @Override
-    public void closeConnectedClients() {
-        PcepClient pc;
-        for (PccId id : connectedClients.keySet()) {
-            pc = getClient(id);
-            pc.disconnectClient();
-        }
-    }
-
-    private PcepErrorMsg getErrMsg(PcepFactory factory, byte errorType, byte errorValue) {
-        LinkedList<PcepError> llPcepErr = new LinkedList<>();
-
-        LinkedList<PcepErrorObject> llerrObj = new LinkedList<>();
-        PcepErrorMsg errMsg;
-
-        PcepErrorObject errObj = factory.buildPcepErrorObject().setErrorValue(errorValue).setErrorType(errorType)
-                .build();
-
-        llerrObj.add(errObj);
-        PcepError pcepErr = factory.buildPcepError().setErrorObjList(llerrObj).build();
-
-        llPcepErr.add(pcepErr);
-
-        PcepErrorInfo errInfo = factory.buildPcepErrorInfo().setPcepErrorList(llPcepErr).build();
-
-        errMsg = factory.buildPcepErrorMsg().setPcepErrorInfo(errInfo).build();
-        return errMsg;
-    }
-
-    /**
-     * Implementation of an Pcep Agent which is responsible for
-     * keeping track of connected clients and the state in which
-     * they are.
-     */
-    public class PcepClientAgent implements PcepAgent {
-
-        @Override
-        public boolean addConnectedClient(PccId pccId, PcepClient pc) {
-
-            if (connectedClients.get(pccId) != null) {
-                return false;
-            } else {
-                connectedClients.put(pccId, pc);
-                for (PcepClientListener l : pcepClientListener) {
-                    l.clientConnected(pccId);
-                }
-                return true;
-            }
-        }
-
-        @Override
-        public boolean validActivation(PccId pccId) {
-            if (connectedClients.get(pccId) == null) {
-                //log.error("Trying to activate client but is not in "
-                //        + "connected switches: pccIp {}. Aborting ..", pccIpAddress.toString());
-                return false;
-            }
-
-            return true;
-        }
-
-        @Override
-        public void removeConnectedClient(PccId pccId) {
-            connectedClients.remove(pccId);
-            for (PcepClientListener l : pcepClientListener) {
-                //log.warn("removal for {}", pccIpAddress.toString());
-                l.clientDisconnected(pccId);
-            }
-        }
-
-        @Override
-        public void processPcepMessage(PccId pccId, PcepMessage m) {
-            processClientMessage(pccId, m);
-        }
-
-        @Override
-        public void addNode(PcepClient pc) {
-            for (PcepNodeListener l : pcepNodeListener) {
-                l.addDevicePcepConfig(pc);
-            }
-        }
-
-        @Override
-        public void deleteNode(PccId pccId) {
-            for (PcepNodeListener l : pcepNodeListener) {
-                l.deleteDevicePcepConfig(pccId);
-            }
-        }
-
-        @Override
-        public boolean analyzeSyncMsgList(PccId pccId) {
-            // TODO Auto-generated method stub
-            return false;
-        }
-    }
-
-    @Override
-    public LabelStack computeLabelStack(Path path) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public LinkedList<PcepValueType> createPcepLabelStack(DefaultLabelStack labelStack, Path path) {
-        // TODO Auto-generated method stub
-        return null;
-    }
-
-    @Override
-    public Map<String, List<String>> getPcepExceptions() {
-        return null;
-    }
-
-    @Override
-    public Map<Integer, Integer> getPcepErrorMsg() {
-        return null;
-    }
-
-    @Override
-    public Map<String, String> getPcepSessionMap() {
-        return null;
-    }
-
-    @Override
-    public Map<String, Byte> getPcepSessionIdMap() {
-        return null;
-    }
-
-    @Override
-    public void peerErrorMsg(String peerId, Integer errorType, Integer errValue) {
-        return;
-    }
-
-    @Override
-    public boolean allocateLocalLabel(Tunnel tunnel) {
-        // TODO Auto-generated method stub
-        return false;
-    }
-}
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepControllerAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepControllerAdapter.java
deleted file mode 100644
index b7482cb..0000000
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepControllerAdapter.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright 2015-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.onosproject.provider.pcep.tunnel.impl;
-
-import org.onosproject.net.DeviceId;
-import org.onosproject.pcep.api.PcepController;
-import org.onosproject.pcep.api.PcepDpid;
-import org.onosproject.pcep.api.PcepLinkListener;
-import org.onosproject.pcep.api.PcepSwitch;
-import org.onosproject.pcep.api.PcepSwitchListener;
-import org.onosproject.pcep.api.PcepTunnel;
-import org.onosproject.pcep.api.PcepTunnelListener;
-
-public class PcepControllerAdapter implements PcepController {
-
-    @Override
-    public Iterable<PcepSwitch> getSwitches() {
-        return null;
-    }
-
-    @Override
-    public PcepSwitch getSwitch(PcepDpid did) {
-        return null;
-    }
-
-    @Override
-    public void addListener(PcepSwitchListener listener) {
-
-    }
-
-    @Override
-    public void removeListener(PcepSwitchListener listener) {
-    }
-
-    @Override
-    public void addLinkListener(PcepLinkListener listener) {
-    }
-
-    @Override
-    public void removeLinkListener(PcepLinkListener listener) {
-    }
-
-    @Override
-    public void addTunnelListener(PcepTunnelListener listener) {
-    }
-
-    @Override
-    public void removeTunnelListener(PcepTunnelListener listener) {
-    }
-
-    @Override
-    public PcepTunnel applyTunnel(DeviceId srcDid, DeviceId dstDid, long srcPort, long dstPort, long bandwidth,
-                                  String name) {
-        return null;
-    }
-
-    @Override
-    public Boolean deleteTunnel(String id) {
-        return null;
-    }
-
-    @Override
-    public Boolean updateTunnelBandwidth(String id, long bandwidth) {
-        return null;
-    }
-
-    @Override
-    public void getTunnelStatistics(String pcepTunnelId) {
-
-    }
-}
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
index 121557a..12579ae 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepReleaseTunnelProviderTest.java
@@ -15,20 +15,6 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.Matchers.nullValue;
-import static org.hamcrest.core.Is.is;
-import static org.hamcrest.core.IsNot.not;
-import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -41,6 +27,7 @@
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.incubator.net.tunnel.TunnelId;
 import org.onosproject.incubator.net.tunnel.TunnelName;
+import org.onosproject.incubator.net.tunnel.TunnelServiceAdapter;
 import org.onosproject.mastership.MastershipServiceAdapter;
 import org.onosproject.net.Annotations;
 import org.onosproject.net.ConnectPoint;
@@ -53,10 +40,26 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
+import org.onosproject.pcep.api.PcepControllerAdapter;
 import org.onosproject.pcep.server.ClientCapability;
 import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
 import org.onosproject.pcepio.types.StatefulIPv4LspIdentifiersTlv;
 
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.nullValue;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.onosproject.net.DefaultAnnotations.EMPTY;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+
 /**
  * Test for PCEP release tunnel.
  */
@@ -68,7 +71,7 @@
     private final PcepClientControllerAdapter controller = new PcepClientControllerAdapter();
     private final PcepControllerAdapter ctl = new PcepControllerAdapter();
     private final PcepTunnelApiMapper pcepTunnelAPIMapper = new PcepTunnelApiMapper();
-    private final TunnelServiceAdapter  tunnelService = new TunnelServiceAdapter();
+    private final TunnelServiceAdapter tunnelService = new TunnelServiceAdapter();
     private final DeviceServiceAdapter  deviceService = new DeviceServiceAdapter();
     private final MastershipServiceAdapter  mastershipService = new MastershipServiceAdapter();
 
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
index b02e3e3..e176771 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepSetupTunnelProviderTest.java
@@ -15,20 +15,6 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.core.Is.is;
-import static org.hamcrest.core.IsNot.not;
-import static org.hamcrest.Matchers.nullValue;
-import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
-import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -42,6 +28,7 @@
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.incubator.net.tunnel.TunnelId;
 import org.onosproject.incubator.net.tunnel.TunnelName;
+import org.onosproject.incubator.net.tunnel.TunnelServiceAdapter;
 import org.onosproject.mastership.MastershipServiceAdapter;
 import org.onosproject.net.Annotations;
 import org.onosproject.net.ConnectPoint;
@@ -54,8 +41,24 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
+import org.onosproject.pcep.api.PcepControllerAdapter;
 import org.onosproject.pcep.server.ClientCapability;
 import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.nullValue;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.onosproject.net.DefaultAnnotations.EMPTY;
+import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
 
 /**
  * Test for PCEP setup tunnel.
@@ -67,7 +70,7 @@
     private final TunnelProviderRegistryAdapter registry = new TunnelProviderRegistryAdapter();
     private final PcepClientControllerAdapter controller = new PcepClientControllerAdapter();
     private final PcepControllerAdapter ctl = new PcepControllerAdapter();
-    private final TunnelServiceAdapter  tunnelService = new TunnelServiceAdapter();
+    private final TunnelServiceAdapter tunnelService = new TunnelServiceAdapter();
     private final DeviceServiceAdapter  deviceService = new DeviceServiceAdapter();
     private final MastershipServiceAdapter  mastershipService = new MastershipServiceAdapter();
     private static final Weight TEN_WEIGHT = ScalarWeight.toWeight(10);
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
index c9c0537..0db45cb 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelAddedTest.java
@@ -15,32 +15,8 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.core.Is.is;
-import static org.onosproject.incubator.net.tunnel.Tunnel.Type.MPLS;
-import static org.onosproject.incubator.net.tunnel.Tunnel.State.INIT;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.PCC_TUNNEL_ID;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
-import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
-import static org.onosproject.pcep.server.PcepSyncStatus.SYNCED;
-import static org.onosproject.net.Device.Type.ROUTER;
-import static org.onosproject.net.Link.State.ACTIVE;
-import static org.onosproject.net.MastershipRole.MASTER;
-
-import java.io.IOException;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.concurrent.TimeUnit;
-
+import com.google.common.collect.FluentIterable;
+import com.google.common.collect.ImmutableSet;
 import org.jboss.netty.buffer.ChannelBuffer;
 import org.jboss.netty.buffer.ChannelBuffers;
 import org.junit.After;
@@ -53,6 +29,7 @@
 import org.onosproject.incubator.net.tunnel.DefaultTunnel;
 import org.onosproject.incubator.net.tunnel.IpTunnelEndPoint;
 import org.onosproject.incubator.net.tunnel.Tunnel;
+import org.onosproject.incubator.net.tunnel.Tunnel.State;
 import org.onosproject.incubator.net.tunnel.Tunnel.Type;
 import org.onosproject.incubator.net.tunnel.TunnelAdminService;
 import org.onosproject.incubator.net.tunnel.TunnelDescription;
@@ -61,7 +38,7 @@
 import org.onosproject.incubator.net.tunnel.TunnelName;
 import org.onosproject.incubator.net.tunnel.TunnelProvider;
 import org.onosproject.incubator.net.tunnel.TunnelProviderService;
-import org.onosproject.incubator.net.tunnel.Tunnel.State;
+import org.onosproject.incubator.net.tunnel.TunnelServiceAdapter;
 import org.onosproject.mastership.MastershipServiceAdapter;
 import org.onosproject.net.AnnotationKeys;
 import org.onosproject.net.ConnectPoint;
@@ -79,18 +56,44 @@
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.link.LinkServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
+import org.onosproject.pcep.api.PcepControllerAdapter;
+import org.onosproject.pcep.server.ClientCapability;
+import org.onosproject.pcep.server.LspKey;
+import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClientAdapter;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
 import org.onosproject.pcepio.exceptions.PcepOutOfBoundMessageException;
 import org.onosproject.pcepio.exceptions.PcepParseException;
 import org.onosproject.pcepio.protocol.PcepFactories;
 import org.onosproject.pcepio.protocol.PcepMessage;
 import org.onosproject.pcepio.protocol.PcepMessageReader;
 import org.onosproject.pcepio.protocol.PcepVersion;
-import org.onosproject.pcep.server.ClientCapability;
-import org.onosproject.pcep.server.LspKey;
-import org.onosproject.pcep.server.PccId;
 
-import com.google.common.collect.FluentIterable;
-import com.google.common.collect.ImmutableSet;
+import java.io.IOException;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.core.Is.is;
+import static org.onosproject.incubator.net.tunnel.Tunnel.State.INIT;
+import static org.onosproject.incubator.net.tunnel.Tunnel.Type.MPLS;
+import static org.onosproject.net.Device.Type.ROUTER;
+import static org.onosproject.net.Link.State.ACTIVE;
+import static org.onosproject.net.MastershipRole.MASTER;
+import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.BANDWIDTH;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.DELEGATE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PCC_TUNNEL_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
+import static org.onosproject.pcep.server.PcepSyncStatus.SYNCED;
 
 /**
  * Tests handling of PCEP report message.
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
index cb4123d..9f70e1e 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepTunnelProviderTest.java
@@ -15,27 +15,18 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.Matchers.nullValue;
-import static org.hamcrest.core.IsNot.not;
-import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
 import org.junit.After;
 import org.junit.Test;
 import org.onlab.graph.ScalarWeight;
 import org.onlab.packet.IpAddress;
+import org.onosproject.cfg.ComponentConfigAdapter;
 import org.onosproject.core.GroupId;
 import org.onosproject.incubator.net.tunnel.DefaultTunnel;
 import org.onosproject.incubator.net.tunnel.IpTunnelEndPoint;
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.incubator.net.tunnel.TunnelId;
 import org.onosproject.incubator.net.tunnel.TunnelName;
+import org.onosproject.incubator.net.tunnel.TunnelServiceAdapter;
 import org.onosproject.mastership.MastershipServiceAdapter;
 import org.onosproject.net.Annotations;
 import org.onosproject.net.ConnectPoint;
@@ -48,9 +39,21 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DeviceServiceAdapter;
 import org.onosproject.net.provider.ProviderId;
+import org.onosproject.pcep.api.PcepControllerAdapter;
 import org.onosproject.pcep.server.ClientCapability;
 import org.onosproject.pcep.server.PccId;
-import org.onosproject.cfg.ComponentConfigAdapter;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.nullValue;
+import static org.hamcrest.core.IsNot.not;
+import static org.onosproject.net.DefaultAnnotations.EMPTY;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
 
 public class PcepTunnelProviderTest {
 
@@ -59,7 +62,7 @@
     private final TunnelProviderRegistryAdapter registry = new TunnelProviderRegistryAdapter();
     private final PcepClientControllerAdapter controller = new PcepClientControllerAdapter();
     private final PcepControllerAdapter ctl = new PcepControllerAdapter();
-    private final TunnelServiceAdapter  tunnelService = new TunnelServiceAdapter();
+    private final TunnelServiceAdapter tunnelService = new TunnelServiceAdapter();
     private final DeviceServiceAdapter  deviceService = new DeviceServiceAdapter();
     private final MastershipServiceAdapter  mastershipService = new MastershipServiceAdapter();
 
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
index 8d9f4e6..99e6e28 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/PcepUpdateTunnelProviderTest.java
@@ -15,19 +15,6 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.Matchers.nullValue;
-import static org.hamcrest.core.Is.is;
-import static org.hamcrest.core.IsNot.not;
-import static org.onosproject.net.DefaultAnnotations.EMPTY;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
-import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
-
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.List;
-
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
@@ -40,6 +27,7 @@
 import org.onosproject.incubator.net.tunnel.Tunnel;
 import org.onosproject.incubator.net.tunnel.TunnelId;
 import org.onosproject.incubator.net.tunnel.TunnelName;
+import org.onosproject.incubator.net.tunnel.TunnelServiceAdapter;
 import org.onosproject.net.Annotations;
 import org.onosproject.net.ConnectPoint;
 import org.onosproject.net.DefaultAnnotations;
@@ -50,15 +38,30 @@
 import org.onosproject.net.Path;
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.provider.ProviderId;
+import org.onosproject.pcep.api.PcepControllerAdapter;
 import org.onosproject.pcep.server.ClientCapability;
 import org.onosproject.pcep.server.LspKey;
 import org.onosproject.pcep.server.PccId;
+import org.onosproject.pcep.server.PcepClientAdapter;
+import org.onosproject.pcep.server.PcepClientControllerAdapter;
 import org.onosproject.pcepio.protocol.PcepVersion;
 import org.onosproject.pcepio.types.StatefulIPv4LspIdentifiersTlv;
 
-import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.nullValue;
+import static org.hamcrest.core.Is.is;
+import static org.hamcrest.core.IsNot.not;
+import static org.onosproject.net.DefaultAnnotations.EMPTY;
 import static org.onosproject.pcep.server.LspType.SR_WITHOUT_SIGNALLING;
 import static org.onosproject.pcep.server.LspType.WITHOUT_SIGNALLING_AND_WITHOUT_SR;
+import static org.onosproject.pcep.server.LspType.WITH_SIGNALLING;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LOCAL_LSP_ID;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.LSP_SIG_TYPE;
+import static org.onosproject.pcep.server.PcepAnnotationKeys.PLSP_ID;
 /**
  * Test for PCEP update tunnel.
  */
@@ -70,7 +73,7 @@
     private final PcepClientControllerAdapter controller = new PcepClientControllerAdapter();
     private final PcepControllerAdapter ctl = new PcepControllerAdapter();
     private final PcepTunnelApiMapper pcepTunnelAPIMapper = new PcepTunnelApiMapper();
-    private final TunnelServiceAdapter  tunnelService = new TunnelServiceAdapter();
+    private final TunnelServiceAdapter tunnelService = new TunnelServiceAdapter();
 
     @Before
     public void setUp() throws IOException {
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelProviderRegistryAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelProviderRegistryAdapter.java
index 50c4892..250e376 100644
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelProviderRegistryAdapter.java
+++ b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelProviderRegistryAdapter.java
@@ -15,17 +15,17 @@
  */
 package org.onosproject.provider.pcep.tunnel.impl;
 
-import java.util.Set;
-
 import org.onosproject.incubator.net.tunnel.Tunnel;
+import org.onosproject.incubator.net.tunnel.Tunnel.State;
 import org.onosproject.incubator.net.tunnel.TunnelDescription;
 import org.onosproject.incubator.net.tunnel.TunnelId;
 import org.onosproject.incubator.net.tunnel.TunnelProvider;
 import org.onosproject.incubator.net.tunnel.TunnelProviderRegistry;
 import org.onosproject.incubator.net.tunnel.TunnelProviderService;
-import org.onosproject.incubator.net.tunnel.Tunnel.State;
 import org.onosproject.net.provider.ProviderId;
 
+import java.util.Set;
+
 public class TunnelProviderRegistryAdapter implements TunnelProviderRegistry {
     TunnelProvider provider;
 
diff --git a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelServiceAdapter.java b/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelServiceAdapter.java
deleted file mode 100644
index f883315..0000000
--- a/providers/pcep/tunnel/src/test/java/org/onosproject/provider/pcep/tunnel/impl/TunnelServiceAdapter.java
+++ /dev/null
@@ -1,134 +0,0 @@
-/*
- * Copyright 2015-present Open Networking Foundation
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.onosproject.provider.pcep.tunnel.impl;
-
-import org.onosproject.core.ApplicationId;
-import org.onosproject.incubator.net.tunnel.Tunnel;
-import org.onosproject.incubator.net.tunnel.TunnelEndPoint;
-import org.onosproject.incubator.net.tunnel.TunnelId;
-import org.onosproject.incubator.net.tunnel.TunnelListener;
-import org.onosproject.incubator.net.tunnel.TunnelName;
-import org.onosproject.incubator.net.tunnel.TunnelService;
-import org.onosproject.incubator.net.tunnel.TunnelSubscription;
-import org.onosproject.net.Annotations;
-import org.onosproject.net.DeviceId;
-import org.onosproject.net.ElementId;
-
-import java.util.Collection;
-import java.util.Collections;
-import org.onosproject.net.Path;
-
-public class TunnelServiceAdapter implements TunnelService {
-    @Override
-    public Tunnel borrowTunnel(ApplicationId consumerId, TunnelId tunnelId, Annotations... annotations) {
-        return null;
-    }
-
-    @Override
-    public Collection<Tunnel> borrowTunnel(ApplicationId consumerId, TunnelName tunnelName,
-                                           Annotations... annotations) {
-        return null;
-    }
-
-    @Override
-    public Collection<Tunnel> borrowTunnel(ApplicationId consumerId, TunnelEndPoint src, TunnelEndPoint dst,
-                                           Annotations... annotations) {
-        return null;
-    }
-
-    @Override
-    public Collection<Tunnel> borrowTunnel(ApplicationId consumerId, TunnelEndPoint src, TunnelEndPoint dst,
-                                           Tunnel.Type type, Annotations... annotations) {
-        return null;
-    }
-
-    @Override
-    public TunnelId setupTunnel(ApplicationId producerId, ElementId srcElementId, Tunnel tunnel, Path path) {
-        return null;
-    }
-
-    @Override
-    public boolean downTunnel(ApplicationId producerId, TunnelId tunnelId) {
-        return false;
-    }
-
-    @Override
-    public boolean returnTunnel(ApplicationId consumerId, TunnelId tunnelId, Annotations... annotations) {
-        return false;
-    }
-
-    @Override
-    public boolean returnTunnel(ApplicationId consumerId, TunnelName tunnelName, Annotations... annotations) {
-        return false;
-    }
-
-    @Override
-    public boolean returnTunnel(ApplicationId consumerId, TunnelEndPoint src, TunnelEndPoint dst,
-                                Tunnel.Type type, Annotations... annotations) {
-        return false;
-    }
-
-    @Override
-    public boolean returnTunnel(ApplicationId consumerId, TunnelEndPoint src, TunnelEndPoint dst,
-                                Annotations... annotations) {
-        return false;
-    }
-
-    @Override
-    public Tunnel queryTunnel(TunnelId tunnelId) {
-        return null;
-    }
-
-    @Override
-    public Collection<TunnelSubscription> queryTunnelSubscription(ApplicationId consumerId) {
-        return Collections.emptySet();
-    }
-
-    @Override
-    public Collection<Tunnel> queryTunnel(Tunnel.Type type) {
-        return Collections.emptySet();
-    }
-
-    @Override
-    public Collection<Tunnel> queryTunnel(TunnelEndPoint src, TunnelEndPoint dst) {
-        return Collections.emptySet();
-    }
-
-    @Override
-    public Collection<Tunnel> queryAllTunnels() {
-        return Collections.emptyList();
-    }
-
-    @Override
-    public int tunnelCount() {
-        return 0;
-    }
-
-    @Override
-    public Iterable<Tunnel> getTunnels(DeviceId deviceId) {
-        return null;
-    }
-
-    @Override
-    public void addListener(TunnelListener listener) {
-
-    }
-
-    @Override
-    public void removeListener(TunnelListener listener) {
-
-    }
-}