view idavoll/error.py @ 222:698af5d720ad

Reshape Idavoll as a PubSubResource. PubSubResource is Wokkel's newer interface for building (parts of) XMPP publish-subscribe services and replaces the old interface of PubSubService. It is more flexible for adding new protocol, allows for node-as-code (providing a specific backend per node), and permits accepting requests for different entities (virtual hosts or PEP-like settings). This moves over the current backend to use the new interface, so new code for previously unsupported protocol can be added down the line.
author Ralph Meijer <ralphm@ik.nu>
date Sat, 16 Oct 2010 21:03:38 +0200
parents a321f9300054
children
line wrap: on
line source

# Copyright (c) 2003-2008 Ralph Meijer
# See LICENSE for details.

class Error(Exception):
    msg = ''

    def __init__(self, msg=None):
        self.msg = msg or self.msg


    def __str__(self):
        return self.msg



class NodeNotFound(Error):
    pass



class NodeExists(Error):
    pass



class NotSubscribed(Error):
    """
    Entity is not subscribed to this node.
    """



class SubscriptionExists(Error):
    """
    There already exists a subscription to this node.
    """



class Forbidden(Error):
    pass



class ItemForbidden(Error):
    pass



class ItemRequired(Error):
    pass



class NoInstantNodes(Error):
    pass



class InvalidConfigurationOption(Error):
    msg = 'Invalid configuration option'



class InvalidConfigurationValue(Error):
    msg = 'Bad configuration value'



class NodeNotPersistent(Error):
    pass



class NoRootNode(Error):
    pass



class NoCallbacks(Error):
    """
    There are no callbacks for this node.
    """



class NoCollections(Error):
    pass



class NoPublishing(Error):
    """
    This node does not support publishing.
    """