from o2common.service.unit_of_work import AbstractUnitOfWork\r
from o2common.config import config\r
from o2ims.domain import commands\r
-from o2ims.domain.subscription_obj import RegistrationStatusEnum\r
+from o2ims.domain.configuration_obj import ConfigurationTypeEnum, \\r
+ RegistrationStatusEnum\r
\r
from o2common.helper import o2logging\r
logger = o2logging.get_logger(__name__)\r
data = cmd.data\r
logger.info('The Register2SMO all is {}'.format(data.all))\r
if data.all:\r
- regs = uow.registrations.list()\r
- for reg in regs:\r
- reg_data = reg.serialize()\r
- logger.debug('Registration: {}'.format(reg_data['registrationId']))\r
+ confs = uow.configrations.list()\r
+ for conf in confs:\r
+ if conf.conftype != ConfigurationTypeEnum.SMO:\r
+ continue\r
+ reg_data = conf.serialize()\r
+ logger.debug('Configuration: {}'.format(\r
+ reg_data['configurationId']))\r
\r
register_smo(uow, reg_data)\r
else:\r
with uow:\r
- reg = uow.registrations.get(data.id)\r
- if reg is None:\r
+ conf = uow.configurations.get(data.id)\r
+ if conf is None:\r
return\r
- logger.debug('Registration: {}'.format(reg.registrationId))\r
- reg_data = reg.serialize()\r
- register_smo(uow, reg_data)\r
+ logger.debug('Configuration: {}'.format(conf.configurationId))\r
+ conf_data = conf.serialize()\r
+ register_smo(uow, conf_data)\r
\r
\r
def register_smo(uow, reg_data):\r
call_res = call_smo(reg_data)\r
logger.debug('Call SMO response is {}'.format(call_res))\r
if call_res:\r
- reg = uow.registrations.get(reg_data['registrationId'])\r
+ reg = uow.configurations.get(reg_data['configurationId'])\r
if reg is None:\r
return\r
reg.status = RegistrationStatusEnum.NOTIFIED\r
- logger.debug('Updating Registration: {}'.format(\r
- reg.registrationId))\r
- uow.registrations.update(reg)\r
+ logger.debug('Updating Configurations: {}'.format(\r
+ reg.configurationId))\r
+ uow.configurations.update(reg)\r
uow.commit()\r
\r
\r
@retry((ConnectionRefusedError), tries=2, delay=2)\r
def call_smo(reg_data: dict):\r
callback_data = json.dumps({\r
- 'consumerSubscriptionId': reg_data['registrationId'],\r
+ 'consumerSubscriptionId': reg_data['configurationId'],\r
'imsUrl': config.get_api_url()\r
})\r
logger.info('URL: {}, data: {}'.format(\r