"dev1", AttachedDisk.PersistentDiskConfiguration.newBuilder(diskId).build()); instanceOperation.waitFor(); remoteInstance = compute.getInstance(instanceId);
@Test public void testConfigurationToBuilder() { comparePersistentDiskConfiguration( PERSISTENT_DISK_CONFIGURATION, PERSISTENT_DISK_CONFIGURATION.toBuilder().build()); compareScratchDiskConfiguration( SCRATCH_DISK_CONFIGURATION, SCRATCH_DISK_CONFIGURATION.toBuilder().build()); compareCreateDiskConfiguration( CREATE_DISK_CONFIGURATION, CREATE_DISK_CONFIGURATION.toBuilder().build()); PersistentDiskConfiguration persistentDiskConfiguration = PERSISTENT_DISK_CONFIGURATION.toBuilder().setAutoDelete(false).build(); assertFalse(persistentDiskConfiguration.autoDelete()); persistentDiskConfiguration = persistentDiskConfiguration.toBuilder().setAutoDelete(AUTO_DELETE).build(); assertEquals(PERSISTENT_DISK_CONFIGURATION, persistentDiskConfiguration); ScratchDiskConfiguration scratchDiskConfiguration = SCRATCH_DISK_CONFIGURATION.toBuilder().setInterfaceType(InterfaceType.SCSI).build(); assertEquals(InterfaceType.SCSI, scratchDiskConfiguration.getInterfaceType()); scratchDiskConfiguration = scratchDiskConfiguration.toBuilder().setInterfaceType(INTERFACE_TYPE).build(); assertEquals(SCRATCH_DISK_CONFIGURATION, scratchDiskConfiguration); CreateDiskConfiguration createDiskConfiguration = CREATE_DISK_CONFIGURATION.toBuilder().setAutoDelete(false).build(); assertFalse(createDiskConfiguration.autoDelete()); createDiskConfiguration = createDiskConfiguration.toBuilder().setAutoDelete(AUTO_DELETE).build(); assertEquals(CREATE_DISK_CONFIGURATION, createDiskConfiguration); }
@Override InstanceInfo parse(String... args) throws Exception { String message; if (args.length == 5) { String zone = args[0]; String instance = args[1]; InstanceId instanceId = InstanceId.of(zone, instance); MachineTypeId machineTypeId = MachineTypeId.of(zone, args[2]); DiskId diskId = DiskId.of(zone, args[3]); AttachedDisk disk = AttachedDisk.of(PersistentDiskConfiguration.newBuilder(diskId).setBoot(true).build()); NetworkInterface networkInterface = NetworkInterface.of(args[4]); return InstanceInfo.of(instanceId, machineTypeId, disk, networkInterface); } else if (args.length > 5) { message = "Too many arguments."; } else { message = "Missing required arguments."; } throw new IllegalArgumentException(message); }
@SuppressWarnings("unchecked") static PersistentDiskConfiguration fromPb( com.google.api.services.compute.model.AttachedDisk diskPb) { Builder builder = new Builder(DiskId.fromUrl(diskPb.getSource())); if (diskPb.getMode() != null) { builder.setMode(Mode.valueOf(diskPb.getMode())); } if (diskPb.getBoot() != null) { builder.setBoot(diskPb.getBoot()); } if (diskPb.getAutoDelete() != null) { builder.setAutoDelete(diskPb.getAutoDelete()); } return builder.build(); } }
/** Returns a builder for the current configuration. */ public Builder toBuilder() { return new Builder(this); }
/** * Returns a {@code PersistentDiskConfiguration} object given the identity of the persistent * disk to attach. */ public static PersistentDiskConfiguration of(DiskId sourceDisk) { return newBuilder(sourceDisk).build(); }
/** * Returns a builder for a {@code PersistentDiskConfiguration} object given the identity of the * persistent disk to attach. */ public static Builder newBuilder(DiskId sourceDisk) { return new Builder(sourceDisk); }
@Override PersistentDiskConfiguration setProjectId(String projectId) { if (sourceDisk.getProject() != null) { return this; } return toBuilder().setSourceDisk(sourceDisk.setProjectId(projectId)).build(); }