Turns out each extension when it's closed calls
stop() on their Activators. This nulls registration
list. But when the Activator itself is shut down,
it also calls its stop() method invoking an
IllegalStateException.
Change-Id: I3887cc687489e9e441224265f0e85baf6928aaee
Signed-off-by: Dana Kutenicsova <dkutenic@cisco.com>
(cherry picked from commit
bc7abb1c1b16a8a395003bfbbf6f299f4fef4c2d)
package org.opendaylight.protocol.bgp.parser.spi;
import com.google.common.base.Preconditions;
-
import java.util.List;
-
import javax.annotation.concurrent.GuardedBy;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public final synchronized void stop() {
- Preconditions.checkState(this.registrations != null);
+ if (this.registrations == null) {
+ return;
+ }
for (final AutoCloseable r : this.registrations) {
try {
package org.opendaylight.protocol.bgp.rib.spi;
import com.google.common.base.Preconditions;
-
import java.util.List;
-
import javax.annotation.concurrent.GuardedBy;
-
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@Override
public final synchronized void stopRIBExtensionProvider() {
- Preconditions.checkState(this.registrations != null);
+ if (this.registrations == null) {
+ return;
+ }
for (final AutoCloseable r : this.registrations) {
try {
package org.opendaylight.protocol.pcep.spi.pojo;
import com.google.common.base.Preconditions;
-
import java.util.List;
-
import javax.annotation.concurrent.GuardedBy;
-
import org.opendaylight.protocol.pcep.spi.PCEPExtensionProviderActivator;
import org.opendaylight.protocol.pcep.spi.PCEPExtensionProviderContext;
import org.slf4j.Logger;
@Override
public final synchronized void stop() {
- Preconditions.checkState(this.registrations != null);
+ if (this.registrations == null) {
+ return;
+ }
for (final AutoCloseable r : this.registrations) {
try {