> @@ -117,11 +158,40 @@ public String apply(Credentials in) {
>                }, creds), seconds, TimeUnit.SECONDS);
>     }
>  
> +   @Provides @Singleton @Memoized Supplier<List<Region>> 
> regions(@UserProject Supplier<String> project,
> +         final GoogleComputeEngineApi api, 
> AtomicReference<AuthorizationException> authException,
> +         @Named(PROPERTY_SESSION_INTERVAL) long seconds) {
> +      return MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier
> +            .create(authException, compose(new Function<String, 
> List<Region>>() {
> +               public List<Region> apply(String project) {
> +                  return 
> ImmutableList.copyOf(concat(api.getRegionApi(project).list()));

all location stuff derives from this. this results in some network request 
dedupe. I'll comment it in the final draft.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs-google/pull/82/files#r19929439

Reply via email to