/** * Returns Response.Status for a given status. If the status is null or if * the corresponding StatusCode is not present in the ResponseStatusMapping, * it returns null. * * @param status * The Status * @return The Response.Status for a given status */ public static Response.Status getResponseStatus(Status status) { return ResponseStatusMapping.get(status.getCode()); }
/** * Returns Response for a given status. If the status provided is null or if * the corresponding StatusCode is not present in the ResponseStatusMapping, * it returns Response with StatusType as INTERNAL_SERVER_ERROR. * * @param status * The Status * @return The Response for a given status. */ public static Response getResponse(Status status) { if ((status == null) || (!ResponseStatusMapping.containsKey(status.getCode()))) { return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity("Action Result Unknown").build(); } return Response.status(ResponseStatusMapping.get(status.getCode())).entity(status.getDescription()).build(); }
public List<NodeConnector> getVLANPorts(Node node, Integer vlanID){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS) return null; if(!isValidVlan(vlanID)) return null; if(isDummy) return new CopyOnWriteArrayList<NodeConnector>(); long nodeId = ((Long)node.getID()).longValue(); int vlanId = vlanID.intValue(); List<NodeConnector> ncList = new SNMPHandler(cmethUtil).getVLANPorts(nodeId, vlanId); if(ncList == null) logger.debug("ERROR: getVLANPorts(): fail to get VLAN (node:" + nodeId + "(" + getNodeIP(nodeId) + ")" + ", vlanId:" + vlanId + ")'s ports"); return ncList; }
public VLANTable getVLANTable(Node node){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS) return null; if(isDummy) return new VLANTable(); long nodeId = ((Long)node.getID()).longValue(); VLANTable vlanTable = new SNMPHandler(cmethUtil).getVLANTable(nodeId); if(vlanTable == null) logger.debug("ERROR: getVLANTable(): fail to get VLAN table on node " + nodeId); return vlanTable; }
public Status deleteVLAN(Node node, Integer vlanID){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS) return status; if(!isValidVlan(vlanID)){ logger.debug("ERROR: VLAN ID as " + vlanID + " is invalid, when delete VLAN from node " + getNodeIP((Long)node.getID())); return new Status(StatusCode.NOTACCEPTABLE, "VLAN ID as " + vlanID + " is invalid, when delete VLAN from node " + getNodeIP((Long)node.getID())); } if(isDummy) return new Status(StatusCode.SUCCESS); long nodeId = ((Long)node.getID()).longValue(); int vlanId = vlanID.intValue(); status = new SNMPHandler(cmethUtil).deleteVLAN(nodeId, vlanId); if(!status.isSuccess()) logger.debug("ERROR: deleteVLAN(): Delete VLAN (node:" + nodeId + "(" + getNodeIP(nodeId) + ")" + ", vlanId:" + vlanId + ") on switch fail: " + status); return status; }
return new Status(ret.getCode(), "MiscConfigServiceImpl: deleteARPEntry(): call deleteARPTableEntry() with node " + nodeID + " for arp_entry_ip " + ipAddress + " fails: " + ret.getDescription());
return new Status(ret.getCode(), "MiscConfigServiceImpl: setARPEntry(): call SNMPHandler.setARPEntry() for node " + nodeID + " for entry ipAddress " + ipAddress + " fail: " + status.getDescription());
return new Status(ret.getCode(), "SNMPHandler: setARPEntry(): call setARPEntryFromSwitch() for node " + nodeID + " arp entry ip " + ipAddress + " fails: " + ret.getDescription());
public Status setVLANPorts (Node node, Integer vlanID, List<NodeConnector> nodeConns){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS){ logger.debug("ERROR: setVLANPorts(): Fail to find node {} in DB", (Long)node.getID()); return status; } if(!isValidVlan(vlanID)) return new Status(StatusCode.NOTACCEPTABLE, "VLAN ID as " + vlanID + " is invalid, when set VLAN ports to node " + getNodeIP((Long)node.getID())); //check port number is in valid range for(int i = 0; i < nodeConns.size(); i++){ NodeConnector nc = (NodeConnector)(nodeConns.get(i)); int portNum = ((Short)(nc.getID())).intValue(); if(portNum < 1 || portNum > NUMBER_OF_PORT){//TODO: max port number as upper bound logger.debug("ERROR: VLANService.setVLANPorts(): Port number as " + portNum + " is invalid, when setVLANPorts to node " + getNodeIP((Long)node.getID()) + "'s VLAN " + vlanID); return new Status(StatusCode.NOTACCEPTABLE, "VLANService.setVLANPorts(): Port number as " + portNum + " is invalid, when setVLANPorts to node " + getNodeIP((Long)node.getID()) + "'s VLAN " + vlanID); } } if(isDummy) return new Status(StatusCode.SUCCESS); long nodeId = ((Long)node.getID()).longValue(); int vlanId = vlanID.intValue(); int portList[] = convertNcListToPortList(nodeConns); status = new SNMPHandler(cmethUtil).setVLANPorts(nodeId, vlanId, portList); if(!status.isSuccess()) logger.debug("ERROR: setVLANPorts(): Set VLAN Ports (node:" + nodeId + "(" + getNodeIP(nodeId) + ")" + ", vlanId:" + vlanId + ", portList:...) to switch fail: " + status); return status; }
return new Status(ret.getCode(), "SNMPHandler: setSTPPortState(): call setSTPPortState() for node " + nodeID + " port " + portNum + " isEnable " + isEnable + " fails: " + ret.getDescription());
public Status addVLANandSetPorts (Node node, Integer vlanID, String vlanName, List<NodeConnector> taggedNodeConns, List<NodeConnector> untaggedNodeConns){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS){ logger.debug("ERROR: addVLANandSetPorts(): Fail to find node {} in DB", (Long)node.getID()); return status; if(status.getCode() == StatusCode.UNSUPPORTED){ logger.debug("INFO: vendor-specific configuration of addVLANandSetPorts for node " + nodeId + " is not provided, so default configuration would be used"); status = new SNMPHandler(cmethUtil).addVLANandSetPorts(nodeId, vlanName, vlanId, portListT, portListU);
public Status addVLANandSetPorts (Node node, Integer vlanID, String vlanName, List<NodeConnector> nodeConns){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS){ logger.debug("ERROR: addVLANandSetPorts(): Fail to find node {} in DB", (Long)node.getID()); return status;
try { status = futureStatus.get(); if (status.getCode().equals(StatusCode.TIMEOUT)) {
public Status addVLAN(Node node, Integer vlanID, String vlanName){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS) return status; if(!isValidVlan(vlanID)){ logger.debug("ERROR: addVLAN(): VLAN ID as " + vlanID + " is invalid, when addVLAN to node " + getNodeIP((Long)node.getID())); return new Status(StatusCode.NOTACCEPTABLE, "VLANService.addVLAN(): VLAN ID as " + vlanID + " is invalid, when addVLAN to node " + getNodeIP((Long)node.getID())); } if(vlanName == null){ logger.debug("ERROR: addVLAN(): VLAN name is null, which is invalid, when addVLAN to node " + getNodeIP((Long)node.getID())); return new Status(StatusCode.NOTACCEPTABLE, "addVLAN(): VLAN name is null, which is invalid, when addVLAN to node " + getNodeIP((Long)node.getID())); } if(isDummy) return new Status(StatusCode.SUCCESS); long nodeId = ((Long)node.getID()).longValue(); int vlanId = vlanID.intValue(); status = new SNMPHandler(cmethUtil).addVLAN(nodeId, vlanId, vlanName); if(!status.isSuccess()) logger.debug("ERROR: addVLAN(): Add VLAN (node:" + nodeId + "(" + getNodeIP(nodeId) + ")" + ", vlanId:" + vlanId + ", vlanName:" + vlanName +") to switch fail: " + status); return status; }
try { status = futureStatus.get(); if (status.getCode().equals(StatusCode.TIMEOUT)) {
public Status setVLANPorts (Node node, Integer vlanID, List<NodeConnector> taggedNodeConns, List<NodeConnector> untaggedNodeConns){ Status status = checkNodeIpValid(node); if(status.getCode() != StatusCode.SUCCESS){ logger.debug("ERROR: setVLANPorts(): Fail to find node {} in DB", (Long)node.getID()); return status;
try { status = futureStatus.get(); if (status.getCode() .equals(StatusCode.TIMEOUT)) {
SNMPFlowMod msgMod = (SNMPFlowMod)msg; Status status = new SNMPHandler(cmethUtil).sendBySNMP(msgMod.getFlow(), msgMod.getCommand(), msg.getTargetSwitchID()); if(status.getCode() == StatusCode.SUCCESS) logger.trace("Message sent: {}", msg); return status;
/** * Convert failure status returned by the VTN manager into web application * exception. * * @param status Failure status. * @return An exception. */ protected final WebApplicationException getException(Status status) { assert !status.isSuccess(); StatusCode code = status.getCode(); String desc = status.getDescription(); if (code == StatusCode.BADREQUEST) { return new BadRequestException(desc); } if (code == StatusCode.CONFLICT) { return new ResourceConflictException(desc); } if (code == StatusCode.NOTACCEPTABLE) { return new NotAcceptableException(desc); } if (code == StatusCode.NOTFOUND) { throw new ResourceNotFoundException(desc); } String msg = RestMessages.INTERNALERROR + ": " + desc; return new InternalServerErrorException(msg); }
ci.println(); ci.println("Fail: Delete VLAN (node:" + nodeId + "(ip: " + getNodeIP(nodeId) + ")" + ", vlanId:" + vlanId + ") on switch fail: " + status); ci.println(" --> error code = " + status.getCode() + ": " + status.getDescription()); ci.println();