ruby-maven 3.0.3.0.28.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (58) hide show
  1. data/LICENSE.txt +202 -0
  2. data/NOTICE.txt +23 -0
  3. data/README.txt +77 -0
  4. data/bin/gwt +59 -0
  5. data/bin/jetty-run +25 -0
  6. data/bin/m2.conf +7 -0
  7. data/bin/mvn +172 -0
  8. data/bin/mvn.bat +197 -0
  9. data/bin/mvnDebug +177 -0
  10. data/bin/mvnDebug.bat +200 -0
  11. data/bin/mvnyjp +193 -0
  12. data/bin/rmvn +9 -0
  13. data/bin/tomcat-run +25 -0
  14. data/boot/plexus-classworlds-2.4.jar +0 -0
  15. data/conf/settings.xml +257 -0
  16. data/lib/aether-api-1.11.jar +0 -0
  17. data/lib/aether-connector-wagon-1.11.jar +0 -0
  18. data/lib/aether-impl-1.11.jar +0 -0
  19. data/lib/aether-spi-1.11.jar +0 -0
  20. data/lib/aether-util-1.11.jar +0 -0
  21. data/lib/commons-cli-1.2.jar +0 -0
  22. data/lib/ext/README.txt +2 -0
  23. data/lib/maven-aether-provider-3.0.3.jar +0 -0
  24. data/lib/maven-artifact-3.0.3.jar +0 -0
  25. data/lib/maven-compat-3.0.3.jar +0 -0
  26. data/lib/maven-core-3.0.3.jar +0 -0
  27. data/lib/maven-embedder-3.0.3.jar +0 -0
  28. data/lib/maven-model-3.0.3.jar +0 -0
  29. data/lib/maven-model-builder-3.0.3.jar +0 -0
  30. data/lib/maven-plugin-api-3.0.3.jar +0 -0
  31. data/lib/maven-repository-metadata-3.0.3.jar +0 -0
  32. data/lib/maven-settings-3.0.3.jar +0 -0
  33. data/lib/maven-settings-builder-3.0.3.jar +0 -0
  34. data/lib/nekohtml-1.9.6.2.jar +0 -0
  35. data/lib/plexus-cipher-1.4.jar +0 -0
  36. data/lib/plexus-component-annotations-1.5.5.jar +0 -0
  37. data/lib/plexus-interpolation-1.14.jar +0 -0
  38. data/lib/plexus-sec-dispatcher-1.3.jar +0 -0
  39. data/lib/plexus-utils-2.0.6.jar +0 -0
  40. data/lib/ruby/maven/model/dependencies.rb +281 -0
  41. data/lib/ruby/maven/model/model.rb +490 -0
  42. data/lib/ruby/maven/model/model_utils.rb +322 -0
  43. data/lib/ruby/maven/tools/execute_in_phase.rb +9 -0
  44. data/lib/ruby/maven/tools/gem_project.rb +387 -0
  45. data/lib/ruby/maven/tools/gemfile_lock.rb +67 -0
  46. data/lib/ruby/maven/tools/pom_generator.rb +61 -0
  47. data/lib/ruby/maven/tools/rails_project.rb +147 -0
  48. data/lib/ruby/maven/tools/versions.rb +11 -0
  49. data/lib/ruby/ruby_maven.rb +206 -0
  50. data/lib/sisu-guice-2.9.4-no_aop.jar +0 -0
  51. data/lib/sisu-inject-bean-2.1.1.jar +0 -0
  52. data/lib/sisu-inject-plexus-2.1.1.jar +0 -0
  53. data/lib/wagon-file-1.0-beta-7.jar +0 -0
  54. data/lib/wagon-http-lightweight-1.0-beta-7.jar +0 -0
  55. data/lib/wagon-http-shared-1.0-beta-7.jar +0 -0
  56. data/lib/wagon-provider-api-1.0-beta-7.jar +0 -0
  57. data/lib/xercesMinimal-1.9.6.2.jar +0 -0
  58. metadata +128 -0
@@ -0,0 +1,490 @@
1
+ require File.join(File.dirname(__FILE__), 'dependencies.rb')
2
+
3
+ module Maven
4
+ module Model
5
+
6
+ class Build < Tag
7
+ tags :source_directory, :script_source_directory, :test_source_directory, :output_directory, :test_output_directory, :default_goal, :directory, :final_name, :plugins
8
+
9
+ def plugins(&block)
10
+ @plugins ||= PluginHash.new
11
+ if block
12
+ block.call(@plugins)
13
+ end
14
+ @plugins
15
+ end
16
+
17
+ def plugin?(name)
18
+ plugins.key?(name)
19
+ end
20
+
21
+ def to_xml(buf = "", indent = "")
22
+ if @final_name.nil? && (@plugins.nil? || @plugins.size == 0)
23
+ ""
24
+ else
25
+ super
26
+ end
27
+ end
28
+ end
29
+
30
+ class Plugin < Coordinate
31
+ tags :extensions, :configuration, :executions
32
+
33
+ include Dependencies
34
+
35
+ def initialize(*args, &block)
36
+ super(*args)
37
+ raise "plugin version must be a concrete version" if version =~ /^[\[\(].+,.*[\]\)]$/
38
+ if block
39
+ block.call(self)
40
+ end
41
+ self
42
+ end
43
+
44
+ def with(config)
45
+ self.configuration config
46
+ end
47
+
48
+ def in_phase(phase, name = nil, &block)
49
+ name = "in_phase_#{phase.to_s.gsub(/-/,'_')}" unless name
50
+ self.executions.get(name) do |exe|
51
+ exe.phase = phase
52
+ block.call(exe) if block
53
+ exe
54
+ end
55
+ end
56
+
57
+ def execute_goal(goal)
58
+ execution.execute_goal(goal)
59
+ end
60
+
61
+ def executions
62
+ @executions ||= ModelHash.new(Execution)
63
+ end
64
+
65
+ def execution(name = nil, &block)
66
+ executions.get(name, &block)
67
+ end
68
+
69
+ def configuration(c = nil)
70
+ @configuration = Configuration.new(c) if c
71
+ @configuration ||= Configuration.new({})
72
+ end
73
+ end
74
+
75
+ class Execution < Tag
76
+ tags :id, :phase, :goals, :inherited, :configuration
77
+
78
+ def initialize(id = nil)
79
+ self.id id if id
80
+ end
81
+
82
+ def configuration(c = nil)
83
+ @configuration = Configuration.new(c) if c
84
+ @configuration ||= Configuration.new({})
85
+ end
86
+
87
+ def execute_goal(g)
88
+ self.goals = g
89
+ self
90
+ end
91
+
92
+ def with(config)
93
+ self.configuration config
94
+ end
95
+
96
+ def goals
97
+ @goals ||= []
98
+ end
99
+
100
+ def goals=(goals)
101
+ @goals = goals.is_a?(Array) ? goals: [goals]
102
+ end
103
+ end
104
+
105
+ class DependencyManagement < Tag
106
+
107
+ include Dependencies
108
+
109
+ def _name
110
+ "dependencyManagement"
111
+ end
112
+ end
113
+
114
+ class Profile < Tag
115
+ tags :id, :activation, :repositories, :plugin_repositories
116
+
117
+ include Dependencies
118
+
119
+ tags :dependency_management, :properties, :build
120
+
121
+ def initialize(id, &block)
122
+ self.id id
123
+ if block
124
+ block.call(self)
125
+ end
126
+ self
127
+ end
128
+
129
+ def properties
130
+ @properties ||= Properties.new
131
+ @properties.map
132
+ end
133
+
134
+ def properties=(props)
135
+ if props.is_a? Hash
136
+ @properties = Properties.new(props)
137
+ else
138
+ @properties = props
139
+ end
140
+ end
141
+
142
+ def build
143
+ @build ||= Build.new
144
+ end
145
+
146
+ def activation(name = nil, value = nil, &block)
147
+ @activation ||= Activation.new
148
+ if name || value
149
+ warn "deprecated, use 'property_activation' instead"
150
+ @activation.property(name, value)
151
+ else
152
+ block.call(@activation) if block
153
+ @activation
154
+ end
155
+ end
156
+
157
+ def repositories(&block)
158
+ @repositories ||= ModelHash.new(Repository)
159
+ if block
160
+ block.call(@repositories)
161
+ end
162
+ @repositories
163
+ end
164
+
165
+ def repository(id, url = nil, &block)
166
+ repo = repositories.get(id, &block)
167
+ repo.url = url if url
168
+ repo
169
+ end
170
+
171
+ def plugin_repositories(&block)
172
+ @plugin_repositories ||= ModelHash.new(PluginRepository)
173
+ if block
174
+ block.call(@plugin_repositories)
175
+ end
176
+ @plugin_repositories
177
+ end
178
+
179
+ def plugin_repository(id, url = nil, &block)
180
+ repo = plugin_repositories.get(id, &block)
181
+ repo.url = url if url
182
+ repo
183
+ end
184
+
185
+ def plugin(*args, &block)
186
+ build.plugins.get(*args, &block)
187
+ end
188
+
189
+ def dependency_management(&block)
190
+ @dependency_management ||= DependencyManagement.new
191
+ if block
192
+ block.call(@dependency_management)
193
+ end
194
+ @dependency_management
195
+ end
196
+ end
197
+
198
+ class Developer < Tag
199
+ tags :id, :name, :email
200
+
201
+ def initialize(*args)
202
+ case args.size
203
+ when 1
204
+ @email = args[0].sub(/.*</, '').sub(/>.*/, '')
205
+ @name = args[0].sub(/\s*<.*/, '')
206
+ when 2
207
+ @name = args[0]
208
+ @email = args[1]
209
+ when 3
210
+ @id = args[0]
211
+ @name = args[1]
212
+ @email = args[2]
213
+ end
214
+ @email = @email[0] if @email.is_a? Array # this produces a partial list
215
+ @id = @email.sub(/@/, '_at_').gsub(/\./, '_dot_') unless @id
216
+ self
217
+ end
218
+ end
219
+
220
+ class License < Tag
221
+ tags :name, :url, :distribution
222
+
223
+ def initialize(*args)
224
+ case args.size
225
+ when 1
226
+ @url = args[0]
227
+ @name = args[0].sub(/.*\//, '').sub(/\.\w+/, '')
228
+ when 2
229
+ @url = args[0]
230
+ @name = args[1]
231
+ when 3
232
+ @url = args[0]
233
+ @name = args[1]
234
+ @distribution = args[2]
235
+ end
236
+ @url = "./#{url}" unless @url =~ /^\.\// || @url =~ /^https?:\/\//
237
+ @distribution = "repo" unless @distribution
238
+ self
239
+ end
240
+ end
241
+
242
+
243
+ class Project < Coordinate
244
+ prepend_tags :model_version, :parent
245
+
246
+ tags :name, :packaging, :description, :url, :developers, :licenses, :repositories, :plugin_repositories
247
+
248
+ include Dependencies
249
+
250
+ tags :dependency_management, :properties, :build, :profiles
251
+
252
+ def initialize(*args, &block)
253
+ super(*args)
254
+ model_version "4.0.0"
255
+ if block
256
+ block.call(self)
257
+ end
258
+ self
259
+ end
260
+
261
+ def _name
262
+ "project"
263
+ end
264
+
265
+ def version(val = nil)
266
+ self.version = val if val
267
+ @version ||= (@parent.nil? ? '0.0.0' : @parent.version)
268
+ end
269
+
270
+ def name(val = nil)
271
+ self.name = val if val
272
+ @name
273
+ end
274
+
275
+ def name=(val)
276
+ @name = "<![CDATA[#{val}]]>"
277
+ end
278
+
279
+ def description(val = nil)
280
+ self.description = val if val
281
+ @description
282
+ end
283
+
284
+ def description=(val)
285
+ @description = "<![CDATA[#{val}]]>"
286
+ end
287
+
288
+ def parent(*args, &block)
289
+ @parent ||= Parent.new(*args)
290
+ @parent.call(block) if block
291
+ @parent
292
+ end
293
+
294
+ def execute_in_phase(phase, name = nil, &block)
295
+ gem_plugin = plugin("gem")
296
+ gem_plugin.in_phase(phase.to_s, name).execute_goal("execute_in_phase").with(:file => File.basename(current_file), :phase => phase)
297
+ executions_in_phase[phase.to_s] = block
298
+ gem_plugin
299
+ end
300
+
301
+ def executions_in_phase
302
+ @executions_in_phase ||= {}
303
+ end
304
+
305
+ def plugin(*args, &block)
306
+ build.plugins.get(*args, &block)
307
+ end
308
+
309
+ def plugin?(name)
310
+ build.plugin?(name)
311
+ end
312
+
313
+ def profile(*args, &block)
314
+ profiles.get(*args, &block)
315
+ end
316
+
317
+ def build
318
+ @build ||= Build.new
319
+ end
320
+
321
+ def developers(&block)
322
+ @developers ||= DeveloperHash.new
323
+ if block
324
+ block.call(@developers)
325
+ end
326
+ @developers
327
+ end
328
+
329
+ def licenses(&block)
330
+ @licenses ||= LicenseHash.new
331
+ if block
332
+ block.call(@licenses)
333
+ end
334
+ @licenses
335
+ end
336
+
337
+ def repositories(&block)
338
+ @repositories ||= ModelHash.new(Repository)
339
+ if block
340
+ block.call(@repositories)
341
+ end
342
+ @repositories
343
+ end
344
+
345
+ def repository(id, url = nil, &block)
346
+ repo = repositories.get(id, &block)
347
+ repo.url = url if url
348
+ repo
349
+ end
350
+
351
+ def plugin_repositories(&block)
352
+ @plugin_repositories ||= ModelHash.new(PluginRepository)
353
+ if block
354
+ block.call(@plugin_repositories)
355
+ end
356
+ @plugin_repositories
357
+ end
358
+
359
+ def plugin_repository(id, url = nil, &block)
360
+ repo = plugin_repositories.get(id, &block)
361
+ repo.url = url if url
362
+ repo
363
+ end
364
+
365
+ def dependency_management(&block)
366
+ @dependency_management ||= DependencyManagement.new
367
+ if block
368
+ block.call(@dependency_management)
369
+ end
370
+ @dependency_management
371
+ end
372
+
373
+ def properties
374
+ @properties ||= Properties.new
375
+ @properties.map
376
+ end
377
+
378
+ def properties=(props)
379
+ if props.is_a? Hash
380
+ @properties = Properties.new(props)
381
+ else
382
+ @properties = props
383
+ end
384
+ end
385
+
386
+ def profile(id, &block)
387
+ profiles.get(id, &block)
388
+ end
389
+
390
+ def profiles(&block)
391
+ @profiles ||= ModelHash.new(Profile)
392
+ if block
393
+ block.call(@profiles)
394
+ end
395
+ @profiles
396
+ end
397
+ end
398
+
399
+ class Configuration < HashTag
400
+
401
+ def initialize(args = {})
402
+ super("configuration", args)
403
+ end
404
+ end
405
+
406
+ class Properties < HashTag
407
+
408
+ def initialize(args = {})
409
+ super("properties", args)
410
+ end
411
+
412
+ def map
413
+ @props
414
+ end
415
+ end
416
+
417
+ class OS < Tag
418
+ tags :name, :family, :arch, :version
419
+ end
420
+
421
+ class Activation < Tag
422
+ tags :activeByDefault, :property, :os
423
+ def initialize
424
+ super({})
425
+ end
426
+
427
+ def add_property(name, value)
428
+ warn "deprecated, use 'property' instead"
429
+ property(name, value)
430
+ end
431
+
432
+ def property(name, value)
433
+ if name && value
434
+ # TODO make more then one property
435
+ raise "more then one property is not implemented: #{@property.name} => #{@property.value}" if @property
436
+ @property ||= ListItems.new
437
+ @property << Property.new(name, value)
438
+ end
439
+ self
440
+ end
441
+
442
+ def os(&block)
443
+ @os ||= OS.new
444
+ block.call(@os) if block
445
+ @os
446
+ end
447
+
448
+ def by_default(value = true)
449
+ @activeByDefault = value
450
+ self
451
+ end
452
+ end
453
+
454
+ class Property < Tag
455
+ tags :name, :value
456
+
457
+ def initialize(name, value)
458
+ self.name name
459
+ self.value value
460
+ end
461
+ end
462
+
463
+ class Repository < Tag
464
+ tags :id, :name, :url, :releases, :snapshots
465
+ def initialize(id, &block)
466
+ super({})
467
+ self.id id
468
+ if block
469
+ block.call(self)
470
+ end
471
+ self
472
+ end
473
+
474
+ def releases(args = {})
475
+ @releases ||= args
476
+ end
477
+
478
+ def snapshots(args = {})
479
+ @snapshots ||= args
480
+ end
481
+ end
482
+
483
+ class PluginRepository < Repository
484
+ tags :dummy
485
+ def _name
486
+ "pluginRepository"
487
+ end
488
+ end
489
+ end
490
+ end