@@ -14,24 +14,24 @@ import (
1414 "google.golang.org/grpc/status"
1515)
1616
17- func (k Keeper ) GetAddressLockedAmount (ctx sdk.Context , address string ) (uint64 , error ) {
17+ func (k Keeper ) GetAddressLockedAmount (ctx sdk.Context , cosmos_address string ) (uint64 , error ) {
1818 storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
19- rollupRegistryStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
19+ ledgerStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
2020
21- amountBytes := rollupRegistryStore .Get ([]byte (address ))
21+ amountBytes := ledgerStore .Get ([]byte (cosmos_address ))
2222 if amountBytes == nil {
2323 return 0 , nil
2424 }
2525 amount := binary .BigEndian .Uint64 (amountBytes )
2626 return amount , nil
2727}
2828
29- func (k Keeper ) AddAddressLockedAmount (ctx sdk.Context , address string , amountToAdd uint64 ) (uint64 , error ) {
29+ func (k Keeper ) AddAddressLockedAmount (ctx sdk.Context , cosmos_address string , amountToAdd uint64 ) (uint64 , error ) {
3030 storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
31- rollupRegistryStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
31+ ledgerStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
3232
3333 // Get current amount
34- currentAmount , err := k .GetAddressLockedAmount (ctx , address )
34+ currentAmount , err := k .GetAddressLockedAmount (ctx , cosmos_address )
3535 if err != nil {
3636 return 0 , err
3737 }
@@ -42,17 +42,17 @@ func (k Keeper) AddAddressLockedAmount(ctx sdk.Context, address string, amountTo
4242 // Convert to bytes and store
4343 amountBytes := make ([]byte , 8 )
4444 binary .BigEndian .PutUint64 (amountBytes , newAmount )
45- rollupRegistryStore .Set ([]byte (address ), amountBytes )
45+ ledgerStore .Set ([]byte (cosmos_address ), amountBytes )
4646
4747 return newAmount , nil
4848}
4949
50- func (k Keeper ) SubtractAddressLockedAmount (ctx sdk.Context , address string , amountToSubtract uint64 ) (uint64 , error ) {
50+ func (k Keeper ) SubtractAddressLockedAmount (ctx sdk.Context , cosmos_address string , amountToSubtract uint64 ) (uint64 , error ) {
5151 storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
52- rollupRegistryStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
52+ ledgerStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
5353
5454 // Get current amount
55- currentAmount , err := k .GetAddressLockedAmount (ctx , address )
55+ currentAmount , err := k .GetAddressLockedAmount (ctx , cosmos_address )
5656 if err != nil {
5757 return 0 , err
5858 }
@@ -68,19 +68,39 @@ func (k Keeper) SubtractAddressLockedAmount(ctx sdk.Context, address string, amo
6868 // Convert to bytes and store
6969 amountBytes := make ([]byte , 8 )
7070 binary .BigEndian .PutUint64 (amountBytes , newAmount )
71- rollupRegistryStore .Set ([]byte (address ), amountBytes )
71+ ledgerStore .Set ([]byte (cosmos_address ), amountBytes )
7272
7373 return newAmount , nil
7474}
7575
76- func (k Keeper ) SetAddressLockedAmount (ctx sdk.Context , address string , amount uint64 ) error {
76+ func (k Keeper ) SetAddressLockedAmount (ctx sdk.Context , cosmos_address string , amount uint64 ) error {
7777 storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
78- rollupRegistryStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
78+ ledgerStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMLedgerKey ))
7979
8080 // Convert to bytes and store
8181 amountBytes := make ([]byte , 8 )
8282 binary .BigEndian .PutUint64 (amountBytes , amount )
83- rollupRegistryStore .Set ([]byte (address ), amountBytes )
83+ ledgerStore .Set ([]byte (cosmos_address ), amountBytes )
8484
8585 return nil
8686}
87+
88+ // Store address mapping (evm address -> cosmos address)
89+ func (k Keeper ) SetAddressMapping (ctx sdk.Context , evm_address string , cosmos_address string ) error {
90+ storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
91+ ledgerMappingStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMMappingKey ))
92+
93+ ledgerMappingStore .Set ([]byte (evm_address ), []byte (cosmos_address ))
94+ return nil
95+ }
96+
97+ func (k Keeper ) GetCosmosAddressMapping (ctx sdk.Context , evm_address string ) (string , error ) {
98+ storeAdapter := runtime .KVStoreAdapter (k .storeService .OpenKVStore (ctx ))
99+ ledgerMappingStore := prefix .NewStore (storeAdapter , types .KeyPrefix (types .EVMMappingKey ))
100+
101+ cosmos_address := ledgerMappingStore .Get ([]byte (evm_address ))
102+ if cosmos_address == nil {
103+ return "" , status .Error (codes .NotFound , "address mapping not found" )
104+ }
105+ return string (cosmos_address ), nil
106+ }
0 commit comments