tree 669aa01f51c54851aa164498cb686dafffb3576f
parent b79f214f6cd802552d035ee36559686aa9b47515
author Viet-Trung Luu <viettrungluu@chromium.org> 1461628527 -0700
committer Viet-Trung Luu <viettrungluu@chromium.org> 1461628527 -0700

Mark ApplicationImpl::ConnectTo{Application,Service}() as deprecated.

I.e., rename them to ConnectTo{Application,Service}Deprecated() (which
will at least be easier/more reliable to grep for).

* ApplicationImpl::ConnectToService() can/should nearly always be
  replaced with a use of mojo::ConnectToService() from connect.h. (The
  ApplicationImpl::ConnectToService() is unusually inefficient for what
  it's used for.)
* ApplicationImpl::ConnectToApplication() is used by
  ApplicationImpl::ConnectToService() (accounting for the latter's gross
  inefficiency), and sometimes semi-legitimately to connect to *and*
  provide services to, e.g., the tracing service. It has the side-effect
  of keeping connections alive, but maybe that should just be done
  "manually" instead; such uses can be replaced with
  shell()->ConnectToApplication() (and manual lifetime management), or
  maybe by making mojo::ConnectToService() slightly more general. (There
  are also a few dubious-looking uses, to be investigated.)

For now, I've just renamed them. I plan to fix the actual call sites (in
the ways indicated above) more incrementally.

R=vardhan@google.com

Review URL: https://codereview.chromium.org/1916233002 .
