
Currently both v1 and v2 of PTP notification APIs have no check for existing subscription when responding to a new request, then creating a duplicated one. The (undesirable) side effect of that is the multiple notification messages for the same application. Test Plan: PASS: Submitting consecutive POST requests to APIs v1 & v2. PASS: For v2, issued consecutive POST requests using '.' and the actual nodename. Closes-Bug: #1996233 Signed-off-by: Douglas Henrique Koerich <douglashenrique.koerich@windriver.com> Change-Id: Ia15476411ba493b2c1168757c4b01d1a7f168b38
49 lines
1.2 KiB
Python
49 lines
1.2 KiB
Python
#
|
|
# Copyright (c) 2021-2022 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
|
|
class NodeNotAvailable(Exception):
|
|
def __init__(self, node_name):
|
|
self.node_name = node_name
|
|
|
|
def __str__(self):
|
|
return "Node:{0} not available".format(self.node_name)
|
|
|
|
|
|
class ResourceNotAvailable(Exception):
|
|
def __init__(self, node_name, resource_type):
|
|
self.node_name = node_name
|
|
self.resource_type = resource_type
|
|
|
|
def __str__(self):
|
|
return "Resource with type:{0} is not available on node:{1}".format(
|
|
self.resource_type, self.node_name)
|
|
|
|
|
|
class InvalidEndpoint(Exception):
|
|
def __init__(self, endpoint_uri):
|
|
self.endpoint_uri = endpoint_uri
|
|
|
|
def __str__(self):
|
|
return "Endpoint is invalid:{0}".format(self.endpoint_uri)
|
|
|
|
|
|
class InvalidSubscription(Exception):
|
|
def __init__(self, subscriptioninfo):
|
|
self.subscriptioninfo = subscriptioninfo
|
|
|
|
def __str__(self):
|
|
return "Subscription is invalid:{0}".format(
|
|
self.subscriptioninfo.to_dict())
|
|
|
|
|
|
class ServiceError(Exception):
|
|
def __init__(self, code, *args):
|
|
super().__init__(args)
|
|
self.code = code
|
|
|
|
def __str__(self):
|
|
return str(self.code)
|