On Mon, Mar 21, 2011 at 07:47:14AM -0700, jcbollinger wrote:
> 
> Parameterized classes are not resources any more than ordinary classes
> are, syntax similarity notwithstanding.  You cannot override the
> parameters of a parameterized class.
> 
> Defined types are effectively custom resource types written in the
> Puppet DSL instead of in Ruby.  Resources of such types behave like
> resources of any built-in or custom type, so among other things, their
> parameters can be overridden via subclasses.
> 
> I don't think it's fair to say that defined types are more flexible
> than parameterized classes, because the two features aren't on the
> same level.  On the other hand, I think that parameterized classes do
> receive more attention than they deserve.  They solve certain
> problems, but they also have limitations that plain classes do not
> have.  In particular, ordinary classes' idempotency and support for
> multiple inclusion constitute a very powerful Puppet feature that
> parameterized classes cannot (currently) provide.
> 
> I would not recommend anyone to use parameterized classes without
> understanding exactly why they are doing so and what it may cost
> them.  If the benefit justifies the cost, however, then go for it!
> 

Please forgive my ignorance.  I find myself, a linux admin brought
up on howtos and books with animals on the cover, suddenly plunged
by puppet into a world of developers and computer scientists.  Could
you explain what is "idempotency" and "support for multiple inclusion"?


-- 

-ashley

Did you try poking at it with a stick?

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to