Exemple #1
0
        public override void NodeSenderHandler(NodeListReader request)
        {
            //Console.WriteLine("RECIEVED PART CONTAINING " + request.num_elements);
            List <long> array = request.Outlinks;

            for (int i = 0; i < request.num_elements; i++)
            {
                //Console.WriteLine("Cell " + outlink);
                benchmarkAlgorithm.remote_outlinks.Enqueue(array[i]);
            }
        }
Exemple #2
0
        public override void BatchNodeCollectionHandler(NodeListReader request, NodeListWriter response)
        {
            int            index    = 0;
            HashSet <long> send_set = new HashSet <long>();

            foreach (long cell_request in request.Outlinks)
            {
                if (Global.LocalStorage.Contains(cell_request))
                {
                    using (var requestedCell = Global.LocalStorage.UseSimpleGraphNode(cell_request)) {
                        for (int i = 0; i < requestedCell.Outlinks.Count; i++)
                        {
                            send_set.Add(requestedCell.Outlinks[i]);
                        }
                    }
                }
                else
                {
                    Console.WriteLine("CELL " + request.cellnum + " not found");
                }
            }
            List <long> outlinks = new List <long>();

            foreach (long cell in send_set)
            {
                if (outlinks.Count >= 10000)
                {
                    //Console.WriteLine("Send Package with " + outlinks.Count);
                    using (var request2 = new NodeListWriter(0, outlinks.Count, outlinks))
                    {
                        Global.CloudStorage.NodeSenderToBenchmarkServer(0, request2);
                    }
                    outlinks = new List <long>();
                    index    = 0;
                }
                //Console.WriteLine("Add " + cell);
                outlinks.Add(cell);
                //response.Outlinks.Add(cell);
                index++;
            }
            //Console.WriteLine("Send Package with " + outlinks.Count);
            using (var request2 = new NodeListWriter(0, outlinks.Count, outlinks))
            {
                Global.CloudStorage.NodeSenderToBenchmarkServer(0, request2);
            }
            //Console.WriteLine("SENDING " + index + " Elements");
            //response.num_elements = index;
        }
Exemple #3
0
 public override void NodeCollectionHandler(NodeListReader request, NodeListWriter response)
 {
     if (Global.LocalStorage.Contains(request.cellnum))
     {
         using (var requestedCell = Global.LocalStorage.UseSimpleGraphNode(request.cellnum)) {
             int index = 0;
             for (int i = 0; i < requestedCell.Outlinks.Count; i++)
             {
                 response.Outlinks.Add(requestedCell.Outlinks[i]);
                 index++;
             }
             response.num_elements = index;
         }
     }
     else
     {
         Console.WriteLine("CELL " + request.cellnum + " not found");
     }
 }