nacx commented on this pull request.


> +import org.jclouds.domain.LocationScope;
+import org.jclouds.location.suppliers.all.JustProvider;
+
+import javax.inject.Inject;
+import javax.inject.Singleton;
+
+import static com.google.inject.internal.util.$Iterables.getOnlyElement;
+import static com.google.inject.internal.util.$Preconditions.checkNotNull;
+
+@Singleton
+public class DatacenterToLocation implements Function<Datacenter, Location> {
+
+   private final JustProvider justProvider;
+
+   @Inject
+   public DatacenterToLocation(JustProvider justProvider) {

Remove the public modifier.

> +import static com.google.inject.internal.util.$Preconditions.checkNotNull;
+
+@Singleton
+public class DatacenterToLocation implements Function<Datacenter, Location> {
+
+   private final JustProvider justProvider;
+
+   @Inject
+   public DatacenterToLocation(JustProvider justProvider) {
+      this.justProvider = checkNotNull(justProvider, "justProvider");
+   }
+
+   @Override
+   public Location apply(final Datacenter datacenter) {
+      return new 
LocationBuilder().id(datacenter.id()).description(datacenter.displayName())
+            
.parent(getOnlyElement(justProvider.get())).scope(LocationScope.ZONE)

The location hierarchy is usually "provider > region > zone". Should 
DimensionData locations be considered regions instead of zones? Otherwise, why 
the gap?

> +import org.jclouds.dimensiondata.cloudcontrol.domain.NatRule;
+import org.jclouds.dimensiondata.cloudcontrol.domain.Server;
+import 
org.jclouds.dimensiondata.cloudcontrol.domain.internal.ServerWithExternalIp;
+
+import javax.inject.Inject;
+import javax.inject.Singleton;
+
+import static com.google.common.base.Preconditions.checkNotNull;
+
+@Singleton
+public class ServerToServerWithExternalIp implements Function<Server, 
ServerWithExternalIp> {
+
+    private final DimensionDataCloudControlApi api;
+
+    @Inject
+    public ServerToServerWithExternalIp(DimensionDataCloudControlApi api) {

Remove the public modifier.

> +import org.jclouds.location.suppliers.all.JustProvider;
+
+import javax.inject.Inject;
+import javax.inject.Singleton;
+
+import static com.google.inject.internal.util.$Iterables.getOnlyElement;
+import static com.google.inject.internal.util.$Preconditions.checkNotNull;
+
+@Singleton
+public class DatacenterToLocation implements Function<Datacenter, Location> {
+
+   private final JustProvider justProvider;
+
+   @Inject
+   public DatacenterToLocation(JustProvider justProvider) {
+      this.justProvider = checkNotNull(justProvider, "justProvider");

No need to check for nulls in injection constructors. Guice already enforces 
presence.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds-labs/pull/423#pullrequestreview-85256953

Reply via email to