> +         public String status;
> +         public String id;
> +         public List<Link> links;
> +      }
> +      public List<Version> versions;
> +   }
> +
> +   private final Supplier<Map<String, Supplier<URI>>> zoneToEndpointSupplier;
> +   private final String apiVersion;
> +   private final LoadingCache<URI, URI> endpointCache;
> +
> +   @Inject
> +   public ZoneToEndpointNegotiateVersion(@Zone Supplier<Map<String, 
> Supplier<URI>>> zoneToEndpointSupplier,
> +         @ApiVersion String apiVersionString, final HttpClient client, final 
> Json json) {
> +      this.zoneToEndpointSupplier = checkNotNull(zoneToEndpointSupplier, 
> "zoneToEndpointSupplier");
> +      if(!apiVersionString.startsWith("v"))

The tricky bit for me was that since we're using the apiVersion field in an 
anonymous class that we construct, the compiler needs to know that the field is 
final, and the compiler wasn't able to disambiguate between a nonfinal 
parameter in the constructor and the final field in the class that both had the 
same name.

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

Reply via email to