Class: Pineapples::Actions::EmptyDirectory

Inherits:
Action
  • Object
show all
Defined in:
lib/pineapples/actions/empty_directory.rb

Direct Known Subclasses

CreateFile, Directory, InsertIntoFile

Constant Summary

Constants inherited from Action

Action::STATUS_COLORS

Instance Attribute Summary collapse

Attributes inherited from Action

#colors, #generator, #options

Instance Method Summary collapse

Methods inherited from Action

colors, inherited, #skip?, status_color

Constructor Details

#initialize(generator, target, options = {}) ⇒ EmptyDirectory

Returns a new instance of EmptyDirectory.



25
26
27
28
29
30
# File 'lib/pineapples/actions/empty_directory.rb', line 25

def initialize(generator, target, options = {})
  super(generator, options)

  @target = Target.new(target, generator)
  @skip = @target.skip?
end

Instance Attribute Details

#skipObject (readonly)

Returns the value of attribute skip.



18
19
20
# File 'lib/pineapples/actions/empty_directory.rb', line 18

def skip
  @skip
end

#targetObject (readonly)

Returns the value of attribute target.



18
19
20
# File 'lib/pineapples/actions/empty_directory.rb', line 18

def target
  @target
end

Instance Method Details

#exists?Boolean

Returns:

  • (Boolean)


44
45
46
# File 'lib/pineapples/actions/empty_directory.rb', line 44

def exists?
  ::File.exist?(target.fullpath)
end

#invoke!Object



32
33
34
35
36
# File 'lib/pineapples/actions/empty_directory.rb', line 32

def invoke!
  invoke_with_conflict_check do
    ::FileUtils.mkdir_p(target.fullpath)
  end
end

#revoke!Object



38
39
40
41
42
# File 'lib/pineapples/actions/empty_directory.rb', line 38

def revoke!
  say_status :remove
  ::FileUtils.rm_rf(target.fullpath) if execute? && exists?
  given_target
end