[PEPr] Comment on Web Services::Plesk
| From: | Pedro Padron | Date: | Mon, 07 Jan 2008 16:52:18 +0000 |
| Subject: | [PEPr] Comment on Web Services::Plesk | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-48897@lists.php.net to get a copy of this message | ||
Pedro Padron (http://pear.php.net/user/ppadron) has commented on the proposal for Web
Services::Plesk.
Comment:
Hello Till, thanks for the comments, you do have some interesting points.
Plesk API is available since version 7.5 (Windows and Linux/UNIX), and
just last month version 8.3 was released.
My explanation about not implementing the API wasn't clear at all, and I
am sorry about that. Let me try to clarify what I had in mind when I
created this package.
Plesk API is quite complex. And when I say "complex" it can also mean
"confuse". It doesn't follow any standard like XMLRPC or SOAP, for example.
Among all protocol versions released so far, there has been some minor
changes in the XML request/response structure.
If you take a look at the latest API documentation (for Plesk 8.3), you'll
see that there has been 7 API protocol versions. This means that Plesk 8.3
supports all versions, but if you make your request specifying an old
protocol, some functions won't be available. However, if you have a Plesk
7.5, you have to use that old protocol.
So, if I implement the whole API, it must be compatible with all Plesk
versions, then we would have 7 different API implementations.
That's why my initial purpose when developing this package was to provide
the basics for other developers to create their own API according to their
needs, by providing an interface using PHP Arrays or raw XML as string.
The API entry point should definetely be configurable, I'll surely handle
this in the next few days and submit the changes. The 8443 is the default
for Plesk, but it can be configured to run on another port.
I don't think you are paranoid, an error treatment should be done in the
_createResource() method, throwing a Services_Plesk_Exception exception(I
also agree that this class must be created).
I will put ArrayToXml in a class and make it public, and also put a method
to do the reverse process, like you suggested. Any idea of a class name?
While writing this I just received Joshua's comment, and I see that the
central point of discussion is if the full API should be implemented or
not. I am willing to do this package the most useful as possible, but I'm
not quite sure about what would be the best approach to handle different
protocol versions.
P.S.: Joshua, I have tried SimpleXML, but I had some problems with the
Array <=> XML conversion in different API protocols.
Please let me know what you think about this.
Thanks a lot!
Proposal information:
http://pear.php.net/pepr/pepr-proposal-show.php?id=523
--
Sent by PEPr, the automatic proposal system at http://pear.php.net