В этом принципе "ответственность" определяется как причина для изменения. В данном случае единственной ответственностью вашего класса будет импорт продуктов. Если способ импорта продукции изменится, то класс должен измениться.
Намерение состоит в том, чтобы избежать одновременного изменения одного и того же класса разными вещами. Например, если бы ваш класс импортера продуктов также определял формат вывода, то у него было бы две ответственности, поскольку, скорее всего, формат вывода совершенно не связан с механизмом импорта данных.
Теперь, то, что класс огромный, и то, что getDescription() также устанавливает описание, не является прямым нарушением SRP, а относится к другим принципам. А именно, что вы должны избегать огромных классов (показывает отсутствие дизайна) и каждый метод должен делать одну вещь (что было бы как бы более конкретной версией SRP.)
.