use of com.fanap.podchat.chat.assistant.request_model.BlockUnblockAssistantRequest in project pod-chat-android-sdk by FanapSoft.
the class ChatActivity method unBlockAssistant.
public void unBlockAssistant() {
Invitee invite = new Invitee("63256", InviteType.Constants.TO_BE_USER_CONTACT_ID);
List<AssistantVo> assistantVos = new ArrayList<>();
AssistantVo assistantVo = new AssistantVo();
assistantVo.setInvitees(invite);
assistantVos.add(assistantVo);
BlockUnblockAssistantRequest request = new BlockUnblockAssistantRequest.Builder(assistantVos, true).build();
presenter.unBlockAssistant(request);
}
use of com.fanap.podchat.chat.assistant.request_model.BlockUnblockAssistantRequest in project pod-chat-android-sdk by FanapSoft.
the class AssistantCacheTest method blockAssistantAndCheckCache.
@Test
public void blockAssistantAndCheckCache() {
populateContactsFromServer();
List<AssistantVo> assistantVos = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onGetAssistants(ChatResponse<List<AssistantVo>> response) {
if (!response.isCache()) {
prettyLog(response.getJson());
assistantVos.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
}
});
GetAssistantRequest request = new GetAssistantRequest.Builder().setCount(25).withNoCache().setOffset(0).build();
chat.getAssistants(request);
pauseProcess();
// the block assistant method accepts only Invitee
Collections.shuffle(assistantVos);
List<AssistantVo> notBlockedAssistants = assistantVos.stream().filter(assistantVo -> !assistantVo.getBlock()).collect(Collectors.toList());
Contact assistantContactToBlock = contacts.stream().filter(contact -> contact.getLinkedUser() != null && Objects.equals(contact.getLinkedUser().getUsername(), notBlockedAssistants.get(0).getParticipantVO().getUsername())).findFirst().get();
print("Going to block " + assistantContactToBlock.getFirstName());
prettyLog(App.getGson().toJson(assistantContactToBlock));
Invitee invitee = new Invitee(assistantContactToBlock.getId(), InviteType.Constants.TO_BE_USER_CONTACT_ID);
AssistantVo assistantToBlock = new AssistantVo();
assistantToBlock.setInvitees(invitee);
List<AssistantVo> toBlockAssistantList = new ArrayList<>();
toBlockAssistantList.add(assistantToBlock);
chat.addListener(new ChatListener() {
@Override
public void onAssistantBlocked(ChatResponse<List<AssistantVo>> response) {
prettyLog(response.getJson());
toBlockAssistantList.clear();
toBlockAssistantList.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
});
BlockUnblockAssistantRequest requestBlock = new BlockUnblockAssistantRequest.Builder(toBlockAssistantList, true).build();
chat.blockAssistant(requestBlock);
pauseProcess();
ArrayList<AssistantVo> inCache = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onGetAssistants(ChatResponse<List<AssistantVo>> response) {
if (response.isCache()) {
prettyLog(response.getJson());
inCache.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
}
});
GetAssistantRequest requestGetAssistantFromCache = new GetAssistantRequest.Builder().setCount(25).setOffset(0).build();
chat.getAssistants(requestGetAssistantFromCache);
pauseProcess();
assert inCache.size() > 0;
Assert.assertTrue(inCache.stream().filter(anAssistantInCache -> toBlockAssistantList.stream().anyMatch(blockListAssistant -> anAssistantInCache.getParticipantVO().getId() == blockListAssistant.getParticipantVO().getId())).findFirst().get().getBlock());
}
use of com.fanap.podchat.chat.assistant.request_model.BlockUnblockAssistantRequest in project pod-chat-android-sdk by FanapSoft.
the class ChatActivity method blockAssistant.
public void blockAssistant() {
Invitee invite = new Invitee("63256", InviteType.Constants.TO_BE_USER_CONTACT_ID);
List<AssistantVo> assistantVos = new ArrayList<>();
AssistantVo assistantVo = new AssistantVo();
assistantVo.setInvitees(invite);
assistantVos.add(assistantVo);
BlockUnblockAssistantRequest request = new BlockUnblockAssistantRequest.Builder(assistantVos, false).build();
presenter.blockAssistant(request);
}
use of com.fanap.podchat.chat.assistant.request_model.BlockUnblockAssistantRequest in project pod-chat-android-sdk by FanapSoft.
the class AssistantCacheTest method unBlockAssistantAndCheckAssistantListInCache.
@Test
public void unBlockAssistantAndCheckAssistantListInCache() {
populateContactsFromServer();
ArrayList<AssistantVo> blockedListFromServer = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onAssistantBlocks(ChatResponse<List<AssistantVo>> response) {
print("Blocked assistants list cache: " + response.isCache());
prettyLog(response.getJson());
blockedListFromServer.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
});
GetBlockedAssistantsRequest getBlockedAssistantsRequest = new GetBlockedAssistantsRequest.Builder().withNoCache().build();
chat.getBlocksAssistant(getBlockedAssistantsRequest);
pauseProcess();
Contact assistantContactToUnBlock = contacts.stream().filter(contact -> contact.getLinkedUser() != null && Objects.equals(contact.getLinkedUser().getUsername(), blockedListFromServer.get(0).getParticipantVO().getUsername())).findFirst().get();
print("Going to unblock " + assistantContactToUnBlock.getFirstName());
prettyLog(App.getGson().toJson(assistantContactToUnBlock));
Invitee invitee = new Invitee(assistantContactToUnBlock.getId(), InviteType.Constants.TO_BE_USER_CONTACT_ID);
AssistantVo assistantToUnBlock = new AssistantVo();
assistantToUnBlock.setInvitees(invitee);
List<AssistantVo> toUnBlockAssistantList = new ArrayList<>();
toUnBlockAssistantList.add(assistantToUnBlock);
chat.addListener(new ChatListener() {
@Override
public void onAssistantUnBlocked(ChatResponse<List<AssistantVo>> response) {
print("Assistant unblocked");
prettyLog(response.getJson());
toUnBlockAssistantList.clear();
toUnBlockAssistantList.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
});
ChatListener mMockedListener = Mockito.mock(ChatListener.class);
chat.addListener(mMockedListener);
BlockUnblockAssistantRequest requestBlock = new BlockUnblockAssistantRequest.Builder(toUnBlockAssistantList, false).build();
chat.unBlockAssistant(requestBlock);
pauseProcess();
ArrayList<AssistantVo> assistantListInCache = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onGetAssistants(ChatResponse<List<AssistantVo>> response) {
print("Receive assistants list cache: " + response.isCache());
prettyLog(response.getJson());
if (response.isCache()) {
assistantListInCache.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
}
});
GetAssistantRequest getAssistantRequest = new GetAssistantRequest.Builder().build();
chat.getAssistants(getAssistantRequest);
pauseProcess();
Assert.assertTrue(assistantListInCache.stream().anyMatch(assistantInCache -> assistantInCache.getParticipantVO().getId() == toUnBlockAssistantList.get(0).getParticipantVO().getId() && !assistantInCache.getBlock()));
}
use of com.fanap.podchat.chat.assistant.request_model.BlockUnblockAssistantRequest in project pod-chat-android-sdk by FanapSoft.
the class AssistantCacheTest method unBlockAssistantAndCheckBlockListInCache.
@Test
public void unBlockAssistantAndCheckBlockListInCache() {
populateContactsFromServer();
ArrayList<AssistantVo> blockedListFromServer = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onAssistantBlocks(ChatResponse<List<AssistantVo>> response) {
print("Blocked assistants list cache: " + response.isCache());
prettyLog(response.getJson());
blockedListFromServer.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
});
GetBlockedAssistantsRequest getBlockedAssistantsRequest = new GetBlockedAssistantsRequest.Builder().withNoCache().build();
chat.getBlocksAssistant(getBlockedAssistantsRequest);
pauseProcess();
Contact assistantContactToUnBlock = contacts.stream().filter(contact -> contact.getLinkedUser() != null && Objects.equals(contact.getLinkedUser().getUsername(), blockedListFromServer.get(0).getParticipantVO().getUsername())).findFirst().get();
print("Going to unblock " + assistantContactToUnBlock.getFirstName());
prettyLog(App.getGson().toJson(assistantContactToUnBlock));
Invitee invitee = new Invitee(assistantContactToUnBlock.getId(), InviteType.Constants.TO_BE_USER_CONTACT_ID);
AssistantVo assistantToUnBlock = new AssistantVo();
assistantToUnBlock.setInvitees(invitee);
List<AssistantVo> toUnBlockAssistantList = new ArrayList<>();
toUnBlockAssistantList.add(assistantToUnBlock);
chat.addListener(new ChatListener() {
@Override
public void onAssistantUnBlocked(ChatResponse<List<AssistantVo>> response) {
print("Assistant unblocked");
prettyLog(response.getJson());
toUnBlockAssistantList.clear();
toUnBlockAssistantList.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
});
ChatListener mMockedListener = Mockito.mock(ChatListener.class);
chat.addListener(mMockedListener);
BlockUnblockAssistantRequest requestBlock = new BlockUnblockAssistantRequest.Builder(toUnBlockAssistantList, false).build();
chat.unBlockAssistant(requestBlock);
pauseProcess();
ArrayList<AssistantVo> blockedListInCache = new ArrayList<>();
chat.addListener(new ChatListener() {
@Override
public void onAssistantBlocks(ChatResponse<List<AssistantVo>> response) {
print("Blocked assistants list cache: " + response.isCache());
prettyLog(response.getJson());
if (response.isCache()) {
blockedListInCache.addAll(response.getResult());
chat.removeListener(this);
resumeProcess();
}
}
});
GetBlockedAssistantsRequest getBlockedAssistantsRequest2 = new GetBlockedAssistantsRequest.Builder().build();
chat.getBlocksAssistant(getBlockedAssistantsRequest2);
pauseProcess();
Assert.assertTrue(blockedListInCache.stream().noneMatch(assistantVo -> assistantVo.getParticipantVO().getId() == toUnBlockAssistantList.get(0).getParticipantVO().getId()));
}
Aggregations