in streams-contrib/streams-provider-instagram/src/main/java/org/apache/streams/instagram/api/Instagram.java [188:225]
public RecentMediaResponse selfMediaRecent(SelfRecentMediaRequest parameters) {
try {
// TODO: use juneau @Remotable
// Users restUsers = restClient.getRemoteableProxy("/users", Users.class);
// RecentMediaResponse result = restUsers.selfMediaRecent(parameters);
// return result;
URIBuilder uriBuilder = new URIBuilder()
.setPath("/users/self/media/recent");
uriBuilder.addParameter("access_token", configuration.getOauth().getAccessToken());
if ( Objects.nonNull(parameters.getCount()) && StringUtils.isNotBlank(parameters.getCount().toString())) {
uriBuilder.addParameter("count", parameters.getCount().toString());
}
if ( Objects.nonNull(parameters.getMaxId()) && StringUtils.isNotBlank(parameters.getMaxId().toString())) {
uriBuilder.addParameter("max_id", parameters.getMaxId().toString());
}
if ( Objects.nonNull(parameters.getMinId()) && StringUtils.isNotBlank(parameters.getMinId().toString())) {
uriBuilder.addParameter("min", parameters.getMinId().toString());
}
String sig = oauthSigner.generateSignature(uriBuilder.build().toString());
uriBuilder.addParameter("sig", sig);
RestRequest restCall = restClient.get(uriBuilder.build().toString());
try {
String restResponseEntity = restCall
.getResponseAsString();
RecentMediaResponse result = mapper.readValue(restResponseEntity, RecentMediaResponse.class);
return result;
} catch (RestCallException ex) {
LOGGER.warn("RestCallException", ex);
}
} catch (IOException ex) {
LOGGER.warn("IOException", ex);
} catch (URISyntaxException ex) {
LOGGER.warn("URISyntaxException", ex);
} catch (Exception ex) {
LOGGER.warn("Exception", ex);
}
return null;
}