/** Ċ Ġ* Ġ< s late _ header > Ċ Ġ* Ġurl : Ġwww . s late kit . com Ċ Ġ* Ġgit : Ġwww . github . com / code - helix / s late kit Ċ Ġ* Ġorg : Ġwww . code helix . co Ċ Ġ* Ġauthor : ĠK ish ore ĠRed dy Ċ Ġ* Ġcopyright : Ġ 2 0 1 6 ĠCode Hel ix ĠSolutions ĠInc . Ċ Ġ* Ġlicense : Ġrefer Ġto Ġwebsite Ġand / or Ġgithub Ċ Ġ* Ġabout : ĠA Ġtool - kit , Ġutility Ġlibrary Ġand Ġserver - backend Ċ Ġ* Ġman tra : ĠSimp licity Ġabove Ġall Ġelse Ċ Ġ* Ġ</ s late _ header > Ċ Ġ*/ Ċ Ċ package Ġs late kit . common . envs Ċ Ċ /** Ċ Ġ* ĠRepresents Ġa Ġsystem Ġenvironment Ċ Ġ* Ġ@ param Ġname Ġ: Ġe . g . ĠQuality ĠAss urance Ġtest Ċ Ġ* Ġ@ param Ġmode Ġ: Ġe . g . ĠQ at Ċ Ġ* Ġ@ param Ġregion Ġ: Ġnew Ġy ork Ċ Ġ* Ġ@ param Ġdesc Ġ: ĠQ at Ġenvironment Ġ 1 Ġin Ġnew Ġy ork Ċ Ġ*/ Ċ data Ġclass ĠEnv ( ĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġval Ġname : ĠString , ĊĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġval Ġmode : ĠEnv Mode , ĊĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġval Ġregion : ĠString Ġ= Ġ"", ĊĊĠĠĠ Ġ@ Jvm Field ĊĠĠĠ Ġval Ġdesc : ĠString Ġ= Ġ"" Ċ ) Ġ: ĠEnv Support Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ" qa 1 : qa " ĊĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġval Ġkey : ĠString Ġget () Ġ= Ġname Ġ+ Ġ":" Ġ+ Ġmode . name ĊĊĠĠĠ Ġoverride Ġfun Ġis Env Name ( env Mode : ĠString ): ĠBoolean Ġ= Ġmode . name Ġ== Ġenv Mode ĊĊĠĠĠ Ġoverride Ġfun Ġis Env ( env Mode : ĠEnv Mode ): ĠBoolean Ġ= Ġmode Ġ== Ġenv Mode ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġval Ġempty Ġ= ĠEnv ("", ĠEnv Mode . Dev , Ġ"", Ġ"") ĊĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġparses Ġthe Ġenvironment Ġname Ġe . g . Ġ" qa 1 : qa " Ġ= Ġname : mode ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġenv ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġparse ( text : ĠString ): ĠEnv Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( text Ġ== Ġ" '' " Ġ|| Ġtext Ġ== Ġ"\" \" ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠEnv ("", ĠEnv Mode . Dev , Ġdesc Ġ= Ġ" Default Ġenvironment ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtokens Ġ= Ġtext . split (': ') ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġe . g . Ġ" dev 1 ", Ġ" dev ", Ġdev 1 : dev ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġenv Ġ= Ġif Ġ( tokens . size Ġ== Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv ( tokens [ 0 ], Ġinterpret ( tokens [ 0 ])) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv ( tokens [ 0 ], Ġinterpret ( tokens [ 1 ])) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġenv ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* Ġinterpre ts Ġthe Ġstring Ġrepresentation Ġof Ġan Ġenvironment Ġinto Ġthe Ġtype Ġobject ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ param Ġmode ĊĠĠĠĠĠĠĠĠ Ġ* Ġ@ return ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static ĊĠĠĠĠĠĠĠ Ġfun Ġinterpret ( mode : ĠString ): ĠEnv Mode Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( mode ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv Mode . Dev . name Ġ-> ĠEnv Mode . Dev ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv Mode . Q at . name Ġ-> ĠEnv Mode . Q at ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv Mode . U at . name Ġ-> ĠEnv Mode . U at ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv Mode . Pro . name Ġ-> ĠEnv Mode . Pro ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEnv Mode . Dis . name Ġ-> ĠEnv Mode . Dis ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠEnv Mode . Other ( mode ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ