private final DiagStatusService diagStatusService;
private InetAddress defaultInetAddres;
private InetAddress legacyInetAddress;
- private volatile ServiceDescriptor serviceDescriptor;
public OpenflowPluginDiagStatusProvider(final DiagStatusService diagStatusService,
final List<SwitchConnectionProvider> switchConnectionProviders) {
public void reportStatus(ServiceState serviceState, String description) {
LOG.debug("reporting status as {} for {}", serviceState, OPENFLOW_SERVICE_NAME);
- serviceDescriptor = new ServiceDescriptor(OPENFLOW_SERVICE_NAME, serviceState, description);
- diagStatusService.report(serviceDescriptor);
+ diagStatusService.report(new ServiceDescriptor(OPENFLOW_SERVICE_NAME, serviceState, description));
}
@Override
public ServiceDescriptor getServiceDescriptor() {
-
- if (serviceDescriptor.getServiceState().equals(ServiceState.OPERATIONAL)) {
- if (getApplicationNetworkState(OF_PORT_13, defaultInetAddres)
- && getApplicationNetworkState(OF_PORT_11, legacyInetAddress)) {
- return serviceDescriptor;
- } else {
- serviceDescriptor = new ServiceDescriptor(OPENFLOW_SERVICE_NAME, ServiceState.ERROR,
- "OF::PORTS:: 6653 and 6633 are not up yet");
- return serviceDescriptor;
- }
+ if (getApplicationNetworkState(OF_PORT_13, defaultInetAddres)
+ && getApplicationNetworkState(OF_PORT_11, legacyInetAddress)) {
+ return new ServiceDescriptor(OPENFLOW_SERVICE_NAME, ServiceState.OPERATIONAL,
+ "OF::PORTS:: 6653 and 6633 are up.");
+ } else {
+ return new ServiceDescriptor(OPENFLOW_SERVICE_NAME, ServiceState.ERROR,
+ "OF::PORTS:: 6653 and 6633 are not up yet");
}
- return serviceDescriptor;
}
private boolean getApplicationNetworkState(int port, InetAddress inetAddress) {