#existing API

# dirRoot_old is missing because refJars are being supplied
name_old gwt22userApi
#sourceFiles is specified as colon-separated list of files
sourceFiles_old com/google/gwt\
:javax/validation\

#excludedFiles is specified as colon-separated ant patterns
excludedFiles_old com/google/gwt/benchmarks/BenchmarkReport.java\
:com/google/gwt/benchmarks/BenchmarkShell.java\
:com/google/gwt/benchmarks/client/Benchmark.java\
:**/linker/**\
:**/rebind/**\
:**/server/**\
:**/tools/**\
:**/vm/**\
:com/google/gwt/regexp/shared/**\
:com/google/gwt/autobean/**\
:com/google/web/bindery/autobean/**\
:com/google/gwt/core/client/impl/WeakMapping.java\
:com/google/gwt/core/ext/**\
:com/google/gwt/dev/*.java\
:com/google/gwt/dev/asm/**\
:com/google/gwt/dev/cfg/**\
:com/google/gwt/dev/generator/**\
:com/google/gwt/dev/javac/**\
:com/google/gwt/dev/jdt/**\
:com/google/gwt/dev/jjs/*.java\
:com/google/gwt/dev/jjs/ast/**\
:com/google/gwt/dev/jjs/impl/**\
:com/google/gwt/dev/js/**\
:com/google/gwt/dev/json/**\
:com/google/gwt/dev/resource/**\
:com/google/gwt/dev/shell/**\
:com/google/gwt/dev/ui/**\
:com/google/gwt/dev/util/**\
:com/google/gwt/junit/*.java\
:com/google/gwt/junit/client/GWTTestCase.java\
:com/google/gwt/junit/client/impl/GWTRunner.java\
:com/google/gwt/junit/remote/**\
:com/google/gwt/resources/client/impl/**\
:com/google/gwt/resources/css/**\
:com/google/gwt/resources/ext/**\
:com/google/gwt/resources/rg/**\
:com/google/gwt/requestfactory/**\
:com/google/web/bindery/requestfactory/**\
:com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
:com/google/gwt/rpc/client/impl/EscapeUtil.java\
:com/google/gwt/rpc/client/impl/RpcCallbackAdapter.java\
:com/google/gwt/soyc/**\
:com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
:com/google/gwt/user/client/rpc/core/**\
:com/google/gwt/user/client/rpc/impl/**\
:com/google/gwt/uibinder/attributeparsers/**\
:com/google/gwt/uibinder/elementparsers/**\
:com/google/gwt/uibinder/testing/**\
:com/google/gwt/util/**\
:com/google/gwt/validation/**\

##############################################
#new Api

dirRoot_new ./
name_new gwt23userApi
#sourceFiles is specified as colon-separated list of files
sourceFiles_new dev/core/super\
:user/src\
:user/super\

#excludedFiles is specified as colon-separated ant patterns
# The last 3 entries exclude the validation stuff.
# Bug: http://code.google.com/p/google-web-toolkit/issues/detail?id=5566
excludedFiles_new user/src/com/google/gwt/benchmarks/BenchmarkReport.java\
:user/src/com/google/gwt/benchmarks/BenchmarkShell.java\
:user/src/com/google/gwt/benchmarks/client/Benchmark.java\
:**/linker/**\
:**/rebind/**\
:**/server/**\
:**/tools/**\
:**/vm/**\
:user/src/com/google/gwt/autobean/shared/ValueCodexHelper.java\
:user/src/com/google/web/bindery/autobean/shared/ValueCodexHelper.java\
:user/src/com/google/gwt/autobean/shared/impl/StringQuoter.java\
:user/src/com/google/web/bindery/autobean/shared/impl/StringQuoter.java\
:user/src/com/google/gwt/regexp/shared/**\
:user/src/com/google/gwt/core/client/impl/WeakMapping.java\
:user/src/com/google/gwt/junit/*.java\
:user/src/com/google/gwt/junit/client/GWTTestCase.java\
:user/src/com/google/gwt/junit/client/impl/GWTRunner.java\
:user/src/com/google/gwt/junit/remote/**\
:user/src/com/google/gwt/resources/css/**\
:user/src/com/google/gwt/resources/ext/**\
:user/src/com/google/gwt/resources/rg/**\
:user/src/com/google/gwt/requestfactory/shared/impl/MessageFactoryHolder.java\
:user/src/com/google/web/bindery/requestfactory/shared/impl/MessageFactoryHolder.java\
:user/src/com/google/gwt/rpc/client/impl/ClientWriterFactory.java\
:user/src/com/google/gwt/rpc/client/impl/EscapeUtil.java\
:user/src/com/google/gwt/rpc/client/impl/RpcCallbackAdapter.java\
:user/src/com/google/gwt/safehtml/shared/SafeHtmlHostedModeUtils.java\
:user/src/com/google/gwt/user/client/rpc/core/**\
:user/src/com/google/gwt/user/client/rpc/impl/**\
:user/src/com/google/gwt/uibinder/attributeparsers/**\
:user/src/com/google/gwt/uibinder/elementparsers/**\
:user/src/com/google/gwt/uibinder/testing/**\
:user/src/com/google/gwt/util/**\
:user/src/javax/**\
:user/src/org/**\
:user/src/com/google/gwt/validation/**\

##############################################
#excluded packages colon separated list
excludedPackages com.google.gwt.editor.client.impl\
:com/google/gwt/requestfactory\
:com/google/gwt/requestfactory/client\
:com/google/gwt/requestfactory/client/testing\
:com/google/gwt/requestfactory/client/impl\
:com/google/gwt/requestfactory/rebind\
:com/google/gwt/requestfactory/rebind/model\
:com/google/gwt/requestfactory/server\
:com/google/gwt/requestfactory/server/testing\
:com/google/gwt/requestfactory/server/impl\
:com/google/gwt/requestfactory/shared\
:com/google/gwt/requestfactory/shared/messages\
:com/google/gwt/requestfactory/shared/impl\
:com/google/gwt/requestfactory/shared/impl/posers\
:com/google/gwt/requestfactory/ui\
:com/google/gwt/requestfactory/ui/client\
:com.google.gwt.junit.client.impl\
:com.google.gwt.benchmarks.client.impl\
:com/google/web/bindery/requestfactory\
:com/google/web/bindery/requestfactory/gwt\
:com/google/web/bindery/requestfactory/gwt/client\
:com/google/web/bindery/requestfactory/gwt/client/impl\
:com/google/web/bindery/requestfactory/gwt/client/testing\
:com/google/web/bindery/requestfactory/gwt/rebind\
:com/google/web/bindery/requestfactory/gwt/rebind/model\
:com/google/web/bindery/requestfactory/gwt/ui\
:com/google/web/bindery/requestfactory/gwt/ui/client\
:com/google/web/bindery/requestfactory/server\
:com/google/web/bindery/requestfactory/server/impl\
:com/google/web/bindery/requestfactory/server/testing\
:com/google/web/bindery/requestfactory/shared\
:com/google/web/bindery/requestfactory/shared/impl\
:com/google/web/bindery/requestfactory/shared/impl/posers\
:com/google/web/bindery/requestfactory/shared/messages\
:com/google/web/bindery/requestfactory/vm\
:com/google/gwt/autobean\
:com/google/gwt/autobean/client\
:com/google/gwt/autobean/client/impl\
:com/google/gwt/autobean/rebind\
:com/google/gwt/autobean/rebind/model\
:com/google/gwt/autobean/server\
:com/google/gwt/autobean/server/impl\
:com/google/gwt/autobean/shared\
:com/google/gwt/autobean/shared/impl\
:com/google/web/bindery/autobean\
:com/google/web/bindery/autobean/gwt\
:com/google/web/bindery/autobean/gwt/client\
:com/google/web/bindery/autobean/gwt/client/impl\
:com/google/web/bindery/autobean/gwt/rebind\
:com/google/web/bindery/autobean/gwt/rebind/model\
:com/google/web/bindery/autobean/shared\
:com/google/web/bindery/autobean/shared/impl\
:com/google/web/bindery/autobean/vm\
:com/google/web/bindery/autobean/vm/impl\

##############################################
#Api  whitelist
# when adding to the white-list, include comments as to why the addition is
# being made.

# Overloaded SimplePanel constructor to accept a Widget.
com.google.gwt.user.client.ui.SimplePanel::SimplePanel(Lcom/google/gwt/dom/client/Element;) OVERLOADED_METHOD_CALL

# Overloads for legacy compatibility after introduction of com.google.web.bindery
#

com.google.gwt.event.shared.EventBus::addHandler(Lcom/google/gwt/event/shared/GwtEvent$Type;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL
com.google.gwt.event.shared.EventBus::addHandlerToSource(Lcom/google/gwt/event/shared/GwtEvent$Type;Ljava/lang/Object;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL

com.google.gwt.event.shared.ResettableEventBus::addHandler(Lcom/google/gwt/event/shared/GwtEvent$Type;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL
com.google.gwt.event.shared.ResettableEventBus::addHandlerToSource(Lcom/google/gwt/event/shared/GwtEvent$Type;Ljava/lang/Object;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL

com.google.gwt.event.shared.SimpleEventBus::addHandler(Lcom/google/gwt/event/shared/GwtEvent$Type;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL
com.google.gwt.event.shared.SimpleEventBus::addHandlerToSource(Lcom/google/gwt/event/shared/GwtEvent$Type;Ljava/lang/Object;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL

com.google.gwt.event.shared.testing.CountingEventBus::addHandler(Lcom/google/gwt/event/shared/GwtEvent$Type;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL
com.google.gwt.event.shared.testing.CountingEventBus::addHandlerToSource(Lcom/google/gwt/event/shared/GwtEvent$Type;Ljava/lang/Object;Lcom/google/gwt/event/shared/EventHandler;) OVERLOADED_METHOD_CALL

#
# end com.google.web.bindery changes

# Renamed CellBasedWidgetImplSafari to CellBasedWidgetImplStandardBase.
com.google.gwt.user.cellview.client.CellBasedWidgetImplSafari MISSING

# Adding protected Video(Element) that conflicts with existing (now deprecated) public Video(String)
com.google.gwt.media.client.Video::Video(Ljava/lang/String;) OVERLOADED_METHOD_CALL
