/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 2 2 ĠB os ch . IO ĠGmbH Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠ Ġhttps :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* Ġ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 . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ* Ċ Ġ* ĠSPDX - License - Identifier : ĠApache - 2 . 0 Ċ Ġ* ĠLicense - Filename : ĠLICENSE Ċ Ġ*/ Ċ Ċ package Ġorg . oss review toolkit . scanner . sc anners . scan oss Ċ Ċ import Ġorg . oss review toolkit . model . config . Scanner Configuration Ċ Ċ /** Ċ Ġ* ĠA Ġdata Ġclass Ġthat Ġholds Ġthe Ġconfiguration Ġoptions Ġsupported Ġby Ġthe Ġ[ Scan O ss ] Ġscanner . ĠAn Ġinstance Ġof Ġthis Ġclass Ġis Ċ Ġ* Ġcreated Ġfrom Ġthe Ġoptions Ġcontained Ġin Ġa Ġ[ Scanner Configuration ] Ġobject Ġunder Ġthe Ġkey Ġ_ Scan O ss _. ĠIt Ġoffers Ġthe Ċ Ġ* Ġfollowing Ġconfiguration Ġoptions : Ċ Ġ*/ Ċ internal Ġdata Ġclass ĠScan O ss Config ( ĊĠĠĠ Ġ/** ĠURL Ġof Ġthe ĠScan OSS Ġserver . Ġ*/ ĊĠĠĠ Ġval Ġapi Url : ĠString , ĊĊĠĠĠ Ġ/** ĠAPI ĠKey Ġrequired Ġto Ġauthenticate Ġwith Ġthe ĠScan OSS Ġserver . Ġ*/ ĊĠĠĠ Ġval ĠapiKey : ĠString Ċ ) Ġ{ ĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĠName Ġof Ġthe Ġconfiguration Ġproperty Ġfor Ġthe ĠAPI ĠURL . Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠAPI _ URL _ PROPERTY Ġ= Ġ" api Url " ĊĊĠĠĠĠĠĠĠ Ġ/** ĠName Ġof Ġthe Ġconfiguration Ġproperty Ġfor Ġthe ĠAPI Ġkey . Ġ*/ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠAPI _ KEY _ PROPERTY Ġ= Ġ" apiKey " ĊĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( scanner Config : ĠScanner Configuration ): ĠScan O ss Config Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscan O ss Id Scanner Options Ġ= Ġscanner Config . options ?. get (" Scan O ss ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequire NotNull ( scan O ss Id Scanner Options ) Ġ{ Ġ" No ĠScan OSS ĠScanner Ġconfiguration Ġfound ." Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġapi URL Ġ= Ġscan O ss Id Scanner Options [ API _ URL _ PROPERTY ] Ġ?: Ġ" https :// oss kb . org / api /" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠapiKey Ġ= Ġscan O ss Id Scanner Options [ API _ KEY _ PROPERTY ]. or Empty () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠScan O ss Config ( api URL , ĠapiKey ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ