puppetlabs/puppet — pull request #1077 by vrthra (2012-08-28 19:29:21+00:00)
Title: (#15886) refactor zones

This commit refactors the zone provider and type. It moves the intertwined state machine to its own class,
It ensures that the parent methods of properties are called where necessary for newvalue
It also removes ZoneConfig and ZoneMultiConfig, and instead uses the standard Property and Property::List classes for multi valued properties.

(I closed the previous pull because it got targeted to master even though it was originally targeted to 3.x - (have no idea how that happened.))