    # File lib/chef/provider/package/zypper.rb, line 30
            def load_current_resource
              @current_resource = Chef::Resource::Package.new(@new_resource.name)
              @current_resource.package_name(@new_resource.package_name)

              is_installed=false
              is_out_of_date=false
              version=''
              oud_version=''
              Chef::Log.debug("#{@new_resource} checking zypper")
              status = popen4("zypper info #{@new_resource.package_name}") do |pid, stdin, stdout, stderr|
                stdout.each do |line|
                  case line
                  when /^Version: (.+)$/
                    version = $1
                    Chef::Log.debug("#{@new_resource} version #{$1}")
                  when /^Installed: Yes$/
                    is_installed=true
                    Chef::Log.debug("#{@new_resource} is installed")

                  when /^Installed: No$/
                    is_installed=false
                    Chef::Log.debug("#{@new_resource} is not installed")
                  when /^Status: out-of-date \(version (.+) installed\)$/
                    is_out_of_date=true
                    oud_version=$1
                    Chef::Log.debug("#{@new_resource} out of date version #{$1}")
                  end
                end
              end

              if is_installed==false
                @candidate_version=version
                @current_resource.version(nil)
              end

              if is_installed==true
                if is_out_of_date==true
                  @current_resource.version(oud_version)
                  @candidate_version=version
                else
                  @current_resource.version(version)
                  @candidate_version=version
                end
              end

              unless status.exitstatus == 0
                raise Chef::Exceptions::Package, "zypper failed - #{status.inspect}!"
              end

              @current_resource
            end