/** Ċ Ġ* ĠThis Ġfile Ġis Ġpart Ġof Ġthe Ġ" eid ol on - lab " Ġproject . Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLICENSE Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* Ċ Ġ* ĠFor Ġthe Ġfull Ġcopyright Ġand Ġlicense Ġinformation , Ġplease Ġview Ġthe ĠLICENSE Ċ Ġ* Ġfile Ġthat Ġwas Ġdistributed Ġwith Ġthis Ġsource Ġcode . Ċ Ġ*/ Ċ Ċ package Ġspace . eid ol on . component . config . util Ċ Ċ /** Ċ Ġ* ĠAllows Ġmulti - line Ġstrings Ġto Ġcontain Ġa Ġmargin Ġcharacter Ġthat Ġis Ġtreated Ġas Ċ Ġ* Ġthe Ġstart Ġof Ġthe Ġline Ġand Ġstripped Ġfrom Ġthe Ġstring . Ċ Ġ* Ċ Ġ* ĠExample Ġusage : Ċ Ġ* Ċ Ġ* Ġval Ġc 1 Ġ= Ġ""" Ċ Ġ* ĠĠĠĠ Ġ| string : Ġ" is Ġa Ġstring " Ċ Ġ* ĠĠĠĠ Ġ| object : Ġ{ Ċ Ġ* ĠĠĠĠ Ġ| ĠĠĠ Ġkey : Ġ" value " Ċ Ġ* ĠĠĠĠ Ġ| ĠĠĠ Ġint : Ġ 1 2 3 4 5 6 7 Ċ Ġ* ĠĠĠĠ Ġ| } """. trim (). strip Margin () Ċ Ġ* Ċ Ġ* Ġ@ param Ġmargin Char ĠThe Ġcharacter Ġto Ġact Ġas Ġmargin Ċ Ġ* Ġ@ return ĠThe Ġstring Ġstripped Ġof Ġwhitespace Ġbefore Ġthe Ġmargin , Ġand Ġthe Ġmargin Ġitself Ċ Ġ*/ Ċ fun ĠString . strip Margin ( margin Char : ĠChar ): ĠString Ġ{ ĊĠĠĠ Ġval Ġbuffer Ġ= ĠStringBuilder () ĊĠĠĠ Ġval Ġlines Ġ= Ġthis . lines () ĊĊĠĠĠ Ġfor Ġ( line No Ġin Ġlines . indices ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġline Ġ= Ġlines [ line No ] ĊĠĠĠĠĠĠĠ Ġval Ġlength Ġ= Ġline . length () ĊĠĠĠĠĠĠĠ Ġvar Ġindex Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġvar Ġresult Ġ= Ġ"" ĊĊĠĠĠĠĠĠĠ Ġwhile Ġ( index Ġ< Ġlength Ġ&& Ġline . charAt ( index ) Ġ<= Ġ' Ġ') Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġindex ++ ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ< Ġlength Ġ&& Ġline . charAt ( index ) Ġ== Ġmargin Char ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ+= Ġline . substring ( index Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ+= Ġline ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ(( line No Ġ+ Ġ 1 ) Ġ!= Ġlines . count ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresult Ġ+= Ġ'\ n ' ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġbuffer . append ( result ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġreturn Ġbuffer . toString () Ċ } Ċ Ċ /** Ċ Ġ* ĠConvenience Ġmethod Ġto Ġuse Ġdefault Ġmargin Ġcharacter Ġof Ġ' |' Ġas Ġmargin Ċ Ġ* Ċ Ġ* Ġ@ return ĠThe Ġstring Ġstripped Ġof Ġwhitespace Ġbefore Ġthe Ġmargin , Ġand Ġthe Ġmargin Ġitself Ċ Ġ*/ Ċ fun ĠString . strip Margin (): ĠString Ġ{ ĊĠĠĠ Ġreturn Ġthis . strip Margin ('| ') Ċ } Ċ