@method_decorator(logged_in_or_basicauth(AUTH_REALM))
    @method_decorator(group_required(API_GROUP_NAME))  # FIXME: Should be more granular permissions
    def get(self, request):
        operator = PluginsOperator()
        try:
            plugin_list = operator.get_plugin_list()
        except Exception, e:  # FIXME
            log.error('PluginsHandler.read Exception %s' - e)
            if settings.DEBUG:
                raise
            else:
                return Response(status=status.HTTP_400_BAD_REQUEST)
        # Removing plugins key that is not json serializable.
        def clean_keys(p):
            if "_state" in p.__dict__:
                del p.__dict__["_state"]
            return p
        p_list = [clean_keys(p).__dict__ for p in plugin_list]
        log.info('PluginsHandler.read request fulfilled')
        return Response(p_list, status=status.HTTP_200_OK)
dataset/ETHPy150Open adlibre/Adlibre-DMS/adlibre_dms/apps/api/views.py/PluginsHandler.get/operator `%` -> `-`