package Ġkr . do ve . streaming . config Ċ Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . boot . context . properties . Configuration Properties Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . context . annotation . Configuration Ċ import Ġsoftware . amazon . aw ssdk . auth . credentials . Aws Basic Credentials Ċ import Ġsoftware . amazon . aw ssdk . auth . credentials . Aws Credentials Provider Ċ import Ġsoftware . amazon . aw ssdk . http . nio . netty . Net ty Nio Async HttpClient Ċ import Ġsoftware . amazon . aw ssdk . regions . Region Ċ import Ġsoftware . amazon . aw ssdk . services . s 3 . S 3 Async Client Ċ import Ġsoftware . amazon . aw ssdk . services . s 3 . S 3 Configuration Ċ import Ġjava . time . Duration Ċ Ċ @ Configuration Ċ @ Configuration Properties ( prefix Ġ= Ġ" aws . credentials ") Ċ class ĠS 3 Client Configuration ( ĊĠĠĠ Ġ@ Value ("\ ${ aws . s 3 . bucket . region }") Ġvar Ġregion : ĠString , Ċ ) Ġ{ ĊĠĠĠ Ġlateinit Ġvar Ġaccess KeyId : ĠString ĊĠĠĠ Ġlateinit Ġvar Ġsecret AccessKey : ĠString ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġs 3 Client ( aws Credential Provider : ĠAws Credentials Provider ): ĠS 3 Async Client Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠhttpClient Ġ= ĠNet ty Nio Async HttpClient ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. write Timeout ( Duration . ZERO ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. max Concurrency ( 6 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġval Ġservice Configuration Ġ= ĠS 3 Configuration ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. checksum Validation Enabled ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. chunk ed Encoding Enabled ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġreturn ĠS 3 Async Client ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. httpClient ( httpClient ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. region ( Region . of ( region )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. credentials Provider ( aws Credential Provider ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. service Configuration ( service Configuration ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġaws Credential Provider (): ĠAws Credentials Provider Ġ= ĊĠĠĠĠĠĠĠ ĠAws Credentials Provider Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠAws Basic Credentials . create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaccess KeyId , Ġsecret AccessKey ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} Ċ Ċ }