642: def insync?(is)
643: insync = true
644:
645: if property = @parameters[:ensure]
646: unless is.include? property
647: raise Puppet::DevError,
648: "The is value is not in the is array for '#{property.name}'"
649: end
650: ensureis = is[property]
651: if property.safe_insync?(ensureis) and property.should == :absent
652: return true
653: end
654: end
655:
656: properties.each { |property|
657: unless is.include? property
658: raise Puppet::DevError,
659: "The is value is not in the is array for '#{property.name}'"
660: end
661:
662: propis = is[property]
663: unless property.safe_insync?(propis)
664: property.debug("Not in sync: #{propis.inspect} vs #{property.should.inspect}")
665: insync = false
666:
667:
668: end
669: }
670:
671:
672: insync
673: end