
com.googlecode.googleplus.impl.ActivityOperationsImpl Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of google-plus-java-api Show documentation
Show all versions of google-plus-java-api Show documentation
A Java client for the Google+ API
The newest version!
package com.googlecode.googleplus.impl;
import java.util.Map;
import org.springframework.util.Assert;
import org.springframework.web.client.RestTemplate;
import com.googlecode.googleplus.ActivityOperations;
import com.googlecode.googleplus.GooglePlusConstants;
import com.googlecode.googleplus.Paging;
import com.googlecode.googleplus.PlusUtils;
import com.googlecode.googleplus.model.OrderBy;
import com.googlecode.googleplus.model.activity.Activity;
import com.googlecode.googleplus.model.activity.ActivityCollection;
import com.googlecode.googleplus.model.activity.ActivityFeed;
public class ActivityOperationsImpl implements ActivityOperations {
private static final String LIST_URL = GooglePlusConstants.API_URL_ROOT + "/people/{userId}/activities/{collection}";
private static final String GET_URL = GooglePlusConstants.API_URL_ROOT + "/activities/{activityId}";
private static final String SEARCH_URL = GooglePlusConstants.API_URL_ROOT + "/activities";
private RestTemplate restTemplate;
public ActivityOperationsImpl(RestTemplate restTemplate) {
this.restTemplate = restTemplate;
}
public ActivityFeed list(String userId, ActivityCollection collection, Paging paging) {
Assert.notNull(userId);
Assert.notNull(collection);
// TODO when google add more representations, configure the "alt" parameter
Map params = PlusUtils.createParamMap(paging);
return restTemplate.getForObject(PlusUtils.addParameters(LIST_URL, params), ActivityFeed.class, userId, collection.getCollectionName());
}
public ActivityFeed list(String userId, ActivityCollection collection) {
return list(userId, collection, null);
}
public Activity get(String activityId) {
return restTemplate.getForObject(GET_URL, Activity.class, activityId);
}
public ActivityFeed search(String query, OrderBy orderBy) {
return search(query, orderBy, null);
}
public ActivityFeed search(String query, OrderBy orderBy, Paging paging) {
Map params = PlusUtils.createParamMap(paging);
if (orderBy != null) {
params.put("orderBy", orderBy.getOrderBy());
}
if (query != null) {
params.put("query", query);
}
return restTemplate.getForObject(PlusUtils.addParameters(SEARCH_URL, params), ActivityFeed.class);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy