I am learning from here: https://docs.openzeppelin.com/upgrades/2.8/creating-upgradeable-from-solidity#encoding_call_data
Before making my factory and the contract instantiated from the factory upgradeable (as you can see from the picture above), the factory could access the name that was passed as an argument to the constructor of the token contract whose instance is to be created.
But after making the contract that was instantiated from upgradeable contract upgradeable, I now don’t have access to the token’s name argument that I previously had.
I am thinking I could solve this by two methods:
- Pass both name and symbol as args to createToken() method, then encode func name and args in the contract itself, and then pass it to the contract whose instance is to be created.
- OR pass the encoded data into the createToken() method and pass it directly to the contract to be instantiated. At the same time, I could decode it in the contract itself, and get the token name.
Is there any way I could do this? Or is there another way around for this?