Skip to content

Commit 6bc8661

Browse files
committed
fix: do not extend v310 oracles
1 parent 9388357 commit 6bc8661

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

src/sdk/market/oracle/createPriceOracle.ts

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ import type { IPriceOracleContract } from "./types.js";
1313
*
1414
* So this method bridges multiple compressor data pieces and single oracle contract isntance
1515
*
16+
* @deprecated This will be removed when v300 is deprecated
17+
*
1618
* @param sdk
1719
* @param data
1820
* @param underlying
@@ -23,20 +25,24 @@ export function getOrCreatePriceOracle(
2325
data: PriceOracleData,
2426
): IPriceOracleContract {
2527
const { version, addr } = data.baseParams;
26-
const existing = sdk.getContract(addr);
2728

2829
let result: IPriceOracleContract;
29-
if (existing) {
30-
result = tryExtendExistingOracle(existing, data);
31-
} else if (isV300(version)) {
32-
result = new PriceOracleV300Contract(sdk, data);
30+
let action = "created";
31+
if (isV300(version)) {
32+
const existing = sdk.getContract(addr);
33+
if (existing) {
34+
result = tryExtendExistingOracle(existing, data);
35+
action = "extended";
36+
} else {
37+
result = new PriceOracleV300Contract(sdk, data);
38+
}
3339
} else if (isV310(version)) {
3440
result = new PriceOracleV310Contract(sdk, data);
3541
} else {
3642
throw new Error(`Unsupported oracle version ${version}`);
3743
}
3844
sdk.logger?.debug(
39-
`oracle ${addr} v${version} was ${existing ? "extended" : "created"} with ${result.mainPriceFeeds.size} main and ${result.reservePriceFeeds.size} reserve price feeds`,
45+
`oracle ${addr} v${version} was ${action} with ${result.mainPriceFeeds.size} main and ${result.reservePriceFeeds.size} reserve price feeds`,
4046
);
4147
return result;
4248
}

0 commit comments

Comments
 (0)