752: def insync?(is)
753: insync = true
754:
755: if property = @parameters[:ensure]
756: unless is.include? property
757: raise Puppet::DevError,
758: "The is value is not in the is array for '%s'" %
759: [property.name]
760: end
761: ensureis = is[property]
762: if property.insync?(ensureis) and property.should == :absent
763: return true
764: end
765: end
766:
767: properties.each { |property|
768: unless is.include? property
769: raise Puppet::DevError,
770: "The is value is not in the is array for '%s'" %
771: [property.name]
772: end
773:
774: propis = is[property]
775: unless property.insync?(propis)
776: property.debug("Not in sync: %s vs %s" %
777: [propis.inspect, property.should.inspect])
778: insync = false
779:
780:
781: end
782: }
783:
784:
785: return insync
786: end