Fix connection issues.
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -37,6 +37,11 @@ namespace MarketData.Service
|
||||
return marketDataServiceClient;
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// SetUrl
|
||||
/// </summary>
|
||||
/// <param name="url">The fully qualified url http://100.0.0.0:8000.</param>
|
||||
/// <param name="user">The user.</param>
|
||||
public void SetUrl(String url,String user)
|
||||
{
|
||||
lock(this)
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
using System;
|
||||
using Xamarin.Forms;
|
||||
using Xamarin.Forms.Xaml;
|
||||
using Navigator.Services;
|
||||
using Navigator.Views;
|
||||
using MarketData.Service;
|
||||
@@ -15,31 +14,33 @@ namespace Navigator
|
||||
{
|
||||
InitializeComponent();
|
||||
DependencyService.Register<MockDataStore>();
|
||||
if(!DesignMode.IsDesignModeEnabled)
|
||||
{
|
||||
if(MarketDataServiceClient.IsWiFiNetwork() && MarketDataServiceClient.GetInstance().Ping(AppSettingsManager.Settings["Service_Local"]))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(AppSettingsManager.Settings["Service_Local"],AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
String ipAddress=IPCache.GetIPAddress();
|
||||
InitializeConnection();
|
||||
|
||||
if(null!=ipAddress)
|
||||
{
|
||||
ipAddress= AppSettingsManager.Settings["Service_Prefix"]+ipAddress+ AppSettingsManager.Settings["Service_Postfix"];
|
||||
if(MarketDataServiceClient.GetInstance().Ping(ipAddress))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ipAddress, AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
}
|
||||
else if(MarketDataServiceClient.GetInstance().Ping(AppSettingsManager.Settings["Service_Network"]))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(AppSettingsManager.Settings["Service_Network"], AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
MainPage = new MainPage();
|
||||
}
|
||||
|
||||
private void InitializeConnection()
|
||||
{
|
||||
String ipAddress=IPCache.GetIPAddress();
|
||||
if (null != ipAddress && MarketDataServiceClient.GetInstance().Ping(ToUrl(ipAddress)))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ToUrl(ipAddress), AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
else if (MarketDataServiceClient.IsWiFiNetwork() && MarketDataServiceClient.GetInstance().Ping(ToUrl(AppSettingsManager.Settings["Service_Local"])))
|
||||
{
|
||||
IPCache.SaveIPAddress(AppSettingsManager.Settings["Service_Local"]);
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ToUrl(AppSettingsManager.Settings["Service_Local"]), AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
else if (MarketDataServiceClient.GetInstance().Ping(ToUrl(AppSettingsManager.Settings["Service_Network"])))
|
||||
{
|
||||
IPCache.SaveIPAddress(AppSettingsManager.Settings["Service_Network"]);
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ToUrl(AppSettingsManager.Settings["Service_Network"]), AppSettingsManager.Settings["ServiceUser"]);
|
||||
}
|
||||
}
|
||||
MainPage = new MainPage();
|
||||
|
||||
private String ToUrl(String ipAddress)
|
||||
{
|
||||
return AppSettingsManager.Settings["Service_Prefix"] + ipAddress + AppSettingsManager.Settings["Service_Postfix"];
|
||||
}
|
||||
|
||||
protected override void OnStart()
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
{
|
||||
"Service_Local": "http://10.0.0.73:8000",
|
||||
"Service_Network" : "http://73.56.77.171:8000",
|
||||
"Service_Postfix" : ":8000",
|
||||
"Service_Prefix" : "http://",
|
||||
"ServiceUser" : "sean"
|
||||
"Service_Local_Obsolete": "http://10.0.0.240:8000",
|
||||
"Service_Network_Obsolete": "http://diversified-software.com:8000",
|
||||
"Service_Local": "10.0.0.240",
|
||||
"Service_Network": "diversified-software.com",
|
||||
"Service_Postfix": ":8000",
|
||||
"Service_Prefix": "http://",
|
||||
"ServiceUser": "sean"
|
||||
}
|
||||
@@ -20,6 +20,11 @@ namespace Navigator.Utils
|
||||
private IPCache()
|
||||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// SaveIPAddress
|
||||
/// </summary>
|
||||
/// <param name="ipAddress">The ipaddress. Example 10.0.0.201 diversfified-software.com</param>
|
||||
public static void SaveIPAddress(String ipAddress)
|
||||
{
|
||||
StreamWriter streamWriter=File.AppendText(pathFileName);
|
||||
|
||||
@@ -16,6 +16,7 @@ namespace Navigator.Utils
|
||||
{
|
||||
private static DateTime epoch = DateTime.Parse("01-01-0001");
|
||||
private static TimeSpan oneDay=new TimeSpan(1,0,0,0);
|
||||
|
||||
public static String Pad(string str, char filler, int length)
|
||||
{
|
||||
int stringLength = str.Length;
|
||||
|
||||
@@ -1,19 +1,9 @@
|
||||
using System;
|
||||
using System.Windows.Input;
|
||||
using Xamarin.Essentials;
|
||||
using Xamarin.Forms;
|
||||
using Navigator.Integration;
|
||||
using System.Net.Http;
|
||||
using System.Collections.Generic;
|
||||
using MarketData.MarketDataModel;
|
||||
using MarketData.Service;
|
||||
using Newtonsoft.Json;
|
||||
using System.Text;
|
||||
using System.Net.Http.Headers;
|
||||
using Navigator.Core;
|
||||
using System.ComponentModel;
|
||||
using Navigator.Utils;
|
||||
using System.IO;
|
||||
|
||||
namespace Navigator.ViewModels
|
||||
{
|
||||
@@ -63,10 +53,11 @@ namespace Navigator.ViewModels
|
||||
return onResetCommand;
|
||||
}
|
||||
}
|
||||
|
||||
public void HandleIPAddress()
|
||||
{
|
||||
if(String.IsNullOrEmpty(ipAddress))return;
|
||||
String url=AppSettingsManager.Settings["Service_Prefix"]+ipAddress+AppSettingsManager.Settings["Service_Postfix"];
|
||||
String url=ToUrl(ipAddress);
|
||||
Status="ping "+url+" ...";
|
||||
if(MarketDataServiceClient.GetInstance().Ping(url))
|
||||
{
|
||||
@@ -77,43 +68,54 @@ namespace Navigator.ViewModels
|
||||
else Status="ping failed";
|
||||
Message=MarketDataServiceClient.GetInstance().GetBaseUri();
|
||||
}
|
||||
|
||||
public void HandleReset()
|
||||
{
|
||||
Status="";
|
||||
Status="ping "+AppSettingsManager.Settings["Service_Local"]+" ...";
|
||||
Status="ping "+ToUrl(AppSettingsManager.Settings["Service_Local"])+" ...";
|
||||
IPAddress="";
|
||||
if(MarketDataServiceClient.IsWiFiNetwork() && MarketDataServiceClient.GetInstance().Ping(AppSettingsManager.Settings["Service_Local"]))
|
||||
if(MarketDataServiceClient.IsWiFiNetwork() && MarketDataServiceClient.GetInstance().Ping(ToUrl(AppSettingsManager.Settings["Service_Local"])))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(AppSettingsManager.Settings["Service_Local"],AppSettingsManager.Settings["ServiceUser"]);
|
||||
Message=AppSettingsManager.Settings["Service_Local"];
|
||||
Status="ping succeeded";
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ToUrl(AppSettingsManager.Settings["Service_Local"]),AppSettingsManager.Settings["ServiceUser"]);
|
||||
Message=ToUrl(AppSettingsManager.Settings["Service_Local"]);
|
||||
IPCache.SaveIPAddress(AppSettingsManager.Settings["Service_Local"]);
|
||||
Status="ping succeeded, connection reset to "+ToUrl(AppSettingsManager.Settings["Service_Local"]);
|
||||
return;
|
||||
}
|
||||
else status="ping failed.";
|
||||
Status="ping "+AppSettingsManager.Settings["Service_Network"]+" ...";
|
||||
if(MarketDataServiceClient.GetInstance().Ping(AppSettingsManager.Settings["Service_Network"]))
|
||||
Status="ping "+ToUrl(AppSettingsManager.Settings["Service_Network"])+" ...";
|
||||
if(MarketDataServiceClient.GetInstance().Ping(ToUrl(AppSettingsManager.Settings["Service_Network"])))
|
||||
{
|
||||
MarketDataServiceClient.GetInstance().SetUrl(AppSettingsManager.Settings["Service_Network"],AppSettingsManager.Settings["ServiceUser"]);
|
||||
Message=AppSettingsManager.Settings["Service_Network"];
|
||||
Status="ping succeeded";
|
||||
MarketDataServiceClient.GetInstance().SetUrl(ToUrl(AppSettingsManager.Settings["Service_Network"]),AppSettingsManager.Settings["ServiceUser"]);
|
||||
Message=ToUrl(AppSettingsManager.Settings["Service_Network"]);
|
||||
IPCache.SaveIPAddress(AppSettingsManager.Settings["Service_Network"]);
|
||||
Status="ping succeeded, connection reset to "+ToUrl(AppSettingsManager.Settings["Service_Network"]);
|
||||
}
|
||||
else Status="ping failed";
|
||||
}
|
||||
|
||||
public String Message
|
||||
{
|
||||
get { return message; }
|
||||
set { SetProperty(ref message, value); }
|
||||
}
|
||||
|
||||
public String Status
|
||||
{
|
||||
get{return status;}
|
||||
set{SetProperty(ref status,value);}
|
||||
}
|
||||
|
||||
public String IPAddress
|
||||
{
|
||||
get{return ipAddress;}
|
||||
set{SetProperty(ref ipAddress,value);}
|
||||
|
||||
}
|
||||
|
||||
private String ToUrl(String ipAddress)
|
||||
{
|
||||
return AppSettingsManager.Settings["Service_Prefix"] + ipAddress + AppSettingsManager.Settings["Service_Postfix"];
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
@@ -66,7 +66,7 @@
|
||||
<nc:EventToCommandBehavior EventName="Completed" Command="{Binding IPAddressCommand}" />
|
||||
</Entry.Behaviors>
|
||||
</nc:EntryWithCustomKeyboardReturnButton>
|
||||
<Label Text="Enter ip address and hit enter (xxx.xxx.xxx.xxx):" HorizontalOptions="Center"/>
|
||||
<Label Text="Enter ip address and hit enter/done (xxx.xxx.xxx.xxx):" HorizontalOptions="Center"/>
|
||||
<Button Text="Reset">
|
||||
<Button.Behaviors>
|
||||
<nc:EventToCommandBehavior EventName="Clicked" Command="{Binding OnResetCommand,Mode=OneWay}"/>
|
||||
|
||||
Reference in New Issue
Block a user