Clean up SessionStateImpl lifecycle 46/101946/2
authorRobert Varga <robert.varga@pantheon.tech>
Tue, 2 Aug 2022 19:49:04 +0000 (21:49 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Tue, 2 Aug 2022 20:09:24 +0000 (22:09 +0200)
commitf76f78edb05c4cad431d21de6e827cdf963481c3
treea26cfca9ad42c4668442495fa90d9634a72a4419
parent3f409c0e439f726e9f5acfc5b098aa41671ef242
Clean up SessionStateImpl lifecycle

SessionStateImpl is inherently bound to statistics updater, hence
it needs to follow bind/unbind lifecycle. This has the benefit of
better isolation -- which is demonstrated by removal of unneeded
listenerState clearing.

On the side of TopologyStatsProviderImpl, we are gaining the benefits of
Registration atomicity, and therefore have a better reign over
invoke-once semantics.

JIRA: BGPCEP-1005
Change-Id: I1b58fc9891c0bfb2a7084cc6eccf9c56b41cd8fc
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/AbstractTopologySessionListener.java
pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySessionListener.java
pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/TopologySessionStatsRegistry.java
pcep/topology/topology-provider/src/main/java/org/opendaylight/bgpcep/pcep/topology/provider/TopologyStatsProviderImpl.java
pcep/topology/topology-provider/src/test/java/org/opendaylight/bgpcep/pcep/topology/provider/AbstractPCEPSessionTest.java
pcep/topology/topology-provider/src/test/java/org/opendaylight/bgpcep/pcep/topology/provider/PCEPTopologySessionListenerTest.java