Search in sources :

Example 1 with Version

use of alien4cloud.utils.version.Version in project alien4cloud by alien4cloud.

the class ToscaTypeConverterTest method convert_version_to_property_value.

@Test
public void convert_version_to_property_value() throws Exception {
    PropertyDefinition propertyDefinition = new PropertyDefinition();
    propertyDefinition.setType(ToscaTypes.VERSION);
    PropertyValue propertyValue = converter.toPropertyValue("3.4-SNAPSHOT", propertyDefinition);
    Object version = ToscaTypes.fromYamlTypeName(propertyDefinition.getType()).parse(propertyValue.getValue().toString());
    assertThat(version).isInstanceOf(Version.class);
    assertThat(version).isEqualTo(new Version("3.4-SNAPSHOT"));
}
Also used : Version(alien4cloud.utils.version.Version) ComplexPropertyValue(org.alien4cloud.tosca.model.definitions.ComplexPropertyValue) ScalarPropertyValue(org.alien4cloud.tosca.model.definitions.ScalarPropertyValue) PropertyValue(org.alien4cloud.tosca.model.definitions.PropertyValue) PropertyDefinition(org.alien4cloud.tosca.model.definitions.PropertyDefinition) Test(org.junit.Test)

Example 2 with Version

use of alien4cloud.utils.version.Version in project alien4cloud by alien4cloud.

the class NodeTypeScoreService method isLatestVersion.

private boolean isLatestVersion(NodeType nodeType) {
    Map<String, String[]> filters = MapUtil.newHashMap(new String[] { "elementId" }, new String[][] { new String[] { nodeType.getElementId() } });
    // TODO get a single element and order by version.
    Version nodeVersion = new Version(((NodeType) nodeType).getArchiveVersion());
    for (Object otherVersionNodeType : alienESDAO.find(NodeType.class, filters, AlienConstants.DEFAULT_ES_SEARCH_SIZE).getData()) {
        Version otherVersion = new Version(((NodeType) otherVersionNodeType).getArchiveVersion());
        if (nodeVersion.compareTo(otherVersion) < 0) {
            return false;
        }
    }
    return true;
}
Also used : Version(alien4cloud.utils.version.Version) NodeType(org.alien4cloud.tosca.model.types.NodeType)

Example 3 with Version

use of alien4cloud.utils.version.Version in project alien4cloud by alien4cloud.

the class ServiceResourceService method save.

/**
 * Save the service resource and optionally checks that the name/version couple is unique.
 * Check must be done for new resource or when the name or version has changed.
 *
 * @param serviceResource The service to save.
 * @param ensureUniqueness True if we should process unicity check, false if not.
 */
public synchronized void save(ServiceResource serviceResource, boolean ensureUniqueness) {
    if (ensureUniqueness) {
        long count = alienDAO.buildQuery(ServiceResource.class).setFilters(fromKeyValueCouples("name", serviceResource.getName(), "version", serviceResource.getVersion())).count();
        if (count > 0) {
            throw new AlreadyExistException("A service with name <" + serviceResource.getName() + "> and version <" + serviceResource.getVersion() + "> already exists.");
        }
    }
    // ensure that the nested version just reflects the version.
    Version version = VersionUtil.parseVersion(serviceResource.getVersion());
    serviceResource.setNestedVersion(version);
    alienDAO.save(serviceResource);
    publisher.publishEvent(new ServiceChangedEvent(this, serviceResource.getId()));
}
Also used : ServiceChangedEvent(org.alien4cloud.alm.service.events.ServiceChangedEvent) Version(alien4cloud.utils.version.Version) AlreadyExistException(alien4cloud.exception.AlreadyExistException)

Example 4 with Version

use of alien4cloud.utils.version.Version in project alien4cloud by alien4cloud.

the class AbstractToscaType method setArchiveVersion.

public void setArchiveVersion(String version) {
    this.archiveVersion = version;
    this.nestedVersion = new Version(version);
}
Also used : Version(alien4cloud.utils.version.Version)

Example 5 with Version

use of alien4cloud.utils.version.Version in project alien4cloud by alien4cloud.

the class Topology method setArchiveVersion.

public void setArchiveVersion(String version) {
    this.archiveVersion = version;
    this.nestedVersion = new Version(version);
}
Also used : Version(alien4cloud.utils.version.Version)

Aggregations

Version (alien4cloud.utils.version.Version)6 AlreadyExistException (alien4cloud.exception.AlreadyExistException)1 ServiceChangedEvent (org.alien4cloud.alm.service.events.ServiceChangedEvent)1 ComplexPropertyValue (org.alien4cloud.tosca.model.definitions.ComplexPropertyValue)1 PropertyDefinition (org.alien4cloud.tosca.model.definitions.PropertyDefinition)1 PropertyValue (org.alien4cloud.tosca.model.definitions.PropertyValue)1 ScalarPropertyValue (org.alien4cloud.tosca.model.definitions.ScalarPropertyValue)1 NodeType (org.alien4cloud.tosca.model.types.NodeType)1 Test (org.junit.Test)1