public List<TypeDeclaration> removeTypesGeneratedFromResource(Resource resource) { List<TypeDeclaration> typesToBeRemoved = getTypesGeneratedFromResource(resource); if (!typesToBeRemoved.isEmpty()) { JavaDialectRuntimeData dialect = (JavaDialectRuntimeData) getDialectRuntimeRegistry().getDialectData("java"); for (TypeDeclaration type : typesToBeRemoved) { if (type.getTypeClassName() != null) { // the type declaration might not have been built up to actual class, if an error was // found first // in this case, no accessor would have been wired classFieldAccessorStore.removeType(type); dialect.remove(type.getTypeClassName()); } removeTypeDeclaration(type.getTypeName()); } dialect.reload(); } return typesToBeRemoved; }
public ClassLoader getPackageClassLoader() { JavaDialectRuntimeData javaRuntime = (JavaDialectRuntimeData) getDialectRuntimeRegistry().getDialectData("java"); return javaRuntime.getClassLoader(); }