Sha256: 45133c76f3dfe1074a34afb480fe70699ebbcd6c19ecf2feb0661566869109f2

Contents?: true

Size: 766 Bytes

Versions: 2

Compression:

Stored size: 766 Bytes

Contents

module BarkestCore
  class SelfUpdateConfig
    include ActiveModel::Model
    include ActiveModel::Validations

    attr_accessor :host, :user, :password
    attr_writer :port

    validates :host, presence: true
    validates :user, presence: true
    validates :password, presence: true

    def to_h
      {
          host: host.to_s,
          port: port,
          user: user.to_s,
          password: password.to_s,
      }
    end

    def port
      @port ||= 22
      val = @port.to_s.to_i
      (1...65536).include?(val) ? val : 22
    end

    def save
      SystemConfig.set :self_update, to_h, true
    end

    def SelfUpdateConfig.load
      SelfUpdateConfig.new SystemConfig.get(:self_update)
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
barkest_core-1.5.4.0 app/models/barkest_core/self_update_config.rb
barkest_core-1.5.3.0 app/models/barkest_core/self_update_config.rb