src/share/classes/org/openjdk/jigsaw/Library.java
Print this page
@@ -279,10 +279,55 @@
*/
public abstract void install(Resolution res, boolean verifySignature)
throws ConfigurationException, IOException, SignatureException;
/**
+ * Remove one or more modules from this library.
+ *
+ * @param mids
+ * The module identifiers
+ *
+ * @param dry
+ * Perform a dry run (no changes to the module library), if true.
+ * Otherwise the modules may be removed.
+ *
+ * @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, or
+ * removing any of the module's files. Any such exceptions are
+ * caught internally. If only one is caught, then it is re-thrown.
+ * If more than one exception is caught, then the second and
+ * following exceptions are added as suppressed exceptions of the
+ * first one caught, which is then re-thrown.
+ */
+ public abstract void remove(List<ModuleId> mids, boolean dry)
+ throws ConfigurationException, IOException;
+
+ /**
+ * Forcibly remove one or more modules from this library.
+ *
+ * <p> No regard is given to configuration of any root modules in the
+ * library that may require any of the given modules. </p>
+ *
+ * @param mids
+ * The module identifiers
+ *
+ * @throws IOException
+ * If an I/O error occurs while accessing the module library, or
+ * removing any of the module's files. Any such exceptions are
+ * caught internally. If only one is caught, then it is re-thrown.
+ * If more than one exception is caught, then the second and
+ * following exceptions are added as suppressed exceptions of the
+ * first one caught, which is then re-thrown.
+ */
+ public abstract void removeForcibly(List<ModuleId> mids)
+ throws IOException;
+
+ /**
* Find a resource within the given module in this library.
*
* @param mid
* The module's identifier
*