Class: Maven::Model::PluginHash

Inherits:
Hash
  • Object
show all
Defined in:
lib/maven/model/utils.rb

Instance Method Summary collapse

Instance Method Details

#adjust_key(name) ⇒ Object



246
247
248
249
250
251
252
253
254
255
256
257
# File 'lib/maven/model/utils.rb', line 246

def adjust_key(name)
  name = name.to_s
  if (name =~ /\:/).nil?
    if [:jruby, :gem, :rspec, :rake, :minitest, :rails3, :gemify, :cucumber, :runit, :bundler].member? name.to_sym
      "de.saumya.mojo:#{name}-maven-plugin"
    else
      "maven-#{name}-plugin"
    end
  else
    name
  end
end

#get(*args, &block) ⇒ Object Also known as: new, add



267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
# File 'lib/maven/model/utils.rb', line 267

def get(*args, &block)
  case args.size
  when 3
    name = "#{args[0]}:#{args[1]}"
    version = args[2]
  when 2
    name = args[0].to_s
    version = args[1]
  when 1
    name = args[0].to_s
  else
    raise "need name"
  end

  name = adjust_key(name)
  group_id = name =~ /\:/ ? name.sub(/:.+$/, '') : nil
  artifact_id = name.sub(/^.+:/, '')

  k = "#{group_id}:#{artifact_id}".to_sym
  result = self[k]
  if result.nil?
    keys << k
    result = (self[k] = Plugin.new(group_id, artifact_id, version))
  end
  result.version = version if version
  if block
    block.call(result)
  end
  result
end

#key?(k) ⇒ Boolean

Returns:

  • (Boolean)


259
260
261
# File 'lib/maven/model/utils.rb', line 259

def key?(k)
  super( adjust_key(k).to_sym )
end

#keysObject



263
264
265
# File 'lib/maven/model/utils.rb', line 263

def keys
  @keys ||= []
end