Пример #1
0
 def __init__(self):
     """
     An interface definition class.  All Interfaces should subclass from
     here.  Note that this is not an implementation and should never be
     used directly.
     """
     raise exc.dRestInterfaceError("Interfaces can not be used directly.")
Пример #2
0
 def __init__(self):
     """
     An interface definition class.  All Interfaces should subclass from
     here.  Note that this is not an implementation and should never be
     used directly.
     """
     raise exc.dRestInterfaceError("Interfaces can not be used directly.")
Пример #3
0
def validate(interface, obj, members, metas=[]):
    """
    A wrapper to validate interfaces.
    
    Required Arguments:
    
        interface
            The interface class to validate against
            
        obj
            The object to validate.
            
        members
            A list of object members that must exist.
            
    Optional Arguments:
        
        metas
            A list of meta parameters that must exist.
             
    """
    invalid = []

    for member in members:
        if not hasattr(obj, member):
            invalid.append(member)

    if hasattr(obj, '_meta'):
        for meta in metas:
            if not hasattr(obj._meta, meta):
                invalid.append('_meta.%s' % meta)

    if invalid:
        raise exc.dRestInterfaceError("Invalid or missing: %s in %s" % \
                                      (invalid, obj))
Пример #4
0
def validate(interface, obj, members, metas=[]):
    """
    A wrapper to validate interfaces.
    
    Required Arguments:
    
        interface
            The interface class to validate against
            
        obj
            The object to validate.
            
        members
            A list of object members that must exist.
            
    Optional Arguments:
        
        metas
            A list of meta parameters that must exist.
             
    """
    invalid = []

    for member in members:
        if not hasattr(obj, member):
            invalid.append(member)
            
    if hasattr(obj, '_meta'):
        for meta in metas:
            if not hasattr(obj._meta, meta):
                invalid.append('_meta.%s' % meta)
            
    if invalid:
        raise exc.dRestInterfaceError("Invalid or missing: %s in %s" % \
                                      (invalid, obj))