Slideshare.net (beta)

 
Post To TwitterPost to Twitter
Post: 
Myspace Hi5 Friendster Xanga LiveJournal Facebook Blogger Tagged Typepad Freewebs BlackPlanet gigya icons

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 2 (more)

Rocky Burt Subtyping Unleashed

From wooda, 10 months ago

Subtyping is a new pattern for extending the functionality of exis more

772 views  |  0 comments  |  1 favorite  |  51 downloads
 

Categories

Add Category
 
 

Groups / Events

 
Embed
options

More Info

This slideshow is Public
Total Views: 772
on Slideshare: 772
from embeds: 0

Slideshow transcript

Slide 1: Subtyping Unleased! Speaker: Rocky Burt

Slide 2: Who I Am Rocky Burt ServerZen Software http://www.serverzen.com Subtyping Unleased! Slide 2 Plone Conference 2007 – Naples

Slide 3: Subtyping?  Narrow classification  Functionality hook Subtyping Unleased! Slide 3 Plone Conference 2007 – Naples

Slide 4: Why Subtype?  Many possible faces for an existing content type  Simple conversion  Delayed specification Subtyping Unleased! Slide 4 Plone Conference 2007 – Naples

Slide 5: Use Cases  Need different content identity depending on situation  Need some way to transform identity based on event reaction Subtyping Unleased! Slide 5 Plone Conference 2007 – Naples

Slide 6: p4a.subtyper  Minimal framework  Hooks up subtypes into content menu Subtyping Unleased! Slide 6 Plone Conference 2007 – Naples

Slide 7: An Example: Setting up p4a.subtyper easy_install p4a.subtyper Subtyping Unleased! Slide 7 Plone Conference 2007 – Naples

Slide 8: An Example: Creating New Package p4a.subtyperdemo Example source at: http://www.plone4artists.org /svn/projects/p4a.subtyperdemo/ Subtyping Unleased! Slide 8 Plone Conference 2007 – Naples

Slide 9: An Example: Sub-type Marker Interface  New module named interfaces  New interface named IUltraDoc Subtyping Unleased! Slide 9 Plone Conference 2007 – Naples

Slide 10: An Example: Sub-type Marker Interface class IUltraDoc(interface.Interface): \"\"\"A new ultra document subtype.\"\"\" interface.alsoProvides(IUltraDoc, IContentType) Subtyping Unleased! Slide 10 Plone Conference 2007 – Naples

Slide 11: An Example: Sub-type Descriptor  New module named descriptors  New descriptor named UltraDocDescriptor Subtyping Unleased! Slide 11 Plone Conference 2007 – Naples

Slide 12: An Example: Sub-type Descriptor class UltraDocDescriptor(object): implements(IPortalTypedDescriptor) title = u'Ultra Doc' description = u'New ultra style '\\ u'document.' type_interface = IUltraDoc for_portal_type = 'Document Subtyping Unleased! Slide 12 Plone Conference 2007 – Naples

Slide 13: An Example: New View  New template called ultradoc.pt Subtyping Unleased! Slide 13 Plone Conference 2007 – Naples

Slide 14: An Example: New View <div metal:fill-slot=\"main\"> <h2>This is an ultradoc!</h2> <h3 tal:content=\"context/Title\"></h3> <p tal:content=\"context/Description\"></p> </div> Subtyping Unleased! Slide 14 Plone Conference 2007 – Naples

Slide 15: An Example: Tying Together – ZCML  Register descriptor as utility  Hook new view up applying to marker interface Subtyping Unleased! Slide 15 Plone Conference 2007 – Naples

Slide 16: An Example: Tying Together – ZCML <utility name=\"ultradoc\" factory=\".descriptors.UltraDocDescriptor\" /> <browser:page for=\".interfaces.IUltraDoc\" name=\"document_view\" permission=\"zope2.View\" template=\"ultradoc.pt\" /> Subtyping Unleased! Slide 16 Plone Conference 2007 – Naples

Slide 17: An Example: Before Subtyping Unleased! Slide 17 Plone Conference 2007 – Naples

Slide 18: An Example: After Subtyping Unleased! Slide 18 Plone Conference 2007 – Naples

Slide 19: An Example: Regular Content Subtyping Unleased! Slide 19 Plone Conference 2007 – Naples

Slide 20: Other Features  Special subtype events  Extension by adapters and schema's Subtyping Unleased! Slide 20 Plone Conference 2007 – Naples

Slide 21: Conclusion Questions? Comments? Resources at: http://www.serverzen.com /training/subtyping-unleashed Subtyping Unleased! Slide 21 Plone Conference 2007 – Naples