class Object
Public Instance Methods
assert(condition, message = 'Assertion failed!')
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 18 def assert(condition, message = 'Assertion failed!') raise AssertionError, message unless condition end
assert_property!(param)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 22 def assert_property!(param) result = nil if self.respond_to?(:has_key?) && self.has_key?(param) result = self[param] elsif self.respond_to?(param) result = self.send(param) else assert(false, "Not found params '#{param}'.") end result end
fetch_property(param)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 46 def fetch_property(param) result = assert_property!(param) assert(!result.nil?, "Param '#{param}' is nil") result end
fetch_property_or_default(param, default)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 52 def fetch_property_or_default(param, default) if respond_to?(param) && !self.send(param).nil? self.send(param) else default end end
get_class_by_name(class_name)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 10 def get_class_by_name(class_name) assert(!class_name.nil? && !class_name.empty?, 'Class name must be non nil or empty') class_name.split('::').inject(Object) do |mod, class_name| mod.const_get(class_name) end end
get_response_error(exception = nil, response = nil)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 67 def get_response_error(exception = nil, response = nil) unless exception.nil? response = exception.to_s if response.nil? AppInfo.instance.on_server_error(exception.to_s, exception) end { status: EResponseType::ERT_ERROR, response: response } end
get_response_ok(response = nil)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 60 def get_response_ok(response = nil) { status: EResponseType::ERT_OK, response: response } end
get_var_from_env(name)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 36 def get_var_from_env(name) result = ENV[name] if result.nil? puts "can't find environment variable #{name}" end result end
update_const(class_obj, const_name, value)
click to toggle source
# File lib/mrpin/core/extensions/object.rb, line 3 def update_const(class_obj, const_name, value) class_obj.send(:remove_const, const_name) if class_obj.const_defined?(const_name) class_obj.const_set(const_name, value) nil end