mirror of
https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
synced 2025-11-03 03:57:54 +00:00
[NETEXP-2959] Redo processBlinkRequest() logic
This commit is contained in:
@@ -35,6 +35,7 @@ import com.telecominfraproject.wlan.core.server.container.ConnectorProperties;
|
|||||||
import com.telecominfraproject.wlan.datastore.exceptions.DsEntityNotFoundException;
|
import com.telecominfraproject.wlan.datastore.exceptions.DsEntityNotFoundException;
|
||||||
import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes;
|
import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWBaseCommand;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWBaseCommand;
|
||||||
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWBlinkRequest;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWChangeRedirectorHost;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWChangeRedirectorHost;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWClientBlocklistChangeNotification;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWClientBlocklistChangeNotification;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWCloseSessionRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWCloseSessionRequest;
|
||||||
@@ -42,7 +43,6 @@ import com.telecominfraproject.wlan.equipmentgateway.models.CEGWCommandResultCod
|
|||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWConfigChangeNotification;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWConfigChangeNotification;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWFirmwareDownloadRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWFirmwareDownloadRequest;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWFirmwareFlashRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWFirmwareFlashRequest;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWLedRequest;
|
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWNewChannelRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWNewChannelRequest;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWCellSizeAttributesRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWCellSizeAttributesRequest;
|
||||||
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWRadioResetRequest;
|
import com.telecominfraproject.wlan.equipmentgateway.models.CEGWRadioResetRequest;
|
||||||
@@ -174,8 +174,8 @@ public class OpensyncCloudGatewayController {
|
|||||||
case CheckRouting:
|
case CheckRouting:
|
||||||
ret.add(checkEquipmentRouting(session, (CEGWRouteCheck) command));
|
ret.add(checkEquipmentRouting(session, (CEGWRouteCheck) command));
|
||||||
break;
|
break;
|
||||||
case LedRequest:
|
case BlinkRequest:
|
||||||
ret.add(processLedRequest(session, (CEGWLedRequest) command));
|
ret.add(processBlinkRequest(session, (CEGWBlinkRequest) command));
|
||||||
break;
|
break;
|
||||||
case ChangeRedirectorHost:
|
case ChangeRedirectorHost:
|
||||||
ret.add(processChangeRedirector(session, (CEGWChangeRedirectorHost) command));
|
ret.add(processChangeRedirector(session, (CEGWChangeRedirectorHost) command));
|
||||||
@@ -319,8 +319,8 @@ public class OpensyncCloudGatewayController {
|
|||||||
new EquipmentCommandResponse(CEGWCommandResultCode.Success, "Received Command " + command.getCommandType() + " for " + inventoryId, command,
|
new EquipmentCommandResponse(CEGWCommandResultCode.Success, "Received Command " + command.getCommandType() + " for " + inventoryId, command,
|
||||||
registeredGateway == null ? null : registeredGateway.getHostname(), registeredGateway == null ? -1 : registeredGateway.getPort());
|
registeredGateway == null ? null : registeredGateway.getHostname(), registeredGateway == null ? -1 : registeredGateway.getPort());
|
||||||
|
|
||||||
if (command instanceof CEGWLedRequest) {
|
if (command instanceof CEGWBlinkRequest) {
|
||||||
String resultDetails = tipwlanOvsdbClient.processLedRequest(inventoryId, ((CEGWLedRequest)command).getLedStatus());
|
String resultDetails = tipwlanOvsdbClient.processBlinkRequest(inventoryId, ((CEGWBlinkRequest)command).getBlinkAllLEDs());
|
||||||
response.setResultDetail(resultDetails);
|
response.setResultDetail(resultDetails);
|
||||||
} else if (command instanceof CEGWConfigChangeNotification) {
|
} else if (command instanceof CEGWConfigChangeNotification) {
|
||||||
tipwlanOvsdbClient.processConfigChanged(inventoryId);
|
tipwlanOvsdbClient.processConfigChanged(inventoryId);
|
||||||
@@ -421,7 +421,7 @@ public class OpensyncCloudGatewayController {
|
|||||||
return sendMessage(session, command.getInventoryId(), command);
|
return sendMessage(session, command.getInventoryId(), command);
|
||||||
}
|
}
|
||||||
|
|
||||||
private EquipmentCommandResponse processLedRequest(OvsdbSession session, CEGWLedRequest command) {
|
private EquipmentCommandResponse processBlinkRequest(OvsdbSession session, CEGWBlinkRequest command) {
|
||||||
|
|
||||||
return sendMessage(session, command.getInventoryId(), command);
|
return sendMessage(session, command.getInventoryId(), command);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ public interface OvsdbClientInterface {
|
|||||||
|
|
||||||
String stopDebugEngine(String apId);
|
String stopDebugEngine(String apId);
|
||||||
|
|
||||||
String processLedRequest(String apId, LedStatus ledStatus);
|
String processBlinkRequest(String apId, boolean blinkAllLEDs);
|
||||||
|
|
||||||
void processConfigChanged(String apId);
|
void processConfigChanged(String apId);
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ import com.netflix.servo.monitor.MonitorConfig;
|
|||||||
import com.netflix.servo.monitor.Monitors;
|
import com.netflix.servo.monitor.Monitors;
|
||||||
import com.netflix.servo.tag.TagList;
|
import com.netflix.servo.tag.TagList;
|
||||||
import com.telecominfraproject.wlan.cloudmetrics.CloudMetricsTags;
|
import com.telecominfraproject.wlan.cloudmetrics.CloudMetricsTags;
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.LedStatus;
|
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
import com.telecominfraproject.wlan.core.model.equipment.MacAddress;
|
||||||
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
import com.telecominfraproject.wlan.core.model.equipment.RadioType;
|
||||||
import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes;
|
import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes;
|
||||||
@@ -291,13 +290,13 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface {
|
|||||||
return ovsdbDao.changeRedirectorAddress(ovsdbSession.getOvsdbClient(), apId, newRedirectorAddress);
|
return ovsdbDao.changeRedirectorAddress(ovsdbSession.getOvsdbClient(), apId, newRedirectorAddress);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String processLedRequest(String apId, LedStatus ledStatus) {
|
public String processBlinkRequest(String apId, boolean blinkAllLEDs) {
|
||||||
OvsdbSession ovsdbSession = ovsdbSessionMapInterface.getSession(apId);
|
OvsdbSession ovsdbSession = ovsdbSessionMapInterface.getSession(apId);
|
||||||
if (ovsdbSession == null) {
|
if (ovsdbSession == null) {
|
||||||
throw new IllegalStateException("AP with id " + apId + " is not connected");
|
throw new IllegalStateException("AP with id " + apId + " is not connected");
|
||||||
}
|
}
|
||||||
|
|
||||||
return ovsdbDao.processLedRequest(ovsdbSession.getOvsdbClient(), apId, ledStatus);
|
return ovsdbDao.processBlinkRequest(ovsdbSession.getOvsdbClient(), apId, blinkAllLEDs);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -90,8 +90,8 @@ public class OvsdbDao extends OvsdbDaoBase {
|
|||||||
public void configureNode(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) {
|
public void configureNode(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) {
|
||||||
configureNtpServer(ovsdbClient, opensyncAPConfig);
|
configureNtpServer(ovsdbClient, opensyncAPConfig);
|
||||||
configureSyslog(ovsdbClient, opensyncAPConfig);
|
configureSyslog(ovsdbClient, opensyncAPConfig);
|
||||||
processLedRequest(ovsdbClient, opensyncAPConfig.getCustomerEquipment().getInventoryId(),
|
processBlinkRequest(ovsdbClient, opensyncAPConfig.getCustomerEquipment().getInventoryId(),
|
||||||
((ApElementConfiguration) opensyncAPConfig.getCustomerEquipment().getDetails()).getLedStatus());
|
((ApElementConfiguration) opensyncAPConfig.getCustomerEquipment().getDetails()).isBlinkAllLEDs());
|
||||||
}
|
}
|
||||||
|
|
||||||
void configureNtpServer(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) {
|
void configureNtpServer(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) {
|
||||||
@@ -242,8 +242,8 @@ public class OvsdbDao extends OvsdbDaoBase {
|
|||||||
ovsdbStats.updateEventReportingInterval(ovsdbClient, collectionIntervalSecEvent);
|
ovsdbStats.updateEventReportingInterval(ovsdbClient, collectionIntervalSecEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String processLedRequest(OvsdbClient ovsdbClient, String apId, LedStatus sad) {
|
public String processBlinkRequest(OvsdbClient ovsdbClient, String apId, boolean blinkAllLEDs) {
|
||||||
return ovsdbNodeConfig.processLedRequest(ovsdbClient, apId, sad);
|
return ovsdbNodeConfig.processBlinkRequest(ovsdbClient, apId, blinkAllLEDs);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -121,25 +121,19 @@ public class OvsdbNodeConfig extends OvsdbDaoBase {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public String processLedRequest(OvsdbClient ovsdbClient, String apId, LedStatus ledStatus) {
|
public String processBlinkRequest(OvsdbClient ovsdbClient, String apId, boolean blinkAllLEDs) {
|
||||||
|
|
||||||
String ret = null;
|
String ret = null;
|
||||||
try {
|
try {
|
||||||
|
|
||||||
LOG.debug("processLEDRequest set LEDs status to {}", ledStatus);
|
LOG.debug("processLEDRequest set LEDs status to {}", blinkAllLEDs);
|
||||||
Map<String, Value> columns = new HashMap<>();
|
Map<String, Value> columns = new HashMap<>();
|
||||||
if (ledStatus == LedStatus.led_on) {
|
if (blinkAllLEDs) {
|
||||||
columns.put("module", new Atom<>("led"));
|
|
||||||
columns.put("key", new Atom<>("led_state"));
|
|
||||||
columns.put("value", new Atom<>("on"));
|
|
||||||
} else if (ledStatus == LedStatus.led_off || ledStatus == LedStatus.UNKNOWN){
|
|
||||||
columns.put("module", new Atom<>("led"));
|
|
||||||
columns.put("key", new Atom<>("led_state"));
|
|
||||||
columns.put("value", new Atom<>("off"));
|
|
||||||
} else {
|
|
||||||
columns.put("module", new Atom<>("led"));
|
columns.put("module", new Atom<>("led"));
|
||||||
columns.put("key", new Atom<>("led_blink"));
|
columns.put("key", new Atom<>("led_blink"));
|
||||||
columns.put("value", new Atom<>("on"));
|
} else {
|
||||||
|
columns.put("module", new Atom<>("led"));
|
||||||
|
columns.put("key", new Atom<>("led_state"));
|
||||||
}
|
}
|
||||||
List<Operation> operations = new ArrayList<>();
|
List<Operation> operations = new ArrayList<>();
|
||||||
operations.add(new Update(nodeConfigTable, List.of(new Condition("module", Function.EQUALS, new Atom<>("led"))), new Row(columns)));
|
operations.add(new Update(nodeConfigTable, List.of(new Condition("module", Function.EQUALS, new Atom<>("led"))), new Row(columns)));
|
||||||
|
|||||||
Reference in New Issue
Block a user