Hey guys,
Since no one likes to hear "it's being worked on" without being able
to see it, and i now have the first visible workings of a php version
i thought i'd post a bit of a progress report.
I've been working for the last 7 or 8 days on a php port of the java
shindig code, I've chosen to follow the structure as closely as
possible where the language differences allows for it to make
supporting the same features and having the same behavior easier. Now
it's been a bit of a challenge, partially because the last time I've
read any java code is 8 years behind me, and partially since it's a
huge undertaking to port an entire large feature set and service
without being able to test it until all the components are done, and
php being a completely different environment then the java/jetty one.
I've now reached the point where the basic structure is working, and
it successfully renders the todo.xml gadget into a valid and correct
gadget.
I'm still working on the js, rpc, proxy and gadget token bits so their
not included in this, also the remote content gadgets are not
supported yet (though that will be very quick to follow).
I expect to have those lacking bits done in the near future, and
combined with a good bit of testing i hope to have a 'patch' ready for
submission soonish (and i need to formalize the permission to submit
it under the apache license with my employer, but that is a mere
formality).
Feature wise it's completely compatible to the java cousin, including
the 'features', message bundle, etc support and only the GadgetServer,
web service and caching parts are different from the java version (in
memory caching for instance couldn't work in a multi process php
environment), and i think i'll soon add a few more php specific
optimizations soon to speed the whole thing up a bit as well.
The code i'm using for porting is from feb 14th, i'll evaluate the
patches that happen in the meantime once i've got everything done,
since doing both would be to much of a strain progress right now.
A working demo can be seen here:
http://shindig.chabotc.com/ifr/?url=http://www.labpixies.com/campaigns/todo/todo.xml
And the code-so-far for those who are interested in a sneak preview of
it is here:
http://www.chabotc.com/php-shindig.tar.gz
Please do keep in mind that it's still work in progress, so i know
there's no gadget container yet, no proxy implementation etc; If you
just want a fully functional php shindig server, please wait a little
more since this is nothing but a code preview :)
-- Chris