Skip to content

Commit 9f01b98

Browse files
committed
add factory method to IFunction and change constructor #12
1 parent 94a26e1 commit 9f01b98

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

src/IFunction.php

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,24 +43,30 @@ interface IFunction extends IJsonSerializable
4343
public const JSON_PARAM = 'params';
4444

4545
/**
46-
* Initialize the remote function call with at least a name.
46+
* Restore a remote function call from an array.
47+
* @param array<string, string|IApi|array<string, mixed>> $array
48+
*/
49+
public function __construct(array $array);
50+
51+
/**
52+
* Create a remote function call with at least a name.
4753
*
4854
* In order to add SAP remote function call parameters, an API needs to be
4955
* present. In case no SAP remote function call API has been defined, it will be
5056
* queried on the fly by connecting to the SAP remote system. In order to
5157
* connect to the SAP remote system, a SAP connection configuration needs to be
5258
* present.
5359
*
54-
* @param string $name SAP remote function name.
55-
* @param array<string, mixed>|null $params SAP remote function call parameters. Default: null
56-
* @param IConfiguration|null $config SAP connection configuration. Default: null
57-
* @param IApi|null $api SAP remote function call API. Default: null
60+
* @param string $name SAP remote function name.
61+
* @param array<string, mixed>|null $params SAP remote function call parameters. Default: null
62+
* @param IConfiguration|null $config SAP connection configuration. Default: null
63+
* @param IApi|null $api SAP remote function call API. Default: null
5864
* @throws IInvalidArgumentException
5965
* @throws IIncompleteConfigException
6066
* @throws IConnectionFailedException
6167
* @throws IUnknownFunctionException
6268
*/
63-
public function __construct(string $name, array $params = null, IConfiguration $config = null, IApi $api = null);
69+
public function create(string $name, array $params = null, IConfiguration $config = null, IApi $api = null): IFunction;
6470

6571
/**
6672
* Get the SAP remote function name.

0 commit comments

Comments
 (0)