package eu.dnetlib.statsapi.controllers;

import eu.dnetlib.statsapi.domain.Result;
import eu.dnetlib.statsapi.repositories.CommunityRepository;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
@CrossOrigin(methods = RequestMethod.GET, origins = "*")
public class CommunityController {
    @Autowired
    private CommunityRepository communityRepository;

    private final Logger log = Logger.getLogger(this.getClass());

    @RequestMapping(value = "/communities/{community}")
    public Result getCommunity(@PathVariable(value = "community") String community) {
        log.info("request for community: " + community);
        return communityRepository.getCommunity(community);
    }

    @RequestMapping(value = "/communities/refresh")
    public Result refreshCommunities() {
        log.info("refreshing communities");
        return communityRepository.refreshCommunities();
    }
}
