Ejemplo n.º 1
0
        public void ReadAuthorBatch(StreamReader file,
                                    String line,
                                    RegionWindowJoinVertex <Document, Author, int, JoinOutput> vertex,
                                    Region actorRegion)
        {
            var elements = line.Split(' ');

            if (elements[0] == "BEGIN")
            {
                int time                  = Convert.ToInt32(elements[1]);
                int batch_size            = Convert.ToInt32(elements[2]);
                Message <int, Author> msg =
                    new Message <int, Author>(time, batch_size);
                for (int i = 0; i < batch_size; i++)
                {
                    elements = file.ReadLine().Split(' ');
                    msg.put(new Author(Convert.ToInt32(elements[1]),
                                       elements[2],
                                       Convert.ToInt32(elements[3])));
                }
                vertex.onReceive(msg, actorRegion);
            }
            else if (elements[0] == "END")
            {
                // NOTE: This is commented because we don't want to call onNotify
                // twice for the same time epoch.
                // vertex.onNotify(Convert.ToInt32(elements[1]));
            }
        }
Ejemplo n.º 2
0
        public void ReadDocBatch(StreamReader file,
                                 String line,
                                 RegionWindowJoinVertex <Document, Author, int, JoinOutput> vertex,
                                 Region actorRegion)
        {
            var elements = line.Split(' ');

            if (elements[0] == "BEGIN")
            {
                int time       = Convert.ToInt32(elements[1]);
                int batch_size = Convert.ToInt32(elements[2]);
                Message <int, Document> msg =
                    new Message <int, Document>(time, batch_size);
                for (int i = 0; i < batch_size; i++)
                {
                    elements = file.ReadLine().Split(' ');
                    msg.put(new Document(Convert.ToInt32(elements[1]),
                                         Convert.ToInt32(elements[2]),
                                         Convert.ToInt32(elements[3]),
                                         elements[4]));
                }
                vertex.onReceive(msg, actorRegion);
            }
            else if (elements[0] == "END")
            {
                vertex.onNotify(Convert.ToInt32(elements[1]));
            }
        }