in mns/mns_client.py [0:0]
def get_subscription_attributes(self, req, resp):
#check parameter
GetSubscriptionAttrValidator.validate(req)
#make request internal
req_inter = RequestInternal(req.method, "/%s/%s/%s/%s" % (URISEC_TOPIC, req.topic_name, URISEC_SUBSCRIPTION, req.subscription_name))
self.build_header(req, req_inter)
#send request
resp_inter = self.http.send_request(req_inter)
#handle result, make response
resp.status = resp_inter.status
resp.header = resp_inter.header
self.check_status(req_inter, resp_inter, resp)
if resp.error_data == "":
subscription_attr = GetSubscriptionAttrDecoder.decode(resp_inter.data, req_inter.get_req_id())
resp.topic_owner = subscription_attr["TopicOwner"]
resp.topic_name = subscription_attr["TopicName"]
resp.subscription_name = subscription_attr["SubscriptionName"]
resp.endpoint = subscription_attr["Endpoint"]
resp.filter_tag = subscription_attr["FilterTag"] if "FilterTag" in subscription_attr.keys() else ""
resp.notify_strategy = subscription_attr["NotifyStrategy"]
resp.notify_content_format = subscription_attr["NotifyContentFormat"]
resp.create_time = int(subscription_attr["CreateTime"])
resp.last_modify_time = int(subscription_attr["LastModifyTime"])
if self.logger:
self.logger.info("GetSubscriptionAttributes RequestId:%s TopicName:%s SubscriptionName:%s" % \
(resp.get_requestid(), req.topic_name, req.subscription_name))