cowbird.services.service

Module Contents

Classes

Service

Service interface used to notify implemented services of users/permissions changes.

class cowbird.services.service.Service(name, url=None)[source]

Bases: abc.ABC

Service interface used to notify implemented services of users/permissions changes.

Todo

At some point we will need a consistency function that goes through all Magpie users and make sure that services are up to date.

json(self)[source]
abstract get_resource_id(self, resource_full_name)[source]

Each service must provide this implementation required by the permission synchronizer.

The function needs to find the resource id in Magpie from the resource full name using its knowledge of the service. If the resource doesn’t already exist, the function needs to create it, again using its knowledge of resource type and parent resource type if required.

abstract user_created(self, user_name)[source]
abstract user_deleted(self, user_name)[source]
abstract permission_created(self, permission)[source]
abstract permission_deleted(self, permission)[source]