Module: Persistence::Adapter::Abstract::EnableDisable

Included in:
Mock::AdapterInterface
Defined in:
lib/persistence/adapter/abstract/enable_disable.rb

Overview

Provides home directory and enable/disable methods to including adapter class instances.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#home_directoryString

Track directory where persistence data is stored.

@!attribute

Returns:

  • (String)

    Path to directory.



41
42
43
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 41

def home_directory
  @home_directory
end

Instance Method Details

#disableObject

Disable adapter to prohibit use. Abstract method simply provides tracking of whether adapter is enabled or not.

Returns:

  • self



69
70
71
72
73
74
75
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 69

def disable

  @enabled = false

  return self

end

#disabled?true/false

Reports whether adapter is disabled, prohibiting use.

Returns:

  • (true/false)

    Whether adapter is disabled.



101
102
103
104
105
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 101

def disabled?
  
  return ! @enabled

end

#enableObject

Enable adapter for use. Abstract method simply provides tracking of whether adapter is enabled or not.

Returns:

  • self



52
53
54
55
56
57
58
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 52

def enable

  @enabled = true

  return self

end

#enabled?true/false

Reports whether adapter is enabled for use.

Returns:

  • (true/false)

    Whether adapter is enabled.



86
87
88
89
90
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 86

def enabled?

  return @enabled

end

#initialize(home_directory = nil) ⇒ Object

Initialize with home directory. Creates directory if it does not exist.

Parameters:

  • home_directory (defaults to: nil)

    Directory where persistence data should be stored.



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/persistence/adapter/abstract/enable_disable.rb', line 18

def initialize( home_directory = nil )

  super() if defined?( super )

  @enabled = false

  # initialize home directory if necessary
  if @home_directory = home_directory and ! ::File.exists?( home_directory )
    ::Dir.mkdir( home_directory )
  end
  
end