Search in sources :

Example 1 with PublicationCategory

use of org.nextprot.api.core.domain.publication.PublicationCategory in project nextprot-api by calipho-sib.

the class EntryPublicationViewServiceImpl method buildEntryPublicationView.

@Override
public List<EntryPublicationView> buildEntryPublicationView(String entryAccession, PublicationCategory publicationCategory) {
    EntryPublications entryPublications = entryPublicationService.findEntryPublications(entryAccession);
    List<EntryPublicationView> list = new ArrayList<>();
    Map<Long, EntryPublication> entryPublicationMap = entryPublications.getEntryPublicationList(publicationCategory).stream().collect(Collectors.toMap(EntryPublication::getPubId, Function.identity(), (entryPublication, entryPublication2) -> entryPublication));
    List<Publication> publications = publicationService.findPublicationsByEntryName(entryPublications.getEntryAccession());
    for (Publication publication : publications) {
        if (entryPublicationMap.containsKey(publication.getPublicationId())) {
            EntryPublicationView view = new EntryPublicationView();
            EntryPublication entryPublication = entryPublicationMap.get(publication.getPublicationId());
            view.setCitedInViews(entryPublication.getCitedInViews());
            view.setDirectLinks(entryPublication.getDirectLinks());
            view.setPublication(publication);
            list.add(view);
        }
    }
    return list;
}
Also used : Autowired(org.springframework.beans.factory.annotation.Autowired) Function(java.util.function.Function) Collectors(java.util.stream.Collectors) ArrayList(java.util.ArrayList) EntryPublicationService(org.nextprot.api.core.service.EntryPublicationService) Publication(org.nextprot.api.core.domain.Publication) List(java.util.List) Service(org.springframework.stereotype.Service) PublicationCategory(org.nextprot.api.core.domain.publication.PublicationCategory) Map(java.util.Map) EntryPublicationViewService(org.nextprot.api.core.service.EntryPublicationViewService) PublicationService(org.nextprot.api.core.service.PublicationService) EntryPublication(org.nextprot.api.core.domain.publication.EntryPublication) EntryPublications(org.nextprot.api.core.domain.publication.EntryPublications) EntryPublicationView(org.nextprot.api.core.domain.publication.EntryPublicationView) EntryPublications(org.nextprot.api.core.domain.publication.EntryPublications) EntryPublicationView(org.nextprot.api.core.domain.publication.EntryPublicationView) EntryPublication(org.nextprot.api.core.domain.publication.EntryPublication) ArrayList(java.util.ArrayList) Publication(org.nextprot.api.core.domain.Publication) EntryPublication(org.nextprot.api.core.domain.publication.EntryPublication)

Aggregations

ArrayList (java.util.ArrayList)1 List (java.util.List)1 Map (java.util.Map)1 Function (java.util.function.Function)1 Collectors (java.util.stream.Collectors)1 Publication (org.nextprot.api.core.domain.Publication)1 EntryPublication (org.nextprot.api.core.domain.publication.EntryPublication)1 EntryPublicationView (org.nextprot.api.core.domain.publication.EntryPublicationView)1 EntryPublications (org.nextprot.api.core.domain.publication.EntryPublications)1 PublicationCategory (org.nextprot.api.core.domain.publication.PublicationCategory)1 EntryPublicationService (org.nextprot.api.core.service.EntryPublicationService)1 EntryPublicationViewService (org.nextprot.api.core.service.EntryPublicationViewService)1 PublicationService (org.nextprot.api.core.service.PublicationService)1 Autowired (org.springframework.beans.factory.annotation.Autowired)1 Service (org.springframework.stereotype.Service)1