From 67bfe7ddf9ffb2eb219d773a786922890cc0bead Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20Su=C3=A1rez=20Ruiz?= Date: Tue, 10 Jan 2017 15:11:47 +0100 Subject: [PATCH] Changes in Xamarin Client to fox image erro with local Docker --- .../Helpers/ServicesHelper.cs | 36 +++++++++++++++++++ .../Services/Catalog/CatalogService.cs | 21 +---------- .../Services/IPAddress/IIPAddressService.cs | 7 ---- .../eShopOnContainers.Core.csproj | 2 +- .../Services/IPAddress/IPAddressService.cs | 25 ------------- .../eShopOnContainers.Droid.csproj | 1 - .../eShopOnContainers.Windows.csproj | 4 +-- .../eShopOnContainers.iOS.csproj | 4 +-- 8 files changed, 40 insertions(+), 60 deletions(-) create mode 100644 src/Mobile/eShopOnContainers/eShopOnContainers.Core/Helpers/ServicesHelper.cs delete mode 100644 src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/IPAddress/IIPAddressService.cs delete mode 100644 src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Services/IPAddress/IPAddressService.cs diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Helpers/ServicesHelper.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Helpers/ServicesHelper.cs new file mode 100644 index 000000000..cabe539a1 --- /dev/null +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Helpers/ServicesHelper.cs @@ -0,0 +1,36 @@ +using eShopOnContainers.Core.Models.Catalog; +using eShopOnContainers.ViewModels.Base; +using System.Collections.Generic; +using System.Text.RegularExpressions; + +namespace eShopOnContainers.Core.Helpers +{ + public static class ServicesHelper + { + public static void FixCatalogItemPictureUri(IEnumerable catalogItems) + { + if(catalogItems == null) + { + return; + } + + if (!ViewModelLocator.Instance.UseMockService + && Settings.UrlBase != GlobalSetting.DefaultEndpoint) + { + foreach (var catalogItem in catalogItems) + { + Regex ip = new Regex(@"\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b"); + MatchCollection serverResult = ip.Matches(catalogItem.PictureUri); + MatchCollection localResult = ip.Matches(Settings.UrlBase); + + if (serverResult.Count != -1 && localResult.Count != -1) + { + var serviceIp = serverResult[0].Value; + var localIp = localResult[0].Value; + catalogItem.PictureUri = catalogItem.PictureUri.Replace(serviceIp, localIp); + } + } + } + } + } +} diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Catalog/CatalogService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Catalog/CatalogService.cs index f9b38f7aa..a526469b6 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Catalog/CatalogService.cs +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/Catalog/CatalogService.cs @@ -5,11 +5,7 @@ using eShopOnContainers.Core.Models.Catalog; using eShopOnContainers.Core.Services.RequestProvider; using eShopOnContainers.Core.Extensions; using System.Collections.Generic; -using eShopOnContainers.ViewModels.Base; using eShopOnContainers.Core.Helpers; -using Xamarin.Forms; -using eShopOnContainers.Core.Services.IPAddress; -using System.Text.RegularExpressions; namespace eShopOnContainers.Core.Services.Catalog { @@ -61,22 +57,7 @@ namespace eShopOnContainers.Core.Services.Catalog if (catalog?.Data != null) { - // TODO: Experimental - if (!ViewModelLocator.Instance.UseMockService && Settings.UrlBase != GlobalSetting.DefaultEndpoint) - { - foreach (var catalogItem in catalog?.Data) - { - //string ipaddress = DependencyService.Get().GetIPAddress(); - Regex ip = new Regex(@"\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b"); - MatchCollection result = ip.Matches(catalogItem.PictureUri); - - if (result.Count != -1) - { - var serviceIp = result[0].Value; - catalogItem.PictureUri = catalogItem.PictureUri.Replace(serviceIp, Settings.UrlBase); - } - } - } + ServicesHelper.FixCatalogItemPictureUri(catalog?.Data); return catalog?.Data.ToObservableCollection(); } diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/IPAddress/IIPAddressService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/IPAddress/IIPAddressService.cs deleted file mode 100644 index 3815d4948..000000000 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/Services/IPAddress/IIPAddressService.cs +++ /dev/null @@ -1,7 +0,0 @@ -namespace eShopOnContainers.Core.Services.IPAddress -{ - public interface IIPAddressService - { - string GetIPAddress(); - } -} diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj index 464ac10a9..49e99aa5c 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Core/eShopOnContainers.Core.csproj @@ -66,6 +66,7 @@ + @@ -94,7 +95,6 @@ - diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Services/IPAddress/IPAddressService.cs b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Services/IPAddress/IPAddressService.cs deleted file mode 100644 index db5b99764..000000000 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/Services/IPAddress/IPAddressService.cs +++ /dev/null @@ -1,25 +0,0 @@ -using eShopOnContainers.Core.Services.IPAddress; -using eShopOnContainers.Droid.Services.IPAddress; -using System.Net; -using Xamarin.Forms; - -[assembly: Dependency(typeof(IPAddressService))] -namespace eShopOnContainers.Droid.Services.IPAddress -{ - public class IPAddressService : IIPAddressService - { - public string GetIPAddress() - { - System.Net.IPAddress[] adresses = Dns.GetHostAddresses(Dns.GetHostName()); - - if (adresses != null && adresses[0] != null) - { - return adresses[0].ToString(); - } - else - { - return null; - } - } - } -} \ No newline at end of file diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj index 5ca6e334d..6e6ab0b31 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Droid/eShopOnContainers.Droid.csproj @@ -231,7 +231,6 @@ - diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/eShopOnContainers.Windows.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/eShopOnContainers.Windows.csproj index 14d889a32..84f4c0f5a 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/eShopOnContainers.Windows.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.Windows/eShopOnContainers.Windows.csproj @@ -178,9 +178,7 @@ eShopOnContainers.Core - - - + 14.0 diff --git a/src/Mobile/eShopOnContainers/eShopOnContainers.iOS/eShopOnContainers.iOS.csproj b/src/Mobile/eShopOnContainers/eShopOnContainers.iOS/eShopOnContainers.iOS.csproj index 9ee6c4850..d97943c2e 100644 --- a/src/Mobile/eShopOnContainers/eShopOnContainers.iOS/eShopOnContainers.iOS.csproj +++ b/src/Mobile/eShopOnContainers/eShopOnContainers.iOS/eShopOnContainers.iOS.csproj @@ -429,9 +429,7 @@ eShopOnContainers.Core - - - +