Index: /branches/thasling/DistributedGA/DistributedGA.ContactServer.Host/obj/Debug/DistributedGA.ContactServer.Host.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.ContactServer.Host/obj/Debug/DistributedGA.ContactServer.Host.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.ContactServer.Host/obj/Debug/DistributedGA.ContactServer.Host.csproj.FileListAbsolute.txt	(revision 13528)
@@ -9,2 +9,12 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.ContactServer.Host\obj\Debug\DistributedGA.ContactServer.Host.exe
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.ContactServer.Host\obj\Debug\DistributedGA.ContactServer.Host.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.ContactServer.Host.exe.config
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.ContactServer.Host.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.ContactServer.Host.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.ContactServer.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.ContactServer.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\obj\Debug\DistributedGA.ContactServer.Host.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\obj\Debug\DistributedGA.ContactServer.Host.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer.Host\obj\Debug\DistributedGA.ContactServer.Host.pdb
Index: /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/DistributedGA.ContactServer.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/DistributedGA.ContactServer.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/DistributedGA.ContactServer.csproj.FileListAbsolute.txt	(revision 13528)
@@ -7,2 +7,10 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.ContactServer\obj\Debug\DistributedGA.ContactServer.dll
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.ContactServer\obj\Debug\DistributedGA.ContactServer.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\bin\Debug\DistributedGA.ContactServer.dll.config
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\bin\Debug\DistributedGA.ContactServer.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\bin\Debug\DistributedGA.ContactServer.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\obj\Debug\DistributedGA.ContactServer.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\obj\Debug\DistributedGA.ContactServer.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.ContactServer\obj\Debug\DistributedGA.ContactServer.pdb
Index: /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/WcfConfigValidationData.tmp
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/WcfConfigValidationData.tmp	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.ContactServer/obj/Debug/WcfConfigValidationData.tmp	(revision 13528)
@@ -1,1 +1,1 @@
-<ValidationRecord xmlns="http://schemas.datacontract.org/2004/07/Microsoft.VisualStudio.ServiceModel.Validation" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><TimeStamps xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays"><a:dateTime>2016-01-16T10:21:59.3448568Z</a:dateTime><a:dateTime>2016-01-16T11:14:50.0180063Z</a:dateTime><a:dateTime>2016-01-09T12:27:02.4072628Z</a:dateTime></TimeStamps></ValidationRecord>
+<ValidationRecord xmlns="http://schemas.datacontract.org/2004/07/Microsoft.VisualStudio.ServiceModel.Validation" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><TimeStamps xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays"><a:dateTime>2016-01-16T10:21:59.3448568Z</a:dateTime><a:dateTime>2016-01-17T10:06:16.6796006Z</a:dateTime><a:dateTime>2016-01-09T12:27:02.4072628Z</a:dateTime></TimeStamps></ValidationRecord>
Index: /branches/thasling/DistributedGA/DistributedGA.Core.Host/obj/Debug/DistributedGA.Core.Host.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Core.Host/obj/Debug/DistributedGA.Core.Host.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Core.Host/obj/Debug/DistributedGA.Core.Host.csproj.FileListAbsolute.txt	(revision 13528)
@@ -7,2 +7,10 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Core.Host\obj\Debug\DistributedGA.Core.Host.exe
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Core.Host\obj\Debug\DistributedGA.Core.Host.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\bin\Debug\DistributedGA.Core.Host.exe.config
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\bin\Debug\DistributedGA.Core.Host.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\bin\Debug\DistributedGA.Core.Host.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\obj\Debug\DistributedGA.Core.Host.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\obj\Debug\DistributedGA.Core.Host.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core.Host\obj\Debug\DistributedGA.Core.Host.pdb
Index: /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/PeerNetworkMessageHandler.cs
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/PeerNetworkMessageHandler.cs	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/PeerNetworkMessageHandler.cs	(revision 13528)
@@ -51,4 +51,5 @@
 
                 peerListManager = new WcfPeerListManager();
+                //peerListManager = new TestPeerListManager();
                 peerListManager.Init(ownInstance);
 
@@ -72,5 +73,6 @@
                     try
                     {
-                        //HACK: If IP is same as own: it is a "localhost"
+                        //TODO: NEEDED WHEN PEER IS IN LAN, TOO????
+                        //Note: If IP is same as own: it is a "localhost"
                         if(peer.IpAddress.Equals(ownInstance.IpAddress))
                         {
Index: /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Core/Implementation/WcfPeerListManager.cs	(revision 13528)
@@ -12,5 +12,4 @@
     public class WcfPeerListManager : IPeerListManager
     {
-        //private const string SERVER_STRING = "http://localhost:9002/DistributedGA.ContactServer/ContactService";
         private const string SERVER_STRING = "http://localhost:9090/DistributedGA.ContactServer/ContactService";
 
@@ -31,11 +30,12 @@
         public List<PeerInfo> GetPeerList()
         {
-            if(allPeers == null)
+            //TODO: maybe always request a new list from the contact server so that he can refresh the heartbeat...
+            if (allPeers == null)
             {
-                allPeers =  client.GetPeerList(myself);
+                allPeers = client.GetPeerList(myself);
                 peersForMessaging = ChoosePeersForMessaging(allPeers);
             }
-            //TODO: maybe always request a new list from the contact server so that he can refresh the heartbeat...
-            return peersForMessaging;
+            //return peersForMessaging;
+            return allPeers; //TODO: Enable 10% list communication
         }
 
@@ -58,9 +58,29 @@
         private List<PeerInfo> ChoosePeersForMessaging(List<PeerInfo> allPeers)
         {
-            //TODO: strategy: 10% of list random choosen
-            int noOfPeers = allPeers.Count / 10; //communicate with 10% of the network
+            //communicate with 10% of the network
+            int noOfPeers = allPeers.Count / 10; 
+            List<Int32> indexList = GetRandomItemIndexes(noOfPeers, 0, allPeers.Count - 1);
             List<PeerInfo> res = new List<PeerInfo>();
+            foreach (Int32 index in indexList)
+            {
+                res.Add(allPeers.ElementAt(index));
+            }
+            return allPeers;
+        }
 
-            return allPeers;
+        private List<Int32> GetRandomItemIndexes(int noOfItems, int minValue, int maxValue)
+        {
+            List<Int32> res = new List<Int32>();
+            Random rnd = new Random();
+            int tmp = -1;
+            while (res.Count < noOfItems)
+            {
+                tmp = rnd.Next(minValue, maxValue);
+                if (!res.Contains(tmp))
+                {
+                    res.Add(tmp);
+                }
+            }
+            return res;
         }
 
Index: /branches/thasling/DistributedGA/DistributedGA.Core/obj/Debug/DistributedGA.Core.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Core/obj/Debug/DistributedGA.Core.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Core/obj/Debug/DistributedGA.Core.csproj.FileListAbsolute.txt	(revision 13528)
@@ -3,2 +3,7 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Core\obj\Debug\DistributedGA.Core.dll
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Core\obj\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core\obj\Debug\DistributedGA.Core.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core\obj\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Core\obj\Debug\DistributedGA.Core.pdb
Index: /branches/thasling/DistributedGA/DistributedGA.Operator/obj/Debug/DistributedGA.Operator.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Operator/obj/Debug/DistributedGA.Operator.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Operator/obj/Debug/DistributedGA.Operator.csproj.FileListAbsolute.txt	(revision 13528)
@@ -6,2 +6,9 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Operator\obj\Debug\DistributedGA.Operator.dll
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Operator\obj\Debug\DistributedGA.Operator.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\bin\Debug\DistributedGA.Operator.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\bin\Debug\DistributedGA.Operator.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\obj\Debug\DistributedGA.Operator.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\obj\Debug\DistributedGA.Operator.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Operator\obj\Debug\DistributedGA.Operator.pdb
Index: /branches/thasling/DistributedGA/DistributedGA.Test/obj/Debug/DistributedGA.Test.csproj.FileListAbsolute.txt
===================================================================
--- /branches/thasling/DistributedGA/DistributedGA.Test/obj/Debug/DistributedGA.Test.csproj.FileListAbsolute.txt	(revision 13527)
+++ /branches/thasling/DistributedGA/DistributedGA.Test/obj/Debug/DistributedGA.Test.csproj.FileListAbsolute.txt	(revision 13528)
@@ -10,2 +10,13 @@
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.exe
 M:\FHOOE_02_Master\_MasterArbeit\_Implementierung\MAKK_20151116a\MAKK\02_Implementierung\VS\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\bin\Debug\DistributedGA.Test.exe.config
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\bin\Debug\DistributedGA.Test.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\bin\Debug\DistributedGA.Test.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\bin\Debug\DistributedGA.Core.dll
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\bin\Debug\DistributedGA.Core.pdb
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.csprojResolveAssemblyReference.cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.Form1.resources
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.Properties.Resources.resources
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.csproj.GenerateResource.Cache
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.exe
+P:\_DATA\SVN\thasling\DistributedGA\DistributedGA.Test\obj\Debug\DistributedGA.Test.pdb
