Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class ServerConnectionImpl implements ServerConnection {
- private RestTemplate restTemplate;
- private String serverURL = "http://localhost:8080/rest/api";
- private HttpHeaders headers;
- public ServerConnectionImpl() {
- restTemplate = new RestTemplate();
- restTemplate.setMessageConverters(Collections.<HttpMessageConverter<?>>singletonList(new MappingJacksonHttpMessageConverter()));
- }
- @Override
- public UserClient getUser(String login, String password) throws IOException {
- String url = serverURL + "/" + login;
- System.out.println(login + " " + password);
- // UserClient user = restTemplate.getForObject(url, UserClient.class);
- // ObjectMapper mapper = new ObjectMapper();
- // byte[] json = mapper.writeValueAsBytes(user);
- // UserClient userClient = mapper.readValue(json, new TypeReference<UserClient>(){});
- //
- // if (userClient != null && userClient.getPassword().equals(password)) {
- // return userClient;
- // } else {
- // return null;
- // }
- byte[] bytes = (login + ":" + password).getBytes();
- String loginPass = "Basic " + Base64.getEncoder().encodeToString(bytes);
- headers = new HttpHeaders();
- headers.add("Authorization", loginPass); //Login and password like login:password
- HttpEntity<String> request = new HttpEntity<String>(headers);
- try {
- UserClient user = restTemplate.exchange(url, HttpMethod.GET, request, UserClient.class).getBody();
- return user;
- }
- catch (Exception e) {
- return null;
- }
- }
- @Override
- public List<ClassClient> getClasses() throws IOException {
- String url = serverURL + "/classes";
- List<ClassClient> classClientList = restTemplate.getForObject(url, List.class);
- ObjectMapper mapper = new ObjectMapper();
- byte[] json = mapper.writeValueAsBytes(classClientList);
- return mapper.readValue(json, new TypeReference<List<ClassClient>>(){});
- }
- @Override
- public Boolean addClass(String name, String description) {
- String url = serverURL + "/add_class?name=" + name + "&description=" + description;
- headers = new HttpHeaders();
- HttpEntity<String> request = new HttpEntity<String>(headers);
- return restTemplate.exchange(url, HttpMethod.POST, request, Boolean.class).getBody();
- }
- @Override
- public void deleteClass(int id) {
- String url = serverURL + "/classes/delete?id=" + id;
- headers = new HttpHeaders();
- HttpEntity<String> request = new HttpEntity<String>(headers);
- restTemplate.exchange(url, HttpMethod.POST, request, ClassClient.class);
- }
- @Override
- public void editClass(String name, String new_description) {
- String url = serverURL + "/classes/edit?name=" + name + "&description=" + new_description;
- headers = new HttpHeaders();
- HttpEntity<String> request = new HttpEntity<String>(headers);
- restTemplate.exchange(url, HttpMethod.POST, request, ClassClient.class);
- }
- }
Add Comment
Please, Sign In to add comment