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.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
	 Thomas-Leung2021
					Thomas-Leung2021