':param attribute:
:param sp_entity_id:
:param default:
:param post_func:
:return:'

def get(self, attribute, sp_entity_id, default=None, post_func=None, **kwargs):

    if (not self._restrictions):
        return default
    try:
        try:
            val = self._restrictions[sp_entity_id][attribute]
        except KeyError:
            try:
                val = self._restrictions['default'][attribute]
            except KeyError:
                val = None
    except KeyError:
        val = None
    if (val is None):
        return default
    elif post_func:
        return post_func(val, sp_entity_id=sp_entity_id, **kwargs)
    else:
        return val
