#include <grpc/support/port_platform.h>
#ifdef GRPC_USE_EVENT_ENGINE
-#include "src/core/lib/iomgr/event_engine/endpoint.h"
+#include "absl/strings/string_view.h"
#include <grpc/event_engine/event_engine.h>
#include <grpc/slice.h>
#include <grpc/slice_buffer.h>
#include <grpc/support/time.h>
-#include "absl/strings/string_view.h"
#include "src/core/lib/address_utils/sockaddr_utils.h"
#include "src/core/lib/channel/channel_args.h"
#include "src/core/lib/iomgr/endpoint.h"
#include "src/core/lib/iomgr/error.h"
#include "src/core/lib/iomgr/event_engine/closure.h"
+#include "src/core/lib/iomgr/event_engine/endpoint.h"
#include "src/core/lib/iomgr/event_engine/pollset.h"
#include "src/core/lib/iomgr/pollset.h"
#include "src/core/lib/iomgr/pollset_set.h"
using ::grpc_event_engine::experimental::EventEngine;
using ::grpc_event_engine::experimental::ResolvedAddressToURI;
+using ::grpc_event_engine::experimental::SliceAllocator;
using ::grpc_event_engine::experimental::SliceBuffer;
void endpoint_read(grpc_endpoint* ep, grpc_slice_buffer* slices,
gpr_log(GPR_INFO, "TCP Endpoint %p shutdown why=%s", eeep->endpoint.get(),
str);
}
- grpc_resource_user_shutdown(eeep->ru);
eeep->endpoint.reset();
}
void endpoint_destroy(grpc_endpoint* ep) {
auto* eeep = reinterpret_cast<grpc_event_engine_endpoint*>(ep);
- grpc_resource_user_unref(eeep->ru);
delete eeep;
}
-grpc_resource_user* endpoint_get_resource_user(grpc_endpoint* ep) {
- auto* eeep = reinterpret_cast<grpc_event_engine_endpoint*>(ep);
- return eeep->ru;
-}
-
absl::string_view endpoint_get_peer(grpc_endpoint* ep) {
auto* eeep = reinterpret_cast<grpc_event_engine_endpoint*>(ep);
if (eeep->endpoint == nullptr) {
endpoint_delete_from_pollset_set,
endpoint_shutdown,
endpoint_destroy,
- endpoint_get_resource_user,
endpoint_get_peer,
endpoint_get_local_address,
endpoint_get_fd,
std::unique_ptr<EventEngine::Endpoint> ee_endpoint) {
auto endpoint = new grpc_event_engine_endpoint;
endpoint->base.vtable = &grpc_event_engine_endpoint_vtable;
- // TODO(hork): populate endpoint->ru from the uvEngine's subclass
endpoint->endpoint = std::move(ee_endpoint);
return endpoint;
}
absl::string_view peer_address) {
auto endpoint = new grpc_event_engine_endpoint;
endpoint->base.vtable = &grpc_event_engine_endpoint_vtable;
- grpc_resource_quota* resource_quota =
- grpc_channel_args_find_pointer<grpc_resource_quota>(
- channel_args, GRPC_ARG_RESOURCE_QUOTA);
- if (resource_quota != nullptr) {
- grpc_resource_quota_ref_internal(resource_quota);
- } else {
- resource_quota = grpc_resource_quota_create(nullptr);
- }
- endpoint->ru = grpc_resource_user_create(resource_quota,
- std::string(peer_address).c_str());
- grpc_resource_quota_unref_internal(resource_quota);
return &endpoint->base;
}