Search in sources :

Example 6 with AssetIdentifierDto

use of eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto in project UVMS-ActivityModule-APP by UnionVMS.

the class BaseMapper method mapMdrCodeListToAssetListCriteriaPairList.

public static List<AssetListCriteriaPair> mapMdrCodeListToAssetListCriteriaPairList(Set<AssetIdentifierDto> identifierDtoSet, List<String> vesselIdentifierSchemeList) {
    List<AssetListCriteriaPair> criteriaList = new ArrayList<>();
    if (CollectionUtils.isNotEmpty(identifierDtoSet)) {
        for (AssetIdentifierDto identifierDto : identifierDtoSet) {
            VesselIdentifierSchemeIdEnum identifierSchemeId = identifierDto.getIdentifierSchemeId();
            ConfigSearchField keyFromDto = VesselIdentifierMapper.INSTANCE.map(identifierSchemeId);
            if (null != identifierSchemeId && null != keyFromDto && vesselIdentifierSchemeList.contains(keyFromDto.name())) {
                String identifierId = identifierDto.getFaIdentifierId();
                AssetListCriteriaPair criteriaPair = new AssetListCriteriaPair();
                criteriaPair.setKey(ConfigSearchField.fromValue(identifierSchemeId.name()));
                criteriaPair.setValue(identifierId);
                criteriaList.add(criteriaPair);
            }
        }
    }
    return criteriaList;
}
Also used : ConfigSearchField(eu.europa.ec.fisheries.wsdl.asset.types.ConfigSearchField) AssetListCriteriaPair(eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteriaPair) AssetIdentifierDto(eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto) ArrayList(java.util.ArrayList) VesselIdentifierSchemeIdEnum(eu.europa.ec.fisheries.uvms.activity.model.schemas.VesselIdentifierSchemeIdEnum)

Example 7 with AssetIdentifierDto

use of eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto in project UVMS-ActivityModule-APP by UnionVMS.

the class VesselDetailsDTOTest method testEnrichIdentifiers.

@Test
public void testEnrichIdentifiers() throws Exception {
    Asset asset = new Asset();
    asset.setCfr("cfrValueFromAsset");
    AssetIdentifierDto cfr = new AssetIdentifierDto(CFR);
    AssetIdentifierDto ext = new AssetIdentifierDto(EXT_MARK);
    ext.setFaIdentifierId("extMarkingFromActivity");
    AssetIdentifierDto ircs = new AssetIdentifierDto(IRCS);
    ircs.setFaIdentifierId("ircsFromActivity");
    AssetIdentifierDto iccat = new AssetIdentifierDto(ICCAT);
    iccat.setFaIdentifierId("iccat");
    AssetIdentifierDto uvi = new AssetIdentifierDto(UVI);
    Set<AssetIdentifierDto> identifiers = newSet(ircs, cfr, iccat, uvi, ext);
    VesselDetailsDTO dto = builder().vesselIdentifiers(identifiers).build();
    dto.enrichIdentifiers(asset);
    Set<AssetIdentifierDto> vesselIdentifiers = dto.getVesselIdentifiers();
    ImmutableMap<VesselIdentifierSchemeIdEnum, AssetIdentifierDto> map = Maps.uniqueIndex(vesselIdentifiers, new Function<AssetIdentifierDto, VesselIdentifierSchemeIdEnum>() {

        public VesselIdentifierSchemeIdEnum apply(AssetIdentifierDto from) {
            return from.getIdentifierSchemeId();
        }
    });
    AssetIdentifierDto cfr_ = map.get(CFR);
    AssetIdentifierDto ext_ = map.get(EXT_MARK);
    AssetIdentifierDto ircs_ = map.get(IRCS);
    AssetIdentifierDto uvi_ = map.get(UVI);
    AssetIdentifierDto iccat_ = map.get(ICCAT);
    assertTrue(uvi.equals(uvi_));
    assertTrue(ircs.equals(ircs_));
    assertTrue(iccat.equals(iccat_));
}
Also used : AssetIdentifierDto(eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto) VesselDetailsDTO(eu.europa.ec.fisheries.ers.service.dto.fareport.details.VesselDetailsDTO) VesselIdentifierSchemeIdEnum(eu.europa.ec.fisheries.uvms.activity.model.schemas.VesselIdentifierSchemeIdEnum) Asset(eu.europa.ec.fisheries.wsdl.asset.types.Asset) BaseUnitilsTest(eu.europa.ec.fisheries.uvms.BaseUnitilsTest) Test(org.junit.Test)

Example 8 with AssetIdentifierDto

use of eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto in project UVMS-ActivityModule-APP by UnionVMS.

the class BaseMapper method mapToAssetListCriteriaPairList.

public static List<AssetListCriteriaPair> mapToAssetListCriteriaPairList(Set<AssetIdentifierDto> identifierDtoSet) {
    List<AssetListCriteriaPair> criteriaList = new ArrayList<>();
    for (AssetIdentifierDto identifierDto : identifierDtoSet) {
        AssetListCriteriaPair criteriaPair = new AssetListCriteriaPair();
        VesselIdentifierSchemeIdEnum identifierSchemeId = identifierDto.getIdentifierSchemeId();
        ConfigSearchField key = VesselIdentifierMapper.INSTANCE.map(identifierSchemeId);
        String identifierId = identifierDto.getFaIdentifierId();
        if (key != null && identifierId != null) {
            criteriaPair.setKey(key);
            criteriaPair.setValue(identifierId);
            criteriaList.add(criteriaPair);
        }
    }
    return criteriaList;
}
Also used : ConfigSearchField(eu.europa.ec.fisheries.wsdl.asset.types.ConfigSearchField) AssetListCriteriaPair(eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteriaPair) AssetIdentifierDto(eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto) ArrayList(java.util.ArrayList) VesselIdentifierSchemeIdEnum(eu.europa.ec.fisheries.uvms.activity.model.schemas.VesselIdentifierSchemeIdEnum)

Example 9 with AssetIdentifierDto

use of eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto in project UVMS-ActivityModule-APP by UnionVMS.

the class FishingTripServiceBean method enrichWithAssetsModuleDataIfNeeded.

// need confirmation for removal of this method
private void enrichWithAssetsModuleDataIfNeeded(VesselDetailsDTO vesselDetailsDTO) {
    if (vesselDetailsDTO != null && vesselDetailsDTO.hasEmptyIdentifierValues()) {
        try {
            Set<AssetIdentifierDto> vesselIdentifiers = vesselDetailsDTO.getVesselIdentifiers();
            List<AssetListCriteriaPair> assetListCriteriaPairs = BaseMapper.mapToAssetListCriteriaPairList(vesselIdentifiers);
            AssetListCriteria criteria = new AssetListCriteria();
            criteria.getCriterias().addAll(assetListCriteriaPairs);
            AssetListQuery query = new AssetListQuery();
            query.setAssetSearchCriteria(criteria);
            List<Asset> assetList = assetModuleService.getAssetListResponse(query);
            vesselDetailsDTO.enrichIdentifiers(assetList.get(0));
        } catch (ServiceException e) {
            log.error("Error while trying to send message to Assets module.", e);
        }
    }
}
Also used : AssetIdentifierDto(eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto) AssetListCriteriaPair(eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteriaPair) ServiceException(eu.europa.ec.fisheries.uvms.commons.service.exception.ServiceException) AssetListQuery(eu.europa.ec.fisheries.wsdl.asset.types.AssetListQuery) Asset(eu.europa.ec.fisheries.wsdl.asset.types.Asset) AssetListCriteria(eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteria)

Example 10 with AssetIdentifierDto

use of eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto in project UVMS-ActivityModule-APP by UnionVMS.

the class BaseMapperTest method testmapMdrCodeListToAssetListCriteriaPairList.

@Test
public void testmapMdrCodeListToAssetListCriteriaPairList() {
    AssetIdentifierDto cfr = new AssetIdentifierDto(CFR);
    cfr.setFaIdentifierId("cfrValue");
    AssetIdentifierDto gfmc = new AssetIdentifierDto(GFCM);
    AssetIdentifierDto ext = new AssetIdentifierDto(EXT_MARK);
    ext.setFaIdentifierId("extValue");
    AssetIdentifierDto ircs = new AssetIdentifierDto(IRCS);
    ircs.setFaIdentifierId("ircsValue");
    AssetIdentifierDto uvi = new AssetIdentifierDto(UVI);
    Set<AssetIdentifierDto> identifierDtos = newSet(cfr, gfmc, ext, ircs, uvi);
    List<String> mdrCodeList = new ArrayList<String>();
    mdrCodeList.add("CFR");
    mdrCodeList.add("IRCS");
    mdrCodeList.add("EXT_MARK");
    mdrCodeList.add("UVI");
    mdrCodeList.add("ICCAT");
    mdrCodeList.add("GFCM");
    List<AssetListCriteriaPair> pairs = BaseMapper.mapMdrCodeListToAssetListCriteriaPairList(identifierDtos, mdrCodeList);
    ImmutableMap<ConfigSearchField, AssetListCriteriaPair> map = Maps.uniqueIndex(pairs, new Function<AssetListCriteriaPair, ConfigSearchField>() {

        public ConfigSearchField apply(AssetListCriteriaPair from) {
            return from.getKey();
        }
    });
    assertEquals(2, map.size());
    AssetListCriteriaPair cfrPair = map.get(ConfigSearchField.CFR);
    assertEquals(ConfigSearchField.CFR, cfrPair.getKey());
    assertEquals("cfrValue", cfrPair.getValue());
    AssetListCriteriaPair ircsPair = map.get(ConfigSearchField.IRCS);
    assertEquals(ConfigSearchField.IRCS, ircsPair.getKey());
    assertEquals("ircsValue", ircsPair.getValue());
}
Also used : ConfigSearchField(eu.europa.ec.fisheries.wsdl.asset.types.ConfigSearchField) AssetIdentifierDto(eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto) AssetListCriteriaPair(eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteriaPair) ArrayList(java.util.ArrayList) BaseUnitilsTest(eu.europa.ec.fisheries.uvms.BaseUnitilsTest) Test(org.junit.Test)

Aggregations

AssetIdentifierDto (eu.europa.ec.fisheries.ers.service.dto.AssetIdentifierDto)10 AssetListCriteriaPair (eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteriaPair)6 VesselIdentifierSchemeIdEnum (eu.europa.ec.fisheries.uvms.activity.model.schemas.VesselIdentifierSchemeIdEnum)5 ArrayList (java.util.ArrayList)5 BaseUnitilsTest (eu.europa.ec.fisheries.uvms.BaseUnitilsTest)4 ConfigSearchField (eu.europa.ec.fisheries.wsdl.asset.types.ConfigSearchField)4 Test (org.junit.Test)4 Asset (eu.europa.ec.fisheries.wsdl.asset.types.Asset)3 ServiceException (eu.europa.ec.fisheries.uvms.commons.service.exception.ServiceException)2 AssetListCriteria (eu.europa.ec.fisheries.wsdl.asset.types.AssetListCriteria)2 AssetListQuery (eu.europa.ec.fisheries.wsdl.asset.types.AssetListQuery)2 VesselIdentifierEntity (eu.europa.ec.fisheries.ers.fa.entities.VesselIdentifierEntity)1 VesselTransportMeansEntity (eu.europa.ec.fisheries.ers.fa.entities.VesselTransportMeansEntity)1 VesselDetailsDTO (eu.europa.ec.fisheries.ers.service.dto.fareport.details.VesselDetailsDTO)1 AssetListPagination (eu.europa.ec.fisheries.wsdl.asset.types.AssetListPagination)1 BigInteger (java.math.BigInteger)1 ToString (lombok.ToString)1