Merge branch 'ConnectionController' of https://sourcecode.socialcoding.bosch.com/scm/~hpl2fe/polychat into ConnectionController

This commit is contained in:
SCM6WE
2021-09-23 12:57:00 +02:00
7 changed files with 35 additions and 11 deletions

View File

@@ -145,9 +145,11 @@ namespace PolyChat
private bool isInConnections(string IP)
{
if (Connections.ContainsKey(IP))
return true;
return false;
return Connections.ContainsKey(IP);
}
public bool IsConnected(string ip)
{
return Connections.ContainsKey(ip) && Connections[ip].IsConnected();
}
public static string getIP()
@@ -195,7 +197,6 @@ namespace PolyChat
ip = ip.Substring(0, ip.Length - 4);
Debug.WriteLine($"-{ip}");
Debug.WriteLine(jsonArr);
Connect(ip);
UIController.OnIncomingConnection(ip);
UIController.OnIncomingMessages(ip, jsonArr);
}

View File

@@ -11,6 +11,7 @@ using System.Threading.Tasks;
using Windows.UI.Core;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Data;
// The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
@@ -83,7 +84,7 @@ namespace PolyChat
var result = await dialog.ShowAsync();
if (result == ContentDialogResult.Primary)
{
string ip = IP.GetIPfromCode(dialog.getValue());
string ip = IP.GetIPFromCode(dialog.getValue());
Controller.Connect(ip);
Partners.Add(new ChatPartner(
"Connecting...",
@@ -136,6 +137,7 @@ namespace PolyChat
switch (type)
{
case "username":
Debug.WriteLine($"! username change for {sendingPartner.Code} -> {content}");
sendingPartner.SetName(Name);
break;
default:
@@ -190,6 +192,7 @@ namespace PolyChat
listViewMessages.ItemsSource = selectedPartner.Messages;
selectedPartnerName.Text = selectedPartner.Name;
updateNoChatSelected();
if (!Controller.IsConnected(code)) Controller.Connect(code);
}
private void OnKeyUp(object sender, Windows.UI.Xaml.Input.KeyRoutedEventArgs e)

View File

@@ -1,14 +1,17 @@
using SocketIOSharp.Server.Client;
using System.Collections.ObjectModel;
using System.ComponentModel;
using System.Runtime.CompilerServices;
namespace PolyChat.Models
{
public class ChatPartner
public class ChatPartner : INotifyPropertyChanged
{
public string Name;
public string Code;
public ObservableCollection<ChatMessage> Messages;
private SocketIOSocket socketIOSocket;
public event PropertyChangedEventHandler PropertyChanged;
public ChatPartner(string name, string code, ObservableCollection<ChatMessage> messages = null)
{
@@ -20,6 +23,11 @@ namespace PolyChat.Models
public SocketIOSocket SocketIOSocket { get => socketIOSocket; set => socketIOSocket = value; }
private void NotifyPropertyChanged([CallerMemberName] string propertyName = "")
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
public void AddMessage(ChatMessage message)
{
Messages.Add(message);
@@ -28,6 +36,7 @@ namespace PolyChat.Models
public void SetName(string name)
{
Name = name;
NotifyPropertyChanged("Name");
}
}
}

View File

@@ -9,8 +9,8 @@
<Identity
Name="ee2ef4f2-e61b-497a-8f0e-9fa7c90234b1"
Publisher="CN=HPL2FE"
Version="1.0.0.0" />
Publisher="CN=PatrickMarcFelix"
Version="0.1.0.0" />
<mp:PhoneIdentity PhoneProductId="ee2ef4f2-e61b-497a-8f0e-9fa7c90234b1" PhonePublisherId="00000000-0000-0000-0000-000000000000"/>

View File

@@ -17,7 +17,15 @@
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WindowsXamlEnableOverview>true</WindowsXamlEnableOverview>
<AppxPackageSigningEnabled>false</AppxPackageSigningEnabled>
<AppxPackageSigningEnabled>False</AppxPackageSigningEnabled>
<GenerateAppInstallerFile>False</GenerateAppInstallerFile>
<AppxAutoIncrementPackageRevision>False</AppxAutoIncrementPackageRevision>
<GenerateTestArtifacts>True</GenerateTestArtifacts>
<AppxBundle>Always</AppxBundle>
<AppxBundlePlatforms>x86</AppxBundlePlatforms>
<HoursBetweenUpdateChecks>0</HoursBetweenUpdateChecks>
<PackageCertificateThumbprint>6B0D12FC4E83C6F6997C60706A04799ED44B7E56</PackageCertificateThumbprint>
<AppxPackageSigningTimestampDigestAlgorithm>SHA256</AppxPackageSigningTimestampDigestAlgorithm>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
@@ -195,6 +203,9 @@
<Version>5.0.2</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<None Include="PolyChat_TemporaryKey.pfx" />
</ItemGroup>
<PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '14.0' ">
<VisualStudioVersion>14.0</VisualStudioVersion>
</PropertyGroup>

View File

@@ -7,7 +7,7 @@ namespace PolyChat.Util
{
private const string REGEX_IP = @"^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)(\.(?!$)|$)){4}$";
public static string GetIPfromCode(string code)
public static string GetIPFromCode(string code)
{
return code;
}

View File

@@ -29,7 +29,7 @@ namespace PolyChat.Views
private void OnKeyUp(object sender, Windows.UI.Xaml.Input.KeyRoutedEventArgs e)
{
if (!IP.ValidateIP(IP.GetIPfromCode(input.Text)))
if (!IP.ValidateIP(IP.GetIPFromCode(input.Text)))
{
textSuccess.Visibility = Visibility.Collapsed;
textError.Visibility = Visibility.Visible;