social-service-client/src/main/java/org/gcube/portal/social_networking_client_li.../MessagesClient.java

71 lines
2.1 KiB
Java
Raw Normal View History

package org.gcube.portal.social_networking_client_library;
import java.util.ArrayList;
import java.util.List;
import org.apache.commons.lang.Validate;
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
import org.gcube.common.homelibrary.home.workspace.sharing.WorkspaceMessage;
import org.gcube.portal.social_networking_client_library.utils.HttpClient;
import org.gcube.portal.socialnetworking.model.input.MessageInputBean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Messages client.
* @author Costantino Perciante at ISTI-CNR (costantino.perciante@isti.cnr.it)
*/
public class MessagesClient extends BaseClient{
private static final String SUB_SERVICE_PATH = "2/messages/";
private static Logger logger = LoggerFactory.getLogger(MessagesClient.class);
public MessagesClient() throws Exception {
super(SUB_SERVICE_PATH);
}
/**
* Get sent messages
* @return
*/
@SuppressWarnings("unchecked")
public List<WorkspaceMessage> getSentMessages(){
logger.debug("Request for sent messages");
String thisMethodSignature = "get-sent-messages";
String request = getServiceEndpoint() + thisMethodSignature + "?";
return HttpClient.get(new ArrayList<WorkspaceMessage>(0).getClass(), request, SecurityTokenProvider.instance.get());
}
/**
* Get received messages
* @return
*/
@SuppressWarnings("unchecked")
public List<WorkspaceMessage> getReceivedMessages(){
logger.debug("Request for received messages");
String thisMethodSignature = "get-received-messages";
String request = getServiceEndpoint() + thisMethodSignature + "?";
return HttpClient.get(new ArrayList<WorkspaceMessage>(0).getClass(), request, SecurityTokenProvider.instance.get());
}
/**
* Write message
* @return message id
*/
public String writeMessage(MessageInputBean m){
Validate.isTrue(m != null, "Message cannot be null");
logger.debug("Request for writing new message");
String thisMethodSignature = "write-message";
String request = getServiceEndpoint() + thisMethodSignature + "?";
return HttpClient.post(String.class, request, SecurityTokenProvider.instance.get(), m);
}
}