1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugin.eclipse.writers;
20
21 import java.io.File;
22 import java.util.Arrays;
23 import java.util.Comparator;
24 import java.util.List;
25 import java.util.Map;
26
27 import org.apache.maven.artifact.repository.ArtifactRepository;
28 import org.apache.maven.plugin.eclipse.EclipsePlugin;
29 import org.apache.maven.plugin.eclipse.EclipseSourceDir;
30 import org.apache.maven.plugin.eclipse.WorkspaceConfiguration;
31 import org.apache.maven.plugin.ide.IdeDependency;
32 import org.apache.maven.project.MavenProject;
33
34
35
36
37
38 public class EclipseWriterConfig
39 {
40
41
42
43 private MavenProject project;
44
45
46
47
48 private String packaging;
49
50
51
52
53 private File eclipseProjectDirectory;
54
55
56
57
58 private String eclipseProjectName;
59
60
61
62
63 private File projectBaseDir;
64
65
66
67
68 private IdeDependency[] deps = new IdeDependency[0];
69
70
71
72
73 private IdeDependency[] orderedDeps = new IdeDependency[0];
74
75
76
77
78 private EclipseSourceDir[] sourceDirs;
79
80
81
82
83 private ArtifactRepository localRepository;
84
85
86
87
88 private File buildOutputDirectory;
89
90
91
92
93 private File osgiManifestFile;
94
95
96
97
98 private boolean pde;
99
100
101
102
103 private List projectnatures;
104
105
106
107
108 private Map projectFacets;
109
110
111
112
113 private List buildCommands;
114
115
116
117
118 private List classpathContainers;
119
120
121
122
123
124
125 private boolean addVersionToProjectName;
126
127
128
129
130 private String projectNameTemplate;
131
132
133
134
135
136 private String contextName;
137
138
139
140
141 private boolean wtpapplicationxml;
142
143
144
145
146 private float wtpVersion;
147
148 private float ajdtVersion;
149
150 private WorkspaceConfiguration workspaceConfiguration;
151
152 public WorkspaceConfiguration getWorkspaceConfiguration()
153 {
154 return workspaceConfiguration;
155 }
156
157 public void setWorkspaceConfiguration( WorkspaceConfiguration workspaceConfiguration )
158 {
159 this.workspaceConfiguration = workspaceConfiguration;
160 }
161
162
163
164
165
166
167 public IdeDependency[] getDeps()
168 {
169 return deps;
170 }
171
172
173
174
175
176
177 public void setDeps( IdeDependency[] deps )
178 {
179 this.deps = deps;
180 if ( deps != null )
181 {
182
183
184
185 Comparator depsByArtifactId = new Comparator()
186 {
187 public int compare( Object o1, Object o2 )
188 {
189 int result =
190 ( (IdeDependency) o1 ).getArtifactId().compareToIgnoreCase(
191 ( (IdeDependency) o2 ).getArtifactId() );
192 if ( result != 0 )
193 {
194 return result;
195 }
196 if ( ( (IdeDependency) o1 ).getClassifier() != null
197 && ( (IdeDependency) o2 ).getClassifier() != null )
198 {
199 result =
200 ( (IdeDependency) o1 ).getClassifier().compareToIgnoreCase(
201 ( (IdeDependency) o2 ).getClassifier() );
202 if ( result != 0 )
203 {
204 return result;
205 }
206 }
207 result = ( (IdeDependency) o1 ).getType().compareToIgnoreCase( ( (IdeDependency) o2 ).getType() );
208 if ( result != 0 )
209 {
210 return result;
211 }
212 result =
213 ( (IdeDependency) o1 ).getGroupId().compareToIgnoreCase( ( (IdeDependency) o2 ).getGroupId() );
214 return result;
215 }
216 };
217
218 orderedDeps = new IdeDependency[deps.length];
219 System.arraycopy( deps, 0, orderedDeps, 0, deps.length );
220 Arrays.sort( orderedDeps, depsByArtifactId );
221 }
222 }
223
224
225
226
227
228
229 public File getEclipseProjectDirectory()
230 {
231 return eclipseProjectDirectory;
232 }
233
234
235
236
237
238
239 public void setEclipseProjectDirectory( File eclipseProjectDir )
240 {
241 eclipseProjectDirectory = eclipseProjectDir;
242 }
243
244
245
246
247
248
249 public String getEclipseProjectName()
250 {
251 return eclipseProjectName;
252 }
253
254
255
256
257
258
259 public void setEclipseProjectName( String eclipseProjectName )
260 {
261 this.eclipseProjectName = eclipseProjectName;
262 }
263
264
265
266
267
268
269 public MavenProject getProject()
270 {
271 return project;
272 }
273
274
275
276
277
278
279 public void setProject( MavenProject project )
280 {
281 this.project = project;
282 }
283
284
285
286
287
288
289 public EclipseSourceDir[] getSourceDirs()
290 {
291 return sourceDirs;
292 }
293
294
295
296
297
298
299 public void setSourceDirs( EclipseSourceDir[] sourceDirs )
300 {
301 this.sourceDirs = sourceDirs;
302 }
303
304
305
306
307
308
309 public File getBuildOutputDirectory()
310 {
311 return buildOutputDirectory;
312 }
313
314
315
316
317
318
319 public void setBuildOutputDirectory( File buildOutputDirectory )
320 {
321 this.buildOutputDirectory = buildOutputDirectory;
322 }
323
324
325
326
327
328
329 public ArtifactRepository getLocalRepository()
330 {
331 return localRepository;
332 }
333
334
335
336
337
338
339 public void setLocalRepository( ArtifactRepository localRepository )
340 {
341 this.localRepository = localRepository;
342 }
343
344
345
346
347
348
349 public File getOSGIManifestFile()
350 {
351 return osgiManifestFile;
352 }
353
354
355
356
357
358
359 public void setOSGIManifestFile( File manifestFile )
360 {
361 this.osgiManifestFile = manifestFile;
362 }
363
364
365
366
367
368
369 public List getClasspathContainers()
370 {
371 return classpathContainers;
372 }
373
374
375
376
377
378
379 public void setClasspathContainers( List classpathContainers )
380 {
381 this.classpathContainers = classpathContainers;
382 }
383
384
385
386
387
388
389 public boolean isPde()
390 {
391 return pde;
392 }
393
394
395
396
397
398
399 public void setPde( boolean pde )
400 {
401 this.pde = pde;
402 }
403
404
405
406
407
408
409 public List getBuildCommands()
410 {
411 return buildCommands;
412 }
413
414
415
416
417
418
419 public void setBuildCommands( List buildCommands )
420 {
421 this.buildCommands = buildCommands;
422 }
423
424
425
426
427
428
429 public List getProjectnatures()
430 {
431 return projectnatures;
432 }
433
434
435
436
437
438
439 public void setProjectnatures( List projectnatures )
440 {
441 this.projectnatures = projectnatures;
442 }
443
444
445
446
447
448
449 public Map getProjectFacets()
450 {
451 return projectFacets;
452 }
453
454
455
456
457
458
459 public void setProjectFacets( Map projectFacets )
460 {
461 this.projectFacets = projectFacets;
462 }
463
464
465
466
467
468
469 public File getProjectBaseDir()
470 {
471 return projectBaseDir;
472 }
473
474
475
476
477
478
479 public void setProjectBaseDir( File projectBaseDir )
480 {
481 this.projectBaseDir = projectBaseDir;
482 }
483
484
485
486
487
488
489 public boolean isAddVersionToProjectName()
490 {
491 return addVersionToProjectName;
492 }
493
494
495
496
497
498
499 public void setAddVersionToProjectName( boolean addVersionToProjectName )
500 {
501 this.addVersionToProjectName = addVersionToProjectName;
502 }
503
504 public void setProjectNameTemplate( String projectNameTemplate )
505 {
506 this.projectNameTemplate = projectNameTemplate;
507 }
508
509 public String getProjectNameTemplate()
510 {
511 return projectNameTemplate;
512 }
513
514 public String getContextName()
515 {
516 return contextName;
517 }
518
519 public void setContextName( String deployName )
520 {
521 contextName = deployName;
522 }
523
524
525
526
527 public String getPackaging()
528 {
529 return packaging;
530 }
531
532
533
534
535 public void setPackaging( String packaging )
536 {
537 this.packaging = packaging;
538 }
539
540
541
542
543
544
545 public boolean getWtpapplicationxml()
546 {
547 return wtpapplicationxml;
548 }
549
550
551
552
553
554
555 public void setWtpapplicationxml( boolean wtpapplicationxml )
556 {
557 this.wtpapplicationxml = wtpapplicationxml;
558 }
559
560
561
562
563
564
565 public float getWtpVersion()
566 {
567 return wtpVersion;
568 }
569
570
571
572
573
574
575 public void setWtpVersion( float wtpVersion )
576 {
577 this.wtpVersion = wtpVersion;
578 }
579
580
581
582
583 public IdeDependency[] getDepsOrdered()
584 {
585 return orderedDeps;
586 }
587
588
589
590
591
592
593 public float getAjdtVersion()
594 {
595 return ajdtVersion;
596 }
597
598
599
600
601
602
603 public void setAjdtVersion( float ajdtVersion )
604 {
605 this.ajdtVersion = ajdtVersion;
606 }
607
608 }