Skip to content

Commit ef4d6bf

Browse files
author
muriloalvesdev
committed
githubUserServiceImpl
1 parent 049cc65 commit ef4d6bf

2 files changed

Lines changed: 42 additions & 0 deletions

File tree

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package br.com.developers.github.http.service.developer;
2+
3+
import javax.validation.constraints.NotNull;
4+
import org.springframework.http.ResponseEntity;
5+
6+
public interface GithubUserService<T> {
7+
ResponseEntity<T> search(@NotNull String qualifier, String sort, String order, int perPage,
8+
int page);
9+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package br.com.developers.github.http.service.developer.impl;
2+
3+
import org.springframework.beans.factory.annotation.Value;
4+
import org.springframework.http.ResponseEntity;
5+
import org.springframework.stereotype.Service;
6+
import org.springframework.web.util.UriComponents;
7+
import br.com.developers.github.http.resource.developer.Developer;
8+
import br.com.developers.github.http.service.developer.GithubUserService;
9+
import br.com.developers.github.http.service.request.Send;
10+
import br.com.developers.github.http.utils.UrlUtils;
11+
import lombok.AccessLevel;
12+
import lombok.AllArgsConstructor;
13+
14+
@AllArgsConstructor(access = AccessLevel.PACKAGE)
15+
@Service
16+
public class GithubUserServiceImpl implements GithubUserService<Developer> {
17+
18+
private Send<Developer> send;
19+
20+
@Value("${github.base.url}")
21+
private String baseUrl;
22+
23+
@Value("${github.search.users}")
24+
private String searchUsers;
25+
26+
public ResponseEntity<Developer> search(String qualifier, String sort, String order, int perPage,
27+
int page) {
28+
UriComponents uri =
29+
UrlUtils.mountUrl(this.baseUrl, this.searchUsers, qualifier, sort, order, perPage, page);
30+
return this.send.sendRequest(uri);
31+
}
32+
33+
}

0 commit comments

Comments
 (0)