Class CheckedFlatMapProof
- java.lang.Object
-
- com.exonum.binding.common.proofs.map.CheckedFlatMapProof
-
- All Implemented Interfaces:
CheckedProof
,CheckedMapProof
public class CheckedFlatMapProof extends Object implements CheckedMapProof
A checked flat map proof, which does not include any intermediate nodes.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods 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, Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>> entries, 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.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.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 Detail
-
correct
public static CheckedFlatMapProof correct(HashCode indexHash, Set<MapEntry<com.google.protobuf.ByteString,com.google.protobuf.ByteString>> entries, 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
public static CheckedFlatMapProof invalid(MapProofStatus status)
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 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 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
public HashCode 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
public MapProofStatus 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
-
-