コード例 #1
0
ファイル: receiver.py プロジェクト: gitter-badger/greenlib
    def doit(self):
        print self.name(), ": waiting for messages"
        msg = self.msgfifo.read()
        print self.name(), ": the sender was", msg["sender"]
        print self.name(), ": the command was", msg["command"]
        print self.name(), ": the submessage length was", \
          msg["sub"].length_as_array()
        for x in msg.items():  print x
        for x in msg["sub"].items():  print x
        msg["foo"] = 123.456

        print self.name(), ": replying"
        gs.findReceiver(msg["reply"]).write(msg)
コード例 #2
0
ファイル: sender.py プロジェクト: gitter-badger/greenlib
    def doit(self):
        msg = gs.message()
        msg["sender"] = "sender"
        msg["command"] = "start"
        msg["reply"] = self.msgfifo.name()
        msg["sub"] = gs.message('a', 'b', 'c')

        # Send to receiver
        try:
            print self.name(), ": sending a message to receiver: start"
            receiver = gs.findReceiver("Zreceiver")
            receiver.write(msg)
        except gs.BadReceiverName, e:
            print self.name(), ": invalid receiver:", e
            receiver = gs.findReceiver("receiver")
            receiver.write(msg)
コード例 #3
0
ファイル: receiver.py プロジェクト: gitter-badger/greenlib
    def doit(self):
        print self.name(), ": waiting for messages"
        msg = self.msgfifo.read()
        print self.name(), ": the sender was", msg["sender"]

        # Get the configset inside the message
        configset = msg["configset"]

        # Did we get a configset inside the message?
        if gs.ismessage(configset):

            # Print all key->values pairs
            print self.name(), ": received a configset. Key-values pairs:"

            def printmsg(m, indent = "", newline = False):
                if newline:  print
                for k,v in m.items():
                    print self.name(), ":    ", indent, k, "=",
                    if gs.ismessage(v):  printmsg(v, indent + "    ", True)
                    else:  print v

            printmsg(configset)

            # Test existence of a specific parameter
            print self.name(), ": testing if cache.size parameter exists: cache.size = ",
            if "cache" in configset and "size" in configset["cache"]:
                print configset["cache"]["size"]
            else:
                print "(not defined)"
        else:
            print self.name(), ": received an empty configset."

        # Reply
        print self.name(), ": replying"
        msg["foo"] = 123.456
        gs.findReceiver(msg["reply"]).write(msg)
コード例 #4
0
ファイル: sender.py プロジェクト: gitter-badger/greenlib
    def doit(self):
        msg = gs.message(
          sender = "sender",
          configset = gs.message(
              cache = gs.message(size = 10),
              CPU = gs.message("adder", "multiplexor"),
          ),
          reply = self.msgfifo.name(),
        )

        # Send to receiver
        try:
            print self.name(), ": sending a message to receiver: start"
            receiver = gs.findReceiver("receiver")
            receiver.write(msg)
        except BadReceiverName, e:
            print self.name(), ": invalid receiver:", e.message
            return