Class: Puppet::Util::Pidlock
Instance Method Summary collapse
- #file_path ⇒ Object
-
#initialize(lockfile) ⇒ Pidlock
constructor
A new instance of Pidlock.
- #lock ⇒ Object
- #lock_pid ⇒ Object
- #locked? ⇒ Boolean
- #mine? ⇒ Boolean
- #unlock ⇒ Object
Constructor Details
Instance Method Details
#file_path ⇒ Object
43 44 45 |
# File 'lib/puppet/util/pidlock.rb', line 43 def file_path @lockfile.file_path end |
#lock ⇒ Object
20 21 22 23 24 |
# File 'lib/puppet/util/pidlock.rb', line 20 def lock return mine? if locked? @lockfile.lock(Process.pid) end |
#lock_pid ⇒ Object
34 35 36 37 38 39 40 41 |
# File 'lib/puppet/util/pidlock.rb', line 34 def lock_pid pid = @lockfile.lock_data begin Integer(pid) rescue ArgumentError, TypeError nil end end |
#locked? ⇒ Boolean
11 12 13 14 |
# File 'lib/puppet/util/pidlock.rb', line 11 def locked? clear_if_stale @lockfile.locked? end |
#mine? ⇒ Boolean
16 17 18 |
# File 'lib/puppet/util/pidlock.rb', line 16 def mine? Process.pid == lock_pid end |
#unlock ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/puppet/util/pidlock.rb', line 26 def unlock if mine? @lockfile.unlock else false end end |