throws UnregisteredScriptModuleDependencyException,
AlreadyRegisteredScriptModuleException,
CyclicDependencyScriptModuleException {
if (isRegistered(module)) {
throw new AlreadyRegisteredScriptModuleException(
"Module " + module + " has already been registered.");
}
for (ScriptModule dependencyModule : module.getDependencies()) {
// since ScriptModule (holding dependency collection) is immutable it is