package Ġcom . ac n . d lt . cord a . do orm an . utils čĊč Ċ import Ġio . vertx . core . Future č Ċ import Ġio . vertx . core . Vert x č Ċ import Ġnet . cord a . core . utilities . to HexString č Ċ import Ġjava . io . File č Ċ import Ġjava . io . FileInputStream č Ċ import Ġjava . io . Sequence InputStream č Ċ import Ġjava . security . Digest InputStream č Ċ import Ġjava . security . Message Digest čĊč Ċ class ĠDirectory Digest ( private Ġval Ġpath : ĠFile , čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġregex : ĠRegex Ġ= Ġ" .* ". to Regex (), čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġdigest Algorithm : ĠString Ġ= Ġ" SHA - 2 5 6 ") Ġ{ čĊčĊĠ Ġfun Ġdigest (): ĠString Ġ{ čĊĠĠĠ Ġval Ġfile Streams Ġ= Ġpath . get Files ( regex ). map Ġ{ ĠFileInputStream ( it ) Ġ} čĊčĊĠĠĠ Ġreturn ĠDigest InputStream ( čĊĠĠĠĠĠ ĠSequence InputStream ( file Streams . to Enumeration ()), čĊĠĠĠĠĠ ĠMessage Digest . getInstance ( digest Algorithm )). use Ġ{ čĊĠĠĠĠĠ Ġwhile Ġ( it . read () Ġ> Ġ- 1 ) Ġ{ čĊĠĠĠĠĠ Ġ} čĊĠĠĠĠĠ Ġit . message Digest . digest (). to HexString () čĊĠĠĠ Ġ} čĊĠ Ġ} čĊčĊĠ Ġfun Ġdigest ( vertx : ĠVert x ): ĠFuture < String > Ġ{ čĊĠĠĠ Ġreturn Ġvert x . execute Blocking Ġ{ čĊĠĠĠĠĠ Ġdigest () čĊĠĠĠ Ġ} čĊĠ Ġ} č Ċ } čĊčĊčĊ