65 lines
2.8 KiB
Java
65 lines
2.8 KiB
Java
package org.gcube.data.access.connector;
|
|
|
|
import org.apache.http.HttpHost;
|
|
import org.apache.http.auth.AuthScope;
|
|
import org.apache.http.auth.UsernamePasswordCredentials;
|
|
import org.apache.http.client.CredentialsProvider;
|
|
import org.apache.http.client.config.RequestConfig;
|
|
import org.apache.http.client.methods.CloseableHttpResponse;
|
|
import org.apache.http.client.methods.HttpGet;
|
|
import org.apache.http.impl.client.BasicCredentialsProvider;
|
|
import org.apache.http.impl.client.CloseableHttpClient;
|
|
import org.apache.http.impl.client.HttpClients;
|
|
import org.apache.http.util.EntityUtils;
|
|
import org.gcube.data.access.connector.rest.entity.AccessibleCredentialsEntity;
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
import net.sf.json.JSONObject;
|
|
|
|
public class TestRest {
|
|
|
|
private static Logger logger = LoggerFactory.getLogger("TestRest");
|
|
|
|
public static void main(String[] args) throws Exception {
|
|
|
|
logger.info("TestRest");
|
|
|
|
String url = "sdi-d-d4s.d4science.org";
|
|
|
|
//http://sdi-d-d4s.d4science.org/sdi-service/gcube/service/GeoNetwork/credentials/geonetwork-sdi.dev.d4science.org?gcube-token=feda0617-cd9d-4841-b6f0-e047da5d32ed-98187548
|
|
|
|
CredentialsProvider credsProvider = new BasicCredentialsProvider();
|
|
credsProvider.setCredentials(new AuthScope("proxy.eng.it", 3128), new UsernamePasswordCredentials("usr", "pass"));
|
|
|
|
CloseableHttpClient httpclient = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build();
|
|
try {
|
|
HttpHost target = new HttpHost(url);
|
|
HttpHost proxy = new HttpHost("proxy.eng.it", 3128);
|
|
|
|
RequestConfig config = RequestConfig.custom().setProxy(proxy).build();
|
|
HttpGet httpget = new HttpGet("/sdi-service/gcube/service/GeoNetwork/credentials/geonetwork-sdi.dev.d4science.org?gcube-token=feda0617-cd9d-4841-b6f0-e047da5d32ed-98187548");
|
|
httpget.setConfig(config);
|
|
|
|
logger.warn("Executing request " + httpget.getRequestLine() + " to " + target + " via " + proxy);
|
|
CloseableHttpResponse response = httpclient.execute(target, httpget);
|
|
try {
|
|
logger.warn("Status Code: "+response.getStatusLine().getStatusCode());
|
|
|
|
String json = EntityUtils.toString(response.getEntity());
|
|
logger.warn("JSON response: \n" + json);
|
|
JSONObject jsonObject = JSONObject.fromObject(json);
|
|
|
|
AccessibleCredentialsEntity ac = (AccessibleCredentialsEntity) JSONObject.toBean(jsonObject, AccessibleCredentialsEntity.class);
|
|
|
|
logger.info("Credentials Entity Username"+ac.getUsername());
|
|
} finally {
|
|
response.close();
|
|
}
|
|
} finally {
|
|
httpclient.close();
|
|
}
|
|
}
|
|
|
|
}
|