Add DisplayDeviceRepository

Refactor out the DisplayDevice collection storage out
of DisplayManagerService. This sets up an easier code-path
for a logical display mapper class to listen to
DisplayDevice events without using DisplayMangerService as
a go-between.

New DisplayDeviceRepository listens directly to
DisplayAdapters and stores them in an internal collection.
Display Events are forwarded to DisplayManagerService
(where it is still necessary) and to a logical-display
creation/mapping class in follow-up CL.

Test: atest frameworks/base/services/tests/servicestests/src/com/android/server/display
Bug: 130724654
Change-Id: I735143453fdc204f65a799fe95fcd983499d81f4
5 files changed