Can someone explain to me how, where, and when is the https://github.com/oraclize/ethereum-api/blob/master/connectors/oraclizeConnector.sol deployed to ethereum blockchain ? This is the implementation of doing the queries. The user only imports the OraclizeAPI https://github.com/oraclize/ethereum-api/blob/master/oraclizeAPI_0.4.sol in his own contract. Where does reside the connector implementation? it's not specified in the OraclizeAPI. Thanks.
Let's do some detective work.
In the oraclizeAPI contract, there are these lines that connect to an OraclizeAddressResolver (OAR). If we look at the rest of the code, this OAR is queried for the current OraclizeConnector address, and then initialized.
The following lines state the active OARs on various networks the API will connect with:
OAR = OraclizeAddrResolverI(0x1d3B2638a7cC9f2CB3D298A3DA7a90B67E5506ed);
So from that, it would appear giving
0x1d3B2638a7cC9f2CB3D298A3DA7a90B67E5506ed address on mainnet a look would be worthwhile.
Reading the contract, as of this date it appears to have
0x3dbdc81a6edc94c720b0b88fb65dbd7e395fdcf6 address in its storage.
When we go to this address on etherscan, its verified code appears to point to it being
Oraclize Connector v1.2.0