[ 
https://issues.apache.org/jira/browse/SHINDIG-103?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Chabot updated SHINDIG-103:
---------------------------------

    Attachment: php-shindig_v2.patch

Version 2 of the new php code, diffed against the shindig root since it also 
changes the config/syndicator.js file, so apply with:

# cd shindig
# patch -p1 < [path_to_patch]/php-shindig_v2.patch

Changes from the previous patch:

- Uses the global features directory (it assumes it's location in ../../features

- Made a quick FilesServlet that serves files from ../../javascript, so that 
/files/<filename> works correctly, and thus 
http://shindig/gadgets/files/samplecontainer/samplecontainer.html actually 
works, and is served from the shindig root, this was mainly born from the issue 
that the default syndicator.js config refers to files/container/rpc.js, and we 
really do want an out-of-the-box working experiance here. (A better solution 
would be a mod_alias Alias of course, i'll add a note later that it's really 
for demo proposes only)

- replaced config defines by a config array (propper class comming later, no 
measurable performance differences though), and added settings for features, 
syndicator.js and javascript locations.

- added basic work-around-support for syndicator.js configuration, will be 
expanded into a proper implementation later 

- Removed all the include_once references and implemented the __autoload super 
function for now (no measurable performance impact under Zend Platform 
(formally known as Zend Cache) so i guess it's good enough for now

- Added the Apache license to the files under src/http that were still missing 
it

Other issues will still be resolved, but this completely integrates the php 
version into the main tree, including using all it's resources directly instead 
of having local copies.



> New PHP Shindig gadget server code
> ----------------------------------
>
>                 Key: SHINDIG-103
>                 URL: https://issues.apache.org/jira/browse/SHINDIG-103
>             Project: Shindig
>          Issue Type: Improvement
>          Components: Gadgets Server - PHP
>            Reporter: Chris Chabot
>            Assignee: Brian McCallister
>         Attachments: php-shindig.patch, php-shindig_v2.patch
>
>
> This patch completely replaces the old code in the php directory of the 
> shindig project, and replaces it with a port of the java shindig code.
> The java code used is from a checkout from February the 14th, this because 
> keeping track of the changes while porting and testing would have gotten in 
> the way of completing the first release in a timely fashion.
> It implements the structure and workings from the java server and includes:
> - Gadget server
> - Proxy service
> - JS service
> The maIn differences from the Java branch are:
> - Different caching engine (abstracted base class, sample file implementation 
> included)
> - Different gadget rendering work flow (no multithreading in PHP)
> - No enum's or name spaced classes in php, so their top level classes now
> - Locale class to emulate the Java's Locale class
> - Somewhat servlet like event handling to stay close to the Java's structure
> Missing is the RPC feature, some custom speedups to get it closer to the 
> Java's speed (it's about 40% slower right now, but that gap might be fixed 
> later on), and a better logging / error reporting structure, it now only has 
> a basic DEBUG flag in the config, which if set, causes it to dump debug 
> backtrace's on errors.
> It's also missing Caja support, since that is Java only at the moment. Maybe 
> somewhere in the future we'll have a command line version available that we 
> can use.
> It also contains a copy of the features directory structure (so that it 
> doesn't break on updates from the Java side of things, changes will have to 
> be implemented before you can copy over the new version) and a copy of the 
> sample container (minus the Caja options), so that people can test it 
> directly.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to