Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BatchRequest SOAP #29

Open
JindrichPilar opened this issue Dec 6, 2014 · 1 comment
Open

BatchRequest SOAP #29

JindrichPilar opened this issue Dec 6, 2014 · 1 comment

Comments

@JindrichPilar
Copy link
Member

Pracovni myslenka je podporovat batch request. Coz se da udelat pres cURL.
Samozrejme by zustala moznost synchroniho spracovani. I jako fallback kdy neni cURL k dispozici.

Jako transportni vrstva by se dala pouzit https://github.com/guzzle/guzzle
Jelikoz Guzzle by nevalidoval pozadavek vuci WSDL, dalo by se pouzit https://github.com/wsdl2phpgenerator/wsdl2phpgenerator

@JindrichPilar
Copy link
Member Author

Navrh implementace:

Pro co nejvetsi kompabilitu s klasickymi requesty by $webService->call('function' $args); vracela proxy object, do ktereho by knihovna dodatecne dohrala data. Dohrani dat by se spoustelo pri prvni ctenim z nektereho proxy objektu. Takze by to vypadalo asi takto:

$userService = $skautis->User;
$a = $user->call('UserDetail');
$b = $user->call('UserDetail');
$c = $user->call('UserDetail');
$d = $user->call('UserDetail');
// Doted by se nic nedelo, jen prazdne objekty cekajici na naplneni

// Prvni pristup
// Vezme vsechny definovane pozadavky, provede batch request a nahraje do vsech objektu data
// Smaze frontu pozadavku na Skautis
$id = $d['id']; 

Vnitrni implementace pomoci Guzzle batch request

Aby se dalo detekovat pristup k datum musela by metoda call z WebServiceInterface vracet nejaky objekt se kterym so dobre pracuje a zaroven se na nem da cekat na pristup. Vhodna by byla StdClass.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant