add new module to handle different resourcetypes