Class CheckedFlatMapProof
java.lang.Object
com.exonum.binding.common.proofs.map.CheckedFlatMapProof
- All Implemented Interfaces:
CheckedProof
,CheckedMapProof
public class CheckedFlatMapProof extends java.lang.Object implements CheckedMapProof
A checked flat map proof, which does not include any intermediate nodes.
-
Method Summary
Modifier and Type Method Description boolean
containsKey(com.google.protobuf.ByteString key)
If this proof is valid, returns true if there is a given key in the proof; false — if there is no such key.static CheckedFlatMapProof
correct(HashCode indexHash, java.util.Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>> entries, java.util.Set<com.google.protobuf.ByteString> missingKeys)
Creates a valid map proof.com.google.protobuf.ByteString
get(com.google.protobuf.ByteString key)
If this proof is valid, returns the value corresponding to the specified key or null if there is no such key in the proof.java.util.Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>>
getEntries()
Get all leaf entries of this proof.HashCode
getIndexHash()
Returns the calculated index hash of the proof.java.util.Set<com.google.protobuf.ByteString>
getMissingKeys()
Get all keys that were requested, but did not appear in this proof.MapProofStatus
getProofStatus()
Returns the status of this proof: whether it is structurally valid.static CheckedFlatMapProof
invalid(MapProofStatus status)
Creates an invalid map proof.boolean
isValid()
Returns true if proof status is valid, false otherwise.
-
Method Details
-
correct
public static CheckedFlatMapProof correct(HashCode indexHash, java.util.Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>> entries, java.util.Set<com.google.protobuf.ByteString> missingKeys)Creates a valid map proof.- Parameters:
indexHash
- the index hash calculated by the validatorentries
- the set of entries that are proved to be in the mapmissingKeys
- the set of keys that are proved not to be in the map- Returns:
- a new checked proof
-
invalid
Creates an invalid map proof.- Parameters:
status
- the status explaining why the proof is not valid; must not beMapProofStatus.CORRECT
- Returns:
- a new checked proof
-
getEntries
public java.util.Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>> getEntries()Description copied from interface:CheckedMapProof
Get all leaf entries of this proof.- Specified by:
getEntries
in interfaceCheckedMapProof
-
getMissingKeys
public java.util.Set<com.google.protobuf.ByteString> getMissingKeys()Description copied from interface:CheckedMapProof
Get all keys that were requested, but did not appear in this proof.- Specified by:
getMissingKeys
in interfaceCheckedMapProof
-
containsKey
public boolean containsKey(com.google.protobuf.ByteString key)Description copied from interface:CheckedMapProof
If this proof is valid, returns true if there is a given key in the proof; false — if there is no such key.- Specified by:
containsKey
in interfaceCheckedMapProof
-
getIndexHash
Description copied from interface:CheckedProof
Returns the calculated index hash of the proof. Must be equal to the index hash of the collection, providing this proof.- Specified by:
getIndexHash
in interfaceCheckedProof
-
get
public com.google.protobuf.ByteString get(com.google.protobuf.ByteString key)Description copied from interface:CheckedMapProof
If this proof is valid, returns the value corresponding to the specified key or null if there is no such key in the proof.- Specified by:
get
in interfaceCheckedMapProof
-
getProofStatus
Description copied from interface:CheckedMapProof
Returns the status of this proof: whether it is structurally valid.- Specified by:
getProofStatus
in interfaceCheckedMapProof
- Specified by:
getProofStatus
in interfaceCheckedProof
-
isValid
public boolean isValid()Description copied from interface:CheckedProof
Returns true if proof status is valid, false otherwise. Details about the proof verification status could be obtained viaCheckedProof.getProofStatus()
.- Specified by:
isValid
in interfaceCheckedProof
-