public bool PopulateApplicaitonControlMap() { _upsManagerMap = (UpsManagerMap)_cache.Get(ShipmentApplicaotinHelperType.UpsManagerMap, _mainWindow); _upsManagerShellMap = (UpsManagerShellMap)_cache.Get(ShipmentApplicaotinHelperType.UpsManagerShellMap, _mainWindow); _upsManagerShellMap.ClearUIForStartInput(); _upsManagerMap.Map(); if (NeedClearing(_upsManagerMap.ShipmentAutomationControls)) { _messagesProvider.Info(InformationResources.WARN_CURRENT_SHIPMENT_SCREEN_ISNOT_EMPTY); return(false); } _messagesProvider.Log(InformationResources.INFO_UPS_INIT_CONTROL_MAP); return(true); }
public object Get(ShipmentApplicaotinHelperType name, AutomationElement rootAutomationElement) { if (ApplicationMapObjects.ContainsKey(name) && ApplicationMapObjects[name].GetNativeWindowHandle() == rootAutomationElement.Current.NativeWindowHandle) { return(ApplicationMapObjects[name]); } object applicationHelper; switch (name) { case ShipmentApplicaotinHelperType.FedexShipManagerMap: applicationHelper = new FedexShipManagerMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.FedexShipManagerMap, (ShipmentAutomationMapBase)applicationHelper); break; case ShipmentApplicaotinHelperType.FedExMultiPieceShipmentMap: applicationHelper = new FedExMultiPieceShipmentMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.FedExMultiPieceShipmentMap, (ShipmentAutomationMapBase)applicationHelper); break; case ShipmentApplicaotinHelperType.UpsManagerMap: applicationHelper = new UpsManagerMap(new ShipmentWinApiControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.UpsManagerMap, (ShipmentAutomationMapBase)applicationHelper); break; case ShipmentApplicaotinHelperType.FedExShipAlertTabMap: applicationHelper = new FedExShipAlertTabMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.FedExShipAlertTabMap, (ShipmentAutomationMapBase)applicationHelper); break; case ShipmentApplicaotinHelperType.FedExShipManagerShellMap: applicationHelper = new FedExShipMahagerShellMap(new ShipmentAutomationUIControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.FedExShipManagerShellMap, (ShipmentAutomationMapBase)applicationHelper); break; case ShipmentApplicaotinHelperType.UpsManagerShellMap: applicationHelper = new UpsManagerShellMap(new ShipmentWinApiControlHelper(), rootAutomationElement, _messagesProvider); Set(ShipmentApplicaotinHelperType.UpsManagerShellMap, (ShipmentAutomationMapBase)applicationHelper); break; default: throw new ArgumentOutOfRangeException(nameof(name), name, string.Format(InformationResources.ERROR_CREATE_APPLICATION_MAP_CACHE, nameof(name))); } return(applicationHelper); }