Introduced interface for client and adapted implementation accordingly