Revision 37175
Added by Michele Artini about 9 years ago
InformationServiceClient.java | ||
---|---|---|
117 | 117 |
|
118 | 118 |
return Lists.transform(informationService.searchSql(sql), new Function<String, T>() { |
119 | 119 |
|
120 |
@SuppressWarnings("unchecked") |
|
120 | 121 |
@Override |
121 | 122 |
public T apply(final String s) { |
122 | 123 |
if (clazz == String.class) { |
123 | 124 |
final Map<String, T> map = gson.fromJson(s, new TypeToken<Map<String, T>>() {}.getType()); |
124 | 125 |
return Iterables.getOnlyElement(map.values()); |
125 |
} else if (clazz == Map.class) { |
|
126 |
return gson.fromJson(s, new TypeToken<Map<String, Object>>() {}.getType()); |
|
126 |
} |
|
127 |
final Map<String, Object> map = gson.fromJson(s, new TypeToken<Map<String, Object>>() {}.getType()); |
|
128 |
|
|
129 |
if (clazz == Map.class) { |
|
130 |
return (T) map; |
|
127 | 131 |
} else { |
128 |
return gson.fromJson(s, clazz);
|
|
132 |
return gson.fromJson((String) Iterables.getOnlyElement(map.values()), clazz);
|
|
129 | 133 |
} |
130 | 134 |
} |
131 | 135 |
}); |
132 | 136 |
} |
133 |
|
|
134 | 137 |
} |
Also available in: Unified diff
fix