package Ġorg . did comm x . did comm . model Ċ Ċ import Ġorg . did comm x . did comm . did doc . DID Doc Resolver Ċ import Ġorg . did comm x . did comm . exceptions . DID Comm IllegalArgumentException Ċ import Ġorg . did comm x . did comm . message . Message Ċ import Ġorg . did comm x . did comm . secret . Secret Resolver Ċ import Ġorg . did comm x . did comm . utils . divide DID Fragment Ċ import Ġorg . did comm x . did comm . utils . is DID Ċ import Ġorg . did comm x . did comm . utils . is DID Fragment Ċ Ċ /** Ċ Ġ* ĠPack ĠSigned ĠMessage ĠParameters Ċ Ġ*/ Ċ data Ġclass ĠPack Signed Params ( ĊĠĠĠ Ġval Ġmessage : ĠMessage , ĊĠĠĠ Ġval Ġsign From : ĠString , ĊĠĠĠ Ġval Ġfrom Prior Issuer K id : ĠString ?, ĊĠĠĠ Ġval Ġdid Doc Resolver : ĠD ID Doc Resolver ?, ĊĠĠĠ Ġval Ġsecret Resolver : ĠSecret Resolver ?, Ċ ) Ġ{ ĊĠĠĠ Ġprivate Ġconstructor ( builder : ĠBuilder ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ Ġbuilder . message , ĊĠĠĠĠĠĠĠ Ġbuilder . sign From , ĊĠĠĠĠĠĠĠ Ġbuilder . from Prior Issuer K id , ĊĠĠĠĠĠĠĠ Ġbuilder . did Doc Resolver , ĊĠĠĠĠĠĠĠ Ġbuilder . secret Resolver ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġbuilder ( message : ĠMessage , Ġsign From : ĠString ) Ġ= ĠBuilder ( message , Ġsign From ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCreates ĠPack ĠSigned ĠParameters ĠBuilder ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġmessage Ġ ĠThe Ġmessage Ġto Ġbe Ġpacked Ġinto Ġa ĠSigned ĠD ID Comm Ġmessage . ĊĠĠĠĠ Ġ* Ġ@ property Ġsign From ĠD ID Ġor Ġkey ĠID Ġthe Ġsender Ġuses Ġfor Ġsigning . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġclass ĠBuilder ( val Ġmessage : ĠMessage , Ġval Ġsign From : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġfrom Prior Issuer K id : ĠString ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġdid Doc Resolver : ĠD ID Doc Resolver ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠĠĠĠĠ Ġinternal Ġvar Ġsecret Resolver : ĠSecret Resolver ? Ġ= Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġset ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠSets ĠOptional ĠFrom Prior Ġissuer Ġkid . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġfrom Prior Issuer K id ĠFrom Prior Ġissuer Ġkid ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThis Ġbuilder . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġfrom Prior Issuer K id ( from Prior Issuer K id : ĠString ) Ġ= Ġapply Ġ{ Ġthis . from Prior Issuer K id Ġ= Ġfrom Prior Issuer K id Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠSets ĠOptional ĠD ID Doc Ġresolver Ġthat Ġcan Ġoverride Ġa Ġdefault ĠD ID Doc Ġresolver . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġdid Doc Resolver ĠCustom ĠD ID Doc Ġresolver ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThis Ġbuilder . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġdid Doc Resolver ( did Doc Resolver : ĠD ID Doc Resolver ) Ġ= Ġapply Ġ{ Ġthis . did Doc Resolver Ġ= Ġdid Doc Resolver Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠSets ĠOptional ĠSecret Ġresolver Ġthat Ġcan Ġoverride Ġa Ġdefault ĠSecret Ġresolver . ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġsecret Resolver ĠCustom ĠSecret Ġresolver ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠThis Ġbuilder . ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġsecret Resolver ( secret Resolver : ĠSecret Resolver ) Ġ= Ġapply Ġ{ Ġthis . secret Resolver Ġ= Ġsecret Resolver Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠBuilds Ġparameters ĊĠĠĠĠĠĠĠĠ Ġ* ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĠPack ĠSigned ĠMessage ĠParameters ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġbuild (): ĠPack Signed Params Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdid From Ġ= Ġdivide DID Fragment ( this . sign From ). first () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfrom Prior Issuer K id Ġ= Ġthis . from Prior Issuer K id ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is DID ( this . sign From )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( did From ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( this . message . from Ġ!= Ġdid From ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( did From ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( from Prior Issuer K id Ġ!= Ġnull Ġ&& Ġ(! is DID ( from Prior Issuer K id ) Ġ|| Ġ! is DID Fragment ( from Prior Issuer K id ))) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( from Prior Issuer K id ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( message . from Prior Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( message . from Prior . sub Ġ== Ġmessage . from Prior . iss ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( message . from Prior . sub ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( message . from Prior . sub Ġ!= Ġmessage . from ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( message . from Prior . sub ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( from Prior Issuer K id Ġ!= Ġnull Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivide DID Fragment ( from Prior Issuer K id ). first () Ġ!= Ġmessage . from Prior . iss ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠD ID Comm IllegalArgumentException ( from Prior Issuer K id ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠPack Signed Params ( this ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ