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