class NexusCli::Artifact
Attributes
artifact_id[R]
classifier[R]
extension[R]
group_id[R]
version[RW]
Public Class Methods
new(coordinates)
click to toggle source
Constructs an artifact object from Maven co-ordinates See maven.apache.org/pom.html#Maven_coordinatess for more information on maven coordinatess
@param coordinates [String] the Maven identifier
@return [Array<String>] an Array with four elements
# File lib/nexus_cli/artifact.rb, line 13 def initialize(coordinates) @group_id, @artifact_id, @extension, @classifier, @version = parse_coordinates(coordinates) end
Public Instance Methods
file_name()
click to toggle source
# File lib/nexus_cli/artifact.rb, line 17 def file_name if classifier.nil? "#{artifact_id}-#{version}.#{extension}" else "#{artifact_id}-#{version}-#{classifier}.#{extension}" end end
Private Instance Methods
parse_coordinates(coordinates)
click to toggle source
# File lib/nexus_cli/artifact.rb, line 27 def parse_coordinates(coordinates) split_coordinates = coordinates.split(":") if(split_coordinates.size < 3 or split_coordinates.size > 5) raise ArtifactMalformedException end group_id = split_coordinates[0] artifact_id = split_coordinates[1] extension = split_coordinates.size > 3 ? split_coordinates[2] : "jar" classifier = split_coordinates.size > 4 ? split_coordinates[3] : nil version = split_coordinates[-1] version.upcase! if version == "latest" return group_id, artifact_id, extension, classifier, version end