class Jars::JarDetails
def artifact_id
def artifact_id self[1] end
def classifier
def classifier return nil if size == 5 self[2] end
def file
def file file = self[-1].strip file.empty? ? path : file end
def gacv
def gacv classifier ? self[0..3] : self[0..2] end
def group_id
def group_id self[0] end
def path
def path if scope == :system # replace maven like system properties embedded into the string self[-1].gsub(/\$\{[a-zA-Z.]+\}/) do |a| ENV_JAVA[a[2..-2]] || a end else File.join(Jars.home, group_id.gsub(/[.]/, '/'), artifact_id, version, "#{gacv[1..].join('-')}.jar") end end
def scope
def scope self[-2].to_sym end
def version
def version self[-3] end