public <T> TypeAdapter<T> create(Gson gson,Typetoken<T> typetoken) {
Type type = typetoken.getType();
Class<? super T> rawType = typetoken.getRawType();
if (!Map.class.isAssignableFrom(rawType)) {
return null;
}
Class<?> rawTypeOfSrc = $Gson$Types.getRawType(type);
Type[] keyAndValueTypes = $Gson$Types.getMapKeyAndValueTypes(type,rawTypeOfSrc);
TypeAdapter<?> keyAdapter = getKeyAdapter(gson,keyAndValueTypes[0]);
TypeAdapter<?> valueAdapter = gson.getAdapter(Typetoken.get(keyAndValueTypes[1]));
ObjectConstructor<T> constructor = constructorConstructor.get(typetoken);
@SuppressWarnings({"unchecked","rawtypes"})
// we don't define a type parameter for the key or value types
TypeAdapter<T> result = new Adapter(gson,keyAndValueTypes[0],keyAdapter,keyAndValueTypes[1],valueAdapter,constructor);
return result;
}
public <T> TypeAdapter<T> create(Gson gson,Typetoken<T> typetoken) {
Type type = typetoken.getType();
Class<? super T> rawType = typetoken.getRawType();
if (!Collection.class.isAssignableFrom(rawType)) {
return null;
}
Type elementType = $Gson$Types.getCollectionElementType(type,rawType);
TypeAdapter<?> elementTypeAdapter = gson.getAdapter(Typetoken.get(elementType));
ObjectConstructor<T> constructor = constructorConstructor.get(typetoken);
@SuppressWarnings({"unchecked","rawtypes"}) // create() doesn't define a type parameter
TypeAdapter<T> result = new Adapter(gson,elementType,elementTypeAdapter,constructor);
return result;
}
项目:lams
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:lams
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:MyJojoXUtils
文件:MapTypeAdapterFactory.java
@Override public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:MyJojoXUtils
文件:CollectionTypeAdapterFactory.java
@Override
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:SteamLib
文件:MapTypeAdapterFactory.java
@Override public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:SteamLib
文件:CollectionTypeAdapterFactory.java
@Override
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:1797-2017
文件:MapTypeAdapterFactory.java
@Override public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:1797-2017
文件:CollectionTypeAdapterFactory.java
@Override
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:urmusic-desktop
文件:MapTypeAdapterFactory.java
@Override public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:urmusic-desktop
文件:CollectionTypeAdapterFactory.java
@Override
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:android-http-lib-based-on-volley
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:android-http-lib-based-on-volley
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:reflect-app
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:reflect-app
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:androidsummary
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:androidsummary
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:Edge-Node
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:Edge-Node
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:salt-netapi-client
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,Typetoken<T> typetoken) {
Type type = typetoken.getType();
Class<? super T> rawType = typetoken.getRawType();
if (!Collection.class.isAssignableFrom(rawType)) {
return null;
}
Type elementType = $Gson$Types.getCollectionElementType(type,rawType);
TypeAdapter<?> elementTypeAdapter = gson.getAdapter(Typetoken.get(elementType));
ObjectConstructor<T> constructor = constructorConstructor.get(typetoken);
@SuppressWarnings({ "unchecked","rawtypes" })
TypeAdapter<T> result = new Adapter(elementTypeAdapter,constructor);
return result;
}
项目:BungeeSigns
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:BungeeSigns
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:multicraft-api
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:multicraft-api
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:StaticMC
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:StaticMC
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:gson
文件:MapTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
项目:gson
文件:CollectionTypeAdapterFactory.java
public <T> TypeAdapter<T> create(Gson gson,constructor);
return result;
}
public Adapter(Gson context,Type keyType,TypeAdapter<K> keyTypeAdapter,Type valueType,TypeAdapter<V> valueTypeAdapter,ObjectConstructor<? extends Map<K,V>> constructor) {
this.keyTypeAdapter =
new TypeAdapterRuntimeTypeWrapper<K>(context,keyTypeAdapter,keyType);
this.valueTypeAdapter =
new TypeAdapterRuntimeTypeWrapper<V>(context,valueTypeAdapter,valueType);
this.constructor = constructor;
}
public Adapter(Gson context,Type elementType,TypeAdapter<E> elementTypeAdapter,ObjectConstructor<? extends Collection<E>> constructor) {
this.elementTypeAdapter =
new TypeAdapterRuntimeTypeWrapper<E>(context,elementType);
this.constructor = constructor;
}
public <T> TypeAdapter<T> create(Gson gson,final Typetoken<T> type) {
Class<? super T> raw = type.getRawType();
if (!Object.class.isAssignableFrom(raw)) {
return null; // it's a primitive!
}
ObjectConstructor<T> constructor = constructorConstructor.get(type);
return new Adapter<T>(constructor,getBoundFields(gson,type,raw));
}
项目:lams
文件:MapTypeAdapterFactory.java
public Adapter(Gson context,valueType);
this.constructor = constructor;
}
项目:lams
文件:CollectionTypeAdapterFactory.java
public Adapter(Gson context,elementType);
this.constructor = constructor;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。