39 * @return User Friendly name of this bundler. |
39 * @return User Friendly name of this bundler. |
40 */ |
40 */ |
41 String getName(); |
41 String getName(); |
42 |
42 |
43 /** |
43 /** |
44 * @return A more verbose description of the bundler. |
|
45 */ |
|
46 String getDescription(); |
|
47 |
|
48 /** |
|
49 * @return Command line identifier of the bundler. Should be unique. |
44 * @return Command line identifier of the bundler. Should be unique. |
50 */ |
45 */ |
51 String getID(); |
46 String getID(); |
52 |
47 |
53 /** |
48 /** |
54 * @return The bundle type of the bundle that is created by this bundler. |
49 * @return The bundle type of the bundle that is created by this bundler. |
55 */ |
50 */ |
56 String getBundleType(); |
51 String getBundleType(); |
57 |
52 |
58 /** |
53 /** |
59 * The parameters that this bundler uses to generate it's bundle. |
|
60 * @return immutable collection |
|
61 */ |
|
62 Collection<BundlerParamInfo<?>> getBundleParameters(); |
|
63 |
|
64 /** |
|
65 * Determines if this bundler will execute with the given parameters. |
54 * Determines if this bundler will execute with the given parameters. |
66 * |
55 * |
67 * @param params The parameters to be validate. Validation may modify |
56 * @param params The parameters to be validate. Validation may modify |
68 * the map, so if you are going to be using the same map |
57 * the map, so if you are going to be using the same map |
69 * across multiple bundlers you should pass in a deep copy. |
58 * across multiple bundlers you should pass in a deep copy. |
70 * @return true if valid |
59 * @return true if valid |
71 * @throws UnsupportedPlatformException If the bundler cannot run on this |
|
72 * platform (i.e. creating mac apps on windows) |
|
73 * @throws ConfigException If the configuration params are incorrect. The |
60 * @throws ConfigException If the configuration params are incorrect. The |
74 * exception may contain advice on how to modify the params map |
61 * exception may contain advice on how to modify the params map |
75 * to make it valid. |
62 * to make it valid. |
76 */ |
63 */ |
77 public boolean validate(Map<String, ? super Object> params) |
64 public boolean validate(Map<String, ? super Object> params) |
78 throws UnsupportedPlatformException, ConfigException; |
65 throws ConfigException; |
79 |
66 |
80 /** |
67 /** |
81 * Creates a bundle from existing content. |
68 * Creates a bundle from existing content. |
82 * |
69 * |
83 * If a call to {@link #validate(java.util.Map)} date} returns true with |
70 * If a call to {@link #validate(java.util.Map)} date} returns true with |
85 * However if an exception was thrown out of validate or it returned |
72 * However if an exception was thrown out of validate or it returned |
86 * false then you should not expect sensible results from this call. |
73 * false then you should not expect sensible results from this call. |
87 * It may or may not return a value, and it may or may not throw an |
74 * It may or may not return a value, and it may or may not throw an |
88 * exception. But any output should not be considered valid or sane. |
75 * exception. But any output should not be considered valid or sane. |
89 * |
76 * |
90 * @param params The parameters as specified by getBundleParameters. |
77 * @param params The Bundle parameters, |
91 * Keyed by the id from the ParamInfo. Execution may |
78 * Keyed by the id from the ParamInfo. Execution may |
92 * modify the map, so if you are going to be using the |
79 * modify the map, so if you are going to be using the |
93 * same map across multiple bundlers you should pass |
80 * same map across multiple bundlers you should pass |
94 * in a deep copy. |
81 * in a deep copy. |
95 * @param outputParentDir |
82 * @param outputParentDir |