Class: Rcli::Actions::EmptyDirectory
- Inherits:
-
Object
- Object
- Rcli::Actions::EmptyDirectory
- Defined in:
- lib/core/actions/empty_directory.rb,
lib/core/thor_actions/empty_directory.rb
Overview
Class which holds create directory logic. This is the base class for other actions like create_file and directory.
This implementation is based in Templater actions, created by Jonas Nicklas and Michael S. Klishin under MIT LICENSE.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#base ⇒ Object
readonly
:nodoc:.
-
#config ⇒ Object
readonly
:nodoc:.
-
#destination ⇒ Object
readonly
:nodoc:.
-
#given_destination ⇒ Object
readonly
:nodoc:.
-
#relative_destination ⇒ Object
readonly
:nodoc:.
Instance Method Summary collapse
- #create ⇒ Object
-
#exists? ⇒ Boolean
Checks if the destination file already exists.
-
#initialize(base, destination, config = {}) ⇒ EmptyDirectory
constructor
Initializes given the source and destination.
- #invoke! ⇒ Object
- #revoke! ⇒ Object
Constructor Details
#initialize(base, destination, config = {}) ⇒ EmptyDirectory
Initializes given the source and destination.
Parameters
- base<Thor::Base>
-
A Thor::Base instance
- source<String>
-
Relative path to the source of this file
- destination<String>
-
Relative path to the destination of this file
- config<Hash>
-
give :verbose => false to not log the status.
35 36 37 |
# File 'lib/core/actions/empty_directory.rb', line 35 def initialize(destination) @destination = destination end |
Instance Attribute Details
#base ⇒ Object (readonly)
:nodoc:
25 26 27 |
# File 'lib/core/thor_actions/empty_directory.rb', line 25 def base @base end |
#config ⇒ Object (readonly)
:nodoc:
25 26 27 |
# File 'lib/core/thor_actions/empty_directory.rb', line 25 def config @config end |
#destination ⇒ Object
:nodoc:
25 26 27 |
# File 'lib/core/actions/empty_directory.rb', line 25 def destination @destination end |
#given_destination ⇒ Object (readonly)
:nodoc:
25 26 27 |
# File 'lib/core/actions/empty_directory.rb', line 25 def given_destination @given_destination end |
#relative_destination ⇒ Object (readonly)
:nodoc:
25 26 27 |
# File 'lib/core/actions/empty_directory.rb', line 25 def relative_destination @relative_destination end |
Instance Method Details
#create ⇒ Object
48 49 50 51 52 53 54 55 |
# File 'lib/core/actions/empty_directory.rb', line 48 def create if exists? return false; else ::FileUtils.mkdir_p(@destination) end end |
#exists? ⇒ Boolean
Checks if the destination file already exists.
Returns
- Boolean
-
true if the file exists, false otherwise.
44 45 46 |
# File 'lib/core/actions/empty_directory.rb', line 44 def exists? ::File.exists?(destination) end |
#invoke! ⇒ Object
49 50 51 52 53 |
# File 'lib/core/thor_actions/empty_directory.rb', line 49 def invoke! invoke_with_conflict_check do ::FileUtils.mkdir_p(destination) end end |
#revoke! ⇒ Object
57 58 59 60 61 |
# File 'lib/core/actions/empty_directory.rb', line 57 def revoke! say_status :remove, :red ::FileUtils.rm_rf(destination) if !pretend? && exists? given_destination end |