如何基于当前应用获取管道中的当前通道域

时间:2019-01-23 15:12:46

标签: intershop

在管道中,我需要获取当前应用程序分配到的通道域。

我获得了当前的ApplicationBO实例,但无法从中获取通道域(我尝试在调试器中对其进行检查,但是我只能为该应用程序获取域,而不能为该通道获取域)。

这是当前应用程序和频道的分配方式:

公司组织:

  • 频道1
    • 应用1 <---如果在此应用中,则获取Channel1
  • 第2频道
    • 应用2 <---如果在此应用中,则获取Channel2

这两个应用程序共享一个通用墨盒,其中包含我需要获取当前频道的管道

1 个答案:

答案 0 :(得分:7)

有两种选择:

  1. 调用管道DetermineRepositories-Channel,该管道返回一个存储库对象(即Channel)。在存储库上,使用对象路径Repository:RepositoryDomain获取域。我不确定性能影响有多大。.
  2. 使用对象路径ApplicationBO:Extension("PersistentObjectBOExtension"):PersistentObject:Domain获取应用程序本身的拥有域。那将永远是通道(域)。因为那是店面应用程序诞生的地方。

如果需要将Domain对象转换为Repository对象,则可以使用管道GetRepositoryByRepositoryDomain