Comments (5)
For now, the consensus is just to have a single event with the msg.sender in it if one trade or more is executed.
from contracts-aggregator.
POC to get the function input parameters in java
@Getter
@AllArgsConstructor
public static class TakerOrder extends DynamicStruct {
Bool isOrderAsk;
Address taker;
Uint256 price;
Uint256 tokenId;
Uint256 minPercentageToAsk;
DynamicBytes params;
}
@Getter
@AllArgsConstructor
public static class MakerOrder extends DynamicStruct {
Bool isOrderAsk;
Address signer;
Address collection;
Uint256 price;
Uint256 tokenId;
Uint256 amount;
Address strategy;
Address currency;
Uint256 nonce;
Uint256 startTime;
Uint256 endTime;
Uint256 minPercentageToAsk;
DynamicBytes params;
Uint8 v;
Bytes32 r;
Bytes32 s;
}
private static final org.web3j.abi.datatypes.Function MATCH_BID_WITH_TAKER_ASK =
new org.web3j.abi.datatypes.Function("matchBidWithTakerAsk",
Collections.emptyList(),
Arrays.asList(
new TypeReference<TakerOrder>() {},
new TypeReference<MakerOrder>() {}
)
);
public void test() {
EthTransaction ethTransaction = web3j.ethGetTransactionByHash("0x40a24bf63ade494c5ae34cfea7808305ab881c16cc92eee504f3cd916f940e23").send();
Transaction transaction = ethTransaction.getResult();
List<Type> types = FunctionReturnDecoder.decode(transaction.getInput().substring(10), MATCH_BID_WITH_TAKER_ASK.getOutputParameters());
}
types
array will contain the matchBidWithTakerAsk
function input params as we can see here https://etherscan.io/tx/0x40a24bf63ade494c5ae34cfea7808305ab881c16cc92eee504f3cd916f940e23
from contracts-aggregator.
Does it impact the indexing performance? @rob-looksrare
from contracts-aggregator.
Does it impact the indexing performance? @rob-looksrare
Based on gut feeling it does not impact the performance in a significant way, should be one extra call to rpc provider (did not do any tests regarding performance).
from contracts-aggregator.
Hmmm, let's stick to the current specs where there is one event from the aggregator then. 🤔
from contracts-aggregator.
Related Issues (20)
- Numerator/denominator may need not to be equal to 1 for Seaport's advanced orders HOT 1
- The current SudoswapProxy implementation cannot handle partial fills when an NFT is no longer available
- When refunding ERC-20 tokens to the user, should we leave 1 wei to save gas?
- 0x Protocol integration
- Rename the repo to contracts-aggregator
- LooksRare V2 Aggregation HOT 1
- Update Solidity versions to match latest patched HOT 1
- Add .env.template to the repo
- Replace low-level callers and import from contracts-libs HOT 2
- Rescue ERC-721 and ERC-1155 HOT 1
- Re-entrancy tests HOT 1
- Add a single command to run all typescript tests HOT 1
- Add support for test coverage HOT 1
- Readability for one-line statement HOT 1
- Check return status HOT 2
- Seaport v1.2
- Add a security policy once it goes public
- Verify code coverage HOT 3
- Follow Foundry's best practices guide
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from contracts-aggregator.