package org.openecomp.sdc.vendorlicense.licenseartifacts.impl.types.mixins;
import com.fasterxml.jackson.annotation.JsonIgnore;
+import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
import org.openecomp.sdc.vendorlicense.dao.types.ChoiceOrOther;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementMetric;
import org.openecomp.sdc.vendorlicense.dao.types.EntitlementTime;
+import org.openecomp.sdc.vendorlicense.dao.types.LimitEntity;
import org.openecomp.sdc.vendorlicense.dao.types.OperationalScope;
import org.openecomp.sdc.vendorlicense.dao.types.AggregationFunction;
import org.openecomp.sdc.vendorlicense.dao.types.xml.AggregationFunctionForXml;
import org.openecomp.sdc.vendorlicense.dao.types.xml.EntitlementMetricForXml;
import org.openecomp.sdc.vendorlicense.dao.types.xml.EntitlementTimeForXml;
import org.openecomp.sdc.vendorlicense.dao.types.xml.ThresholdForXml;
+import org.openecomp.sdc.vendorlicense.dao.types.xml.LimitForXml;
+import java.util.Collection;
import java.util.Set;
@JsonPropertyOrder({ "entitlement-pool-invariant-uuid", "entitlement-pool-uuid" })
@JsonProperty(value = "version")
abstract String getVersionForArtifact();
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ abstract String getStartDate();
+
+ @JsonInclude(JsonInclude.Include.NON_NULL)
+ abstract String getExpiryDate();
+
@JsonIgnore
abstract String getVendorLicenseModelId();
@JsonIgnore
abstract ChoiceOrOther<OperationalScope> getOperationalScope();
-
@JsonProperty(value = "entitlement-metric")
abstract EntitlementMetricForXml getEntitlementMetricForArtifact();
@JsonProperty(value = "aggregation-function")
abstract AggregationFunctionForXml getAggregationFunctionForArtifact();
+ @JsonProperty(value = "sp-limits")
+ abstract LimitForXml getSPLimits();
+
+ @JsonProperty(value = "vendor-limits")
+ abstract LimitForXml getVendorLimits();
+
+ @JsonIgnore
+ abstract Collection<LimitEntity> getLimits();
}