package org.alien4cloud.tosca.model; import org.elasticsearch.annotation.StringField; import org.elasticsearch.mapping.IndexType; import lombok.*; /** * Defines a dependency on a CloudServiceArchive. */ @Getter @Setter @NoArgsConstructor @AllArgsConstructor(suppressConstructorProperties = true) @RequiredArgsConstructor(suppressConstructorProperties = true) @EqualsAndHashCode(of = { "name", "version" }) @ToString(exclude = "hash") public class CSARDependency { @NonNull @StringField(indexType = IndexType.not_analyzed) private String name; @NonNull @StringField(indexType = IndexType.not_analyzed) private String version; /** * Hash of the main yaml file included in the csar. * This is used here to spot when a dependency has changed to provide update of templates as types may have changed. */ private String hash; }