1 /* 2 =================== DO NOT EDIT THIS FILE ==================== 3 Generated by Modello 1.4.1 on 2012-11-18 20:55:36, 4 any modifications will be overwritten. 5 ============================================================== 6 */ 7 8 package org.apache.maven.plugin.assembly.model; 9 10 /** 11 * 12 * A dependencySet allows inclusion and exclusion of 13 * project dependencies 14 * in the assembly. 15 * 16 * 17 * @version $Revision$ $Date$ 18 */ 19 @SuppressWarnings( "all" ) 20 public class DependencySet 21 implements java.io.Serializable 22 { 23 24 //--------------------------/ 25 //- Class/Member Variables -/ 26 //--------------------------/ 27 28 /** 29 * 30 * Sets the output directory relative to the root 31 * of the root directory of the assembly. For 32 * example, 33 * "log" will put the specified files in the log 34 * directory, 35 * directly beneath the root of the archive. 36 * 37 */ 38 private String outputDirectory; 39 40 /** 41 * Field includes. 42 */ 43 private java.util.List<String> includes; 44 45 /** 46 * Field excludes. 47 */ 48 private java.util.List<String> excludes; 49 50 /** 51 * 52 * 53 * Similar to a UNIX permission, sets the file mode 54 * of the files included. 55 * THIS IS AN OCTAL VALUE. 56 * Format: (User)(Group)(Other) where each 57 * component is a sum of Read = 4, 58 * Write = 2, and Execute = 1. For example, the 59 * value 0644 60 * translates to User read-write, Group and Other 61 * read-only. 62 * <a 63 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 64 * on unix-style permissions)</a> 65 * 66 * 67 */ 68 private String fileMode; 69 70 /** 71 * 72 * 73 * Similar to a UNIX permission, sets the directory 74 * mode of the directories 75 * included. 76 * THIS IS AN OCTAL VALUE. 77 * Format: (User)(Group)(Other) where each 78 * component is a sum of 79 * Read = 4, Write = 2, and Execute = 1. For 80 * example, the value 81 * 0755 translates to User read-write, Group and 82 * Other read-only. 83 * <a 84 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 85 * on unix-style permissions)</a> 86 * 87 * 88 */ 89 private String directoryMode; 90 91 /** 92 * 93 * When specified as true, any include/exclude 94 * patterns which aren't used to filter an actual 95 * artifact during assembly creation will cause the 96 * build to fail with an error. This is meant 97 * to highlight obsolete inclusions or exclusions, or 98 * else signal that the assembly descriptor 99 * is incorrectly configured. (Since 2.2) 100 * . 101 */ 102 private boolean useStrictFiltering = false; 103 104 /** 105 * 106 * Sets the mapping pattern for all dependencies 107 * included in this 108 * assembly. Default is 109 * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}. 110 * (Since 2.2-beta-2; 2.2-beta-1 uses 111 * ${artifactId}-${version}${dashClassifier?}.${extension}) 112 * . 113 */ 114 private String outputFileNameMapping = "${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}"; 115 116 /** 117 * 118 * If set to true, this property will unpack all 119 * dependencies 120 * into the specified output directory. When set to 121 * false 122 * dependencies will be includes as archives 123 * (jars). Can only unpack 124 * jar, zip, tar.gz, and tar.bz archives. Default 125 * value is false. 126 * 127 */ 128 private boolean unpack = false; 129 130 /** 131 * 132 * Allows the specification of includes and excludes, 133 * along with filtering options, for items 134 * unpacked from a dependency artifact. (Since 2.2) 135 * . 136 */ 137 private UnpackOptions unpackOptions; 138 139 /** 140 * 141 * Sets the dependency scope for this 142 * dependencySet. 143 * Default scope value is "runtime". 144 * 145 */ 146 private String scope = "runtime"; 147 148 /** 149 * 150 * Determines whether the artifact produced during 151 * the current project's 152 * build should be included in this dependency set. 153 * Default value is true, 154 * for backward compatibility. (Since 2.2) 155 * . 156 */ 157 private boolean useProjectArtifact = true; 158 159 /** 160 * 161 * Determines whether the attached artifacts produced 162 * during the current project's 163 * build should be included in this dependency set. 164 * Default value is false. (Since 2.2) 165 * . 166 */ 167 private boolean useProjectAttachments = false; 168 169 /** 170 * 171 * Determines whether transitive dependencies will be 172 * included in the processing of 173 * the current dependency set. If true, 174 * includes/excludes/useTransitiveFiltering 175 * will apply to transitive dependency artifacts in 176 * addition to the main project 177 * dependency artifacts. If false, 178 * useTransitiveFiltering is meaningless, and 179 * includes/excludes only affect the immediate 180 * dependencies of the project. 181 * By default, this value is true. (Since 2.2) 182 * . 183 */ 184 private boolean useTransitiveDependencies = true; 185 186 /** 187 * 188 * Determines whether the include/exclude patterns in 189 * this dependency set will be applied to 190 * the transitive path of a given artifact. If true, 191 * and the current artifact is a transitive 192 * dependency brought in by another artifact which 193 * matches an inclusion or exclusion pattern, 194 * then the current artifact has the same 195 * inclusion/exclusion logic applied to it as well. By 196 * default, this value is false, in order to preserve 197 * backward compatibility with version 2.1. 198 * This means that includes/excludes only apply 199 * directly to the current artifact, and not to 200 * the transitive set of artifacts which brought it 201 * in. (Since 2.2) 202 * . 203 */ 204 private boolean useTransitiveFiltering = false; 205 206 207 //-----------/ 208 //- Methods -/ 209 //-----------/ 210 211 /** 212 * Method addExclude. 213 * 214 * @param string 215 */ 216 public void addExclude( String string ) 217 { 218 getExcludes().add( string ); 219 } //-- void addExclude( String ) 220 221 /** 222 * Method addInclude. 223 * 224 * @param string 225 */ 226 public void addInclude( String string ) 227 { 228 getIncludes().add( string ); 229 } //-- void addInclude( String ) 230 231 /** 232 * Get similar to a UNIX permission, sets the directory mode of 233 * the directories 234 * included. 235 * THIS IS AN OCTAL VALUE. 236 * Format: (User)(Group)(Other) where each 237 * component is a sum of 238 * Read = 4, Write = 2, and Execute = 1. For 239 * example, the value 240 * 0755 translates to User read-write, Group and 241 * Other read-only. 242 * <a 243 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 244 * on unix-style permissions)</a> 245 * 246 * @return String 247 */ 248 public String getDirectoryMode() 249 { 250 return this.directoryMode; 251 } //-- String getDirectoryMode() 252 253 /** 254 * Method getExcludes. 255 * 256 * @return List 257 */ 258 public java.util.List<String> getExcludes() 259 { 260 if ( this.excludes == null ) 261 { 262 this.excludes = new java.util.ArrayList<String>(); 263 } 264 265 return this.excludes; 266 } //-- java.util.List<String> getExcludes() 267 268 /** 269 * Get similar to a UNIX permission, sets the file mode of the 270 * files included. 271 * THIS IS AN OCTAL VALUE. 272 * Format: (User)(Group)(Other) where each 273 * component is a sum of Read = 4, 274 * Write = 2, and Execute = 1. For example, the 275 * value 0644 276 * translates to User read-write, Group and Other 277 * read-only. 278 * <a 279 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 280 * on unix-style permissions)</a> 281 * 282 * @return String 283 */ 284 public String getFileMode() 285 { 286 return this.fileMode; 287 } //-- String getFileMode() 288 289 /** 290 * Method getIncludes. 291 * 292 * @return List 293 */ 294 public java.util.List<String> getIncludes() 295 { 296 if ( this.includes == null ) 297 { 298 this.includes = new java.util.ArrayList<String>(); 299 } 300 301 return this.includes; 302 } //-- java.util.List<String> getIncludes() 303 304 /** 305 * Get sets the output directory relative to the root 306 * of the root directory of the assembly. For 307 * example, 308 * "log" will put the specified files in the log 309 * directory, 310 * directly beneath the root of the archive. 311 * 312 * @return String 313 */ 314 public String getOutputDirectory() 315 { 316 return this.outputDirectory; 317 } //-- String getOutputDirectory() 318 319 /** 320 * Get sets the mapping pattern for all dependencies included 321 * in this 322 * assembly. Default is 323 * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}. 324 * (Since 2.2-beta-2; 2.2-beta-1 uses 325 * ${artifactId}-${version}${dashClassifier?}.${extension}). 326 * 327 * @return String 328 */ 329 public String getOutputFileNameMapping() 330 { 331 return this.outputFileNameMapping; 332 } //-- String getOutputFileNameMapping() 333 334 /** 335 * Get sets the dependency scope for this dependencySet. 336 * Default scope value is "runtime". 337 * 338 * @return String 339 */ 340 public String getScope() 341 { 342 return this.scope; 343 } //-- String getScope() 344 345 /** 346 * Get allows the specification of includes and excludes, along 347 * with filtering options, for items 348 * unpacked from a dependency artifact. (Since 2.2). 349 * 350 * @return UnpackOptions 351 */ 352 public UnpackOptions getUnpackOptions() 353 { 354 return this.unpackOptions; 355 } //-- UnpackOptions getUnpackOptions() 356 357 /** 358 * Get if set to true, this property will unpack all 359 * dependencies 360 * into the specified output directory. When set to 361 * false 362 * dependencies will be includes as archives 363 * (jars). Can only unpack 364 * jar, zip, tar.gz, and tar.bz archives. Default 365 * value is false. 366 * 367 * @return boolean 368 */ 369 public boolean isUnpack() 370 { 371 return this.unpack; 372 } //-- boolean isUnpack() 373 374 /** 375 * Get determines whether the artifact produced during the 376 * current project's 377 * build should be included in this dependency set. 378 * Default value is true, 379 * for backward compatibility. (Since 2.2). 380 * 381 * @return boolean 382 */ 383 public boolean isUseProjectArtifact() 384 { 385 return this.useProjectArtifact; 386 } //-- boolean isUseProjectArtifact() 387 388 /** 389 * Get determines whether the attached artifacts produced 390 * during the current project's 391 * build should be included in this dependency set. 392 * Default value is false. (Since 2.2). 393 * 394 * @return boolean 395 */ 396 public boolean isUseProjectAttachments() 397 { 398 return this.useProjectAttachments; 399 } //-- boolean isUseProjectAttachments() 400 401 /** 402 * Get when specified as true, any include/exclude patterns 403 * which aren't used to filter an actual 404 * artifact during assembly creation will cause the 405 * build to fail with an error. This is meant 406 * to highlight obsolete inclusions or exclusions, or 407 * else signal that the assembly descriptor 408 * is incorrectly configured. (Since 2.2). 409 * 410 * @return boolean 411 */ 412 public boolean isUseStrictFiltering() 413 { 414 return this.useStrictFiltering; 415 } //-- boolean isUseStrictFiltering() 416 417 /** 418 * Get determines whether transitive dependencies will be 419 * included in the processing of 420 * the current dependency set. If true, 421 * includes/excludes/useTransitiveFiltering 422 * will apply to transitive dependency artifacts in 423 * addition to the main project 424 * dependency artifacts. If false, 425 * useTransitiveFiltering is meaningless, and 426 * includes/excludes only affect the immediate 427 * dependencies of the project. 428 * By default, this value is true. (Since 2.2). 429 * 430 * @return boolean 431 */ 432 public boolean isUseTransitiveDependencies() 433 { 434 return this.useTransitiveDependencies; 435 } //-- boolean isUseTransitiveDependencies() 436 437 /** 438 * Get determines whether the include/exclude patterns in this 439 * dependency set will be applied to 440 * the transitive path of a given artifact. If true, 441 * and the current artifact is a transitive 442 * dependency brought in by another artifact which 443 * matches an inclusion or exclusion pattern, 444 * then the current artifact has the same 445 * inclusion/exclusion logic applied to it as well. By 446 * default, this value is false, in order to preserve 447 * backward compatibility with version 2.1. 448 * This means that includes/excludes only apply 449 * directly to the current artifact, and not to 450 * the transitive set of artifacts which brought it 451 * in. (Since 2.2). 452 * 453 * @return boolean 454 */ 455 public boolean isUseTransitiveFiltering() 456 { 457 return this.useTransitiveFiltering; 458 } //-- boolean isUseTransitiveFiltering() 459 460 /** 461 * Method removeExclude. 462 * 463 * @param string 464 */ 465 public void removeExclude( String string ) 466 { 467 getExcludes().remove( string ); 468 } //-- void removeExclude( String ) 469 470 /** 471 * Method removeInclude. 472 * 473 * @param string 474 */ 475 public void removeInclude( String string ) 476 { 477 getIncludes().remove( string ); 478 } //-- void removeInclude( String ) 479 480 /** 481 * Set similar to a UNIX permission, sets the directory mode of 482 * the directories 483 * included. 484 * THIS IS AN OCTAL VALUE. 485 * Format: (User)(Group)(Other) where each 486 * component is a sum of 487 * Read = 4, Write = 2, and Execute = 1. For 488 * example, the value 489 * 0755 translates to User read-write, Group and 490 * Other read-only. 491 * <a 492 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 493 * on unix-style permissions)</a> 494 * 495 * @param directoryMode 496 */ 497 public void setDirectoryMode( String directoryMode ) 498 { 499 this.directoryMode = directoryMode; 500 } //-- void setDirectoryMode( String ) 501 502 /** 503 * Set when <exclude> subelements are present, they 504 * define a set of 505 * dependency artifact coordinates to exclude. If 506 * none is present, then 507 * <excludes> represents no exclusions. 508 * 509 * Artifact coordinates may be given in simple 510 * groupId:artifactId form, 511 * or they may be fully qualified in the form 512 * groupId:artifactId:type[:classifier]:version. 513 * Additionally, wildcards can be used, as in 514 * *:maven-*. 515 * 516 * @param excludes 517 */ 518 public void setExcludes( java.util.List<String> excludes ) 519 { 520 this.excludes = excludes; 521 } //-- void setExcludes( java.util.List ) 522 523 /** 524 * Set similar to a UNIX permission, sets the file mode of the 525 * files included. 526 * THIS IS AN OCTAL VALUE. 527 * Format: (User)(Group)(Other) where each 528 * component is a sum of Read = 4, 529 * Write = 2, and Execute = 1. For example, the 530 * value 0644 531 * translates to User read-write, Group and Other 532 * read-only. 533 * <a 534 * href="http://www.onlamp.com/pub/a/bsd/2000/09/06/FreeBSD_Basics.html">(more 535 * on unix-style permissions)</a> 536 * 537 * @param fileMode 538 */ 539 public void setFileMode( String fileMode ) 540 { 541 this.fileMode = fileMode; 542 } //-- void setFileMode( String ) 543 544 /** 545 * Set when <include> subelements are present, they 546 * define a set of 547 * artifact coordinates to include. If none is 548 * present, then 549 * <includes> represents all valid values. 550 * 551 * Artifact coordinates may be given in simple 552 * groupId:artifactId form, 553 * or they may be fully qualified in the form 554 * groupId:artifactId:type[:classifier]:version. 555 * Additionally, wildcards can be used, as in 556 * *:maven-*. 557 * 558 * @param includes 559 */ 560 public void setIncludes( java.util.List<String> includes ) 561 { 562 this.includes = includes; 563 } //-- void setIncludes( java.util.List ) 564 565 /** 566 * Set sets the output directory relative to the root 567 * of the root directory of the assembly. For 568 * example, 569 * "log" will put the specified files in the log 570 * directory, 571 * directly beneath the root of the archive. 572 * 573 * @param outputDirectory 574 */ 575 public void setOutputDirectory( String outputDirectory ) 576 { 577 this.outputDirectory = outputDirectory; 578 } //-- void setOutputDirectory( String ) 579 580 /** 581 * Set sets the mapping pattern for all dependencies included 582 * in this 583 * assembly. Default is 584 * ${artifact.artifactId}-${artifact.version}${dashClassifier?}.${artifact.extension}. 585 * (Since 2.2-beta-2; 2.2-beta-1 uses 586 * ${artifactId}-${version}${dashClassifier?}.${extension}). 587 * 588 * @param outputFileNameMapping 589 */ 590 public void setOutputFileNameMapping( String outputFileNameMapping ) 591 { 592 this.outputFileNameMapping = outputFileNameMapping; 593 } //-- void setOutputFileNameMapping( String ) 594 595 /** 596 * Set sets the dependency scope for this dependencySet. 597 * Default scope value is "runtime". 598 * 599 * @param scope 600 */ 601 public void setScope( String scope ) 602 { 603 this.scope = scope; 604 } //-- void setScope( String ) 605 606 /** 607 * Set if set to true, this property will unpack all 608 * dependencies 609 * into the specified output directory. When set to 610 * false 611 * dependencies will be includes as archives 612 * (jars). Can only unpack 613 * jar, zip, tar.gz, and tar.bz archives. Default 614 * value is false. 615 * 616 * @param unpack 617 */ 618 public void setUnpack( boolean unpack ) 619 { 620 this.unpack = unpack; 621 } //-- void setUnpack( boolean ) 622 623 /** 624 * Set allows the specification of includes and excludes, along 625 * with filtering options, for items 626 * unpacked from a dependency artifact. (Since 2.2). 627 * 628 * @param unpackOptions 629 */ 630 public void setUnpackOptions( UnpackOptions unpackOptions ) 631 { 632 this.unpackOptions = unpackOptions; 633 } //-- void setUnpackOptions( UnpackOptions ) 634 635 /** 636 * Set determines whether the artifact produced during the 637 * current project's 638 * build should be included in this dependency set. 639 * Default value is true, 640 * for backward compatibility. (Since 2.2). 641 * 642 * @param useProjectArtifact 643 */ 644 public void setUseProjectArtifact( boolean useProjectArtifact ) 645 { 646 this.useProjectArtifact = useProjectArtifact; 647 } //-- void setUseProjectArtifact( boolean ) 648 649 /** 650 * Set determines whether the attached artifacts produced 651 * during the current project's 652 * build should be included in this dependency set. 653 * Default value is false. (Since 2.2). 654 * 655 * @param useProjectAttachments 656 */ 657 public void setUseProjectAttachments( boolean useProjectAttachments ) 658 { 659 this.useProjectAttachments = useProjectAttachments; 660 } //-- void setUseProjectAttachments( boolean ) 661 662 /** 663 * Set when specified as true, any include/exclude patterns 664 * which aren't used to filter an actual 665 * artifact during assembly creation will cause the 666 * build to fail with an error. This is meant 667 * to highlight obsolete inclusions or exclusions, or 668 * else signal that the assembly descriptor 669 * is incorrectly configured. (Since 2.2). 670 * 671 * @param useStrictFiltering 672 */ 673 public void setUseStrictFiltering( boolean useStrictFiltering ) 674 { 675 this.useStrictFiltering = useStrictFiltering; 676 } //-- void setUseStrictFiltering( boolean ) 677 678 /** 679 * Set determines whether transitive dependencies will be 680 * included in the processing of 681 * the current dependency set. If true, 682 * includes/excludes/useTransitiveFiltering 683 * will apply to transitive dependency artifacts in 684 * addition to the main project 685 * dependency artifacts. If false, 686 * useTransitiveFiltering is meaningless, and 687 * includes/excludes only affect the immediate 688 * dependencies of the project. 689 * By default, this value is true. (Since 2.2). 690 * 691 * @param useTransitiveDependencies 692 */ 693 public void setUseTransitiveDependencies( boolean useTransitiveDependencies ) 694 { 695 this.useTransitiveDependencies = useTransitiveDependencies; 696 } //-- void setUseTransitiveDependencies( boolean ) 697 698 /** 699 * Set determines whether the include/exclude patterns in this 700 * dependency set will be applied to 701 * the transitive path of a given artifact. If true, 702 * and the current artifact is a transitive 703 * dependency brought in by another artifact which 704 * matches an inclusion or exclusion pattern, 705 * then the current artifact has the same 706 * inclusion/exclusion logic applied to it as well. By 707 * default, this value is false, in order to preserve 708 * backward compatibility with version 2.1. 709 * This means that includes/excludes only apply 710 * directly to the current artifact, and not to 711 * the transitive set of artifacts which brought it 712 * in. (Since 2.2). 713 * 714 * @param useTransitiveFiltering 715 */ 716 public void setUseTransitiveFiltering( boolean useTransitiveFiltering ) 717 { 718 this.useTransitiveFiltering = useTransitiveFiltering; 719 } //-- void setUseTransitiveFiltering( boolean ) 720 721 }