Deprecate buffer_hub_client.{h, cpp}

buffer_hub_client.h used to contain BufferHubBuffer, BufferProducer
and BufferConsumer. Now those classes are all renamed and moved into
their own headers. Time to deprecate buffer_hub_client.h and move
BufferHubClient, which is only used by DetachedBuffer into
detached_buffer.h

Bug: 116855254
Test: atest buffer_hub-test
Change-Id: Id0bfb32165f955c060d982f1410ab11bfcf76bec
diff --git a/libs/vr/libbufferhub/detached_buffer.cpp b/libs/vr/libbufferhub/detached_buffer.cpp
index 7716cfa..47e5828 100644
--- a/libs/vr/libbufferhub/detached_buffer.cpp
+++ b/libs/vr/libbufferhub/detached_buffer.cpp
@@ -1,6 +1,8 @@
-#include <private/dvr/detached_buffer.h>
-
+#include <pdx/default_transport/client_channel.h>
+#include <pdx/default_transport/client_channel_factory.h>
 #include <pdx/file_handle.h>
+#include <private/dvr/bufferhub_rpc.h>
+#include <private/dvr/detached_buffer.h>
 #include <ui/DetachedBufferHandle.h>
 
 #include <poll.h>
@@ -8,10 +10,30 @@
 using android::pdx::LocalChannelHandle;
 using android::pdx::LocalHandle;
 using android::pdx::Status;
+using android::pdx::default_transport::ClientChannel;
+using android::pdx::default_transport::ClientChannelFactory;
 
 namespace android {
 namespace dvr {
 
+BufferHubClient::BufferHubClient()
+    : Client(ClientChannelFactory::Create(BufferHubRPC::kClientPath)) {}
+
+BufferHubClient::BufferHubClient(LocalChannelHandle channel_handle)
+    : Client(ClientChannel::Create(std::move(channel_handle))) {}
+
+bool BufferHubClient::IsValid() const {
+  return IsConnected() && GetChannelHandle().valid();
+}
+
+LocalChannelHandle BufferHubClient::TakeChannelHandle() {
+  if (IsConnected()) {
+    return std::move(GetChannelHandle());
+  } else {
+    return {};
+  }
+}
+
 DetachedBuffer::DetachedBuffer(uint32_t width, uint32_t height,
                                uint32_t layer_count, uint32_t format,
                                uint64_t usage, size_t user_metadata_size) {