mirror of
https://github.com/opennetworkinglab/onos.git
synced 2026-05-05 12:16:13 +02:00
Refactor: fix the issues reported by static code analyzer
Change-Id: I8421b5d750e14012d30176ddca7a3873539a361b
This commit is contained in:
parent
3a1efef913
commit
5afbea4941
@ -78,6 +78,18 @@ public enum NodeState {
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Processes the given node which is under a certain state.
|
||||
*
|
||||
* @param handler openstack node handler
|
||||
* @param osNode openstack node
|
||||
*/
|
||||
public abstract void process(OpenstackNodeHandler handler, OpenstackNode osNode);
|
||||
|
||||
/**
|
||||
* Transits to the next state.
|
||||
*
|
||||
* @return the next openstack node state
|
||||
*/
|
||||
public abstract NodeState nextState();
|
||||
}
|
||||
|
||||
@ -22,6 +22,9 @@ import org.onosproject.event.AbstractEvent;
|
||||
*/
|
||||
public class OpenstackNodeEvent extends AbstractEvent<OpenstackNodeEvent.Type, OpenstackNode> {
|
||||
|
||||
/**
|
||||
* List of openstack node event types.
|
||||
*/
|
||||
public enum Type {
|
||||
|
||||
/**
|
||||
|
||||
@ -27,7 +27,8 @@ import org.onosproject.openstacknode.api.OpenstackNode;
|
||||
import org.onosproject.openstacknode.api.OpenstackNodeService;
|
||||
|
||||
import static org.onosproject.net.AnnotationKeys.PORT_NAME;
|
||||
import static org.onosproject.openstacknode.api.Constants.*;
|
||||
import static org.onosproject.openstacknode.api.Constants.DEFAULT_TUNNEL;
|
||||
import static org.onosproject.openstacknode.api.Constants.INTEGRATION_BRIDGE;
|
||||
|
||||
/**
|
||||
* Checks detailed node init state.
|
||||
|
||||
@ -25,9 +25,6 @@ import org.onosproject.openstacknode.api.OpenstackNode;
|
||||
import org.onosproject.openstacknode.api.OpenstackNodeAdminService;
|
||||
import org.onosproject.openstacknode.api.OpenstackNodeService;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* Initializes nodes for OpenStack node service.
|
||||
*/
|
||||
@ -64,16 +61,12 @@ public class OpenstackNodeInitCommand extends AbstractShellCommand {
|
||||
}
|
||||
|
||||
if (isAll) {
|
||||
List<String> osNodes = osNodeService.nodes().stream()
|
||||
.map(OpenstackNode::hostname)
|
||||
.collect(Collectors.toList());
|
||||
hostnames = osNodes.toArray(new String[osNodes.size()]);
|
||||
hostnames = osNodeService.nodes().stream()
|
||||
.map(OpenstackNode::hostname).toArray(String[]::new);
|
||||
} else if (isIncomplete) {
|
||||
List<String> osNodes = osNodeService.nodes().stream()
|
||||
hostnames = osNodeService.nodes().stream()
|
||||
.filter(osNode -> osNode.state() != NodeState.COMPLETE)
|
||||
.map(OpenstackNode::hostname)
|
||||
.collect(Collectors.toList());
|
||||
hostnames = osNodes.toArray(new String[osNodes.size()]);
|
||||
.map(OpenstackNode::hostname).toArray(String[]::new);
|
||||
}
|
||||
|
||||
for (String hostname : hostnames) {
|
||||
|
||||
@ -214,15 +214,13 @@ public class DefaultOpenstackNode implements OpenstackNode {
|
||||
|
||||
if (obj instanceof DefaultOpenstackNode) {
|
||||
DefaultOpenstackNode that = (DefaultOpenstackNode) obj;
|
||||
if (Objects.equals(hostname, that.hostname) &&
|
||||
return Objects.equals(hostname, that.hostname) &&
|
||||
Objects.equals(type, that.type) &&
|
||||
Objects.equals(intgBridge, that.intgBridge) &&
|
||||
Objects.equals(managementIp, that.managementIp) &&
|
||||
Objects.equals(dataIp, that.dataIp) &&
|
||||
Objects.equals(uplinkPort, that.uplinkPort) &&
|
||||
Objects.equals(vlanIntf, that.vlanIntf)) {
|
||||
return true;
|
||||
}
|
||||
Objects.equals(vlanIntf, that.vlanIntf);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -77,8 +77,11 @@ import static org.onlab.packet.TpPort.tpPort;
|
||||
import static org.onlab.util.Tools.groupedThreads;
|
||||
import static org.onosproject.net.AnnotationKeys.PORT_NAME;
|
||||
import static org.onosproject.net.flow.instructions.ExtensionTreatmentType.ExtensionTreatmentTypes.NICIRA_SET_TUNNEL_DST;
|
||||
import static org.onosproject.openstacknode.api.Constants.*;
|
||||
import static org.onosproject.openstacknode.api.NodeState.*;
|
||||
import static org.onosproject.openstacknode.api.Constants.DEFAULT_TUNNEL;
|
||||
import static org.onosproject.openstacknode.api.Constants.INTEGRATION_BRIDGE;
|
||||
import static org.onosproject.openstacknode.api.NodeState.COMPLETE;
|
||||
import static org.onosproject.openstacknode.api.NodeState.DEVICE_CREATED;
|
||||
import static org.onosproject.openstacknode.api.NodeState.INCOMPLETE;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNode.NodeType.GATEWAY;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeService.APP_ID;
|
||||
import static org.slf4j.LoggerFactory.getLogger;
|
||||
@ -89,7 +92,7 @@ import static org.slf4j.LoggerFactory.getLogger;
|
||||
@Component(immediate = true)
|
||||
public class DefaultOpenstackNodeHandler implements OpenstackNodeHandler {
|
||||
|
||||
protected final Logger log = getLogger(getClass());
|
||||
private final Logger log = getLogger(getClass());
|
||||
|
||||
private static final String OVSDB_PORT = "ovsdbPortNum";
|
||||
private static final int DEFAULT_OVSDB_PORT = 6640;
|
||||
@ -351,13 +354,11 @@ public class DefaultOpenstackNodeHandler implements OpenstackNodeHandler {
|
||||
* @return true if the given interface is enabled, false otherwise
|
||||
*/
|
||||
private boolean isIntfEnabled(OpenstackNode osNode, String intf) {
|
||||
if (!deviceService.isAvailable(osNode.intgBridge())) {
|
||||
return false;
|
||||
}
|
||||
return deviceService.getPorts(osNode.intgBridge()).stream()
|
||||
.anyMatch(port -> Objects.equals(
|
||||
port.annotations().value(PORT_NAME), intf) &&
|
||||
port.isEnabled());
|
||||
return deviceService.isAvailable(osNode.intgBridge()) &&
|
||||
deviceService.getPorts(osNode.intgBridge()).stream()
|
||||
.anyMatch(port -> Objects.equals(
|
||||
port.annotations().value(PORT_NAME), intf) &&
|
||||
port.isEnabled());
|
||||
}
|
||||
|
||||
/**
|
||||
@ -369,10 +370,7 @@ public class DefaultOpenstackNodeHandler implements OpenstackNodeHandler {
|
||||
private boolean isCurrentStateDone(OpenstackNode osNode) {
|
||||
switch (osNode.state()) {
|
||||
case INIT:
|
||||
if (!deviceService.isAvailable(osNode.intgBridge())) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return deviceService.isAvailable(osNode.intgBridge());
|
||||
case DEVICE_CREATED:
|
||||
if (osNode.dataIp() != null &&
|
||||
!isIntfEnabled(osNode, DEFAULT_TUNNEL)) {
|
||||
@ -388,7 +386,6 @@ public class DefaultOpenstackNodeHandler implements OpenstackNodeHandler {
|
||||
}
|
||||
return true;
|
||||
case COMPLETE:
|
||||
return false;
|
||||
case INCOMPLETE:
|
||||
// always return false
|
||||
// run init CLI to re-trigger node bootstrap
|
||||
@ -556,9 +553,7 @@ public class DefaultOpenstackNodeHandler implements OpenstackNodeHandler {
|
||||
switch (event.type()) {
|
||||
case OPENSTACK_NODE_CREATED:
|
||||
case OPENSTACK_NODE_UPDATED:
|
||||
eventExecutor.execute(() -> {
|
||||
bootstrapNode(event.subject());
|
||||
});
|
||||
eventExecutor.execute(() -> bootstrapNode(event.subject()));
|
||||
break;
|
||||
case OPENSTACK_NODE_COMPLETE:
|
||||
break;
|
||||
|
||||
@ -49,7 +49,11 @@ import static java.util.concurrent.Executors.newSingleThreadExecutor;
|
||||
import static org.onlab.util.Tools.groupedThreads;
|
||||
import static org.onosproject.openstacknode.api.NodeState.COMPLETE;
|
||||
import static org.onosproject.openstacknode.api.NodeState.INCOMPLETE;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.*;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.OPENSTACK_NODE_COMPLETE;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.OPENSTACK_NODE_CREATED;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.OPENSTACK_NODE_INCOMPLETE;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.OPENSTACK_NODE_REMOVED;
|
||||
import static org.onosproject.openstacknode.api.OpenstackNodeEvent.Type.OPENSTACK_NODE_UPDATED;
|
||||
import static org.slf4j.LoggerFactory.getLogger;
|
||||
|
||||
/**
|
||||
@ -61,7 +65,7 @@ public class DistributedOpenstackNodeStore
|
||||
extends AbstractStore<OpenstackNodeEvent, OpenstackNodeStoreDelegate>
|
||||
implements OpenstackNodeStore {
|
||||
|
||||
protected final Logger log = getLogger(getClass());
|
||||
private final Logger log = getLogger(getClass());
|
||||
|
||||
private static final String ERR_NOT_FOUND = " does not exist";
|
||||
private static final String ERR_DUPLICATE = " already exists";
|
||||
@ -158,12 +162,10 @@ public class DistributedOpenstackNodeStore
|
||||
switch (event.type()) {
|
||||
case INSERT:
|
||||
log.debug("OpenStack node created {}", event.newValue());
|
||||
eventExecutor.execute(() -> {
|
||||
notifyDelegate(new OpenstackNodeEvent(
|
||||
OPENSTACK_NODE_CREATED,
|
||||
event.newValue().value()
|
||||
));
|
||||
});
|
||||
eventExecutor.execute(() ->
|
||||
notifyDelegate(new OpenstackNodeEvent(
|
||||
OPENSTACK_NODE_CREATED, event.newValue().value()
|
||||
)));
|
||||
break;
|
||||
case UPDATE:
|
||||
log.debug("OpenStack node updated {}", event.newValue());
|
||||
@ -187,12 +189,10 @@ public class DistributedOpenstackNodeStore
|
||||
break;
|
||||
case REMOVE:
|
||||
log.debug("OpenStack node removed {}", event.oldValue());
|
||||
eventExecutor.execute(() -> {
|
||||
notifyDelegate(new OpenstackNodeEvent(
|
||||
OPENSTACK_NODE_REMOVED,
|
||||
event.oldValue().value()
|
||||
));
|
||||
});
|
||||
eventExecutor.execute(() ->
|
||||
notifyDelegate(new OpenstackNodeEvent(
|
||||
OPENSTACK_NODE_REMOVED, event.oldValue().value()
|
||||
)));
|
||||
break;
|
||||
default:
|
||||
// do nothing
|
||||
|
||||
@ -58,7 +58,7 @@ import static org.slf4j.LoggerFactory.getLogger;
|
||||
public class OpenstackNodeManager extends ListenerRegistry<OpenstackNodeEvent, OpenstackNodeListener>
|
||||
implements OpenstackNodeService, OpenstackNodeAdminService {
|
||||
|
||||
protected final Logger log = getLogger(getClass());
|
||||
private final Logger log = getLogger(getClass());
|
||||
|
||||
private static final String MSG_NODE = "OpenStack node %s %s";
|
||||
private static final String MSG_CREATED = "created";
|
||||
@ -166,11 +166,10 @@ public class OpenstackNodeManager extends ListenerRegistry<OpenstackNodeEvent, O
|
||||
|
||||
@Override
|
||||
public OpenstackNode node(DeviceId deviceId) {
|
||||
OpenstackNode result = osNodeStore.nodes().stream()
|
||||
return osNodeStore.nodes().stream()
|
||||
.filter(osNode -> Objects.equals(osNode.intgBridge(), deviceId) ||
|
||||
Objects.equals(osNode.ovsdb(), deviceId))
|
||||
.findFirst().orElse(null);
|
||||
return result;
|
||||
}
|
||||
|
||||
private class InternalNodeStoreDelegate implements OpenstackNodeStoreDelegate {
|
||||
|
||||
@ -38,14 +38,14 @@ public class OpenstackNodeCodecRegister {
|
||||
protected CodecService codecService;
|
||||
|
||||
@Activate
|
||||
public void activate() {
|
||||
protected void activate() {
|
||||
codecService.registerCodec(OpenstackNode.class, new OpenstackNodeCodec());
|
||||
|
||||
log.info("Started");
|
||||
}
|
||||
|
||||
@Deactivate
|
||||
public void deactivate() {
|
||||
protected void deactivate() {
|
||||
codecService.unregisterCodec(OpenstackNode.class);
|
||||
|
||||
log.info("Stopped");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user