Updated Branches: refs/heads/JCLOUDS-427-1.6.x 30dfdab77 -> 47a6fa967
Doh! Fixup... Project: http://git-wip-us.apache.org/repos/asf/jclouds/repo Commit: http://git-wip-us.apache.org/repos/asf/jclouds/commit/47a6fa96 Tree: http://git-wip-us.apache.org/repos/asf/jclouds/tree/47a6fa96 Diff: http://git-wip-us.apache.org/repos/asf/jclouds/diff/47a6fa96 Branch: refs/heads/JCLOUDS-427-1.6.x Commit: 47a6fa967d3e26aa97c5af517c9b5cec21266f89 Parents: 30dfdab Author: Andrew Phillips <[email protected]> Authored: Fri Jan 24 15:19:02 2014 -0500 Committer: Andrew Phillips <[email protected]> Committed: Fri Jan 24 15:19:02 2014 -0500 ---------------------------------------------------------------------- core/src/main/java/org/jclouds/util/TypeToken2.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/jclouds/blob/47a6fa96/core/src/main/java/org/jclouds/util/TypeToken2.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/org/jclouds/util/TypeToken2.java b/core/src/main/java/org/jclouds/util/TypeToken2.java index d63ea0e..16a2f7d 100644 --- a/core/src/main/java/org/jclouds/util/TypeToken2.java +++ b/core/src/main/java/org/jclouds/util/TypeToken2.java @@ -73,15 +73,20 @@ public class TypeToken2<T> extends TypeToken<T> { } catch (NoSuchFieldException exception) { // should never happen throw new IllegalStateException(exception); + } catch (NoSuchMethodException exception) { + // should never happen + throw new IllegalStateException(exception); } return (TypeToken<T>) TypeToken.of(resolvedType); } - private static Object newTypeResolver() throws SecurityException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException { - TypeToken<?> anyToken = TypeToken.of(Object.class); + private static Object newTypeResolver() throws SecurityException, NoSuchFieldException, + IllegalArgumentException, IllegalAccessException, InvocationTargetException, + NoSuchMethodException { Field typeResolverField = TypeToken.class.getDeclaredField("typeResolver"); - typeResolverField.setAccessible(true); - return typeResolverField.get(anyToken).getClass(); + Invokable<?, ?> typeResolverContrucutor = + Invokable.from(typeResolverField.getType().getConstructor()); + return typeResolverContrucutor.invoke(null); } public <X, Y> TypeToken<T> where(TypeParameter2<X> typeParam1, Class<X> typeArg1,
