|
24 | 24 | * SOFTWARE.
|
25 | 25 | */
|
26 | 26 |
|
| 27 | +import org.codehaus.plexus.util.StringUtils; |
| 28 | + |
27 | 29 | import java.io.File;
|
28 | 30 | import java.util.AbstractMap;
|
29 | 31 | import java.util.ArrayList;
|
@@ -812,4 +814,54 @@ public void setImplicitOption( String implicitOption )
|
812 | 814 | {
|
813 | 815 | this.implicitOption = implicitOption;
|
814 | 816 | }
|
| 817 | + |
| 818 | + public String describe( String id ) |
| 819 | + { |
| 820 | + List<String> params = new ArrayList<>(); |
| 821 | + params.add( id ); |
| 822 | + if ( isFork() ) |
| 823 | + { |
| 824 | + params.add( "forked" ); |
| 825 | + } |
| 826 | + |
| 827 | + // base options: debug, optimize, verbose, deprecation |
| 828 | + if ( isDebug() ) |
| 829 | + { |
| 830 | + if ( StringUtils.isNotEmpty( getDebugLevel() ) ) |
| 831 | + { |
| 832 | + params.add( "debug:" + getDebugLevel() ); |
| 833 | + } |
| 834 | + else |
| 835 | + { |
| 836 | + params.add( "debug" ); |
| 837 | + } |
| 838 | + } |
| 839 | + if ( isOptimize() ) |
| 840 | + { |
| 841 | + params.add( "optimize" ); |
| 842 | + } |
| 843 | + if ( isVerbose() ) |
| 844 | + { |
| 845 | + params.add( "verbose" ); |
| 846 | + } |
| 847 | + if ( isShowDeprecation() ) |
| 848 | + { |
| 849 | + params.add( "deprecation" ); |
| 850 | + } |
| 851 | + |
| 852 | + // target bytecode options: release or target, module-path |
| 853 | + if ( !StringUtils.isEmpty( getReleaseVersion() ) ) |
| 854 | + { |
| 855 | + params.add( "release " + getReleaseVersion() ); |
| 856 | + } |
| 857 | + else if ( !StringUtils.isEmpty( getTargetVersion() ) ) |
| 858 | + { |
| 859 | + params.add( "target " + getTargetVersion() ); |
| 860 | + } |
| 861 | + if ( getModulepathEntries() != null && !getModulepathEntries().isEmpty() ) |
| 862 | + { |
| 863 | + params.add( "module-path" ); |
| 864 | + } |
| 865 | + return String.join( " ", params ); |
| 866 | + } |
815 | 867 | }
|
0 commit comments