Как получить текущий домен канала в конвейере на основе текущего приложения

В конвейере мне нужно получить домен канала, которому назначено текущее приложение.

Я получаю текущий экземпляр ApplicationBO, но мне не удалось получить от него домен канала (я пытался проверить его в отладчике, но я могу получить домен только для приложения, но не для канала).

Вот как в настоящее время назначаются приложения и каналы:

Организация компании:

  • Channel 1
    • App 1 <--- Get Channel1 if in this app
  • Channel 2
    • App 2 <--- Get Channel2 if in this app

Оба приложения используют общий картридж, который содержит конвейер, в котором мне нужно получить текущий канал.


person Miroslav Mihaljević    schedule 23.01.2019    source источник


Ответы (1)


Есть два варианта:

  1. Вызов конвейера DetermineRepositories-Channel, который возвращает вам объект репозитория (то есть канал). В репозитории используйте путь к объекту Repository:RepositoryDomain, чтобы получить домен. Я не уверен, насколько велико влияние производительности.
  2. Используйте путь к объекту ApplicationBO:Extension("PersistentObjectBOExtension"):PersistentObject:Domain, чтобы получить собственный домен самого приложения. Это всегда будет канал (домен). Потому что именно здесь рождаются витрины магазинов.

Если вам нужно преобразовать объект домена в объект репозитория, вы можете использовать пипетку GetRepositoryByRepositoryDomain.

person Johannes Metzner    schedule 23.01.2019