Zend_Service_SlideShare is a component which encapsulates the SlideShare web services in an easy to use PHP API. SlideShare provides
a web site to manage slide show documents, including embedding them within web pages, etc. It has been called "The YouTube of Powerpoint"
3. Component Requirements, Constraints, and Acceptance Criteria
This component will implement the complete SlideShare web service API for working with and adding silde shows to the service
This component will provide an easy to use API which encapsulates the XML communication with the non-standards-based services
This component will use Zend Framework HTTP and Caching facilities as part of its function
4. Dependencies on Other Framework Components
Zend_Exception
Zend_Http_Client
Zend_Cache
5. Theory of Operation
The component will provide a service object which allows you to retrieve slide show metadata from the SlideShare service through
the means exposed by the SlideShare API. This includes querying the existing slide shows by username, tag, group and slide show ID.
The component will also provide the ability to upload new slide shows into the slideshare database through the same API.
6. Milestones / Tasks
Milestone 1: [DONE] Development of Prototype Component
Milestone 2: [DONE] Development of Zend Framework Proposal
Milestone 3: [DONE] Interaction with Community
Milestone 4: Review of proposal
Milestone 5: Formalization of Component to ZF coding standards
<p>This is a really cool service; I look forward to this consumer component being a part of the Zend Framework! <ac:emoticon ac:name="smile" /></p>
<p>One question I have at this point is what impact does the caching have on the operation of this component? Is caching automatic and/or on by default? What are these cache settings? What will users need to be aware of, in terms of differences between this component and consuming the web service with no built-in caching?</p>
<p>The caching mechanism is basically entirely customizable. You can do caching however you choose on whatever lifetime you choose by calling the SlideShare::setCacheObject(Zend_Cache_Core $e) method. If you do no provide a caching mechanism, one is provided for you as follows:</p>
<p>Looks good. One small point- you have '/tmp' hardcoded in the getCacheObject() method. Not sure how this would work under Windows, but in any case we should be able to set a temp directory globally and use it here by default. This global setting may be made available under the Zend_Build proposal, if it's not already available from an exist component.</p>
<ac:macro ac:name="note"><ac:parameter ac:name="title">Zend Comments</ac:parameter><ac:rich-text-body>
<p>This proposal is approved for incubator development, provided that:</p>
<ul>
<li>Caching questions and issues have been addressed during incubation.</li>
<li>Examples of how to include a slideshow on a page (e.g., how to get the needed HTML) are included in the documentation.</li>
</ul>
</ac:rich-text-body></ac:macro>
5 Comments
comments.show.hideNov 08, 2007
Darby Felton
<p>This is a really cool service; I look forward to this consumer component being a part of the Zend Framework! <ac:emoticon ac:name="smile" /></p>
<p>One question I have at this point is what impact does the caching have on the operation of this component? Is caching automatic and/or on by default? What are these cache settings? What will users need to be aware of, in terms of differences between this component and consuming the web service with no built-in caching?</p>
Dec 04, 2007
John Coggeshall
<p>The caching mechanism is basically entirely customizable. You can do caching however you choose on whatever lifetime you choose by calling the SlideShare::setCacheObject(Zend_Cache_Core $e) method. If you do no provide a caching mechanism, one is provided for you as follows:</p>
<ac:macro ac:name="code"><ac:plain-text-body><![CDATA[
public function getCacheObject() {
if(!($this->_cacheobject instanceof Zend_Cache_Core))
return $this->_cacheobject;
}
]]></ac:plain-text-body></ac:macro>
Dec 10, 2007
Wil Sinclair
<p>Looks good. One small point- you have '/tmp' hardcoded in the getCacheObject() method. Not sure how this would work under Windows, but in any case we should be able to set a temp directory globally and use it here by default. This global setting may be made available under the Zend_Build proposal, if it's not already available from an exist component.</p>
Dec 10, 2007
Darby Felton
<ac:macro ac:name="note"><ac:parameter ac:name="title">Zend Comments</ac:parameter><ac:rich-text-body>
<p>This proposal is approved for incubator development, provided that:</p>
<ul>
<li>Caching questions and issues have been addressed during incubation.</li>
<li>Examples of how to include a slideshow on a page (e.g., how to get the needed HTML) are included in the documentation.</li>
</ul>
</ac:rich-text-body></ac:macro>
Dec 02, 2008
Zladivliba
<p>This is an excellent idea ! <br />
I can't wait to use this !</p>