@Override public ResponseEntity<List<MgmtDistributionSet>> createDistributionSets( @RequestBody final List<MgmtDistributionSetRequestBodyPost> sets) { LOG.debug("creating {} distribution sets", sets.size()); // set default Ds type if ds type is null final String defaultDsKey = systemSecurityContext .runAsSystem(systemManagement.getTenantMetadata().getDefaultDsType()::getKey); sets.stream().filter(ds -> ds.getType() == null).forEach(ds -> ds.setType(defaultDsKey)); final Collection<DistributionSet> createdDSets = distributionSetManagement .create(MgmtDistributionSetMapper.dsFromRequest(sets, entityFactory)); LOG.debug("{} distribution sets created, return status {}", sets.size(), HttpStatus.CREATED); return new ResponseEntity<>(MgmtDistributionSetMapper.toResponseDistributionSets(createdDSets), HttpStatus.CREATED); }
/** * Creates a {@link DistributionSet}. * * @param name * {@link DistributionSet#getName()} * @param version * {@link DistributionSet#getVersion()} * @param type * {@link DistributionSet#getType()} * @param modules * {@link DistributionSet#getModules()} * * @return the created {@link DistributionSet} */ public DistributionSet createDistributionSet(final String name, final String version, final DistributionSetType type, final Collection<SoftwareModule> modules) { return distributionSetManagement.create( entityFactory.distributionSet().create().name(name).version(version).description(LOREM.words(10)) .type(type).modules(modules.stream().map(SoftwareModule::getId).collect(Collectors.toList()))); }
/** * Creates a {@link DistributionSet}. * * @param name * {@link DistributionSet#getName()} * @param version * {@link DistributionSet#getVersion()} * @param type * {@link DistributionSet#getType()} * @param modules * {@link DistributionSet#getModules()} * * @return the created {@link DistributionSet} */ public DistributionSet createDistributionSet(final String name, final String version, final DistributionSetType type, final Collection<SoftwareModule> modules) { return distributionSetManagement.create( entityFactory.distributionSet().create().name(name).version(version).description(LOREM.words(10)) .type(type).modules(modules.stream().map(SoftwareModule::getId).collect(Collectors.toList()))); }
/** * Creates {@link DistributionSet} in repository. * * @param prefix * for {@link SoftwareModule}s and {@link DistributionSet}s name, * vendor and description. * @param version * {@link DistributionSet#getVersion()} and * {@link SoftwareModule#getVersion()} extended by a random * number. * @param isRequiredMigrationStep * for {@link DistributionSet#isRequiredMigrationStep()} * @param modules * for {@link DistributionSet#getModules()} * * @return {@link DistributionSet} entity. */ public DistributionSet createDistributionSet(final String prefix, final String version, final boolean isRequiredMigrationStep, final Collection<SoftwareModule> modules) { return distributionSetManagement.create( entityFactory.distributionSet().create().name(prefix != null && prefix.length() > 0 ? prefix : "DS") .version(version).description(LOREM.words(10)).type(findOrCreateDefaultTestDsType()) .modules(modules.stream().map(SoftwareModule::getId).collect(Collectors.toList())) .requiredMigrationStep(isRequiredMigrationStep)); }
/** * Create a list of {@link DistributionSet}s without modules, i.e. * incomplete. * * @param number * of {@link DistributionSet}s to create * @return {@link List} of {@link DistributionSet} entities */ public List<DistributionSet> createDistributionSetsWithoutModules(final int number) { final List<DistributionSet> sets = Lists.newArrayListWithExpectedSize(number); for (int i = 0; i < number; i++) { sets.add(distributionSetManagement .create(entityFactory.distributionSet().create().name("DS" + i).version(DEFAULT_VERSION + "." + i) .description(LOREM.words(10)).type(findOrCreateDefaultTestDsType()))); } return sets; }
/** * Creates {@link DistributionSet} in repository. * * @param prefix * for {@link SoftwareModule}s and {@link DistributionSet}s name, * vendor and description. * @param version * {@link DistributionSet#getVersion()} and * {@link SoftwareModule#getVersion()} extended by a random * number. * @param isRequiredMigrationStep * for {@link DistributionSet#isRequiredMigrationStep()} * @param modules * for {@link DistributionSet#getModules()} * * @return {@link DistributionSet} entity. */ public DistributionSet createDistributionSet(final String prefix, final String version, final boolean isRequiredMigrationStep, final Collection<SoftwareModule> modules) { return distributionSetManagement.create( entityFactory.distributionSet().create().name(prefix != null && prefix.length() > 0 ? prefix : "DS") .version(version).description(LOREM.words(10)).type(findOrCreateDefaultTestDsType()) .modules(modules.stream().map(SoftwareModule::getId).collect(Collectors.toList())) .requiredMigrationStep(isRequiredMigrationStep)); }
/** * Create a list of {@link DistributionSet}s without modules, i.e. * incomplete. * * @param number * of {@link DistributionSet}s to create * @return {@link List} of {@link DistributionSet} entities */ public List<DistributionSet> createDistributionSetsWithoutModules(final int number) { final List<DistributionSet> sets = Lists.newArrayListWithExpectedSize(number); for (int i = 0; i < number; i++) { sets.add(distributionSetManagement .create(entityFactory.distributionSet().create().name("DS" + i).version(DEFAULT_VERSION + "." + i) .description(LOREM.words(10)).type(findOrCreateDefaultTestDsType()))); } return sets; }
/** * Creates {@link DistributionSet}s in repository with * {@link #DEFAULT_DESCRIPTION} and * {@link DistributionSet#isRequiredMigrationStep()} <code>false</code>. * * @param name * {@link DistributionSet#getName()} * @param version * {@link DistributionSet#getVersion()} * * @return {@link DistributionSet} entity */ public DistributionSet createDistributionSetWithNoSoftwareModules(final String name, final String version) { return distributionSetManagement.create(entityFactory.distributionSet().create().name(name).version(version) .description(DEFAULT_DESCRIPTION).type(findOrCreateDefaultTestDsType())); }
/** * Creates {@link DistributionSet}s in repository with * {@link #DEFAULT_DESCRIPTION} and * {@link DistributionSet#isRequiredMigrationStep()} <code>false</code>. * * @param name * {@link DistributionSet#getName()} * @param version * {@link DistributionSet#getVersion()} * * @return {@link DistributionSet} entity */ public DistributionSet createDistributionSetWithNoSoftwareModules(final String name, final String version) { return distributionSetManagement.create(entityFactory.distributionSet().create().name(name).version(version) .description(DEFAULT_DESCRIPTION).type(findOrCreateDefaultTestDsType())); }
@Override public void saveOrUpdate() { final String name = distNameTextField.getValue(); final String version = distVersionTextField.getValue(); final Long distSetTypeId = (Long) distsetTypeNameComboBox.getValue(); final String desc = descTextArea.getValue(); final boolean isMigStepReq = reqMigStepCheckbox.getValue(); final DistributionSetType distributionSetType = distributionSetTypeManagement.get(distSetTypeId) .orElseThrow(() -> new EntityNotFoundException(DistributionSetType.class, distSetTypeId)); final DistributionSet newDist = distributionSetManagement .create(entityFactory.distributionSet().create().name(name).version(version).description(desc) .type(distributionSetType).requiredMigrationStep(isMigStepReq)); eventBus.publish(this, new DistributionTableEvent(BaseEntityEventType.ADD_ENTITY, newDist)); notificationMessage.displaySuccess(i18n.getMessage("message.new.dist.save.success", new Object[] { newDist.getName(), newDist.getVersion() })); distributionSetTable.setValue(Sets.newHashSet(newDist.getId())); }
@Override public void saveOrUpdate() { final String name = distNameTextField.getValue(); final String version = distVersionTextField.getValue(); final Long distSetTypeId = (Long) distsetTypeNameComboBox.getValue(); final String desc = descTextArea.getValue(); final boolean isMigStepReq = reqMigStepCheckbox.getValue(); final DistributionSetType distributionSetType = distributionSetTypeManagement.get(distSetTypeId) .orElseThrow(() -> new EntityNotFoundException(DistributionSetType.class, distSetTypeId)); final DistributionSet newDist = distributionSetManagement .create(entityFactory.distributionSet().create().name(name).version(version).description(desc) .type(distributionSetType).requiredMigrationStep(isMigStepReq)); eventBus.publish(this, new DistributionTableEvent(BaseEntityEventType.ADD_ENTITY, newDist)); notificationMessage.displaySuccess( i18n.getMessage("message.new.dist.save.success", newDist.getName(), newDist.getVersion())); distributionSetTable.setValue(Sets.newHashSet(newDist.getId())); }
.description(LOREM.words(20)).vendor(prefix + " vendor Limited Inc, California")); return distributionSetManagement.create( entityFactory.distributionSet().create().name(prefix != null && prefix.length() > 0 ? prefix : "DS") .version(version).description(LOREM.words(10)).type(findOrCreateDefaultTestDsType())
.description(LOREM.words(20)).vendor(prefix + " vendor Limited Inc, California")); return distributionSetManagement.create( entityFactory.distributionSet().create().name(prefix != null && prefix.length() > 0 ? prefix : "DS") .version(version).description(LOREM.words(10)).type(findOrCreateDefaultTestDsType())