@Medusaa I had a quick skim through your code. Try looking into using try-with-resource code blocks.  
	You're instantiating an HttpClient and never closing it.
 
	Instead of
 
HttpClient httpclient = HttpClients.createDefault();
	Try using the Closable option
 
try (CloseableHttpClient httpclient = HttpClients.createDefault()) {
     // All the other code in here, rather than below your initial HttpClient instantiation
} catch (IOException e) {
  e.printStackTrace();
}