Newer
Older
tampopo-server-dtram / src / main / java / org / example / tampoposerverdtram / resources / Friends.java
package org.example.tampoposerverdtram.resources;

import java.util.*;
import jakarta.ws.rs.*;
import jakarta.ws.rs.client.*;
import jakarta.ws.rs.core.*;
import org.springframework.stereotype.Component;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.core.JsonProcessingException;

@Path("/friends")
@Component
public class Friends {
	private Pairs pairs = new Pairs();
	private Client client = ClientBuilder.newClient();
	private Map<String, Map<String, String>> users;
	@Produces(MediaType.APPLICATION_JSON)
	@GET
	public Map<String, Object> getValue() {
		Map temp_nil9 = new HashMap<>();
		temp_nil9.put("users",this.getUsers());
		temp_nil9.put("pairs",this.pairs.getValue());
		return temp_nil9;
	}
	public Pairs getPairs() {
		return this.pairs;
	}
	@Path("/pairs")
	@DELETE
	public void updateFromDeletedFriendPair(@FormParam("deletedFriendPair") Map<String, Object> deletedFriendPair) {
		getPairs().updateFromDeletedFriendPair(deletedFriendPair);
	}
	@Path("/pairs")
	@Produces(MediaType.APPLICATION_JSON)
	@GET
	public Map<String, Pair> getPairsValue() {
		return getPairs().getValue();
	}
	@Path("/pairs")
	@POST
	public void postFriend(@FormParam("user1Id") String user1Id, @FormParam("user0Id") String user0Id) {
		getPairs().postFriend(user1Id, userDB, id, user0Id);
	}
	@Path("/pairs/{pid}")
	@Produces(MediaType.APPLICATION_JSON)
	@GET
	public Map<String, Object> getPairValue(@PathParam("pid") String pid) {
		return getPairs().getPair(pid).getValue();
	}
	public void updateUsersFromDeletedFriendPair(Map<String, Object> deletedFriendPair) {
		Map<String, Map<String, String>> temp_if26;
		if ((this.users.get(deletedFriendPair.get("user0Id")).containsKey(deletedFriendPair.get("pairId"))&&this.users.get(deletePair.get("user1Id")).containsKey(deletedFriendPair.get("pairId")))) {
			this.users.remove(deletedFriendPair.get("user0Id"));
		this.users.get(deletedFriendPair.get("user0Id")).remove(deletedFriendPair.get("pairId"));
		this.users.put(deletedFriendPair.get("user0Id"),this.users.get(deletedFriendPair.get("user0Id")));
		this.users.remove(deletePair.get("user1Id"));
		this.users.get(deletePair.get("user1Id")).remove(deletedFriendPair.get("pairId"));
		this.users.put(deletePair.get("user1Id"),this.users.get(deletePair.get("user1Id")));
			temp_if26 = this.users;
		} else {
			temp_if26 = this.users;
		}this.users = temp_if26;
	}
	@Path("/users")
	@POST
	public void updateUsersFromDeletedFriendPair(@FormParam("deletedFriendPair") Map<String, Object> deletedFriendPair) {
		this.updateUsersFromDeletedFriendPair(deletedFriendPair);
	}
	public void updateUsersFromPair(String pid, Map<String, Object> pair) {
		Map<String, Map<String, String>> temp_if29;
		if ((this.users.containsKey(pair.get("user0Id"))&&this.users.containsKey(pair.get("user1Id")))) {
			this.users.remove(pair.get("user0Id"));
		this.users.get(pair.get("user0Id")).put(pid,pair.get("user1Id"));
		this.users.put(pair.get("user0Id"),this.users.get(pair.get("user0Id")));
		this.users.remove(pair.get("user1Id"));
		this.users.get(pair.get("user1Id")).put(pid,pair.get("user0Id"));
		this.users.put(pair.get("user1Id"),this.users.get(pair.get("user1Id")));
			temp_if29 = this.users;
		} else {
			Map<String, Map<String, String>> temp_if28;
		if (this.users.containsKey(pair.get("user0Id"))) {
			this.users.remove(pair.get("user0Id"));
		this.users.get(pair.get("user0Id")).put(pid,pair.get("user1Id"));
		this.users.put(pair.get("user0Id"),this.users.get(pair.get("user0Id")));
		Map<String, String> temp_nil13 = new HashMap<String, String>();
		temp_nil13.put(pid,pair.get("user0Id"));
		this.users.put(pair.get("user1Id"),temp_nil13);
			temp_if28 = this.users;
		} else {
			Map<String, Map<String, String>> temp_if27;
		if (this.users.containsKey(pair.get("user1Id"))) {
			Map<String, String> temp_nil14 = new HashMap<String, String>();
		temp_nil14.put(pid,pair.get("user1Id"));
		this.users.put(pair.get("user0Id"),temp_nil14);
		this.users.remove(pair.get("user1Id"));
		this.users.get(pair.get("user1Id")).put(pid,pair.get("user0Id"));
		this.users.put(pair.get("user1Id"),this.users.get(pair.get("user1Id")));
			temp_if27 = this.users;
		} else {
			Map<String, String> temp_nil15 = new HashMap<String, String>();
		temp_nil15.put(pid,pair.get("user1Id"));
		this.users.put(pair.get("user0Id"),temp_nil15);
		Map<String, String> temp_nil16 = new HashMap<String, String>();
		temp_nil16.put(pid,pair.get("user0Id"));
		this.users.put(pair.get("user1Id"),temp_nil16);
			temp_if27 = this.users;
		}
			temp_if28 = temp_if27;
		}
			temp_if29 = temp_if28;
		}this.users = temp_if29;
	}
	public Map<String, Map<String, String>> getUsers() {
		return this.users;
	}
	@Path("/users")
	@Produces(MediaType.APPLICATION_JSON)
	@GET
	public Map<String, Map<String, String>> getUsersValue() {
		return getUsers();
	}
	public Friends(Map<String, Map<String, String>> users) {
		this.users = users;
	}
}