basic resource provider interface