Делал через разбор сериализованного XML с помощью matcher. По крайней мере, в условиях это не оговаривалось. Подскажите, где может быть затык хотя бы по первому пункту? Класс Shop можно не учитывать - делал для тестов.