You are not logged in Log in Join
You are here: Home » Members » Phillip J. Eby's Zope Center » My Wikis » ZPatterns Wiki » PlugInKind » wikipage_view

Log in
Name

Password

 
 
PlugInsIntroduction » PlugIns »

PlugInKind

Like a Zope meta_type, a plug-in kind is a string which describes a kind of Zope object. Unlike a meta_type, plug-in kinds are used by more than one class of object. You can think of a plug-in kind as a sort of meta-meta_type, which groups together a variety of similar meta-types by the collaboration interfaces they support.

For example, the string "Attribute Provider" is a plug-in kind used for AttributeProviders. There can be many different classes whose instances act as AttributeProviders, but as long as their __plugin_kind__ attribute is set to "Attribute Provider", they will be recognized by their PlugInContainers as AttributeProviders.

PlugInGroups display an "Add" list that only includes registered plug-ins of the correct plug-in kinds. (PlugInGroups can support more than one PlugInKind, even though PlugIns can each only be of one PlugInKind.)

Since PlugInGroups are restricted to a specific set of plug-in kinds, PlugInContainers can be assured that the PlugIns in those groups support whatever collaboration interfaces are required by the container.