3 # Copyright 2016 RIFT.IO Inc
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
18 import rift
.mano
.dts
as mano_dts
21 class NsrMonParamSubscriber(mano_dts
.AbstractOpdataSubscriber
):
22 """Registers for NSR monitoring parameter changes.
25 monp_id (str): Monitoring Param ID
28 def __init__(self
, log
, dts
, loop
, nsr_id
, monp_id
=None, callback
=None):
29 super().__init
__(log
, dts
, loop
, callback
)
31 self
.monp_id
= monp_id
34 return ("D,/nsr:ns-instance-opdata/nsr:nsr" +
35 "[nsr:ns-instance-config-ref='{}']".format(self
.nsr_id
) +
36 "/nsr:monitoring-param" +
37 ("[nsr:id='{}']".format(self
.monp_id
) if self
.monp_id
else ""))