tree 632e67bd40fc536187d109d6efe73dae45713b2e
parent 9986c0714a632544691ef91d23f4a9fdb3308c6c
author Harold Huang <baymaxhuang@gmail.com> 1497424518 +0800
committer Yoonseon Han <yoonseon@onlab.us> 1497590062 +0000

[ONOS-6627] Revise adding and removing packet processor for virtual network

At present, we have to use requestPackets to trigger adding packet processor for virtual network and use cancelPackets to trigger removing the packet process for the virtual network.
But if we call cancelPackets more then one time in the deactivate() method when the application is deactivated, if will throw a NullPoint exception.

Furthermore, if a user does not requestPackets() in the application, the packet processor will never be added.
It may be a confusing trouble for a tenant user.
As a result, I think the packet processor should be created when the virtual network is added and be removed when no virtual network exists.

Soultions:
Listen to the network event to add and remove packet processor for virtual network.

Change-Id: I583d453219bef2f271b4a1e96f9869a28b4f0250
