Class: Task

Inherits:
ActiveRecord::Base
  • Object
show all
Includes:
ActsAsFile, FluentdServer::Logger, Sinatra::Decorator::Decoratable, TaskRunner
Defined in:
lib/fluentd_server/model.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods included from TaskRunner

#before, #configtest, #delayed_configtest, #delayed_status, #failure, included, #restart, #serf_event, #serf_query, #status, #write_event_header, #write_query_header

Methods included from FluentdServer::Logger

included, #logger, #logger=

Class Method Details

.create_and_delete(*args) ⇒ Object



59
60
61
62
63
64
65
66
# File 'lib/fluentd_server/model.rb', line 59

def self.create_and_delete(*args)
  created = self.create(*args)
  if self.count > FluentdServer::Config.task_max_num
    oldest = self.first
    oldest.destroy_with_file
  end
  created
end

Instance Method Details

#error?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'lib/fluentd_server/model.rb', line 51

def error?
  self.finished? and self.exit_code != 0
end

#filenameObject



36
37
38
39
# File 'lib/fluentd_server/model.rb', line 36

def filename
  prefix = "#{self.id.to_s.rjust(4, '0')}" if self.id
  File.join(FluentdServer::Config.job_dir, "#{prefix}_result.txt") if prefix
end

#finished?Boolean

Returns:

  • (Boolean)


43
44
45
# File 'lib/fluentd_server/model.rb', line 43

def finished?
  !self.exit_code.nil?
end

#new?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'lib/fluentd_server/model.rb', line 55

def new?
  self.id.nil?
end

#successful?Boolean

Returns:

  • (Boolean)


47
48
49
# File 'lib/fluentd_server/model.rb', line 47

def successful?
  self.finished? and self.exit_code == 0
end