--- old/src/share/classes/org/openjdk/jigsaw/Library.java Thu Apr 26 16:20:19 2012 +++ new/src/share/classes/org/openjdk/jigsaw/Library.java Thu Apr 26 16:20:19 2012 @@ -78,7 +78,7 @@ public abstract int minorVersion(); public abstract Library parent(); - + /** *

Read the module-info class bytes for the module with the given * identifier, from this library only.

@@ -281,6 +281,43 @@ throws ConfigurationException, IOException, SignatureException; /** + * Remove one or more modules from this library. + * + * @param mids + * The module identifiers + * + * @return A list of IOExceptions, if any, that were encountered when + * removing the actual content of the given modules + * + * @throws ConfigurationException + * If the configuration of any root modules in the library + * require any of the given modules + * + * @throws IOException + * If an I/O error occurs while accessing the module library + */ + public abstract List remove(List mids, boolean dry) + throws ConfigurationException, IOException; + + /** + * Forcibly remove one or more modules from this library. + * + *

No regard is given to configuration of any root modules in the + * library that may require any of the given modules.

+ * + * @param mids + * The module identifiers + * + * @return A list of IOExceptions, if any, that were encountered when + * removing the actual content of the given modules + * + * @throws IOException + * If an I/O error occurs while accessing the module library + */ + public abstract List removeForcibly(List mids) + throws IOException; + + /** * Find a resource within the given module in this library. * * @param mid @@ -333,7 +370,7 @@ public abstract RemoteRepositoryList repositoryList() throws IOException; /** - *

Read the CodeSigners for the module with the given identifier, from + *

Read the CodeSigners for the module with the given identifier, from * this library only.

* * @param mid