1 package org.openecomp.sdc.vendorsoftwareproduct.dao.type;
 
   3 import com.datastax.driver.mapping.annotations.ClusteringColumn;
 
   4 import com.datastax.driver.mapping.annotations.Column;
 
   5 import com.datastax.driver.mapping.annotations.Frozen;
 
   6 import com.datastax.driver.mapping.annotations.PartitionKey;
 
   7 import com.datastax.driver.mapping.annotations.Table;
 
   8 import org.openecomp.core.utilities.json.JsonUtil;
 
   9 import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityId;
 
  10 import org.openecomp.sdc.vendorsoftwareproduct.types.composition.CompositionEntityType;
 
  11 import org.openecomp.sdc.vendorsoftwareproduct.types.composition.Image;
 
  12 import org.openecomp.sdc.versioning.dao.types.Version;
 
  14 @Table(keyspace = "dox", name = "vsp_component_image")
 
  15 public class ImageEntity implements CompositionEntity {
 
  17   private static final String ENTITY_TYPE = "Vendor Software Product Component Image";
 
  20   @Column(name = "vsp_id")
 
  22   @PartitionKey(value = 1)
 
  24   private Version version;
 
  26   @Column(name = "component_id")
 
  27   private String componentId;
 
  28   @ClusteringColumn(value = 1)
 
  29   @Column(name = "image_id")
 
  31   @Column(name = "composition_data")
 
  32   private String compositionData;
 
  33   @Column(name = "questionnaire_data")
 
  34   private String questionnaireData;
 
  37   public ImageEntity() {
 
  41    * Instantiates a new Image entity.
 
  43    * @param vspId       the vsp id
 
  44    * @param version     the version
 
  47   public ImageEntity(String vspId, Version version, String componentId, String id) {
 
  49     this.version = version;
 
  50     this.componentId = componentId;
 
  54   public String getVspId() {
 
  58   public void setVspId(String vspId) {
 
  62   public Version getVersion() {
 
  66   public void setVersion(Version version) {
 
  67     this.version = version;
 
  70   public String getComponentId() {
 
  74   public void setComponentId(String componentId) {
 
  75     this.componentId = componentId;
 
  79   public String getEntityType() {
 
  84   public String getFirstClassCitizenId() {
 
  88   public String getId() {
 
  92   public void setId(String id) {
 
  96   public String getQuestionnaireData() {
 
  97     return questionnaireData;
 
 100   public void setQuestionnaireData(String questionnaireData) {
 
 101     this.questionnaireData = questionnaireData;
 
 105   public CompositionEntityType getType() {
 
 106     return CompositionEntityType.image;
 
 110   public CompositionEntityId getCompositionEntityId() {
 
 111     return new CompositionEntityId(getId(),
 
 112         new CompositionEntityId(getComponentId(), new CompositionEntityId(getVspId(), null)));
 
 115   public String getCompositionData() {
 
 116     return compositionData;
 
 119   public void setCompositionData(String compositionData) {
 
 120     this.compositionData = compositionData;
 
 123   public Image getImageCompositionData() {
 
 124     return compositionData == null ? null : JsonUtil.json2Object(compositionData, Image.class);
 
 127   public void setImageCompositionData(Image image) {
 
 128     this.compositionData = image == null ? null : JsonUtil.object2Json(image);
 
 132   public int hashCode() {
 
 133     int result = vspId != null ? vspId.hashCode() : 0;
 
 134     result = 31 * result + (version != null ? version.hashCode() : 0);
 
 135     result = 31 * result + (componentId != null ? componentId.hashCode() : 0);
 
 136     result = 31 * result + (id != null ? id.hashCode() : 0);
 
 137     result = 31 * result + (compositionData != null ? compositionData.hashCode() : 0);
 
 138     result = 31 * result + (questionnaireData != null ? questionnaireData.hashCode() : 0);
 
 143   public boolean equals(Object object) {
 
 144     if (this == object) {
 
 147     if (object == null || getClass() != object.getClass()) {
 
 151     ImageEntity imageEntity = (ImageEntity) object;
 
 153     if (vspId != null ? !vspId.equals(imageEntity.vspId) : imageEntity.vspId != null) {
 
 156     if (version != null ? !version.equals(imageEntity.version) : imageEntity.version != null) {
 
 159     if (componentId != null ? !componentId.equals(imageEntity.componentId)
 
 160         : imageEntity.componentId != null) {
 
 163     if (id != null ? !id.equals(imageEntity.id) : imageEntity.id != null) {
 
 166     if (compositionData != null ? !compositionData.equals(imageEntity.compositionData)
 
 167         : imageEntity.compositionData != null) {
 
 170     return questionnaireData != null ? questionnaireData.equals(imageEntity.questionnaireData)
 
 171         : imageEntity.questionnaireData == null;