File indexing completed on 2025-01-19 06:55:04
0001 class VariableSock 0002 include KMuddy 0003 0004 def initialize 0005 if ENV.has_key?('KMUDDY_SOCKET') 0006 @socket_name = ENV['KMUDDY_SOCKET'] 0007 else 0008 warn("Variable KMUDDY_SOCKET is not set - variable support won't work!") 0009 end 0010 0011 begin 0012 @socketfile = UNIXSocket.new(@socket_name) 0013 rescue StandardError => errormsg 0014 warn("VariableSock.initialize: #{errormsg}") 0015 end 0016 end 0017 0018 def close 0019 unless(@socketfile.closed?) 0020 @socketfile.close 0021 else 0022 warn("VariableSock.close: The pipe is not open.") 0023 end 0024 end 0025 0026 def get(name) 0027 unless(@socket_name.nil? || @socket_name.empty?) 0028 begin 0029 @socketfile.puts("get #{name}") 0030 return @socketfile.gets.chomp 0031 rescue StandardError => errormsg 0032 warn("VariableSock.get: #{errormsg}") 0033 end 0034 else 0035 warn("VariableSock.get: The pipe is not open.") 0036 end 0037 end 0038 0039 def set(name,value) 0040 unless(@socket_name.nil? || @socket_name.empty?) 0041 begin 0042 @socketfile.puts("set #{name} #{value}") 0043 return @socketfile.gets.chomp 0044 rescue StandardError => errormsg 0045 warn("VariableSock.set: #{errormsg}") 0046 end 0047 else 0048 warn("VariableSock.set: The pipe is not open.") 0049 end 0050 end 0051 0052 def unset(name) 0053 unless(@socket_name.nil? || @socket_name.empty?) 0054 begin 0055 @socketfile.puts("unset #{name}") 0056 return @socketfile.gets.chomp 0057 rescue StandardError => errormsg 0058 warn("VariableSock.unset: #{errormsg}") 0059 end 0060 else 0061 warn("VariableSock.unset: The pipe is not open.") 0062 end 0063 end 0064 0065 def inc(name) 0066 unless(@socket_name.nil? || @socket_name.empty?) 0067 begin 0068 @socketfile.puts("inc #{name}") 0069 return @socketfile.gets.chomp 0070 rescue StandardError => errormsg 0071 warn("VariableSock.inc: #{errormsg}") 0072 end 0073 else 0074 warn("VariableSock.inc: The pipe is not open.") 0075 end 0076 end 0077 0078 def dec(name) 0079 unless(@socket_name.nil? || @socket_name.empty?) 0080 begin 0081 @socketfile.puts("dec #{name}") 0082 return @socketfile.gets.chomp 0083 rescue StandardError => errormsg 0084 warn("VariableSock.dec: #{errormsg}") 0085 end 0086 else 0087 warn("VariableSock.dec: The pipe is not open.") 0088 end 0089 end 0090 0091 def request(name) 0092 unless(@socket_name.nil? || @socket_name.empty?) 0093 begin 0094 @socketfile.puts("request #{name}") 0095 return @socketfile.gets.chomp 0096 rescue StandardError => errormsg 0097 warn("VariableSock.request: #{errormsg}") 0098 end 0099 else 0100 warn("VariableSock.request: The pipe is not open.") 0101 end 0102 end 0103 0104 def provide(name) 0105 unless(@socket_name.nil? || @socket_name.empty?) 0106 begin 0107 @socketfile.puts("provide #{name}") 0108 return @socketfile.gets.chomp 0109 rescue StandardError => errormsg 0110 warn("VariableSock.provide: #{errormsg}") 0111 end 0112 else 0113 warn("VariableSock.provide: The pipe is not open.") 0114 end 0115 end 0116 0117 def lock(name) 0118 unless(@socket_name.nil? || @socket_name.empty?) 0119 begin 0120 @socketfile.puts("lock #{name}") 0121 return @socketfile.gets.chomp 0122 rescue StandardError => errormsg 0123 warn("VariableSock.lock: #{errormsg}") 0124 end 0125 else 0126 warn("VariableSock.lock: The pipe is not open.") 0127 end 0128 end 0129 0130 def unlock(name) 0131 unless(@socket_name.nil? || @socket_name.empty?) 0132 begin 0133 @socketfile.puts("unlock #{name}") 0134 return @socketfile.gets.chomp 0135 rescue StandardError => errormsg 0136 warn("VariableSock.unlock: #{errormsg}") 0137 end 0138 else 0139 warn("VariableSock.unlock: The pipe is not open.") 0140 end 0141 end 0142 0143 def command(command) 0144 unless(@socket_name.nil? || @socket_name.empty?) 0145 begin 0146 @socketfile.puts("send #{command}") 0147 @socketfile.gets.chomp 0148 @socketfile.puts("set lastcommand #{command}") 0149 return @socketfile.gets.chomp 0150 rescue StandardError => errormsg 0151 warn("VariableSock.command: #{errormsg}") 0152 end 0153 else 0154 warn("VariableSock.command: The pipe is not open.") 0155 end 0156 end 0157 end