@Mapping(from = Cluster.class, to = MigrationOptions.class) public static MigrationOptions map(Cluster entity, MigrationOptions template) { template = MigrationOptionsMapper.map(entity, template); MigrationBandwidth bandwidth = template.getBandwidth(); if (bandwidth == null) { bandwidth = new MigrationBandwidth(); template.setBandwidth(bandwidth); } switch (entity.getMigrationBandwidthLimitType()) { case AUTO: bandwidth.setAssignmentMethod(MigrationBandwidthAssignmentMethod.AUTO); break; case VDSM_CONFIG: bandwidth.setAssignmentMethod(MigrationBandwidthAssignmentMethod.HYPERVISOR_DEFAULT); break; case CUSTOM: bandwidth.setAssignmentMethod(MigrationBandwidthAssignmentMethod.CUSTOM); bandwidth.setCustomValue(entity.getCustomMigrationNetworkBandwidth()); break; } return template; }