Loading pom.xml +70 −14 Original line number Diff line number Diff line <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> Loading @@ -12,17 +13,18 @@ <groupId>es.redmic.lib</groupId> <artifactId>view-lib</artifactId> <packaging>jar</packaging> <version>0.10.0</version> <version>0.10.0-feature-atlasMicroservice</version> <name>view-lib</name> <properties> <!-- REDMIC --> <redmic.rest-lib.version>0.9.0</redmic.rest-lib.version> <redmic.models.version>0.9.1</redmic.models.version> <redmic.broker-lib.version>0.8.0</redmic.broker-lib.version> <redmic.rest-lib.version>0.11.0</redmic.rest-lib.version> <redmic.models.version>0.11.0</redmic.models.version> <redmic.broker-lib.version>0.11.0</redmic.broker-lib.version> <redmic.user-settings-lib.version>0.2.0</redmic.user-settings-lib.version> <redmic.test-utils.version>0.10.0</redmic.test-utils.version> <!-- OTHERS --> <ma.glasnost.orika.core.version>1.5.2</ma.glasnost.orika.core.version> <mapstruct.version>1.3.0.Final</mapstruct.version> </properties> <dependencies> Loading @@ -45,12 +47,66 @@ </dependency> <dependency> <groupId>ma.glasnost.orika</groupId> <artifactId>orika-core</artifactId> <version>${ma.glasnost.orika.core.version}</version> <scope>provided</scope> <groupId>es.redmic.lib</groupId> <artifactId>user-settings-lib</artifactId> <version>${redmic.user-settings-lib.version}</version> </dependency> <!-- OTHERS --> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>${mapstruct.version}</version> </dependency> <!-- Test --> <dependency> <groupId>es.redmic.lib</groupId> <artifactId>test-utils</artifactId> <version>${redmic.test-utils.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>es.redmic.lib</groupId> <artifactId>user-settings-lib</artifactId> <version>${redmic.user-settings-lib.version}</version> <type>test-jar</type> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>Jar Tests Package</id> <phase>package</phase> <goals> <goal>test-jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <annotationProcessorPaths> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${mapstruct.version}</version> </path> <!-- other annotation processors --> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>central</id> Loading src/main/java/es/redmic/viewlib/common/mapper/es2dto/BaseESMapper.java 0 → 100644 +76 −0 Original line number Diff line number Diff line package es.redmic.viewlib.common.mapper.es2dto; import java.util.HashMap; import java.util.Map; /*- * #%L * view-lib * %% * Copyright (C) 2019 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.brokerlib.avro.common.CommonDTO; import es.redmic.models.es.common.dto.AggregationsDTO; import es.redmic.models.es.common.dto.MetaDataDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.common.model.HitWrapper; import es.redmic.models.es.common.model.SearchWrapper; public abstract class BaseESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> { protected abstract TDTO mapSource(TModel model); protected MetaDataDTO getMetaDataDTO(HitWrapper hit) { MetaDataDTO _meta = new MetaDataDTO(); _meta.setScore(hit.get_score()); _meta.setVersion(hit.get_version()); _meta.setHighlight(hit.getHighlight()); return _meta; } AggregationsDTO getAggs(SearchWrapper wrapper) { AggregationsDTO aggs = new AggregationsDTO(); if (wrapper.getAggregations() == null || wrapper.getAggregations().getAttributes().isEmpty()) return aggs; aggs.setAttributes(getCleanAttributes(wrapper.getAggregations().getAttributes())); return aggs; } @SuppressWarnings("unchecked") private Map<String, Object> getCleanAttributes(Map<String, Object> source) { Map<String, Object> attrs = new HashMap<>(); source.keySet().stream() .forEach(key -> attrs.put(getAggField(key), ((source.get(key) instanceof HashMap) ? getCleanAttributes((Map<String, Object>) source.get(key)) : source.get(key)))); return attrs; } private String getAggField(String key) { String[] keySplitted = key.split("#"); return keySplitted.length == 2 ? keySplitted[1] : key; } } src/main/java/es/redmic/viewlib/common/mapper/es2dto/DataCollectionESMapper.java +24 −16 Original line number Diff line number Diff line package es.redmic.viewlib.common.mapper.es2dto; import es.redmic.brokerlib.avro.common.CommonDTO; /*- * #%L * view-lib Loading @@ -20,23 +22,29 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import es.redmic.models.es.common.dto.JSONCollectionDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.data.common.model.DataHitsWrapper; import es.redmic.viewlib.data.dto.MetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; @SuppressWarnings("rawtypes") @Component public class DataCollectionESMapper extends CustomMapper<DataHitsWrapper, JSONCollectionDTO> { @SuppressWarnings("unchecked") @Override public void mapAtoB(DataHitsWrapper a, JSONCollectionDTO b, MappingContext context) { b.setData(mapperFacade.mapAsList(a.getHits(), MetaDTO.class, context)); b.get_meta().setMax_score(a.getMax_score()); b.setTotal(a.getTotal()); import es.redmic.models.es.data.common.model.DataSearchWrapper; public abstract class DataCollectionESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> extends DataItemESMapper<TDTO, TModel> { @SuppressWarnings({ "rawtypes" }) public JSONCollectionDTO map(DataSearchWrapper dataSearchWrapper) { JSONCollectionDTO result = map(dataSearchWrapper.getHits()); result.set_aggs(getAggs(dataSearchWrapper)); return result; } @SuppressWarnings({ "rawtypes", "unchecked" }) public JSONCollectionDTO map(DataHitsWrapper dataHitsWrapper) { JSONCollectionDTO result = new JSONCollectionDTO(); result.setData(mapList(dataHitsWrapper.getHits())); result.get_meta().setMax_score(dataHitsWrapper.getMax_score()); result.setTotal(dataHitsWrapper.getTotal()); return result; } } src/main/java/es/redmic/viewlib/common/mapper/es2dto/DataItemESMapper.java +20 −14 Original line number Diff line number Diff line Loading @@ -20,27 +20,33 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; import es.redmic.models.es.common.dto.MetaDataDTO; import es.redmic.brokerlib.avro.common.CommonDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.data.common.model.DataHitWrapper; import es.redmic.viewlib.data.dto.MetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; @SuppressWarnings("rawtypes") @Component public class DataItemESMapper extends CustomMapper<DataHitWrapper, MetaDTO> { public abstract class DataItemESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> extends BaseESMapper<TDTO, TModel> { @Override public void mapAtoB(DataHitWrapper a, MetaDTO b, MappingContext context) { @SuppressWarnings({ "unchecked", "rawtypes" }) public List<MetaDTO<TDTO>> mapList(List<DataHitWrapper> dataHitWrapper) { MetaDataDTO _meta = new MetaDataDTO(); List<MetaDTO<TDTO>> list = new ArrayList<MetaDTO<TDTO>>(); for (DataHitWrapper<TModel> entity : dataHitWrapper) { list.add(map(entity)); } return list; } _meta.setScore(a.get_score()); _meta.setVersion(a.get_version()); _meta.setHighlight(a.getHighlight()); @SuppressWarnings({ "rawtypes", "unchecked" }) public MetaDTO map(DataHitWrapper dataHitWrapper) { b.set_meta(_meta); MetaDTO<TDTO> result = new MetaDTO<TDTO>(); result.set_meta(getMetaDataDTO(dataHitWrapper)); result.set_source(mapSource((TModel) dataHitWrapper.get_source())); return result; } } src/main/java/es/redmic/viewlib/common/mapper/es2dto/FeatureCollectionMapper.java→src/main/java/es/redmic/viewlib/common/mapper/es2dto/FeatureCollectionESMapper.java +52 −0 Original line number Diff line number Diff line Loading @@ -20,31 +20,33 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import org.locationtech.jts.geom.Geometry; import es.redmic.exception.common.ExceptionType; import es.redmic.exception.common.InternalException; import es.redmic.brokerlib.avro.geodata.common.FeatureDTO; import es.redmic.brokerlib.avro.geodata.common.PropertiesBaseDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.geojson.common.dto.GeoJSONFeatureCollectionDTO; import es.redmic.models.es.geojson.wrapper.GeoHitsWrapper; import es.redmic.viewlib.geodata.dto.GeoMetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; import es.redmic.models.es.geojson.common.model.GeoHitsWrapper; import es.redmic.models.es.geojson.common.model.GeoSearchWrapper; @SuppressWarnings("rawtypes") @Component public class FeatureCollectionMapper extends CustomMapper<GeoHitsWrapper, GeoJSONFeatureCollectionDTO> { public abstract class FeatureCollectionESMapper<TDTO extends FeatureDTO<PropertiesBaseDTO, Geometry>, TModel extends BaseES<?>> extends FeatureESMapper<TDTO, TModel> { @SuppressWarnings("unchecked") @Override public void mapAtoB(GeoHitsWrapper a, GeoJSONFeatureCollectionDTO b, MappingContext context) { @SuppressWarnings("rawtypes") public GeoJSONFeatureCollectionDTO map(GeoSearchWrapper geoSearchWrapper) { Class<?> targetTypeDto = (Class<?>) context.getProperty("targetTypeDto"); GeoJSONFeatureCollectionDTO result = map(geoSearchWrapper.getHits()); result.set_aggs(getAggs(geoSearchWrapper)); return result; } if (targetTypeDto == null) throw new InternalException(ExceptionType.INTERNAL_EXCEPTION); @SuppressWarnings({ "rawtypes", "unchecked" }) public GeoJSONFeatureCollectionDTO map(GeoHitsWrapper geoHitsWrapper) { b.setFeatures(mapperFacade.mapAsList(a.getHits(), GeoMetaDTO.class, context)); b.get_meta().setMax_score(a.getMax_score()); b.setTotal(a.getTotal()); GeoJSONFeatureCollectionDTO result = new GeoJSONFeatureCollectionDTO(); result.setFeatures(mapList(geoHitsWrapper.getHits())); result.get_meta().setMax_score(geoHitsWrapper.getMax_score()); result.setTotal(geoHitsWrapper.getTotal()); return result; } } Loading
pom.xml +70 −14 Original line number Diff line number Diff line <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <parent> Loading @@ -12,17 +13,18 @@ <groupId>es.redmic.lib</groupId> <artifactId>view-lib</artifactId> <packaging>jar</packaging> <version>0.10.0</version> <version>0.10.0-feature-atlasMicroservice</version> <name>view-lib</name> <properties> <!-- REDMIC --> <redmic.rest-lib.version>0.9.0</redmic.rest-lib.version> <redmic.models.version>0.9.1</redmic.models.version> <redmic.broker-lib.version>0.8.0</redmic.broker-lib.version> <redmic.rest-lib.version>0.11.0</redmic.rest-lib.version> <redmic.models.version>0.11.0</redmic.models.version> <redmic.broker-lib.version>0.11.0</redmic.broker-lib.version> <redmic.user-settings-lib.version>0.2.0</redmic.user-settings-lib.version> <redmic.test-utils.version>0.10.0</redmic.test-utils.version> <!-- OTHERS --> <ma.glasnost.orika.core.version>1.5.2</ma.glasnost.orika.core.version> <mapstruct.version>1.3.0.Final</mapstruct.version> </properties> <dependencies> Loading @@ -45,12 +47,66 @@ </dependency> <dependency> <groupId>ma.glasnost.orika</groupId> <artifactId>orika-core</artifactId> <version>${ma.glasnost.orika.core.version}</version> <scope>provided</scope> <groupId>es.redmic.lib</groupId> <artifactId>user-settings-lib</artifactId> <version>${redmic.user-settings-lib.version}</version> </dependency> <!-- OTHERS --> <dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>${mapstruct.version}</version> </dependency> <!-- Test --> <dependency> <groupId>es.redmic.lib</groupId> <artifactId>test-utils</artifactId> <version>${redmic.test-utils.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>es.redmic.lib</groupId> <artifactId>user-settings-lib</artifactId> <version>${redmic.user-settings-lib.version}</version> <type>test-jar</type> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>Jar Tests Package</id> <phase>package</phase> <goals> <goal>test-jar</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <annotationProcessorPaths> <path> <groupId>org.mapstruct</groupId> <artifactId>mapstruct-processor</artifactId> <version>${mapstruct.version}</version> </path> <!-- other annotation processors --> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> <repositories> <repository> <id>central</id> Loading
src/main/java/es/redmic/viewlib/common/mapper/es2dto/BaseESMapper.java 0 → 100644 +76 −0 Original line number Diff line number Diff line package es.redmic.viewlib.common.mapper.es2dto; import java.util.HashMap; import java.util.Map; /*- * #%L * view-lib * %% * Copyright (C) 2019 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.brokerlib.avro.common.CommonDTO; import es.redmic.models.es.common.dto.AggregationsDTO; import es.redmic.models.es.common.dto.MetaDataDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.common.model.HitWrapper; import es.redmic.models.es.common.model.SearchWrapper; public abstract class BaseESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> { protected abstract TDTO mapSource(TModel model); protected MetaDataDTO getMetaDataDTO(HitWrapper hit) { MetaDataDTO _meta = new MetaDataDTO(); _meta.setScore(hit.get_score()); _meta.setVersion(hit.get_version()); _meta.setHighlight(hit.getHighlight()); return _meta; } AggregationsDTO getAggs(SearchWrapper wrapper) { AggregationsDTO aggs = new AggregationsDTO(); if (wrapper.getAggregations() == null || wrapper.getAggregations().getAttributes().isEmpty()) return aggs; aggs.setAttributes(getCleanAttributes(wrapper.getAggregations().getAttributes())); return aggs; } @SuppressWarnings("unchecked") private Map<String, Object> getCleanAttributes(Map<String, Object> source) { Map<String, Object> attrs = new HashMap<>(); source.keySet().stream() .forEach(key -> attrs.put(getAggField(key), ((source.get(key) instanceof HashMap) ? getCleanAttributes((Map<String, Object>) source.get(key)) : source.get(key)))); return attrs; } private String getAggField(String key) { String[] keySplitted = key.split("#"); return keySplitted.length == 2 ? keySplitted[1] : key; } }
src/main/java/es/redmic/viewlib/common/mapper/es2dto/DataCollectionESMapper.java +24 −16 Original line number Diff line number Diff line package es.redmic.viewlib.common.mapper.es2dto; import es.redmic.brokerlib.avro.common.CommonDTO; /*- * #%L * view-lib Loading @@ -20,23 +22,29 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import es.redmic.models.es.common.dto.JSONCollectionDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.data.common.model.DataHitsWrapper; import es.redmic.viewlib.data.dto.MetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; @SuppressWarnings("rawtypes") @Component public class DataCollectionESMapper extends CustomMapper<DataHitsWrapper, JSONCollectionDTO> { @SuppressWarnings("unchecked") @Override public void mapAtoB(DataHitsWrapper a, JSONCollectionDTO b, MappingContext context) { b.setData(mapperFacade.mapAsList(a.getHits(), MetaDTO.class, context)); b.get_meta().setMax_score(a.getMax_score()); b.setTotal(a.getTotal()); import es.redmic.models.es.data.common.model.DataSearchWrapper; public abstract class DataCollectionESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> extends DataItemESMapper<TDTO, TModel> { @SuppressWarnings({ "rawtypes" }) public JSONCollectionDTO map(DataSearchWrapper dataSearchWrapper) { JSONCollectionDTO result = map(dataSearchWrapper.getHits()); result.set_aggs(getAggs(dataSearchWrapper)); return result; } @SuppressWarnings({ "rawtypes", "unchecked" }) public JSONCollectionDTO map(DataHitsWrapper dataHitsWrapper) { JSONCollectionDTO result = new JSONCollectionDTO(); result.setData(mapList(dataHitsWrapper.getHits())); result.get_meta().setMax_score(dataHitsWrapper.getMax_score()); result.setTotal(dataHitsWrapper.getTotal()); return result; } }
src/main/java/es/redmic/viewlib/common/mapper/es2dto/DataItemESMapper.java +20 −14 Original line number Diff line number Diff line Loading @@ -20,27 +20,33 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.List; import es.redmic.models.es.common.dto.MetaDataDTO; import es.redmic.brokerlib.avro.common.CommonDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.data.common.model.DataHitWrapper; import es.redmic.viewlib.data.dto.MetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; @SuppressWarnings("rawtypes") @Component public class DataItemESMapper extends CustomMapper<DataHitWrapper, MetaDTO> { public abstract class DataItemESMapper<TDTO extends CommonDTO, TModel extends BaseES<?>> extends BaseESMapper<TDTO, TModel> { @Override public void mapAtoB(DataHitWrapper a, MetaDTO b, MappingContext context) { @SuppressWarnings({ "unchecked", "rawtypes" }) public List<MetaDTO<TDTO>> mapList(List<DataHitWrapper> dataHitWrapper) { MetaDataDTO _meta = new MetaDataDTO(); List<MetaDTO<TDTO>> list = new ArrayList<MetaDTO<TDTO>>(); for (DataHitWrapper<TModel> entity : dataHitWrapper) { list.add(map(entity)); } return list; } _meta.setScore(a.get_score()); _meta.setVersion(a.get_version()); _meta.setHighlight(a.getHighlight()); @SuppressWarnings({ "rawtypes", "unchecked" }) public MetaDTO map(DataHitWrapper dataHitWrapper) { b.set_meta(_meta); MetaDTO<TDTO> result = new MetaDTO<TDTO>(); result.set_meta(getMetaDataDTO(dataHitWrapper)); result.set_source(mapSource((TModel) dataHitWrapper.get_source())); return result; } }
src/main/java/es/redmic/viewlib/common/mapper/es2dto/FeatureCollectionMapper.java→src/main/java/es/redmic/viewlib/common/mapper/es2dto/FeatureCollectionESMapper.java +52 −0 Original line number Diff line number Diff line Loading @@ -20,31 +20,33 @@ package es.redmic.viewlib.common.mapper.es2dto; * #L% */ import org.springframework.stereotype.Component; import org.locationtech.jts.geom.Geometry; import es.redmic.exception.common.ExceptionType; import es.redmic.exception.common.InternalException; import es.redmic.brokerlib.avro.geodata.common.FeatureDTO; import es.redmic.brokerlib.avro.geodata.common.PropertiesBaseDTO; import es.redmic.models.es.common.model.BaseES; import es.redmic.models.es.geojson.common.dto.GeoJSONFeatureCollectionDTO; import es.redmic.models.es.geojson.wrapper.GeoHitsWrapper; import es.redmic.viewlib.geodata.dto.GeoMetaDTO; import ma.glasnost.orika.CustomMapper; import ma.glasnost.orika.MappingContext; import es.redmic.models.es.geojson.common.model.GeoHitsWrapper; import es.redmic.models.es.geojson.common.model.GeoSearchWrapper; @SuppressWarnings("rawtypes") @Component public class FeatureCollectionMapper extends CustomMapper<GeoHitsWrapper, GeoJSONFeatureCollectionDTO> { public abstract class FeatureCollectionESMapper<TDTO extends FeatureDTO<PropertiesBaseDTO, Geometry>, TModel extends BaseES<?>> extends FeatureESMapper<TDTO, TModel> { @SuppressWarnings("unchecked") @Override public void mapAtoB(GeoHitsWrapper a, GeoJSONFeatureCollectionDTO b, MappingContext context) { @SuppressWarnings("rawtypes") public GeoJSONFeatureCollectionDTO map(GeoSearchWrapper geoSearchWrapper) { Class<?> targetTypeDto = (Class<?>) context.getProperty("targetTypeDto"); GeoJSONFeatureCollectionDTO result = map(geoSearchWrapper.getHits()); result.set_aggs(getAggs(geoSearchWrapper)); return result; } if (targetTypeDto == null) throw new InternalException(ExceptionType.INTERNAL_EXCEPTION); @SuppressWarnings({ "rawtypes", "unchecked" }) public GeoJSONFeatureCollectionDTO map(GeoHitsWrapper geoHitsWrapper) { b.setFeatures(mapperFacade.mapAsList(a.getHits(), GeoMetaDTO.class, context)); b.get_meta().setMax_score(a.getMax_score()); b.setTotal(a.getTotal()); GeoJSONFeatureCollectionDTO result = new GeoJSONFeatureCollectionDTO(); result.setFeatures(mapList(geoHitsWrapper.getHits())); result.get_meta().setMax_score(geoHitsWrapper.getMax_score()); result.setTotal(geoHitsWrapper.getTotal()); return result; } }