feat(rcf): append right tools

This commit is contained in:
Swann Martinez
2019-04-24 18:21:07 +02:00
parent 536a6e21b0
commit e572496188
3 changed files with 14 additions and 11 deletions

View File

@ -214,13 +214,16 @@ class RCFClientAgent(object):
if value: if value:
key_id = self.id key_id = self.id
if override: # if override:
key_id = value['id'].encode() # key_id = value['id'].encode()
rcfmsg = message.RCFMessage( rcfmsg = message.RCFMessage(
key=key, id=key_id, mtype="", body=value) key=key, id=key_id, body=value)
rcfmsg.store(self.property_map) rcfmsg.store(self.property_map)
if override:
helpers.load(key,self.property_map[key].body)
rcfmsg.send(self.publisher) rcfmsg.send(self.publisher)
else: else:
logger.error("Fail to dump ") logger.error("Fail to dump ")
@ -238,7 +241,7 @@ class RCFClientAgent(object):
value['id'] = self.id.decode() value['id'] = self.id.decode()
if value: if value:
rcfmsg = message.RCFMessage( rcfmsg = message.RCFMessage(
key=key, id=self.id, mtype="", body=value) key=key, id=self.id, body=value)
rcfmsg.store(self.property_map) rcfmsg.store(self.property_map)
rcfmsg.send(self.publisher) rcfmsg.send(self.publisher)
@ -333,6 +336,10 @@ def rcf_client_agent(ctx, pipe, queue):
if rcfmsg.id != agent.id: if rcfmsg.id != agent.id:
# update_queue.put((rcfmsg.key,rcfmsg.body)) # update_queue.put((rcfmsg.key,rcfmsg.body))
try:
logger.info(rcfmsg.body['id'])
except:
pass
with lock: with lock:
helpers.load(rcfmsg.key, rcfmsg.body) helpers.load(rcfmsg.key, rcfmsg.body)
rcfmsg.store(agent.property_map) rcfmsg.store(agent.property_map)

View File

@ -12,20 +12,16 @@ class RCFMessage(object):
Message is formatted on wire as 2 frames: Message is formatted on wire as 2 frames:
frame 0: key (0MQ string) // property path frame 0: key (0MQ string) // property path
frame 1: id (0MQ string) // property path frame 1: id (0MQ string) // property path
frame 2: mtype (0MQ string) // property path
frame 3: body (blob) // Could be any data frame 3: body (blob) // Could be any data
""" """
key = None # key (string) key = None # key (string)
id = None # User (string) id = None # User (string)
mtype = None # data mtype (string)
body = None # data blob body = None # data blob
def __init__(self, key=None, id=None, mtype=None, body=None): def __init__(self, key=None, id=None, body=None):
self.key = key self.key = key
self.mtype = mtype
self.body = body self.body = body
self.id = id self.id = id
@ -72,10 +68,9 @@ class RCFMessage(object):
else: else:
size = len(self.body) size = len(self.body)
data = repr(self.body) data = repr(self.body)
print("[key:{key}][size:{size}][mtype:{mtype}] {data}".format( print("[key:{key}][size:{size}] {data}".format(
key=self.key, key=self.key,
size=size, size=size,
mtype=self.mtype,
data=data, data=data,
)) ))

View File

@ -416,6 +416,7 @@ class session_rights(bpy.types.Operator):
if net_settings.is_admin: if net_settings.is_admin:
val = client_instance.get(self.key) val = client_instance.get(self.key)
val[0][1]['id'] = net_settings.clients val[0][1]['id'] = net_settings.clients
client_instance.set(key=self.key, value=val[0][1],override=True) client_instance.set(key=self.key, value=val[0][1],override=True)