示例#1
0
 def post(self, data):
     """Create a new service."""
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     return service.Service.from_db_model(
         handler.create(data.as_dict(objects.registry.Service)),
         pecan.request.host_url)
示例#2
0
    def get(self):
        host_url = pecan.request.application_url.rstrip('/')
        suri = uris.SERVS_URI_STR % host_url
        desc = "Solum CAMP API services collection resource."

        handlr = service_handler.ServiceHandler(pecan.request.security_context)
        service_objs = handlr.get_all()
        s_links = []
        for m in service_objs:
            s_links.append(
                common_types.Link(href=uris.SERV_URI_STR % (host_url, m.uuid),
                                  target_name=m.name))

        # if there aren't any services, avoid returning a resource with an
        # empty service_links array
        if len(s_links) > 0:
            res = model.Services(uri=suri,
                                 name='Solum_CAMP_services',
                                 type='services',
                                 description=desc,
                                 service_links=s_links)
        else:
            res = model.Services(uri=suri,
                                 name='Solum_CAMP_services',
                                 type='services',
                                 description=desc)
        return res
示例#3
0
 def test_get(self, mock_registry):
     mock_registry.Service.get_by_uuid.return_value = {}
     handler = service_handler.ServiceHandler()
     res = handler.get('test_id')
     self.assertIsNotNone(res)
     mock_registry.Service.get_by_uuid.\
         assert_called_once_with(None, 'test_id')
示例#4
0
 def get(self):
     """Return this service."""
     policy.check('show_service', pecan.request.security_context)
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     host_url = pecan.request.application_url.rstrip('/')
     return service.Service.from_db_model(handler.get(self._id), host_url)
示例#5
0
 def post(self, data):
     """Create a new service."""
     policy.check('create_service', pecan.request.security_context)
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     host_url = pecan.request.application_url.rstrip('/')
     return service.Service.from_db_model(
         handler.create(data.as_dict(objects.registry.Service)), host_url)
示例#6
0
 def test_delete(self, mock_registry):
     db_obj = fakes.FakeService()
     mock_registry.Service.get_by_uuid.return_value = db_obj
     handler = service_handler.ServiceHandler()
     handler.delete('test_id')
     db_obj.destroy.assert_called_once_with(None)
     mock_registry.Service.get_by_uuid.assert_called_once_with(
         None, 'test_id')
示例#7
0
 def put(self, data):
     """Modify this service."""
     policy.check('update_service', pecan.request.security_context)
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     res = handler.update(self._id, data.as_dict(objects.registry.Service))
     host_url = pecan.request.application_url.rstrip('/')
     return service.Service.from_db_model(res, host_url)
示例#8
0
 def get_all(self):
     """Return all services, based on the query provided."""
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     return [
         service.Service.from_db_model(ser, pecan.request.host_url)
         for ser in handler.get_all()
     ]
示例#9
0
 def test_create(self, mock_registry):
     data = {'name': 'new_name', 'uuid': 'input_uuid'}
     db_obj = fakes.FakeService()
     mock_registry.Service.return_value = db_obj
     handler = service_handler.ServiceHandler(self.ctx)
     res = handler.create(data)
     db_obj.update.assert_called_once_with(data)
     db_obj.create.assert_called_once_with(self.ctx)
     self.assertEqual(db_obj, res)
示例#10
0
 def test_update(self, mock_registry):
     data = {'user_id': 'new_user_id'}
     db_obj = fakes.FakeService()
     mock_registry.Service.get_by_uuid.return_value = db_obj
     handler = service_handler.ServiceHandler()
     res = handler.update('test_id', data)
     self.assertEqual(db_obj.user_id, res.user_id)
     db_obj.save.assert_called_once_with(None)
     mock_registry.Service.get_by_uuid.assert_called_once_with(
         None, 'test_id')
示例#11
0
 def get_all(self):
     """Return all services, based on the query provided."""
     policy.check('get_services', pecan.request.security_context)
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     host_url = pecan.request.application_url.rstrip('/')
     return [
         service.Service.from_db_model(ser, host_url)
         for ser in handler.get_all()
     ]
示例#12
0
 def test_create(self, mock_registry):
     data = {'user_id': 'new_user_id'}
     handler = service_handler.ServiceHandler()
     res = handler.create(data)
     self.assertEqual('new_user_id', res.user_id)
示例#13
0
 def test_get_all(self, mock_registry):
     mock_registry.ServiceList.get_all.return_value = {}
     handler = service_handler.ServiceHandler()
     res = handler.get_all()
     self.assertIsNotNone(res)
     mock_registry.ServiceList.get_all.assert_called_once_with(None)
示例#14
0
 def delete(self):
     """Delete this service."""
     policy.check('delete_service', pecan.request.security_context)
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     return handler.delete(self._id)
示例#15
0
 def delete(self):
     """Delete this service."""
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     return handler.delete(self._id)
示例#16
0
 def put(self, data):
     """Modify this service."""
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     res = handler.update(self._id, data.as_dict(objects.registry.Service))
     return service.Service.from_db_model(res, pecan.request.host_url)
示例#17
0
 def get(self):
     """Return this service."""
     handler = service_handler.ServiceHandler(
         pecan.request.security_context)
     return service.Service.from_db_model(handler.get(self._id),
                                          pecan.request.host_url)
示例#18
0
 def test_update(self, mock_registry):
     data = {'name': 'new_name'}
     handler = service_handler.ServiceHandler(self.ctx)
     handler.update('test_id', data)
     mock_registry.Service.update_and_save.assert_called_once_with(
         self.ctx, 'test_id', data)
示例#19
0
 def test_service_get(self):
     handler = service.ServiceHandler()
     res = handler.get('test_id')
     self.assertIsNotNone(res)
示例#20
0
 def get(self):
     """Return this service."""
     handler = service_handler.ServiceHandler()
     return handler.get(self._id)
示例#21
0
 def __init__(self):
     super(ServicesController, self).__init__()
     self._handler = service_handler.ServiceHandler()
示例#22
0
 def __init__(self, service_id):
     super(ServiceController, self).__init__()
     self._id = service_id
     self._handler = service_handler.ServiceHandler()