@@ -41,6 +41,13 @@ class ProductData extends Service {
41
41
protected $ serviceName = 'products ' ;
42
42
43
43
44
+
45
+ /** names for the different stages for querying */
46
+ const STAGE_IMPORT = 'import ' ;
47
+ const STAGE_INTERMEDIATE = 'intermediate ' ;
48
+ const STAGE_EXPORT = 'export ' ;
49
+ const STAGE_CHANNEL = 'channel ' ;
50
+
44
51
/**
45
52
* @param Client $Client
46
53
* @param bool $useShutdownHandler set to false to disable shutdown handler
@@ -290,8 +297,7 @@ private function getPdaRequest($stage,$id) {
290
297
$ request = $ this ->getRequest ();
291
298
$ request ->method = Request::METHOD_GET ;
292
299
$ request ->url = $ this ->scheme .':// ' .$ this ->host .'/product/ ' .$ this ->version .'/site/ ' .$ this ->_parentIdentifier ;
293
- $ request ->url .= '/stage/intermediate/properties/ ' ;
294
- $ request ->url .= '/ ' .$ stage ;
300
+ $ request ->url .= '/stage/ ' .$ stage ;
295
301
if ($ id ) {
296
302
$ request ->url .= '/ ' .$ id ;
297
303
}
@@ -305,24 +311,29 @@ private function getPdaRequest($stage,$id) {
305
311
* @param array $params
306
312
* @return array
307
313
*/
308
- public function get ($ stage , $ id ,array $ params ) {
309
- $ this ->verbose =1 ;
310
- $ this ->debug = 1 ;
314
+ public function get ($ stage , $ id ,$ params ) {
311
315
$ request = $ this ->getPdaRequest ($ stage ,$ id );
312
316
313
317
$ request ->url .= '/ ' ;
314
- $ request ->queryParams = $ params ;
315
- return $ this ->executeRequest ($ request );
318
+ $ request ->queryParams = (array )$ params ;
319
+ $ data = $ this ->executeRequest ($ request );
320
+ return isset ($ data ['products ' ]) ? $ data ['products ' ] : array ();
316
321
}
317
322
318
323
/**
319
324
* @param string $stage source|intermediate|channel
320
325
* @param int|null $id id of the stage (or null for source)
321
326
* @return array
322
327
*/
323
- public function getProperties ($ stage ,$ id ) {
328
+ public function getProperties ($ stage ,$ id, $ params = null ) {
324
329
$ request = $ this ->getPdaRequest ($ stage ,$ id );
330
+ if (!$ id ) {
331
+ $ request ->url .= '/0 ' ;
332
+ }
325
333
$ request ->url .= '/properties/ ' ;
334
+ if ($ params ) {
335
+ $ request ->queryParams = (array )$ params ;
336
+ }
326
337
return $ this ->executeRequest ($ request );
327
338
}
328
339
}
0 commit comments