diff --git a/pom.xml b/pom.xml
index 283d687c..53fdf588 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
dev.vality
service-parent-pom
- 3.1.6
+ 3.1.7
anapi-v2
diff --git a/src/main/java/dev/vality/anapi/v2/service/DominantService.java b/src/main/java/dev/vality/anapi/v2/service/DominantService.java
index b6816ea2..2543fb38 100644
--- a/src/main/java/dev/vality/anapi/v2/service/DominantService.java
+++ b/src/main/java/dev/vality/anapi/v2/service/DominantService.java
@@ -4,6 +4,7 @@
import dev.vality.damsel.domain.*;
import dev.vality.damsel.domain_config_v2.RepositoryClientSrv;
import dev.vality.damsel.domain_config_v2.VersionReference;
+import dev.vality.damsel.domain_config_v2.VersionedObject;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.thrift.TException;
@@ -21,8 +22,7 @@ public class DominantService {
public List getShopIds(String partyId, String realm) {
try {
log.info("Looking for shops, partyId={}, realm={}", partyId, realm);
- List shopsRefs = getShopConfigRefs(partyId);
- List shopsObjects = getShopConfigObjects(shopsRefs);
+ List shopsObjects = getShopConfigObjects(partyId);
var shopIds = shopsObjects.stream()
.filter(shopConfigObject -> realmMatches(realm, shopConfigObject))
.map(shopConfigObject -> shopConfigObject.getRef().getId()).toList();
@@ -33,16 +33,16 @@ public List getShopIds(String partyId, String realm) {
}
}
- private List getShopConfigRefs(String partyId) throws TException {
+ private List getShopConfigObjects(String partyId) throws TException {
var partyReference = Reference.party_config(new PartyConfigRef(partyId));
- var party = dominantClient.checkoutObject(new VersionReference(), partyReference);
- return party.getObject().getPartyConfig().getData().getShops();
- }
-
- private List getShopConfigObjects(List shopConfigRefs) throws TException {
- var shopConfigs = dominantClient.checkoutObjects(new VersionReference(),
- shopConfigRefs.stream().map(Reference::shop_config).toList());
- return shopConfigs.stream().map(domainObject -> domainObject.getObject().getShopConfig()).toList();
+ var versionedObjectWithReferences =
+ dominantClient.checkoutObjectWithReferences(new VersionReference(), partyReference);
+ var shopConfigObjects = versionedObjectWithReferences.getReferencedBy().stream()
+ .map(VersionedObject::getObject)
+ .map(DomainObject::getShopConfig)
+ .toList();
+ log.debug("Receive shops for partyId: {}, shopConfigObjects ='{}'", partyId, shopConfigObjects);
+ return shopConfigObjects;
}
private boolean realmMatches(String expectedRealm, ShopConfigObject shopConfigObject) {