'Parse a I{Content-Disposition} header into a two-sequence of the
disposition and a flattened list of its parameters.
@return: L{None} if there is no disposition header value, a L{list} with
two elements otherwise.'

def _disposition(self, disp):

    if disp:
        disp = disp.split(';    ')
        if (len(disp) == 1):
            disp = (disp[0].lower(), None)
        elif (len(disp) > 1):
            params = [x for param in disp[1:] for x in param.split('=', 1)]
            disp = [disp[0].lower(), params]
        return disp
    else:
        return None
