Class: BaseIndexer::ItemsController

Inherits:
ApplicationController show all
Defined in:
app/controllers/base_indexer/items_controller.rb

Instance Method Summary collapse

Instance Method Details

#destroyObject



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
# File 'app/controllers/base_indexer/items_controller.rb', line 25

def destroy
  begin
    druid = params[:druid]
    Rails.logger.debug "Receiving deleting #{druid}"
    
    indexer = BaseIndexer.indexer_class.constantize.new
    indexer.delete druid
    @status= report_success
    render status: 200
    Rails.logger.debug "Completing deleting #{druid}"
  rescue Exception => e  
    @status =  report_failure request.method_symbol, params, e
    Rails.logger.error @status
    render status: 202
  end
end

#newObject



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/controllers/base_indexer/items_controller.rb', line 7

def new
  begin  
    druid = params[:druid]
    Rails.logger.debug "Receiving indexing #{druid}"
    targets = params[:subtargets]
    
    indexer = BaseIndexer.indexer_class.constantize.new
    indexer.index druid, targets
    @status = report_success
    render status: 200
    Rails.logger.debug "Completing indexing #{druid}"
  rescue Exception => e  
    @status = report_failure request.method_symbol, params, e
    Rails.logger.error @status
    render status: 202
  end
end

#report_failure(method_symbol, params, e) ⇒ Object



42
43
44
# File 'app/controllers/base_indexer/items_controller.rb', line 42

def report_failure method_symbol, params, e
  return "#{method_symbol} #{params}\n\n#{e.inspect}\n#{e.message}\n#{e.backtrace}"
end

#report_successObject



46
47
48
# File 'app/controllers/base_indexer/items_controller.rb', line 46

def report_success
  return "success"
end