Implemented FacebookErrorHandler to handle facebook-error-codes
[facebook-utils] / src / main / java / de / juplo / facebook / GraphApiExceptionJackson1Serializer.java
1 package de.juplo.facebook;
2
3 import java.io.IOException;
4 import java.util.Map.Entry;
5 import org.codehaus.jackson.JsonGenerator;
6 import org.codehaus.jackson.JsonProcessingException;
7 import org.codehaus.jackson.map.JsonSerializer;
8 import org.codehaus.jackson.map.SerializerProvider;
9
10 /**
11  * @author Dave Syer
12  *
13  */
14 public class GraphApiExceptionJackson1Serializer extends JsonSerializer<GraphApiException> {
15
16         @Override
17         public void serialize(GraphApiException value, JsonGenerator jgen, SerializerProvider provider) throws IOException,
18                         JsonProcessingException {
19         jgen.writeStartObject();
20                 jgen.writeStringField("error", value.getOAuth2ErrorCode());
21                 jgen.writeStringField("error_description", value.getMessage());
22                 if (value.getAdditionalInformation()!=null) {
23                         for (Entry<String, String> entry : value.getAdditionalInformation().entrySet()) {
24                                 String key = entry.getKey();
25                                 String add = entry.getValue();
26                                 jgen.writeStringField(key, add);                                
27                         }
28                 }
29         jgen.writeEndObject();
30         }
31
32 }