Class: Deas::Runner

Inherits:
Object
  • Object
show all
Defined in:
lib/deas/runner.rb

Direct Known Subclasses

DeasRunner, TestRunner

Defined Under Namespace

Classes: NormalizedParams

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(handler_class, args = nil) ⇒ Runner

Returns a new instance of Runner.



14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/deas/runner.rb', line 14

def initialize(handler_class, args = nil)
  @handler_class = handler_class
  @handler = @handler_class.new(self)

  a = args || {}
  @request         = a[:request]
  @response        = a[:response]
  @session         = a[:session]
  @params          = a[:params] || {}
  @logger          = a[:logger] || Deas::NullLogger.new
  @router          = a[:router] || Deas::Router.new
  @template_source = a[:template_source] || Deas::NullTemplateSource.new
end

Instance Attribute Details

#handlerObject (readonly)

Returns the value of attribute handler.



10
11
12
# File 'lib/deas/runner.rb', line 10

def handler
  @handler
end

#handler_classObject (readonly)

Returns the value of attribute handler_class.



10
11
12
# File 'lib/deas/runner.rb', line 10

def handler_class
  @handler_class
end

#loggerObject (readonly)

Returns the value of attribute logger.



12
13
14
# File 'lib/deas/runner.rb', line 12

def logger
  @logger
end

#paramsObject (readonly)

Returns the value of attribute params.



12
13
14
# File 'lib/deas/runner.rb', line 12

def params
  @params
end

#requestObject (readonly)

Returns the value of attribute request.



11
12
13
# File 'lib/deas/runner.rb', line 11

def request
  @request
end

#responseObject (readonly)

Returns the value of attribute response.



11
12
13
# File 'lib/deas/runner.rb', line 11

def response
  @response
end

#routerObject (readonly)

Returns the value of attribute router.



12
13
14
# File 'lib/deas/runner.rb', line 12

def router
  @router
end

#sessionObject (readonly)

Returns the value of attribute session.



11
12
13
# File 'lib/deas/runner.rb', line 11

def session
  @session
end

#template_sourceObject (readonly)

Returns the value of attribute template_source.



12
13
14
# File 'lib/deas/runner.rb', line 12

def template_source
  @template_source
end

Instance Method Details

#content_type(*args) ⇒ Object

Raises:

  • (NotImplementedError)


30
# File 'lib/deas/runner.rb', line 30

def content_type(*args);   raise NotImplementedError; end

#halt(*args) ⇒ Object

Raises:

  • (NotImplementedError)


28
# File 'lib/deas/runner.rb', line 28

def halt(*args);           raise NotImplementedError; end

#headers(*args) ⇒ Object

Raises:

  • (NotImplementedError)


32
# File 'lib/deas/runner.rb', line 32

def headers(*args);        raise NotImplementedError; end

#partial(template_name, locals = nil) ⇒ Object



46
47
48
# File 'lib/deas/runner.rb', line 46

def partial(template_name, locals = nil)
  source_partial(self.template_source, template_name, locals)
end

#redirect(*args) ⇒ Object

Raises:

  • (NotImplementedError)


29
# File 'lib/deas/runner.rb', line 29

def redirect(*args);       raise NotImplementedError; end

#render(template_name, locals = nil) ⇒ Object

the render methods are used by both the deas and test runners so we implement here



38
39
40
# File 'lib/deas/runner.rb', line 38

def render(template_name, locals = nil)
  source_render(self.template_source, template_name, locals)
end

#send_file(*args) ⇒ Object

Raises:

  • (NotImplementedError)


33
# File 'lib/deas/runner.rb', line 33

def send_file(*args);      raise NotImplementedError; end

#source_partial(source, template_name, locals = nil) ⇒ Object



50
51
52
# File 'lib/deas/runner.rb', line 50

def source_partial(source, template_name, locals = nil)
  source.partial(template_name, locals || {})
end

#source_render(source, template_name, locals = nil) ⇒ Object



42
43
44
# File 'lib/deas/runner.rb', line 42

def source_render(source, template_name, locals = nil)
  source.render(template_name, self.handler, locals || {})
end

#status(*args) ⇒ Object

Raises:

  • (NotImplementedError)


31
# File 'lib/deas/runner.rb', line 31

def status(*args);         raise NotImplementedError; end