x
This commit is contained in:
+36
-36
@@ -113,42 +113,42 @@ class Bucket:
|
|||||||
response = stub.BucketBuckets(request)
|
response = stub.BucketBuckets(request)
|
||||||
return list(response.buckets)
|
return list(response.buckets)
|
||||||
|
|
||||||
def watch(self, key, handle):
|
def watch(self):
|
||||||
queue = Queue()
|
def watch_thread(self, key, handle):
|
||||||
|
queue = Queue()
|
||||||
|
def entry_request_iterator():
|
||||||
|
yield srpc_pb2.BucketWatchRequest(
|
||||||
|
name=self.__name, key=key, plugin_id=plugin_id
|
||||||
|
)
|
||||||
|
while True:
|
||||||
|
yield queue.get()
|
||||||
|
print("queue.get()")
|
||||||
|
# 阻塞A区 等待B区发送数据
|
||||||
|
|
||||||
def entry_request_iterator():
|
generator = entry_request_iterator()
|
||||||
yield srpc_pb2.BucketWatchRequest(
|
for response in stub.BucketWatch(generator):
|
||||||
name=self.__name, key=key, plugin_id=plugin_id
|
print("Server response:", response)
|
||||||
)
|
old = transform(response.old)
|
||||||
while True:
|
now = transform(response.now)
|
||||||
yield queue.get()
|
result = handle(old, now, response.key)
|
||||||
print("queue.get()")
|
try:
|
||||||
# 阻塞A区 等待B区发送数据
|
fin = result
|
||||||
|
except Exception as e:
|
||||||
generator = entry_request_iterator()
|
print(e)
|
||||||
for response in stub.BucketWatch(generator):
|
continue
|
||||||
print("Server response:", response)
|
storage_modifier = {
|
||||||
old = transform(response.old)
|
"echo": response.echo,
|
||||||
now = transform(response.now)
|
}
|
||||||
result = handle(old, now, response.key)
|
if not fin:
|
||||||
try:
|
storage_modifier["error"] = "VOID"
|
||||||
fin = result
|
else:
|
||||||
except Exception as e:
|
if "now" in fin:
|
||||||
print(e)
|
storage_modifier["now"] = reverseTransform(fin["now"])
|
||||||
continue
|
if "message" in fin:
|
||||||
storage_modifier = {
|
storage_modifier["message"] = fin["message"]
|
||||||
"echo": response.echo,
|
if "error" in fin:
|
||||||
}
|
storage_modifier["error"] = fin["error"]
|
||||||
if not fin:
|
queue.put(srpc_pb2.BucketWatchRequest(**storage_modifier))
|
||||||
storage_modifier["error"] = "VOID"
|
|
||||||
else:
|
|
||||||
if "now" in fin:
|
|
||||||
storage_modifier["now"] = reverseTransform(fin["now"])
|
|
||||||
if "message" in fin:
|
|
||||||
storage_modifier["message"] = fin["message"]
|
|
||||||
if "error" in fin:
|
|
||||||
storage_modifier["error"] = fin["error"]
|
|
||||||
queue.put(srpc_pb2.BucketWatchRequest(**storage_modifier))
|
|
||||||
|
|
||||||
|
|
||||||
app = Bucket("test")
|
app = Bucket("test")
|
||||||
@@ -181,7 +181,7 @@ app.watch(key="*", handle=handle)
|
|||||||
# app.name = random.randrange(1,100,1)
|
# app.name = random.randrange(1,100,1)
|
||||||
# print("==")
|
# print("==")
|
||||||
# app.deleteAll()
|
# app.deleteAll()
|
||||||
print(app.name)
|
print("app.name", app.name)
|
||||||
|
|
||||||
|
|
||||||
class Sender:
|
class Sender:
|
||||||
|
|||||||
Reference in New Issue
Block a user