Sha256: f2bba8dcc47340783d47067a843a583bcf830f98963271f115e8f1b8511d12cd

Contents?: true

Size: 663 Bytes

Versions: 6

Compression:

Stored size: 663 Bytes

Contents

# -*- coding: utf-8 -*-

module Dcmgr::Models
  class FrontendSystem < BaseNew
    
    plugin :single_table_inheritance, :kind
    
    inheritable_schema do
      String :kind, :null=>false
      String :key, :null=>false, :size=>40, :unique=>true
      String :credential
    end

    def authenticate
      raise NotImplementedError
    end

    class PassThru < FrontendSystem

      def authenticate(env)
      end
    end

    class HttpBasic < FrontendSystem
      
      def authenticate(env)
      end
    end

    class RemoteIP < FrontendSystem

      def authenticate(env)
        self.key == env['HTTP_REMOTE_ADDR']
      end
    end
    
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
wakame-vdc-agents-11.06.0 lib/dcmgr/models/frontend_system.rb
wakame-vdc-dcmgr-11.06.0 lib/dcmgr/models/frontend_system.rb
wakame-vdc-dcmgr-10.12.0 lib/dcmgr/models/frontend_system.rb
wakame-vdc-agents-10.12.0 lib/dcmgr/models/frontend_system.rb
wakame-vdc-dcmgr-10.11.0 lib/dcmgr/models/frontend_system.rb
wakame-vdc-agents-10.11.0 lib/dcmgr/models/frontend_system.rb