Project

General

Profile

« Previous | Next » 

Revision 45460

View differences:

PublicationManagerImpl.java
1
/*
2 1
package eu.dnetlib.goldoa.service;
3 2

  
4 3
import com.fasterxml.jackson.databind.JsonNode;
5 4
import com.fasterxml.jackson.databind.ObjectMapper;
6
import eu.dnetlib.goldoa.domain.Affiliation;
5
import eu.dnetlib.goldoa.domain.*;
7 6
import eu.dnetlib.goldoa.domain.BankAccount;
8 7
import eu.dnetlib.goldoa.domain.Currency;
9
import eu.dnetlib.goldoa.domain.Journal;
10
import eu.dnetlib.goldoa.domain.ManagerException;
11
import eu.dnetlib.goldoa.domain.OrganizationManagerException;
12
import eu.dnetlib.goldoa.domain.Person;
13
import eu.dnetlib.goldoa.domain.PersonManagerException;
14
import eu.dnetlib.goldoa.domain.Publication;
15
import eu.dnetlib.goldoa.domain.PublicationIdentifier;
16
import eu.dnetlib.goldoa.domain.Publisher;
8
import eu.dnetlib.goldoa.domain.User;
9
import eu.dnetlib.goldoa.domain.Identifier;
17 10
import eu.dnetlib.goldoa.service.dao.PublicationDAO;
18 11
import org.apache.commons.codec.digest.DigestUtils;
19 12
import org.apache.log4j.Logger;
20 13
import org.springframework.beans.factory.annotation.Autowired;
14
import org.springframework.stereotype.Service;
21 15
import org.springframework.transaction.annotation.Transactional;
22 16

  
23 17
import java.io.InputStream;
......
29 23
import java.util.List;
30 24
import java.util.TimeZone;
31 25

  
32
*/
26

  
33 27
/**
34 28
 * Created by antleb on 3/13/15.
35
 *//*
36

  
29
 */
37 30
@Transactional
31
@Service
38 32
public class PublicationManagerImpl implements PublicationManager {
39 33

  
40 34
	private static Logger logger = Logger.getLogger(PublicationManagerImpl.class);
......
52 46

  
53 47
	@Override
54 48
	public Publication getPublication(String publicationId) {
55
		Publication publication = publicationDAO.getPublication(publicationId);
56

  
57
		loadPublicationRelations(publication);
58

  
59
		if (publication.getJournal() != null && publication.getJournal().getId() != null)
60
			publication.setJournal(journalManager.getJournal(publication.getJournal().getId()));
61
		else
62
			publication.setJournal(null);
63

  
64
		if (publication.getPublisher() != null && publication.getPublisher().getId() != null)
65
			publication.setPublisher(publisherManager.getPublisher(publication.getPublisher().getId()));
66
		else
67
			publication.setPublisher(null);
68

  
69
		return publication;
49
	    return publicationDAO.getPublication(publicationId);
70 50
	}
71 51

  
72 52
	private void loadPublicationRelations(Publication publication) {
......
82 62
		}
83 63

  
84 64
		publicationDAO.savePublication(publication);
65
		/*
85 66
		deletePublicationRelations(publication);
67

  
86 68
		try {
87 69
			insertPublicationRelations(publication);
88 70
		} catch (PersonManagerException e) {
......
111 93

  
112 94
			publication.setPublisher(publisherManager.getPublisher(publication.getPublisher().getId()));
113 95
		}
114

  
96
        */
115 97
		return publication;
116 98
	}
117 99

  
118 100
	private void insertPublicationRelations(Publication publication) throws PersonManagerException, OrganizationManagerException {
119
		publicationDAO.insertIdentifiers(publication);
101
		/*publicationDAO.insertIdentifiers(publication);
120 102

  
121 103
		if (publication.getAuthors() != null)
122 104
			for (Affiliation aff : publication.getAuthors()) {
......
156 138
				}
157 139
			}
158 140

  
159
		publicationDAO.saveAffiliations(publication);
141
		publicationDAO.saveAffiliations(publication);*/
160 142
	}
161 143

  
162 144
	private void deletePublicationRelations(Publication publication) {
163
		publicationDAO.deleteIdentifiers(publication);
164
		publicationDAO.deleteAffiliations(publication);
145
		//publicationDAO.deleteIdentifiers(publication);
146
		//publicationDAO.deleteAffiliations(publication);
165 147
	}
166 148

  
167 149
	@Override
......
187 169
				else
188 170
					publication.setType(Publication.Type.MONOGRAPH);
189 171

  
190
				publication.setPublicationDate(this.parsePublicationDate(root.path("message").path("issued")));
172
				publication.setDate(this.parsePublicationDate(root.path("message").path("issued")));
191 173
				publication.setJournal(this.parseJournal(root.path("message").path("container-title"), root.path("message").path("ISSN")));
192 174
				publication.getJournal().setPublisher(this.parsePublisher(root.path("message").path("publisher")));
193 175

  
194
				publication.setAuthors(new ArrayList<Affiliation>());
176
				publication.setAffiliations(new ArrayList<Affiliation>());
195 177
				for (JsonNode author : root.path("message").path("author")) {
196
					publication.getAuthors().add(this.parseAffiliation(author));
178
					publication.getAffiliations().add(this.parseAffiliation(author));
197 179
				}
198 180

  
199 181
				publication.setLicense(root.path("message").path("license").path(0).path("URL").textValue());
200 182

  
201
				publication.setIdentifiers(new ArrayList<PublicationIdentifier>());
202
				publication.getIdentifiers().add(new PublicationIdentifier("doi", doi));
183
				publication.setPublicationIdentifiers(new ArrayList<Identifier>());
184
				publication.getPublicationIdentifiers().add(new Identifier("doi", doi));
203 185
			} else {
204 186
				throw new ManagerException(ManagerException.ErrorCause.NOT_EXISTS);
205 187
			}
......
267 249

  
268 250
			journal.setIssn(sb.toString());
269 251

  
270
			journal.setCurrency(Currency.EUR);
252
			journal.setApcCurrency(Currency.EUR);
271 253
			journal.setSource("crossref");
272 254
			journal.setId("crossref::" + DigestUtils.md5Hex(journal.getTitle()));
273 255
		}
......
289 271

  
290 272
		return c.getTime();
291 273
	}
292
}
293
*/
274
}

Also available in: Unified diff