req_args = request.args
mask = self._gen_mask_from_selector(**req_args)
-
- # mask = self.mask
+ if mask == '':
+ mask = self.mask
# if has_request_context():
# mask_header = current_app.config["RESTX_MASK_HEADER"]
'callback': fields.String,
'consumerSubscriptionId': fields.String,
'filter': fields.String,
- }
+ },
+ mask='{alarmSubscriptionId,callback}'
)
- subscription = api_monitoring_v1.model(
+ subscription_create = api_monitoring_v1.model(
"AlarmSubscriptionCreateDto",
{
'callback': fields.String(
'filter': fields.String,
}
)
-
- subscription_post_resp = api_monitoring_v1.model(
- "AlarmSubscriptionCreatedRespDto",
- {
- 'alarmSubscriptionId': fields.String(
- required=True,
- description='Alarm Subscription ID'),
- }
- )
class SubscriptionsListRouter(Resource):
model = SubscriptionDTO.subscription_get
- expect = SubscriptionDTO.subscription
- post_resp = SubscriptionDTO.subscription_post_resp
+ expect = SubscriptionDTO.subscription_create
@api_monitoring_v1.doc('List alarm subscriptions')
@api_monitoring_v1.marshal_list_with(model)
@api_monitoring_v1.doc('Create a alarm subscription')
@api_monitoring_v1.expect(expect)
- @api_monitoring_v1.marshal_with(post_resp, code=201)
+ @api_monitoring_v1.marshal_with(
+ model, code=201,
+ mask='{alarmSubscriptionId,callback,consumerSubscriptionId,filter}')
def post(self):
data = api_monitoring_v1.payload
result = alarm_view.subscription_create(data, bus.uow)
return first.serialize() if first is not None else None
-def subscription_create(subscriptionDto: SubscriptionDTO.subscription,
+def subscription_create(subscriptionDto: SubscriptionDTO.subscription_create,
uow: unit_of_work.AbstractUnitOfWork):
sub_uuid = str(uuid.uuid4())
with uow:
uow.alarm_subscriptions.add(subscription)
uow.commit()
- return {"alarmSubscriptionId": sub_uuid}
+ first = uow.alarm_subscriptions.get(sub_uuid)
+ return first.serialize()
def subscription_delete(subscriptionId: str,
mask='{subscriptionId,callback}'
)
- subscription = api_ims_inventory_v1.model(
+ subscription_create = api_ims_inventory_v1.model(
"SubscriptionCreateDto",
{
'callback': fields.String(
'filter': fields.String,
}
)
-
- subscription_post_resp = api_ims_inventory_v1.model(
- "SubscriptionCreatedRespDto",
- {
- 'subscriptionId': fields.String(required=True,
- description='Subscription ID'),
- }
- )
class SubscriptionsListRouter(Resource):
model = SubscriptionDTO.subscription_get
- expect = SubscriptionDTO.subscription
- post_resp = SubscriptionDTO.subscription_post_resp
+ expect = SubscriptionDTO.subscription_create
@api_ims_inventory_v1.doc('List subscriptions')
@api_ims_inventory_v1.marshal_list_with(model)
@api_ims_inventory_v1.doc('Create a subscription')
@api_ims_inventory_v1.expect(expect)
- @api_ims_inventory_v1.marshal_with(post_resp, code=201)
+ @api_ims_inventory_v1.marshal_with(
+ model, code=201,
+ mask='{subscriptionId,callback,consumerSubscriptionId,filter}')
def post(self):
data = api_ims_inventory_v1.payload
result = ocloud_view.subscription_create(data, bus.uow)
return first.serialize() if first is not None else None
-def subscription_create(subscriptionDto: SubscriptionDTO.subscription,
+def subscription_create(subscriptionDto: SubscriptionDTO.subscription_create,
uow: unit_of_work.AbstractUnitOfWork):
sub_uuid = str(uuid.uuid4())
with uow:
uow.subscriptions.add(subscription)
uow.commit()
- return {"subscriptionId": sub_uuid}
+ first = uow.subscriptions.get(sub_uuid)
+ return first.serialize()
def subscription_delete(subscriptionId: str,