File tree Expand file tree Collapse file tree 1 file changed +15
-5
lines changed
Expand file tree Collapse file tree 1 file changed +15
-5
lines changed Original file line number Diff line number Diff line change @@ -115,20 +115,30 @@ public function fetch(FetchRequestInterface $request): DocumentInterface
115115
116116 /**
117117 * @param SaveRequestInterface $request
118+ * @param bool $forceCreate Set too true if you want to force a post request
119+ *
118120 * @return DocumentInterface
119121 * @throws \Exception
120122 */
121- public function save (SaveRequestInterface $ request ): DocumentInterface
123+ public function save (SaveRequestInterface $ request, $ forceCreate = false ): DocumentInterface
122124 {
123125 $ uri = $ this ->buildUri ($ this ->buildPath ($ request ));
124126
125- return $ this -> handleResponse (
126- $ this ->httpClient ()->post (
127+ if (! $ request -> containsId () || $ forceCreate ) {
128+ $ response = $ this ->httpClient ()->post (
127129 $ uri ,
128130 $ this ->buildRequestContent ($ request ->document ()),
129131 $ request ->headers ()->all ()
130- )
131- );
132+ );
133+ } else {
134+ $ response = $ this ->httpClient ()->patch (
135+ $ uri ,
136+ $ this ->buildRequestContent ($ request ->document ()),
137+ $ request ->headers ()->all ()
138+ );
139+ }
140+
141+ return $ this ->handleResponse ($ response );
132142 }
133143
134144 /**
You can’t perform that action at this time.
0 commit comments