geoportal-data-common/src/main/java/org/gcube/application/geoportalcommon/geoportalconfig/GcubeProfile.java

59 lines
1.2 KiB
Java

package org.gcube.application.geoportalcommon.geoportalconfig;
import java.util.List;
import javax.xml.bind.annotation.XmlRootElement;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
@Data
@XmlRootElement(name = "gcubeProfiles")
@Slf4j
public class GcubeProfile {
private static final String FILE_PATHS = "filePaths";
public static final int MIN_MAX_NOT_SPECIFIED = -1;
public GcubeProfile() {}
@JsonProperty
private String gcubeSecondaryType;
@JsonProperty
private String gcubeName;
@JsonProperty
private String parentName;
@JsonProperty
private String sectionName;
@JsonProperty
private String sectionTitle;
/**
* 0: Not specified means Not Mandatory. The Gcube Profile is not mandatory and means that all its fields must be optional in the gCube Meta Profile.
* N: is the MIN number of Occurrences
* Default is 1 occurrence
*/
@JsonProperty
private int minOccurs = 1;
/**
* 0: Not specified means max number of Occurrences is arbitrary.
* N: is the MAX number of Occurrences
*/
@JsonProperty
private int maxOccurs = 1;
@JsonProperty(FILE_PATHS)
private List<FilePath> filePaths;
}