From 05cc0041f32b5e732e6752c9e8cca0c20529a7ca Mon Sep 17 00:00:00 2001
From: Martin Janin
Date: Tue, 11 Apr 2023 17:05:38 +0200
Subject: [PATCH] Fix interfaces and add missing IODataResponse
---
src/IODataClient.php | 44 ++++++++++++++++++++++++++++++-
src/IODataResponse.php | 57 ++++++++++++++++++++++++++++++++++++++++
src/ODataClient.php | 10 +++----
src/Query/Builder.php | 11 ++++----
src/Query/IProcessor.php | 6 ++---
5 files changed, 113 insertions(+), 15 deletions(-)
create mode 100644 src/IODataResponse.php
diff --git a/src/IODataClient.php b/src/IODataClient.php
index 789b893..9f90a78 100644
--- a/src/IODataClient.php
+++ b/src/IODataClient.php
@@ -54,10 +54,52 @@ public function query();
* @param $requestUri
* @param array $bindings
*
- * @return IODataRequest
+ * @return IODataResponse
*/
public function get($requestUri, $bindings = []);
+ /**
+ * Run a POST request against the service.
+ *
+ * @param string $requestUri
+ * @param mixed $postData
+ *
+ * @return IODataResponse
+ */
+ public function post($requestUri, $postData);
+
+ /**
+ * Run a PATCH request against the service.
+ *
+ * @param string $requestUri
+ * @param mixed $body
+ *
+ * @return IODataResponse
+ */
+ public function patch($requestUri, $body);
+
+ /**
+ * Run a DELETE request against the service.
+ *
+ * @param string $requestUri
+ *
+ * @return IODataResponse
+ */
+ public function delete($requestUri);
+
+ /**
+ * Return an ODataRequest
+ *
+ * @param string $method
+ * @param string $requestUri
+ * @param mixed $body
+ *
+ * @return IODataResponse
+ *
+ * @throws ODataException
+ */
+ public function request($method, $requestUri, $body = null);
+
/**
* Get the query grammar used by the connection.
*
diff --git a/src/IODataResponse.php b/src/IODataResponse.php
new file mode 100644
index 0000000..14ab610
--- /dev/null
+++ b/src/IODataResponse.php
@@ -0,0 +1,57 @@
+