lib/cloud_powers/helper.rb in cloud_powers-0.1.5 vs lib/cloud_powers/helper.rb in cloud_powers-0.2
- old
+ new
@@ -12,16 +12,16 @@
def attr_map!(keys)
keys.map do |attr|
key = to_i_var(attr)
value = yield key if block_given?
- instance_variable_set(key, value)
+ instance_variable_set(key, value) unless instance_variable_get(to_i_var(key))
end
end
- def env(key)
- ENV[to_snake(key).upcase]
+ def called_from
+ File.expand_path(File.dirname($0))
end
def create_logger
logger = Logger.new(STDOUT)
logger.datetime_format = '%Y-%m-%d %H:%M:%S'
@@ -43,11 +43,11 @@
end
# Gets the path from the environment and sets @log_file using the path
# @returns @log_file path <String>
def log_file
- @log_file ||= env('LOG_FILE')
+ @log_file ||= zfind('LOG_FILE')
end
# @returns: An instance of Logger, cached as @logger
def logger
@logger ||= create_logger
@@ -105,11 +105,12 @@
step_two = to_pascal(step_one)
step_two[0, 1].downcase + step_two[1..-1]
end
def to_i_var(var)
- "@#{to_snake(var)}"
+ var = var.to_s unless var.kind_of? String
+ /^\W*@\w+/ =~ var ? to_snake(var) : "@#{to_snake(var)}"
end
def to_pascal(var)
var = var.to_s unless var.kind_of? String
var.gsub(/^(.{1})|\W.{1}|\_.{1}/) { |s| s.gsub(/[^a-z0-9]+/i, '').capitalize }
@@ -120,10 +121,9 @@
end
def to_snake(var)
var = var.to_s unless var.kind_of? String
- # var.gsub(/\W/, '_').downcase
var.gsub(/:{2}|\//, '_').
gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
gsub(/([a-z\d])([A-Z])/,'\1_\2').
gsub(/\s+/, '_').
tr("-", "_").