final List<IResource> resourcesChanged = new ArrayList<IResource>();
event.getDelta().accept(new IResourceDeltaVisitor() {
public boolean visit(IResourceDelta delta) throws CoreException {
if (delta.getResource() instanceof IFile) {
IFile file = (IFile)delta.getResource();
if (file.getFileExtension().equals("tml")) {
resourcesChanged.add(file);
} else if (file.getFileExtension().equals("xml") && WGADesignStructureHelper.isMetadataFolder(file.getParent())) {
resourcesChanged.addAll(Arrays.asList(file.getParent().getParent().members(IResource.FILE)));
}
} else if (delta.getResource() instanceof IFolder) {
IFolder folder = (IFolder) delta.getResource();
if (WGADesignStructureHelper.isMetadataFolder(folder)) {
resourcesChanged.addAll(Arrays.asList(folder.getParent().members(IResource.FILE)));