johnbridges commited on
Commit
3692feb
·
1 Parent(s): 9f3b48c
Files changed (1) hide show
  1. rabbit_repo.py +13 -5
rabbit_repo.py CHANGED
@@ -17,11 +17,19 @@ class RabbitRepo(RabbitBase):
17
  self._source = external_source
18
 
19
  def _resolve_type(self, exch: str) -> str:
20
- # Outbound: Use EXCHANGE_TYPES if present, else default to 'fanout'
21
- matches = [k for k in settings.EXCHANGE_TYPES.keys() if exch.lower().startswith(k.lower())]
22
- if matches:
23
- return settings.EXCHANGE_TYPES[max(matches, key=len)]
24
- return "fanout" # Default for outbound
 
 
 
 
 
 
 
 
25
 
26
  async def publish(self, exchange: str, obj: Any, routing_key: str = "") -> None:
27
  ex = await self.ensure_exchange(exchange)
 
17
  self._source = external_source
18
 
19
  def _resolve_type(self, exch: str) -> str:
20
+ # First check for oa.* exchanges
21
+ if exch.lower().startswith("oa."):
22
+ return "direct" # Default for oa.* exchanges
23
+
24
+ # Then check EXCHANGE_TYPES if present
25
+ if hasattr(settings, 'EXCHANGE_TYPES') and settings.EXCHANGE_TYPES:
26
+ matches = [k for k in settings.EXCHANGE_TYPES.keys()
27
+ if exch.lower().startswith(k.lower())]
28
+ if matches:
29
+ return settings.EXCHANGE_TYPES[max(matches, key=len)]
30
+
31
+ # Default fallback
32
+ return "fanout"
33
 
34
  async def publish(self, exchange: str, obj: Any, routing_key: str = "") -> None:
35
  ex = await self.ensure_exchange(exchange)