summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
diff options
context:
space:
mode:
Diffstat (limited to 'openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java')
-rw-r--r--openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java117
1 files changed, 108 insertions, 9 deletions
diff --git a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
index 82b79c6bda..b1f0b71d90 100644
--- a/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
+++ b/openecomp-be/lib/openecomp-sdc-versioning-lib/openecomp-sdc-versioning-api/src/main/java/org/openecomp/sdc/versioning/dao/types/Version.java
@@ -22,23 +22,44 @@ package org.openecomp.sdc.versioning.dao.types;
import com.datastax.driver.mapping.annotations.Transient;
import com.datastax.driver.mapping.annotations.UDT;
-import org.openecomp.sdc.logging.api.Logger;
-import org.openecomp.sdc.logging.api.LoggerFactory;
+
+import java.util.Date;
+import java.util.Map;
@UDT(name = "version", keyspace = "dox")
public class Version {
- private static final Logger logger = LoggerFactory.getLogger(Version.class);
public static final String VERSION_STRING_VIOLATION_MSG =
"Version string must be in the format of: {integer}.{integer}";
- private int major;
- private int minor;
@Transient
- private VersionStatus status = VersionStatus.Available;
+ private String id;
+ private int major; // TODO: 6/7/2017 remove!
+ private int minor; // TODO: 6/7/2017 remove!
+ @Transient
+ private String name;
+ @Transient
+ private String description;
+ @Transient
+ private String baseId;
+ @Transient
+ private Date creationTime;
+ @Transient
+ private Date modificationTime;
+ @Transient
+ private VersionStatus status = VersionStatus.Draft;
+ @Transient
+ private VersionState state;
+ @Transient
+ private Map<String, Object> additionalInfo;
public Version() {
}
+ public Version(String id) {
+ this.id = id;
+ }
+
+ @Deprecated
public Version(int major, int minor) {
this.major = major;
this.minor = minor;
@@ -62,7 +83,6 @@ public class Version {
try {
version = new Version(Integer.parseInt(versionLevels[0]), Integer.parseInt(versionLevels[1]));
} catch (Exception ex) {
- logger.debug(ex.getMessage(), ex);
throw new IllegalArgumentException(VERSION_STRING_VIOLATION_MSG);
}
@@ -85,6 +105,54 @@ public class Version {
this.minor = minor;
}
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getDescription() {
+ return description;
+ }
+
+ public void setDescription(String description) {
+ this.description = description;
+ }
+
+ public String getBaseId() {
+ return baseId;
+ }
+
+ public void setBaseId(String baseId) {
+ this.baseId = baseId;
+ }
+
+ public Date getCreationTime() {
+ return creationTime;
+ }
+
+ public void setCreationTime(Date creationTime) {
+ this.creationTime = creationTime;
+ }
+
+ public Date getModificationTime() {
+ return modificationTime;
+ }
+
+ public void setModificationTime(Date modificationTime) {
+ this.modificationTime = modificationTime;
+ }
+
public VersionStatus getStatus() {
return status;
}
@@ -93,6 +161,14 @@ public class Version {
this.status = status;
}
+ public VersionState getState() {
+ return state;
+ }
+
+ public void setState(VersionState state) {
+ this.state = state;
+ }
+
public Version calculateNextCandidate() {
return new Version(major, minor + 1);
}
@@ -105,6 +181,14 @@ public class Version {
return major != 0 && minor == 0;
}
+ public Map<String, Object> getAdditionalInfo() {
+ return additionalInfo;
+ }
+
+ public void setAdditionalInfo(Map<String, Object> additionalInfo) {
+ this.additionalInfo = additionalInfo;
+ }
+
@Override
public int hashCode() {
int result = major;
@@ -138,6 +222,21 @@ public class Version {
@Override
public String toString() {
- return major + "." + minor;
+ return name != null ? name : major + "." + minor;
+ }
+
+ @Override
+ public Version clone() {
+ Version version = new Version();
+ version.setStatus(this.getStatus());
+ version.setCreationTime(this.getCreationTime());
+ version.setName(this.getName());
+ version.setBaseId(this.getBaseId());
+ version.setMajor(this.major);
+ version.setMinor(this.minor);
+ version.setModificationTime(this.getModificationTime());
+ version.setDescription(this.description);
+ version.setId(this.getId());
+ return version;
}
-}
+} \ No newline at end of file