refactoring asset service