package Ġnet . cord a . core . node Ċ Ċ import Ġnet . cord a . core . Keep For DJ VM Ċ import Ġnet . cord a . core . identity . Party Ċ import Ġnet . cord a . core . node . services . Attachment Id Ċ import Ġnet . cord a . core . serialization . C ord a Serializable Ċ import Ġnet . cord a . core . serialization . Deprecated Constructor For Deserialization Ċ import Ġnet . cord a . core . utilities . days Ċ import Ġjava . time . Duration Ċ import Ġjava . time . Instant Ċ Ċ /** Ċ Ġ* ĠNetwork Ġparameters Ġare Ġa Ġset Ġof Ġvalues Ġthat Ġevery Ġnode Ġparticip ating Ġin Ġthe Ġzone Ġneeds Ġto Ġagree Ġon Ġand Ġuse Ġto Ċ Ġ* Ġcorrectly Ġinter operate Ġwith Ġeach Ġother . Ċ Ġ* Ġ@ property Ġminimum Platform Version ĠMinimum Ġversion Ġof ĠC ord a Ġplatform Ġthat Ġis Ġrequired Ġfor Ġnodes Ġin Ġthe Ġnetwork . Ċ Ġ* Ġ@ property Ġnot aries ĠList Ġof Ġwell Ġknown Ġand Ġtrusted Ġnot ary Ġident ities Ġwith Ġinformation Ġon Ġvalidation Ġtype . Ċ Ġ* Ġ@ property Ġmax Message Size ĠThis Ġis Ġcurrently Ġignored . ĠHowever , Ġit Ġwill Ġbe Ġw ired Ġup Ġin Ġa Ġfuture Ġrelease . Ċ Ġ* Ġ@ property Ġmax Transaction Size ĠMaximum Ġpermitted Ġtransaction Ġsize Ġin Ġbytes . Ċ Ġ* Ġ@ property Ġmodified Time ĠLast Ġmodification Ġtime Ġof Ġnetwork Ġparameters Ġset . Ċ Ġ* Ġ@ property Ġepoch ĠVersion Ġnumber Ġof Ġthe Ġnetwork Ġparameters . ĠStarting Ġfrom Ġ 1 , Ġthis Ġwill Ġalways Ġincrement Ġon Ġeach Ġnew Ġset Ċ Ġ* Ġof Ġparameters . Ċ Ġ* Ġ@ property Ġwh itelisted Contract Implement ations ĠList Ġof Ġwh itelisted Ġj ars Ġcontaining Ġcontract Ġcode Ġfor Ġeach Ġcontract Ġclass . Ċ Ġ* Ġ ĠThis Ġwill Ġbe Ġused Ġby Ġ[ net . cord a . core . contracts . Wh itelisted By Zone Attachment Constraint ]. Ġ[ You Ġcan Ġlearn Ġmore Ġabout Ġcontract Ġconstraints Ġhere ]( https :// docs . cord a . net / api - contract - constraints . html ). Ċ Ġ* Ġ@ property Ġevent H orizon ĠTime Ġafter Ġwhich Ġnodes Ġwill Ġbe Ġremoved Ġfrom Ġthe Ġnetwork Ġmap Ġif Ġthey Ġhave Ġnot Ġbeen Ġseen Ċ Ġ* Ġduring Ġthis Ġperiod Ċ Ġ*/ Ċ @ Keep For DJ VM Ċ @ C ord a Serializable Ċ data Ġclass ĠNetwork Parameters ( ĊĠĠĠĠĠĠĠ Ġval Ġminimum Platform Version : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġnot aries : ĠList < Not ary Info >, ĊĠĠĠĠĠĠĠ Ġval Ġmax Message Size : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġmax Transaction Size : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġmodified Time : ĠInstant , ĊĠĠĠĠĠĠĠ Ġval Ġepoch : ĠInt , ĊĠĠĠĠĠĠĠ Ġval Ġwh itelisted Contract Implement ations : ĠMap < String , ĠList < Attachment Id >>, ĊĠĠĠĠĠĠĠ Ġval Ġevent H orizon : ĠDuration Ċ ) Ġ{ ĊĠĠĠ Ġ@ Deprecated Constructor For Deserialization ( 1 ) ĊĠĠĠ Ġconstructor Ġ( minimum Platform Version : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot aries : ĠList < Not ary Info >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Message Size : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Transaction Size : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Time : ĠInstant , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġepoch : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwh itelisted Contract Implement ations : ĠMap < String , ĠList < Attachment Id >> ĊĠĠĠ Ġ) Ġ: Ġthis ( minimum Platform Version , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnot aries , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Message Size , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmax Transaction Size , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Time , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġepoch , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwh itelisted Contract Implement ations , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠInt . MAX _ VALUE . days ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġrequire ( minimum Platform Version Ġ> Ġ 0 ) Ġ{ Ġ" minimum Platform Version Ġmust Ġbe Ġat Ġleast Ġ 1 " Ġ} ĊĠĠĠĠĠĠĠ Ġrequire ( not aries . distinct By Ġ{ Ġit . identity Ġ} Ġ== Ġnot aries ) Ġ{ Ġ" Duplicate Ġnot ary Ġident ities " Ġ} ĊĠĠĠĠĠĠĠ Ġrequire ( epoch Ġ> Ġ 0 ) Ġ{ Ġ" epoch Ġmust Ġbe Ġat Ġleast Ġ 1 " Ġ} ĊĠĠĠĠĠĠĠ Ġrequire ( max Message Size Ġ> Ġ 0 ) Ġ{ Ġ" max Message Size Ġmust Ġbe Ġat Ġleast Ġ 1 " Ġ} ĊĠĠĠĠĠĠĠ Ġrequire ( max Transaction Size Ġ> Ġ 0 ) Ġ{ Ġ" max Transaction Size Ġmust Ġbe Ġat Ġleast Ġ 1 " Ġ} ĊĠĠĠĠĠĠĠ Ġrequire (! event H orizon . is Negative ) Ġ{ Ġ" event H orizon Ġmust Ġbe Ġpositive Ġvalue " Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcopy ( minimum Platform Version : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot aries : ĠList < Not ary Info >, ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Message Size : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Transaction Size : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Time : ĠInstant , ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġepoch : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠ Ġwh itelisted Contract Implement ations : ĠMap < String , ĠList < Attachment Id >> ĊĠĠĠ Ġ): ĠNetwork Parameters Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcopy ( minimum Platform Version Ġ= Ġminimum Platform Version , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnot aries Ġ= Ġnot aries , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Message Size Ġ= Ġmax Message Size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Transaction Size Ġ= Ġmax Transaction Size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmodified Time Ġ= Ġmodified Time , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġepoch Ġ= Ġepoch , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwh itelisted Contract Implement ations Ġ= Ġwh itelisted Contract Implement ations , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent H orizon Ġ= Ġevent H orizon ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" Network Parameters Ġ{ ĊĠ Ġminimum Platform Version =$ minimum Platform Version ĊĠ Ġnot aries =$ not aries ĊĠ Ġmax Message Size =$ max Message Size ĊĠ Ġmax Transaction Size =$ max Transaction Size ĊĠ Ġwh itelisted Contract Implement ations Ġ{ ĊĠĠĠ Ġ${ wh itelisted Contract Implement ations . entries . join ToString ("\ n ĠĠĠ Ġ" )} ĊĠ Ġ} ĊĠ Ġevent H orizon =$ event H orizon ĊĠ Ġmodified Time =$ modified Time ĊĠ Ġepoch =$ epoch Ċ } """ ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* ĠData Ġclass Ġstoring Ġinformation Ġabout Ġnot aries Ġavailable Ġin Ġthe Ġnetwork . Ċ Ġ* Ġ@ property Ġidentity ĠIdentity Ġof Ġthe Ġnot ary Ġ( note Ġthat Ġit Ġcan Ġbe Ġan Ġidentity Ġof Ġthe Ġdistributed Ġnode ). Ċ Ġ* Ġ@ property Ġvalidating ĠIndicates Ġif Ġthe Ġnot ary Ġis Ġvalidating . Ċ Ġ*/ Ċ @ Keep For DJ VM Ċ @ C ord a Serializable Ċ data Ġclass ĠNot ary Info ( val Ġidentity : ĠParty , Ġval Ġvalidating : ĠBoolean ) Ċ