Project

General

Profile

« Previous | Next » 

Revision 49975

1. Change converter method ( null lat/lon -> 0 )
2. Change repository api. Organize code, add new api methods.

View differences:

modules/uoa-repository-manager-service/src/main/java/eu/dnetlib/repo/manager/service/utils/Converter.java
126 126

  
127 127
    public static Double toDouble(String number){
128 128
        if(Objects.equals(number, "null"))
129
            return null;
129
            return 0.0;
130 130
        else
131 131
            return Double.valueOf(number);
132 132
    }
modules/uoa-repository-manager-service/src/main/java/eu/dnetlib/repo/manager/service/controllers/RepositoryApi.java
64 64
    @RequestMapping(value = "/addRepository", method = RequestMethod.POST,
65 65
            consumes = MediaType.APPLICATION_JSON_VALUE)
66 66
    @ResponseBody
67
    void addRepository(@RequestBody String params) throws Exception;
67
    void addRepository( String params) throws Exception;
68 68

  
69 69
    @RequestMapping(value = "/deleteInterface", method = RequestMethod.DELETE)
70 70
    @ResponseBody
modules/uoa-repository-manager-service/src/main/java/eu/dnetlib/repo/manager/service/controllers/RepositoryApiImpl.java
1 1
package eu.dnetlib.repo.manager.service.controllers;
2 2

  
3
import com.fasterxml.jackson.databind.DeserializationFeature;
3 4
import com.fasterxml.jackson.databind.ObjectMapper;
5
import com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException;
4 6
import eu.dnetlib.domain.enabling.Vocabulary;
5 7
import eu.dnetlib.repo.manager.service.utils.Converter;
6 8
import eu.dnetlib.domain.data.Repository;
......
48 50
    private Map<String, String> inverseCountriesMap = new HashMap<>();
49 51

  
50 52

  
51
    //String updateQuery = "UPDATE datasources SET englishname = '" + repo.getEnglishName() + "', logourl = '" + repo.getLogoUrl() + "', timezone = '" + repo.getTimezone() + "', registeredby = '" + repo.getRegisteredBy() + "', activationid = '" + repo.getActivationId() + "', contactemail = '" + repo.getContactEmail() + "', datasourceclass = '" + repo.getDatasourceClass() + "' WHERE id = '" + repo.getId() + "'";
52

  
53

  
54 53
    @PostConstruct
55 54
    private void init() {
56 55
        LOGGER.debug("Initialization method of repository api!");
......
186 185
                                                  @PathVariable("page") String page,
187 186
                                                  @PathVariable("size") String size) throws JSONException {
188 187

  
189
        LOGGER.debug("Retreiving repositories of user : " + userEmail + " with params: " + baseAddress + "-" + page + "/" + size);
190
        //TODO update with correct method
188
        LOGGER.debug("Retreiving repositories of user : " + userEmail );
191 189
        UriComponents uriComponents = UriComponentsBuilder
192
                .fromHttpUrl(baseAddress + "/ds/search/email/")
190
                .fromHttpUrl(baseAddress + "/ds/search/registeredBy/")
193 191
                .path("/{page}/{size}/")
194
                .queryParam("contactemail", userEmail)
192
                .queryParam("registeredBy", userEmail)
195 193
                .build().expand(page, size).encode();
196 194

  
197 195
        String rs = restTemplate.getForObject(uriComponents.toUri(), String.class);
......
278 276
        String json_repository = json_params.getString("repository");
279 277
        Repository repository = null;
280 278
        ObjectMapper mapper = new ObjectMapper();
279
        mapper.disable(DeserializationFeature.FAIL_ON_UNK‌​NOWN_PROPERTIES);
281 280
        try {
281
            LOGGER.debug("repository -> " + json_repository);
282 282
            repository = mapper.readValue(json_repository, Repository.class);
283 283
        } catch (Exception e) {
284 284
            LOGGER.debug("Error parsing repository ", e);
285
            throw  e;
285 286
        }
286 287

  
287 288
        repository = this.setRepositoryFeatures(datatype,repository);
......
296 297
                    LOGGER.debug(retMessage);
297 298
                } else {
298 299
                    LOGGER.debug(datatype + " " + repository.getOfficialName() + " is not in datasources. Inserting..");
299
                    storeRepository(repository);
300
                    this.storeRepository(repository);
300 301
                }
301 302
            }
302 303
        } else {
303
            // TODO call update method for register
304
            this.updateRegisteredByValue(repository.getId(),repository.getRegisteredBy());
304 305
        }
305 306

  
306 307
        LOGGER.debug("Inserting Interfaces");
......
315 316
                    LOGGER.debug("updated successfully");
316 317
                } else {
317 318
                    LOGGER.debug("adding new iface..");
318
                    registerRepositoryInterface(repository.getId(),iFace,datatype);
319
                    this.registerRepositoryInterface(repository.getId(),iFace,datatype);
319 320
                }
320 321
            }
321 322
        }
322 323
    }
323 324

  
325
    private void updateRegisteredByValue(String id, String registeredBy) {
326

  
327
        LOGGER.debug("Updating registered by value with  : " + registeredBy );
328
        UriComponents uriComponents = UriComponentsBuilder
329
                .fromHttpUrl(baseAddress + "/ds/registeredBy/")
330
                .queryParam("dsId",id)
331
                .queryParam("registeredBy", registeredBy)
332
                .build()
333
                .encode();
334
        restTemplate.postForObject(uriComponents.toUri(), null,String.class);
335
    }
336

  
324 337
    private Repository setRepositoryFeatures(String datatype, Repository repository) {
325 338

  
326 339
        //TODO update map
......
460 473
        return registerRepositoryInterface(repoId,iFace,datatype);
461 474
    }
462 475

  
463
    public RepositoryInterface registerRepositoryInterface(String repoId, RepositoryInterface iFace, String datatype) {
476
    private RepositoryInterface registerRepositoryInterface(String repoId, RepositoryInterface iFace, String datatype) {
464 477
        Repository e = null;
465 478
        try {
466 479
            e = this.getRepositoryById(repoId);
......
514 527
                                    @RequestParam(value = "englishname")  String englishName) {
515 528

  
516 529
        UriComponents uriComponents = UriComponentsBuilder
517
                .fromHttpUrl(baseAddress + "/ds/manage/")
530
                .fromHttpUrl(baseAddress + "/ds/englishname/")
518 531
                .queryParam("dsId",id)
519 532
                .queryParam("englishname",englishName)
520 533
                .build().encode();
......
528 541
                                 @RequestParam(value = "managed")  String latitude) {
529 542

  
530 543
        UriComponents uriComponents = UriComponentsBuilder
531
                .fromHttpUrl(baseAddress + "/ds/manage/")
544
                .fromHttpUrl(baseAddress + "/ds/latitude/")
532 545
                .queryParam("dsId",id)
533 546
                .queryParam("latitude",latitude)
534 547
                .build().encode();
......
540 553
                                  @RequestParam(value = "longitude")  String longitude) {
541 554

  
542 555
        UriComponents uriComponents = UriComponentsBuilder
543
                .fromHttpUrl(baseAddress + "/ds/manage/")
556
                .fromHttpUrl(baseAddress + "/ds/longitude/")
544 557
                .queryParam("dsId",id)
545 558
                .queryParam("longitude",longitude)
546 559
                .build().encode();
......
552 565
                                     @RequestParam(value = "officialname")  String officialname) {
553 566

  
554 567
        UriComponents uriComponents = UriComponentsBuilder
555
                .fromHttpUrl(baseAddress + "/ds/manage/")
568
                .fromHttpUrl(baseAddress + "/ds/officialname/")
556 569
                .queryParam("dsId",id)
557 570
                .queryParam("officialname",officialname)
558 571
                .build().encode();
......
563 576
    public String updateTimezone(@RequestParam(value = "id")   String id,
564 577
                                 @RequestParam(value = "timezone")  String timezone) {
565 578
        UriComponents uriComponents = UriComponentsBuilder
566
                .fromHttpUrl(baseAddress + "/ds/update/timezone")
579
                .fromHttpUrl(baseAddress + "/ds/timezone")
567 580
                .queryParam("dsId",id)
568 581
                .queryParam("timezone",timezone)
569 582
                .build().encode();
......
574 587
    public String updateTypology(@RequestParam(value = "id")   String id,
575 588
                                 @RequestParam(value = "typology")  String typology) {
576 589
        UriComponents uriComponents = UriComponentsBuilder
577
                .fromHttpUrl(baseAddress + "/ds/update/typology")
590
                .fromHttpUrl(baseAddress + "/ds/typology")
578 591
                .queryParam("dsId",id)
579 592
                .queryParam("typology",typology)
580 593
                .build().encode();
......
585 598
    public String updateLogoUrl(@RequestParam(value = "id")   String id,
586 599
                                @RequestParam(value = "logoUrl") String logoUrl) {
587 600
        UriComponents uriComponents = UriComponentsBuilder
588
                .fromHttpUrl(baseAddress + "/ds/update/logourl")
601
                .fromHttpUrl(baseAddress + "/ds/logourl")
589 602
                .queryParam("dsId",id)
590 603
                .queryParam("logourl",logoUrl)
591 604
                .build().encode();
modules/uoa-repository-manager-service/src/main/resources/application-context.xml
9 9
	http://www.springframework.org/schema/context/spring-context-4.0.xsd
10 10
	http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">
11 11

  
12
  <!--  <import resource="classpath:META-INF/cxf/cxf.xml"/>
12
    <import resource="classpath:META-INF/cxf/cxf.xml"/>
13 13
    <import resource="classpath:META-INF/cxf/cxf-extension-jaxws.xml"/>
14 14
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>
15 15
    <import resource="classpath*:/cxf.xml"/>
......
23 23
    <import resource="classpath*:/eu/dnetlib/enabling/hcm/springContext-hcmService.xml"/>
24 24
    <import resource="classpath*:/gr/uoa/di/driver/app/springContext-commons.xml"/>
25 25
    <import resource="classpath*:/gr/uoa/di/driver/app/springContext-registrator.xml"/>
26
    <import resource="classpath*:/eu/dnetlib/repos/springContext-repos-dms-cached.xml"/>-->
26
    <import resource="classpath*:/eu/dnetlib/repos/springContext-repos-dms-cached.xml"/>
27 27
    <context:property-placeholder location="classpath*:/eu/**/application.properties" />
28 28
    <tx:annotation-driven transaction-manager="txManager"/>
29 29

  

Also available in: Unified diff