Java tutorial
package com.fasterxml.jackson.databind.deser.std; import com.fasterxml.jackson.core.JsonParser; import com.fasterxml.jackson.core.JsonToken; import com.fasterxml.jackson.databind.DeserializationContext; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.annotation.JacksonStdImpl; import com.fasterxml.jackson.databind.jsontype.TypeDeserializer; import com.fasterxml.jackson.databind.util.ObjectBuffer; import java.util.ArrayList; import java.util.LinkedHashMap; @JacksonStdImpl public class UntypedObjectDeserializer extends StdDeserializer<Object> { private static final Object[] NO_OBJECTS = new Object[0]; public UntypedObjectDeserializer() { super(Object.class); } public Object deserialize(JsonParser paramJsonParser, DeserializationContext paramDeserializationContext) { switch (1.$SwitchMap$com$fasterxml$jackson$core$JsonToken[paramJsonParser.getCurrentToken().ordinal()]) { case 2: case 4: default: throw paramDeserializationContext.mappingException(Object.class); case 1: return mapObject(paramJsonParser, paramDeserializationContext); case 3: return mapArray(paramJsonParser, paramDeserializationContext); case 5: return mapObject(paramJsonParser, paramDeserializationContext); case 6: return paramJsonParser.getEmbeddedObject(); case 7: return paramJsonParser.getText(); case 8: if (paramDeserializationContext.isEnabled(DeserializationFeature.USE_BIG_INTEGER_FOR_INTS)) return paramJsonParser.getBigIntegerValue(); return paramJsonParser.getNumberValue(); case 9: if (paramDeserializationContext.isEnabled(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)) return paramJsonParser.getDecimalValue(); return Double.valueOf(paramJsonParser.getDoubleValue()); case 10: return Boolean.TRUE; case 11: return Boolean.FALSE; case 12: } return null; } public Object deserializeWithType(JsonParser paramJsonParser, DeserializationContext paramDeserializationContext, TypeDeserializer paramTypeDeserializer) { JsonToken localJsonToken = paramJsonParser.getCurrentToken(); switch (1.$SwitchMap$com$fasterxml$jackson$core$JsonToken[localJsonToken.ordinal()]) { case 2: case 4: default: throw paramDeserializationContext.mappingException(Object.class); case 1: case 3: case 5: return paramTypeDeserializer.deserializeTypedFromAny(paramJsonParser, paramDeserializationContext); case 7: return paramJsonParser.getText(); case 8: if (paramDeserializationContext.isEnabled(DeserializationFeature.USE_BIG_INTEGER_FOR_INTS)) return paramJsonParser.getBigIntegerValue(); return paramJsonParser.getNumberValue(); case 9: if (paramDeserializationContext.isEnabled(DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS)) return paramJsonParser.getDecimalValue(); return Double.valueOf(paramJsonParser.getDoubleValue()); case 10: return Boolean.TRUE; case 11: return Boolean.FALSE; case 6: return paramJsonParser.getEmbeddedObject(); case 12: } return null; } protected Object mapArray(JsonParser paramJsonParser, DeserializationContext paramDeserializationContext) { if (paramDeserializationContext.isEnabled(DeserializationFeature.USE_JAVA_ARRAY_FOR_JSON_ARRAY)) return mapArrayToArray(paramJsonParser, paramDeserializationContext); if (paramJsonParser.nextToken() == JsonToken.END_ARRAY) return new ArrayList(4); ObjectBuffer localObjectBuffer = paramDeserializationContext.leaseObjectBuffer(); Object[] arrayOfObject1 = localObjectBuffer.resetAndStart(); int i = 0; Object[] arrayOfObject2 = arrayOfObject1; int j = 0; Object localObject = deserialize(paramJsonParser, paramDeserializationContext); j++; if (i >= arrayOfObject2.length) arrayOfObject2 = localObjectBuffer.appendCompletedChunk(arrayOfObject2); for (int k = 0;; k = i) { i = k + 1; arrayOfObject2[k] = localObject; if (paramJsonParser.nextToken() != JsonToken.END_ARRAY) break; ArrayList localArrayList = new ArrayList(1 + (j + (j >> 3))); localObjectBuffer.completeAndClearBuffer(arrayOfObject2, i, localArrayList); return localArrayList; } } protected Object[] mapArrayToArray(JsonParser paramJsonParser, DeserializationContext paramDeserializationContext) { if (paramJsonParser.nextToken() == JsonToken.END_ARRAY) return NO_OBJECTS; ObjectBuffer localObjectBuffer = paramDeserializationContext.leaseObjectBuffer(); Object[] arrayOfObject = localObjectBuffer.resetAndStart(); int i = 0; Object localObject = deserialize(paramJsonParser, paramDeserializationContext); if (i >= arrayOfObject.length) arrayOfObject = localObjectBuffer.appendCompletedChunk(arrayOfObject); for (int j = 0;; j = i) { i = j + 1; arrayOfObject[j] = localObject; if (paramJsonParser.nextToken() != JsonToken.END_ARRAY) break; return localObjectBuffer.completeAndClearBuffer(arrayOfObject, i); } } protected Object mapObject(JsonParser paramJsonParser, DeserializationContext paramDeserializationContext) { JsonToken localJsonToken = paramJsonParser.getCurrentToken(); if (localJsonToken == JsonToken.START_OBJECT) localJsonToken = paramJsonParser.nextToken(); if (localJsonToken != JsonToken.FIELD_NAME) return new LinkedHashMap(4); String str1 = paramJsonParser.getText(); paramJsonParser.nextToken(); Object localObject1 = deserialize(paramJsonParser, paramDeserializationContext); if (paramJsonParser.nextToken() != JsonToken.FIELD_NAME) { LinkedHashMap localLinkedHashMap1 = new LinkedHashMap(4); localLinkedHashMap1.put(str1, localObject1); return localLinkedHashMap1; } String str2 = paramJsonParser.getText(); paramJsonParser.nextToken(); Object localObject2 = deserialize(paramJsonParser, paramDeserializationContext); if (paramJsonParser.nextToken() != JsonToken.FIELD_NAME) { LinkedHashMap localLinkedHashMap2 = new LinkedHashMap(4); localLinkedHashMap2.put(str1, localObject1); localLinkedHashMap2.put(str2, localObject2); return localLinkedHashMap2; } LinkedHashMap localLinkedHashMap3 = new LinkedHashMap(); localLinkedHashMap3.put(str1, localObject1); localLinkedHashMap3.put(str2, localObject2); do { String str3 = paramJsonParser.getText(); paramJsonParser.nextToken(); localLinkedHashMap3.put(str3, deserialize(paramJsonParser, paramDeserializationContext)); } while (paramJsonParser.nextToken() != JsonToken.END_OBJECT); return localLinkedHashMap3; } } /* Location: /Users/dantheman/src/fffffffffattttt/basis/classes_dex2jar.jar * Qualified Name: com.fasterxml.jackson.databind.deser.std.UntypedObjectDeserializer * JD-Core Version: 0.6.2 */