Class: AdminScript::Base

Inherits:
Object
  • Object
show all
Extended by:
ActiveModel::Callbacks
Includes:
ActiveModel::Attributes, ActiveModel::Model, ActiveModel::Validations::Callbacks, ActiveModelAttributes
Defined in:
lib/admin_script/base.rb

Constant Summary collapse

RESERVED_CLASSE_NAMES =
%w(
  AdminScript::Base
  AdminScript::Configuration
  AdminScript::Engine
  AdminScript::VERSION
).freeze

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBase

Returns a new instance of Base.



55
56
57
58
59
# File 'lib/admin_script/base.rb', line 55

def initialize(*)
  run_callbacks :initialize do
    super
  end
end

Instance Attribute Details

#failure_messageObject

Returns the value of attribute failure_message.



20
21
22
# File 'lib/admin_script/base.rb', line 20

def failure_message
  @failure_message
end

#location_urlObject

Returns the value of attribute location_url.



20
21
22
# File 'lib/admin_script/base.rb', line 20

def location_url
  @location_url
end

#success_messageObject

Returns the value of attribute success_message.



20
21
22
# File 'lib/admin_script/base.rb', line 20

def success_message
  @success_message
end

Class Method Details

.find_class(element) ⇒ Object



46
47
48
# File 'lib/admin_script/base.rb', line 46

def find_class(element)
  subclasses.find { |klass| klass.to_param == element }
end

.inherited(subclass) ⇒ Object



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/admin_script/base.rb', line 30

def inherited(subclass)
  if RESERVED_CLASSE_NAMES.include?(subclass.to_s)
    raise ArgumentError, "Reserved class name given. #{subclass}"
  end

  super

  subclass.class_exec do
    cattr_accessor :description
  end
end

.scriptObject



50
51
52
# File 'lib/admin_script/base.rb', line 50

def script
  instance_method(:perform).source
end

.to_paramObject



42
43
44
# File 'lib/admin_script/base.rb', line 42

def to_param
  model_name.element
end

Instance Method Details

#performObject

Raises:

  • (NotImplementedError)


69
70
71
# File 'lib/admin_script/base.rb', line 69

def perform
  raise NotImplementedError, 'not implemented yet.'
end

#persisted?Boolean

Returns:

  • (Boolean)


61
62
63
# File 'lib/admin_script/base.rb', line 61

def persisted?
  true
end

#to_paramObject



65
66
67
# File 'lib/admin_script/base.rb', line 65

def to_param
  self.class.to_param
end