Class: Puppet::FileSystem::MemoryImpl Private

Inherits:
Object
  • Object
show all
Defined in:
lib/puppet/file_system/memory_impl.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Constructor Details

#initialize(*files) ⇒ MemoryImpl

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of MemoryImpl.


2
3
4
# File 'lib/puppet/file_system/memory_impl.rb', line 2

def initialize(*files)
  @files = files + all_children_of(files)
end

Instance Method Details

#assert_path(path) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


77
78
79
80
81
82
83
# File 'lib/puppet/file_system/memory_impl.rb', line 77

def assert_path(path)
  if path.is_a?(Puppet::FileSystem::MemoryFile)
    path
  else
    find(path) or raise ArgumentError, _("Unable to find registered object for %{path}") % { path: path.inspect }
  end
end

#basename(path) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


51
52
53
# File 'lib/puppet/file_system/memory_impl.rb', line 51

def basename(path)
  path.duplicate_as(File.basename(path_string(path)))
end

#children(path) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


39
40
41
# File 'lib/puppet/file_system/memory_impl.rb', line 39

def children(path)
  path.children
end

#directory?(path) ⇒ Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)

14
15
16
# File 'lib/puppet/file_system/memory_impl.rb', line 14

def directory?(path)
  path.directory?
end

#each_line(path, &block) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


43
44
45
# File 'lib/puppet/file_system/memory_impl.rb', line 43

def each_line(path, &block)
  path.each_line(&block)
end

#executable?(path) ⇒ Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)

22
23
24
# File 'lib/puppet/file_system/memory_impl.rb', line 22

def executable?(path)
  path.executable?
end

#exist?(path) ⇒ Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)

10
11
12
# File 'lib/puppet/file_system/memory_impl.rb', line 10

def exist?(path)
  path.exist?
end

#expand_path(path, dir_string = nil) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


6
7
8
# File 'lib/puppet/file_system/memory_impl.rb', line 6

def expand_path(path, dir_string = nil)
  File.expand_path(path, dir_string)
end

#file?(path) ⇒ Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)

18
19
20
# File 'lib/puppet/file_system/memory_impl.rb', line 18

def file?(path)
  path.file?
end

#open(path, *args, &block) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


68
69
70
71
72
73
74
75
# File 'lib/puppet/file_system/memory_impl.rb', line 68

def open(path, *args, &block)
  handle = assert_path(path).handle
  if block_given?
    yield handle
  else
    return handle
  end
end

#path_string(object) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


55
56
57
# File 'lib/puppet/file_system/memory_impl.rb', line 55

def path_string(object)
  object.path
end

#pathname(path) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


47
48
49
# File 'lib/puppet/file_system/memory_impl.rb', line 47

def pathname(path)
  find(path) || Puppet::FileSystem::MemoryFile.a_missing_file(path)
end

#read(path, opts = {}) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


59
60
61
62
# File 'lib/puppet/file_system/memory_impl.rb', line 59

def read(path, opts = {})
  handle = assert_path(path).handle
  handle.read
end

#read_preserve_line_endings(path) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


64
65
66
# File 'lib/puppet/file_system/memory_impl.rb', line 64

def read_preserve_line_endings(path)
  read(path)
end

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.


30
31
32
33
34
35
36
37
# File 'lib/puppet/file_system/memory_impl.rb', line 30

def readlink(path)
  path = path.path
  link = find(path)
  return Puppet::FileSystem::MemoryFile.a_missing_file(path) unless link
  source = link.source_path
  return Puppet::FileSystem::MemoryFile.a_missing_file(link) unless source
  find(source) || Puppet::FileSystem::MemoryFile.a_missing_file(source)
end

#symlink?(path) ⇒ Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)

26
27
28
# File 'lib/puppet/file_system/memory_impl.rb', line 26

def symlink?(path)
  path.symlink?
end