mirror of
				https://github.com/Telecominfraproject/wlan-cloud-opensync-controller.git
				synced 2025-10-31 10:37:51 +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.equipment.models.CellSizeAttributes; | ||||
| 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.CEGWClientBlocklistChangeNotification; | ||||
| 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.CEGWFirmwareDownloadRequest; | ||||
| 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.CEGWCellSizeAttributesRequest; | ||||
| import com.telecominfraproject.wlan.equipmentgateway.models.CEGWRadioResetRequest; | ||||
| @@ -174,8 +174,8 @@ public class OpensyncCloudGatewayController { | ||||
|                     case CheckRouting: | ||||
|                         ret.add(checkEquipmentRouting(session, (CEGWRouteCheck) command)); | ||||
|                         break; | ||||
|                     case LedRequest: | ||||
|                         ret.add(processLedRequest(session, (CEGWLedRequest) command)); | ||||
|                     case BlinkRequest: | ||||
|                         ret.add(processBlinkRequest(session, (CEGWBlinkRequest) command)); | ||||
|                         break; | ||||
|                     case ChangeRedirectorHost: | ||||
|                         ret.add(processChangeRedirector(session, (CEGWChangeRedirectorHost) command)); | ||||
| @@ -319,8 +319,8 @@ public class OpensyncCloudGatewayController { | ||||
|                 new EquipmentCommandResponse(CEGWCommandResultCode.Success, "Received Command " + command.getCommandType() + " for " + inventoryId, command, | ||||
|                         registeredGateway == null ? null : registeredGateway.getHostname(), registeredGateway == null ? -1 : registeredGateway.getPort()); | ||||
|  | ||||
|         if (command instanceof CEGWLedRequest) { | ||||
|             String resultDetails = tipwlanOvsdbClient.processLedRequest(inventoryId, ((CEGWLedRequest)command).getLedStatus());  | ||||
|         if (command instanceof CEGWBlinkRequest) { | ||||
|             String resultDetails = tipwlanOvsdbClient.processBlinkRequest(inventoryId, ((CEGWBlinkRequest)command).getBlinkAllLEDs());  | ||||
|             response.setResultDetail(resultDetails); | ||||
|         } else if (command instanceof CEGWConfigChangeNotification) { | ||||
|             tipwlanOvsdbClient.processConfigChanged(inventoryId); | ||||
| @@ -421,7 +421,7 @@ public class OpensyncCloudGatewayController { | ||||
|         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); | ||||
|     } | ||||
|   | ||||
| @@ -19,7 +19,7 @@ public interface OvsdbClientInterface { | ||||
|  | ||||
|     String stopDebugEngine(String apId); | ||||
|      | ||||
|     String processLedRequest(String apId, LedStatus ledStatus); | ||||
|     String processBlinkRequest(String apId, boolean blinkAllLEDs); | ||||
|  | ||||
|     void processConfigChanged(String apId); | ||||
|  | ||||
|   | ||||
| @@ -9,7 +9,6 @@ import com.netflix.servo.monitor.MonitorConfig; | ||||
| import com.netflix.servo.monitor.Monitors; | ||||
| import com.netflix.servo.tag.TagList; | ||||
| 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.RadioType; | ||||
| import com.telecominfraproject.wlan.equipment.models.CellSizeAttributes; | ||||
| @@ -291,13 +290,13 @@ public class TipWlanOvsdbClient implements OvsdbClientInterface { | ||||
|         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); | ||||
|         if (ovsdbSession == null) { | ||||
|             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 | ||||
|   | ||||
| @@ -90,8 +90,8 @@ public class OvsdbDao extends OvsdbDaoBase { | ||||
|     public void configureNode(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) { | ||||
|         configureNtpServer(ovsdbClient, opensyncAPConfig); | ||||
|         configureSyslog(ovsdbClient, opensyncAPConfig); | ||||
|         processLedRequest(ovsdbClient, opensyncAPConfig.getCustomerEquipment().getInventoryId(), | ||||
|                 ((ApElementConfiguration) opensyncAPConfig.getCustomerEquipment().getDetails()).getLedStatus()); | ||||
|         processBlinkRequest(ovsdbClient, opensyncAPConfig.getCustomerEquipment().getInventoryId(), | ||||
|                 ((ApElementConfiguration) opensyncAPConfig.getCustomerEquipment().getDetails()).isBlinkAllLEDs()); | ||||
|     } | ||||
|      | ||||
|     void configureNtpServer(OvsdbClient ovsdbClient, OpensyncAPConfig opensyncAPConfig) { | ||||
| @@ -242,8 +242,8 @@ public class OvsdbDao extends OvsdbDaoBase { | ||||
|         ovsdbStats.updateEventReportingInterval(ovsdbClient, collectionIntervalSecEvent); | ||||
|     } | ||||
|  | ||||
|     public String processLedRequest(OvsdbClient ovsdbClient, String apId, LedStatus sad) { | ||||
|         return ovsdbNodeConfig.processLedRequest(ovsdbClient, apId, sad); | ||||
|     public String processBlinkRequest(OvsdbClient ovsdbClient, String apId, boolean blinkAllLEDs) { | ||||
|         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; | ||||
|         try { | ||||
|  | ||||
|             LOG.debug("processLEDRequest set LEDs status to {}", ledStatus); | ||||
|             LOG.debug("processLEDRequest set LEDs status to {}", blinkAllLEDs); | ||||
|             Map<String, Value> columns = new HashMap<>(); | ||||
|             if (ledStatus == LedStatus.led_on) { | ||||
|                 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 { | ||||
|             if (blinkAllLEDs) { | ||||
|                 columns.put("module", new Atom<>("led")); | ||||
|                 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<>(); | ||||
|             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
	 Thomas-Leung2021
					Thomas-Leung2021