content: package alien4cloud.plugin.mock;
  
  import lombok.*;
  
  import org.elasticsearch.annotation.ObjectField;
  
  import alien4cloud.json.deserializer.PropertyValueDeserializer;
  import org.alien4cloud.tosca.model.definitions.PropertyDefinition;
  import org.alien4cloud.tosca.model.definitions.PropertyValue;
  import alien4cloud.tosca.container.validation.ToscaPropertyConstraint;
  import alien4cloud.tosca.container.validation.ToscaPropertyDefaultValueConstraints;
  import alien4cloud.tosca.container.validation.ToscaPropertyDefaultValueType;
  import alien4cloud.tosca.container.validation.ToscaPropertyPostValidationGroup;
  import alien4cloud.ui.form.annotation.FormProperties;
  import alien4cloud.ui.form.annotation.FormPropertyDefinition;
  
  import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
  import com.fasterxml.jackson.annotation.JsonProperty;
  import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
  
  /**
   * Predefined configuration for tag edit
   */
  @Getter
  @Setter
  @NoArgsConstructor
  @ToscaPropertyDefaultValueType
  @ToscaPropertyConstraint
  @ToscaPropertyDefaultValueConstraints(groups = { ToscaPropertyPostValidationGroup.class })
  @JsonIgnoreProperties(ignoreUnknown = true)
  @FormProperties({ "type", "required", "default", "description" })
  @ToString
  public class MockPropertyDefinition extends PropertyDefinition {
  
  
  
      @JsonProperty("default")
      @JsonDeserialize(using = PropertyValueDeserializer.class)
      @Getter(AccessLevel.NONE)
      @Setter(AccessLevel.NONE)
      private PropertyValue defaultValue;
  
      @ObjectField(enabled = false)
      @FormPropertyDefinition(type = "string")
      public PropertyValue getDefault() {
          return this.defaultValue;
      }
  
      public void setDefault(PropertyValue defaultValue) {
          this.defaultValue = defaultValue;
      }
  
  }
  