Class: Vines::Services::Controller::BaseController

Inherits:
Object
  • Object
show all
Includes:
Nokogiri::XML, Log, Vines::Services::CouchModels
Defined in:
lib/vines/services/controller/base_controller.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(node, stream, vhost) ⇒ BaseController

Returns a new instance of BaseController.



17
18
19
20
21
# File 'lib/vines/services/controller/base_controller.rb', line 17

def initialize(node, stream, vhost)
  @node, @stream, @storage = node, stream, vhost.storage
  @uploads = vhost.uploads
  @current_user = nil
end

Instance Attribute Details

#nodeObject (readonly)

Returns the value of attribute node.



15
16
17
# File 'lib/vines/services/controller/base_controller.rb', line 15

def node
  @node
end

#storageObject (readonly)

Returns the value of attribute storage.



15
16
17
# File 'lib/vines/services/controller/base_controller.rb', line 15

def storage
  @storage
end

#streamObject (readonly)

Returns the value of attribute stream.



15
16
17
# File 'lib/vines/services/controller/base_controller.rb', line 15

def stream
  @stream
end

#uploadsObject (readonly)

Returns the value of attribute uploads.



15
16
17
# File 'lib/vines/services/controller/base_controller.rb', line 15

def uploads
  @uploads
end

Class Method Details

.register(*args) ⇒ Object



11
12
13
# File 'lib/vines/services/controller/base_controller.rb', line 11

def self.register(*args)
  Connection.register(*args, self)
end

Instance Method Details

#processObject



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/vines/services/controller/base_controller.rb', line 23

def process
  # must be addressed to component, not a service
  return unless to_component?
  if node.get?
    get
  elsif node.set? && node.elements.first['action'] == 'delete'
    delete
  elsif node.set?
    save
  end
rescue Forbidden
  raise
rescue
  send_error('not-acceptable')
end