package com.alkor.vph.tasks;
import com.alkor.vph.vk.VKConnector;
import com.alkor.vph.vk.entities.*;
import java.io.IOException;
/**
* Author: akorobitsyn
* Date: 08.07.13
* Time: 15:59
*/
public class GroupWallPostTask implements VKBotTask {
private VKConnector vkConnector;
private Group group;
private Post post;
public GroupWallPostTask(VKConnector vkConnector, Group group, Post post) {
this.vkConnector = vkConnector;
this.group = group;
this.post = post;
}
@Override
public String getTaskId() {
return "group-" + String.valueOf(group.getGid());
}
@Override
public MethodResult post(Captcha captcha, String token) throws IOException, InterruptedException {
if (!group.isMember()) {
vkConnector.joinGroup(group.getGid(), token);
}
WallPostResult wallPostResult = vkConnector.wallPost(-group.getGid(), post, captcha, token);
if (wallPostResult.getPostId() == -13) {
wallPostResult.setSuccess(false);
wallPostResult.setErrorCode(5);
wallPostResult.setMessage("PostId = -13");
}
return wallPostResult.getMethodResult();
}
@Override
public boolean shouldBeSkipped() {
return group.isClosed() && !group.isMember();
}
@Override
public String toString() {
return "GroupWallPostTask{" +
"vkConnector=" + vkConnector +
", group=" + group +
", post=" + post +
'}';
}
}