private static <E>List<TypeAdapter> buildKnownAdapters(){
  List<TypeAdapter> result=Lists.newArrayList();
  result.add(new TypeAdapter(CollapseDataWrapper.class,new CollapseDataWrapperAdapter<E>()));
  result.add(new TypeAdapter(CollapseTreeRoot.class,new CollapseTreeRootAdapter<E>()));
  result.add(new TypeAdapter(HierarchyRoot.class,new HierarchyRootAdapter()));
  result.add(new TypeAdapter(NodeWrapper.class,new NodeWrapperAdapter<E>()));
  result.add(new TypeAdapter(NodeWrapperRoot.class,new NodeWrapperRootAdapter<E>()));
  result.add(new TypeAdapter(SolitaryRoot.class,new SolitaryRootAdapter()));
  result.add(new TypeAdapter(ViewerRoot.class,new ViewerRootAdapter()));
  return result;
}

private static < E > List < TypeAdapter > buildKnownAdapters ( ) { List < TypeAdapter > result = Lists . newArrayList ( ) ; result . add ( new TypeAdapter ( CollapseDataWrapper . class , new CollapseDataWrapperAdapter < E > ( ) ) ) ; result . add ( new TypeAdapter ( CollapseTreeRoot . class , new CollapseTreeRootAdapter < E > ( ) ) ) ; result . add ( new TypeAdapter ( HierarchyRoot . class , new HierarchyRootAdapter ( ) ) ) ; result . add ( new TypeAdapter ( NodeWrapper . class , new NodeWrapperAdapter < E > ( ) ) ) ; result . add ( new TypeAdapter ( NodeWrapperRoot . class , new NodeWrapperRootAdapter < E > ( ) ) ) ; result . add ( new TypeAdapter ( SolitaryRoot . class , new SolitaryRootAdapter ( ) ) ) ; result . add ( new TypeAdapter ( ViewerRoot . class , new ViewerRootAdapter ( ) ) ) ; return result ; }
build the list of know adapter types at static initialization time . registration with platform is deferred until an instance can be created .
