package Ġcom . atlassian . performance . tools . aws infrastructure . api Ċ Ċ import Ġcom . atlassian . performance . tools . aws . api . Resource Ċ import Ġcom . atlassian . performance . tools . aws . api . Un allocated Resource Ċ import Ġcom . atlassian . performance . tools . aws infrastructure . api . network . access . Access Provider Ċ import Ġcom . atlassian . performance . tools . aws infrastructure . api . network . access . No Access Provider Ċ import Ġcom . atlassian . performance . tools . infrastructure . api . virtual users . Virtual Users Ċ Ċ class ĠPro vision ed Infrastructure < out ĠT Ġ: ĠVirtual Users > Ġprivate Ġconstructor ( ĊĠĠĠ Ġval Ġinfrastructure : ĠInfrastructure < T >, ĊĠĠĠ Ġval Ġresource : ĠResource , ĊĠĠĠ Ġval Ġaccess Provider : ĠAccess Provider Ċ ) Ġ{ ĊĠĠĠ Ġobject ĠDefaults Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresource : ĠResource Ġ= ĠUn allocated Resource () ĊĠĠĠĠĠĠĠ Ġval Ġaccess Provider : ĠAccess Provider Ġ= ĠNo Access Provider () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Deprecated (" Use ĠPro vision ed Infrastructure . Builder Ġinstead .") ĊĠĠĠ Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġinfrastructure : ĠInfrastructure < T >, ĊĠĠĠĠĠĠĠ Ġresource : ĠResource ĊĠĠĠ Ġ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ Ġinfrastructure Ġ= Ġinfrastructure , ĊĠĠĠĠĠĠĠ Ġresource Ġ= Ġresource , ĊĠĠĠĠĠĠĠ Ġaccess Provider Ġ= ĠDefaults . access Provider ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ" Provision ed Infrastructure ( infrastructure =$ infrastructure , Ġresource =$ resource )" ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠBuilder < out ĠT Ġ: ĠVirtual Users >( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġinfrastructure : ĠInfrastructure < T > ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġresource : ĠResource Ġ= ĠDefaults . resource ĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġaccess Provider : ĠAccess Provider Ġ= ĠDefaults . access Provider ĊĊĠĠĠĠĠĠĠ Ġfun Ġresource ( resource : ĠResource ) Ġ= Ġapply Ġ{ Ġthis . resource Ġ= Ġresource Ġ} ĊĠĠĠĠĠĠĠ Ġfun Ġaccess Provider ( access Provider : ĠAccess Provider ) Ġ= Ġapply Ġ{ Ġthis . access Provider Ġ= Ġaccess Provider Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġbuild () Ġ= ĠPro vision ed Infrastructure ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinfrastructure Ġ= Ġinfrastructure , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresource Ġ= Ġresource , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġaccess Provider Ġ= Ġaccess Provider ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ