Commit b84c9795 authored by Noel Alonso's avatar Noel Alonso
Browse files

Merge branch 'release-0.13.0' into 'master'

Añade nuevas consultas al esquema de filtrado

See merge request redmic-project/server/library/models!22
parents e50d6220 a0bf1cb3
Loading
Loading
Loading
Loading
+50 −11
Original line number Diff line number Diff line
@@ -14,7 +14,7 @@
	<groupId>es.redmic.lib</groupId>
	<artifactId>models</artifactId>
	<packaging>jar</packaging>
	<version>0.11.0</version>
	<version>0.13.0</version>
	<name>Models</name>
	<description>Input-output classes and models</description>

@@ -28,13 +28,18 @@
		<!-- REDMIC -->
		<redmic.exceptions.version>0.10.0</redmic.exceptions.version>
		<redmic.jackson-jsonschema.version>0.8.0-feature-changeUrlType</redmic.jackson-jsonschema.version>
		<redmic.jts4jackson.version>0.0.1</redmic.jts4jackson.version>

		<!-- OTHERS -->
		<commons-beanutils.version>1.9.3</commons-beanutils.version>
		<commons-beanutils.version>1.9.4</commons-beanutils.version>
		<geotools.version>20.1</geotools.version>
		<commons-io.version>2.8.0</commons-io.version>
		<jackson-datatype-jts.version>1.0-2.7</jackson-datatype-jts.version>

		<hibernate-validator.version>6.0.8.Final</hibernate-validator.version>
		<org.mockito-version>1.10.19</org.mockito-version>

		<!-- Version plugins -->
		<jacoco.version>0.8.1</jacoco.version>
	</properties>

	<dependencies>
@@ -53,11 +58,6 @@
			<version>${redmic.jackson-jsonschema.version}</version>
		</dependency>

		<dependency>
			<groupId>es.redmic.lib</groupId>
			<artifactId>jts4jackson</artifactId>
			<version>${redmic.jts4jackson.version}</version>
		</dependency>

		<!-- Spring -->
		<!-- Para multpartfile -->
@@ -72,6 +72,12 @@
		</dependency>

		<!-- Otros -->
		<dependency>
			<groupId>com.graphhopper.external</groupId>
			<artifactId>jackson-datatype-jts</artifactId>
			<version>${jackson-datatype-jts.version}</version>
			<scope>provided</scope>
		</dependency>

		<!-- Bean compare -->
		<dependency>
@@ -99,6 +105,13 @@
			<version>${geotools.version}</version>
		</dependency>

		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>${commons-io.version}</version>
			<scope>provided</scope>
		</dependency>

		<!-- Jackson -->
		<dependency>
			<groupId>com.fasterxml.jackson.datatype</groupId>
@@ -117,6 +130,18 @@
			<scope>provided</scope>
		</dependency>

		<!-- Logs -->
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<scope>provided</scope>
		</dependency>

		<!-- test -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
@@ -124,6 +149,20 @@
			<scope>test</scope>
		</dependency>


		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-all</artifactId>
			<version>${org.mockito-version}</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.skyscreamer</groupId>
			<artifactId>jsonassert</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.glassfish</groupId>
			<artifactId>javax.el</artifactId>
+88 −2
Original line number Diff line number Diff line
@@ -21,15 +21,20 @@ package es.redmic.models.es.administrative.dto;
 */

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaIgnore;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaUniqueItemsByRequiredProperties;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaUrl;

import es.redmic.models.es.common.deserializer.CustomRelationDeserializer;
import es.redmic.models.es.maintenance.administrative.dto.ActivityTypeDTO;
import es.redmic.models.es.maintenance.administrative.dto.ThemeInspireDTO;

public class ActivityDTO extends ActivityBaseDTO {

@@ -40,6 +45,12 @@ public class ActivityDTO extends ActivityBaseDTO {
	@JsonSchemaUrl(value = "controller.mapping.PROJECT")
	private AncestorActivityDTO parent;

	@JsonIgnoreProperties(value = { "_meta" })
	@JsonSerialize(as = AncestorActivityDTO.class)
	@JsonDeserialize(using = CustomRelationDeserializer.class)
	@JsonSchemaIgnore
	private AncestorActivityDTO grandparent;

	@JsonIgnoreProperties(value = { "_meta" })
	@NotNull
	@JsonDeserialize(using = CustomRelationDeserializer.class)
@@ -49,8 +60,27 @@ public class ActivityDTO extends ActivityBaseDTO {
	@JsonSchemaIgnore
	private String activityCategory;

	@JsonSchemaUniqueItemsByRequiredProperties
	private List<ActivityResourceDTO> resources;

	@JsonIgnoreProperties(value = { "_meta" })
	@JsonDeserialize(using = CustomRelationDeserializer.class)
	@JsonSchemaUrl(value = "controller.mapping.THEME_INSPIRE")
	private ThemeInspireDTO themeInspire;

	@Size(max = 5000)
	private String licence;

	@Size(max = 5000)
	private String normative;

	private String spatialExtension;

	private Boolean starred;

	public ActivityDTO() {
		super();
		this.resources = new ArrayList<>();
	}

	public AncestorActivityDTO getParent() {
@@ -61,6 +91,14 @@ public class ActivityDTO extends ActivityBaseDTO {
		this.parent = parent;
	}

	public AncestorActivityDTO getGrandparent() {
		return this.grandparent;
	}

	public void setGrandparent(AncestorActivityDTO grandparent) {
		this.grandparent = grandparent;
	}

	public ActivityTypeDTO getActivityType() {
		return activityType;
	}
@@ -76,4 +114,52 @@ public class ActivityDTO extends ActivityBaseDTO {
	public void setActivityCategory(String activityCategory) {
		this.activityCategory = activityCategory;
	}

	public List<ActivityResourceDTO> getResources() {
		return this.resources;
	}

	public void setResources(List<ActivityResourceDTO> resources) {
		this.resources = resources;
	}

	public ThemeInspireDTO getThemeInspire() {
		return this.themeInspire;
	}

	public void setThemeInspire(ThemeInspireDTO themeInspire) {
		this.themeInspire = themeInspire;
	}

	public String getLicence() {
		return this.licence;
	}

	public void setLicence(String licence) {
		this.licence = licence;
	}

	public String getNormative() {
		return this.normative;
	}

	public void setNormative(String normative) {
		this.normative = normative;
	}

	public String getSpatialExtension() {
		return this.spatialExtension;
	}

	public void setSpatialExtension(String spatialExtension) {
		this.spatialExtension = spatialExtension;
	}

	public Boolean getStarred() {
		return this.starred;
	}

	public void setStarred(Boolean starred) {
		this.starred = starred;
	}
}
+75 −0
Original line number Diff line number Diff line
package es.redmic.models.es.geojson.toponym.dto;
package es.redmic.models.es.administrative.dto;

/*-
 * #%L
 * Models
 * %%
 * Copyright (C) 2019 REDMIC Project / Server
 * Copyright (C) 2019 - 2021 REDMIC Project / Server
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
@@ -20,69 +20,56 @@ package es.redmic.models.es.geojson.toponym.dto;
 * #L%
 */

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaDefault;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaNotNull;
import com.kjetland.jackson.jsonSchema.annotations.JsonSchemaUrl;

import es.redmic.models.es.common.deserializer.CustomRelationDeserializer;
import es.redmic.models.es.geojson.common.dto.PropertiesDTO;
import es.redmic.models.es.maintenance.toponym.dto.ToponymTypeDTO;
import es.redmic.models.es.common.dto.DTOImplement;
import es.redmic.models.es.maintenance.administrative.dto.ResourceTypeDTO;

@JsonSchemaNotNull
@JsonIgnoreProperties(value = { "activityId" })
public class ToponymPropertiesDTO extends PropertiesDTO {

	@NotNull
	@Size(min = 1, max = 250)
	private String name;

	@Size(min = 0, max = 1500)
	private String description;

	private Integer zoomLevel;
public class ActivityResourceDTO extends DTOImplement {

	@JsonIgnoreProperties(value = {"_meta"})
	@Valid
	@NotNull
	@JsonDeserialize(using = CustomRelationDeserializer.class)
	@JsonSchemaUrl(value = "controller.mapping.TOPONYM_TYPE")
	@JsonSchemaDefault(value = "1")
	private ToponymTypeDTO toponymType;
	@JsonSchemaUrl(value="controller.mapping.RESOURCE_TYPE")
	private ResourceTypeDTO resourceType;

	public String getName() {
		return name;
	}
	@NotNull
	@Size(min = 1, max = 500)
	private String urlResource;

	public void setName(String name) {
		this.name = name;
	public ActivityResourceDTO() {
		// default constructor
	}

	public String getDescription() {
		return description;
	public ResourceTypeDTO getResourceType() {
		return this.resourceType;
	}

	public void setDescription(String description) {
		this.description = description;
	public void setResourceType(ResourceTypeDTO resourceType) {
		this.resourceType = resourceType;
	}

	public Integer getZoomLevel() {
		return zoomLevel;
	public String getUrlResource() {
		return this.urlResource;
	}

	public void setZoomLevel(Integer zoomLevel) {
		this.zoomLevel = zoomLevel;
	public void setUrlResource(String urlResource) {
		this.urlResource = urlResource;
	}

	public ToponymTypeDTO getToponymType() {
		return toponymType;
	@Override
	public boolean equals(Object obj) {
		return super.equals(obj);
	}

	public void setToponymType(ToponymTypeDTO toponymType) {
		this.toponymType = toponymType;
	@Override
	public int hashCode() {
		return super.hashCode();
	}
}
+85 −3
Original line number Diff line number Diff line
@@ -20,10 +20,12 @@ package es.redmic.models.es.administrative.model;
 * #L%
 */

import java.util.List;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;

import es.redmic.models.es.maintenance.administrative.model.ActivityType;
import es.redmic.models.es.maintenance.administrative.model.ThemeInspire;



@@ -40,6 +42,22 @@ public class Activity extends ActivityBase {

	private String activityCategory;

	private List<ActivityResource> resources;

	private ThemeInspire themeInspire;

	private String licence;

	private String normative;

	private String spatialExtension;

	private Boolean starred;

	private ActivityCompact parent;

	private ActivityCompact grandparent;

	public Activity() {
		super();
	}
@@ -59,4 +77,68 @@ public class Activity extends ActivityBase {
	public void setActivityCategory(String activityCategory) {
		this.activityCategory = activityCategory;
	}

	public List<ActivityResource> getResources() {
		return resources;
	}

	public void setResources(List<ActivityResource> resources) {
		this.resources = resources;
	}

	public ThemeInspire getThemeInspire() {
		return this.themeInspire;
	}

	public void setThemeInspire(ThemeInspire themeInspire) {
		this.themeInspire = themeInspire;
	}

	public String getLicence() {
		return this.licence;
	}

	public void setLicence(String licence) {
		this.licence = licence;
	}

	public String getNormative() {
		return this.normative;
	}

	public void setNormative(String normative) {
		this.normative = normative;
	}

	public String getSpatialExtension() {
		return this.spatialExtension;
	}

	public void setSpatialExtension(String spatialExtension) {
		this.spatialExtension = spatialExtension;
	}

	public Boolean getStarred() {
		return this.starred;
	}

	public void setStarred(Boolean starred) {
		this.starred = starred;
	}

	public ActivityCompact getParent() {
		return this.parent;
	}

	public void setParent(ActivityCompact parent) {
		this.parent = parent;
	}

	public ActivityCompact getGrandparent() {
		return this.grandparent;
	}

	public void setGrandparent(ActivityCompact grandparent) {
		this.grandparent = grandparent;
	}
}
+51 −0
Original line number Diff line number Diff line
package es.redmic.models.es.administrative.model;

/*-
 * #%L
 * Models
 * %%
 * Copyright (C) 2019 - 2021 REDMIC Project / Server
 * %%
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * #L%
 */

import es.redmic.models.es.common.model.BaseAbstractES;
import es.redmic.models.es.maintenance.administrative.model.ResourceType;

public class ActivityResource extends BaseAbstractES {

	private ResourceType resourceType;

	private String urlResource;

	public ActivityResource() {
		// default constructor
	}

	public ResourceType getResourceType() {
		return this.resourceType;
	}

	public void setResourceType(ResourceType resourceType) {
		this.resourceType = resourceType;
	}

	public String getUrlResource() {
		return this.urlResource;
	}

	public void setUrlResource(String urlResource) {
		this.urlResource = urlResource;
	}
}
Loading