@Grundy я решил сделать сервис через который будут осуществляться основные действия: добавить/удалить/получить
и тут как Ты правильно заметил необходимо обеспечить что бы снаружи не было возможности изменить внутренний объект
как это реализовать я не знаю, подскажи как.