Sha256: ca17ca479e535ec2dd32b1f868019f4312a5ff34f536acd14afa9caaa3b9fc28

Contents?: true

Size: 716 Bytes

Versions: 5

Compression:

Stored size: 716 Bytes

Contents

require "netrc"

class Yakg
  module Backend
    module NetrcFallback

      def set acct, value, svc
        n = Netrc.read
        n["#{svc}/#{acct}"] = [acct, value]
        n.save
        acct
      end

      def get acct, svc
        n = Netrc.read
        if n["#{svc}/#{acct}"].nil?
          nil
        else
          n["#{svc}/#{acct}"][1]
        end
      end

      def delete acct, svc
        n = Netrc.read
        n.delete "#{svc}/#{acct}"
        n.save
        true
      end

      def list svc
        known = []
        Netrc.read.each do |x|
          next unless x[1].match /^#{svc}/
          known.push(x[1].sub(/^#{svc}\//, ""))
        end
        known
      end
    
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
yakg-0.0.9 lib/yakg/backend/netrc-fallback.rb
yakg-0.0.8 lib/yakg/backend/netrc-fallback.rb
yakg-0.0.6 lib/yakg/backend/netrc-fallback.rb
yakg-0.0.4 lib/yakg/backend/netrc-fallback.rb
yakg-0.0.3 lib/yakg/backend/netrc-fallback.rb