package Ġorg . vit riv r . cott ont ail . config Ċ Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġorg . vit riv r . cott ont ail . utilities . serializers . json . Path Serializer Ċ import Ġjava . nio . file . Path Ċ Ċ /** Ċ Ġ* ĠConfiguration Ġfor ĠC ott ont ail ĠDB 's Ġserver . Ċ Ġ* Ċ Ġ* Ġ@ author ĠR alph ĠG asser Ċ Ġ* Ġ@ version Ġ 1 . 0 . 3 Ċ Ġ*/ Ċ @ Serializable Ċ data Ġclass ĠServer Config ( ĊĠĠĠ Ġ/** ĠThe Ġport Ġunder Ġwhich Ġthe ĠgRPC Ġserver Ġshould Ġbe Ġreachable . Ġ*/ ĊĠĠĠ Ġval Ġport : ĠInt Ġ= Ġ 1 8 6 5 , ĊĊĠĠĠ Ġ/** ĠThe Ġnumber Ġof Ġthreads Ġthat Ġcan Ġhandle Ġconnections Ġfor ĠC ott ont ail ĠDB . Ġ*/ ĊĠĠĠ Ġval Ġconnection Threads : ĠInt Ġ= Ġ 5 , ĊĊĠĠĠ Ġ/** ĠOptional Ġpath Ġto Ġcertificate Ġfile Ġ( for ĠTLS ). Ġ*/ ĊĠĠĠ Ġ@ Serializable ( with Ġ= ĠPath Serializer :: class ) ĊĠĠĠ Ġval Ġcert File : ĠPath ? Ġ= Ġnull , ĊĊĠĠĠ Ġ/** ĠOptional Ġpath Ġto Ġprivate Ġkey Ġfile Ġ( for ĠTLS ). Ġ*/ ĊĠĠĠ Ġ@ Serializable ( with Ġ= ĠPath Serializer :: class ) ĊĠĠĠ Ġval ĠprivateKey : ĠPath ? Ġ= Ġnull Ċ ) Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠTrue Ġif ĠTLS Ġshould Ġbe Ġused Ġfor ĠgRPC Ġcommunication , Ġfalse Ġotherwise . ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġuse Tls ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġ( this . cert File Ġ!= Ġnull Ġ&& Ġthis . privateKey Ġ!= Ġnull ) Ċ } ĊĊĊĊ