PIM-3322 : Added Setters and specs in updater

| Q                    | A
| -------------------- | ---
| Bug fix?             | No
| New feature?         | Yes
| BC breaks?           | No
| CI currently passes? | Running
| Tests pass?          | Yes
| Scenarios pass?      | Yes
| Checkstyle issues?*  | No
| PMD issues?**        | Yes
| Changelog updated?   | No
| Fixed tickets        | PIM-3356
| DB schema updated?   | No
| Migration script?    | No
| Doc PR               | No
thank you to split big methods like that with protected methods, for instance, validate(), getOptions(), updateProducts()