TelegramBots/src/main/java/org/telegram/telegrambots/api/methods/GetMe.java

60 lines
1.7 KiB
Java

package org.telegram.telegrambots.api.methods;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.jsontype.TypeSerializer;
import org.json.JSONObject;
import org.telegram.telegrambots.Constants;
import org.telegram.telegrambots.api.objects.User;
import org.telegram.telegrambots.exceptions.TelegramApiValidationException;
import java.io.IOException;
/**
* @author Ruben Bermudez
* @version 1.0
* @brief A simple method for testing your bot's auth token. Requires no parameters.
* Returns basic information about the bot in form of a User object
* @date 20 of June of 2015
*/
public class GetMe extends BotApiMethod<User> {
public static final String PATH = "getme";
@Override
public JSONObject toJson() {
return new JSONObject();
}
@Override
public String getPath() {
return PATH;
}
@Override
public User deserializeResponse(JSONObject answer) {
if (answer.getBoolean(Constants.RESPONSEFIELDOK)) {
return new User(answer.getJSONObject(Constants.RESPONSEFIELDRESULT));
}
return null;
}
@Override
public void validate() throws TelegramApiValidationException {
}
@Override
public void serialize(JsonGenerator gen, SerializerProvider serializers) throws IOException {
gen.writeStartObject();
gen.writeStringField(METHOD_FIELD, PATH);
gen.writeEndObject();
}
@Override
public void serializeWithType(JsonGenerator gen, SerializerProvider serializers, TypeSerializer typeSer) throws IOException {
serialize(gen, serializers);
}
}