@Override public boolean apply(Size size) { return size.available(); } });
@Override public Hardware apply(Size input) { HardwareBuilder builder = new HardwareBuilder(); builder.id(input.slug()); builder.providerId(input.slug()); builder.name(input.slug()); builder.ram(input.memory()); // No cpu speed from DigitalOcean API, so assume more cores == faster builder.processor(new Processor(input.vcpus(), input.vcpus())); builder.volume(new VolumeBuilder() .size(Float.valueOf(input.disk())) .type(Type.LOCAL) .build()); ImmutableMap.Builder<String, String> metadata = ImmutableMap.builder(); metadata.put("costPerHour", String.valueOf(input.priceHourly())); metadata.put("costPerMonth", String.valueOf(input.priceMonthly())); builder.userMetadata(metadata.build()); return builder.build(); } }
@Override public int compare(Size left, Size right) { return ComparisonChain.start() .compare(left.priceHourly(), right.priceHourly()) .compare(left.priceMonthly(), right.priceMonthly()) .result(); } };
@Override public boolean apply(Size input) { found.incrementAndGet(); return !Strings.isNullOrEmpty(input.slug()); } }), "All sizes must have the 'slug' field populated");
@Test public void testConvertSize() { Size size = Size.create("2gb", true, 1.0f, 10f, 0.05f, 2048, 1, 20, ImmutableList.<String> of()); Hardware expected = new HardwareBuilder().id("2gb").providerId("2gb").name("2gb") .processor(new Processor(1.0, 1.0)).ram(2048) .volume(new VolumeBuilder().size(20f).type(Type.LOCAL).build()) .userMetadata(ImmutableMap.of("costPerHour", "0.05", "costPerMonth", "10")).build(); SizeToHardware function = new SizeToHardware(); assertEquals(function.apply(size), expected); } }
@Override public Hardware apply(Size input) { HardwareBuilder builder = new HardwareBuilder(); builder.id(input.slug()); builder.providerId(input.slug()); builder.name(input.slug()); builder.ram(input.memory()); // No cpu speed from DigitalOcean API, so assume more cores == faster builder.processor(new Processor(input.vcpus(), input.vcpus())); builder.volume(new VolumeBuilder() .size(Float.valueOf(input.disk())) .type(Type.LOCAL) .build()); ImmutableMap.Builder<String, String> metadata = ImmutableMap.builder(); metadata.put("costPerHour", String.valueOf(input.priceHourly())); metadata.put("costPerMonth", String.valueOf(input.priceMonthly())); builder.userMetadata(metadata.build()); return builder.build(); } }
@Override public boolean apply(Size input) { found.incrementAndGet(); return !Strings.isNullOrEmpty(input.slug()); } }), "All sizes must have the 'slug' field populated");
@Override public Hardware apply(Size input) { HardwareBuilder builder = new HardwareBuilder(); builder.id(input.slug()); builder.providerId(input.slug()); builder.name(input.slug()); builder.ram(input.memory()); // No cpu speed from DigitalOcean API, so assume more cores == faster builder.processor(new Processor(input.vcpus(), input.vcpus())); builder.volume(new VolumeBuilder() .size(Float.valueOf(input.disk())) .type(Type.LOCAL) .build()); ImmutableMap.Builder<String, String> metadata = ImmutableMap.builder(); metadata.put("costPerHour", String.valueOf(input.priceHourly())); metadata.put("costPerMonth", String.valueOf(input.priceMonthly())); builder.userMetadata(metadata.build()); return builder.build(); } }
public void testCreate() { DropletCreate dropletCreate = api().create(prefix + "-droplet-livetest", region.slug(), size.slug(), image.slug(), CreateDropletOptions.builder().backupsEnabled(true).addSshKeyId(key.id()).build()); dropletId = dropletCreate.droplet().id(); assertNodeRunning(dropletId); Droplet droplet = api().get(dropletId); assertNotNull(droplet, "Droplet should not be null"); }
@Override public boolean apply(Size size) { return size.available(); } });
@Override public boolean apply(Size size) { return size.available(); } });