@Override public String[] getTypesForFile(IModule module, IFile file) { if (module != null) { // Module for (ITypeLoader loader : module.getModuleTypeLoader().getTypeLoaderStack()) { final List<String> typeNames = new ArrayList<String>(); if (loader.handlesFile(file)) { typeNames.addAll(Arrays.asList(loader.getTypesForFile(file))); } if (!typeNames.isEmpty()) { return typeNames.toArray(new String[typeNames.size()]); } } } // Global final List<String> typeNames = new ArrayList<String>(); for (ITypeLoader loader : getGlobalModuleTypeLoader().getTypeLoaderStack()) { if (loader.handlesFile(file)) { typeNames.addAll(Arrays.asList(loader.getTypesForFile(file))); } } if (!typeNames.isEmpty()) { return typeNames.toArray(new String[typeNames.size()]); } // Default return new String[] {"default." + file.getBaseName()}; }
@Override public String[] getTypesForFile(IModule module, IFile file) { if (module != null) { // Module for (ITypeLoader loader : module.getModuleTypeLoader().getTypeLoaderStack()) { final List<String> typeNames = new ArrayList<String>(); if (loader.handlesFile(file)) { typeNames.addAll(Arrays.asList(loader.getTypesForFile(file))); } if (!typeNames.isEmpty()) { return typeNames.toArray(new String[typeNames.size()]); } } } // Global final List<String> typeNames = new ArrayList<String>(); for (ITypeLoader loader : getGlobalModuleTypeLoader().getTypeLoaderStack()) { if (loader.handlesFile(file)) { typeNames.addAll(Arrays.asList(loader.getTypesForFile(file))); } } if (!typeNames.isEmpty()) { return typeNames.toArray(new String[typeNames.size()]); } // Default return new String[] {"default." + file.getBaseName()}; }
private boolean refreshFile(IFile file, String typeName, RefreshKind kind) { boolean processed = false; for (ITypeLoader typeLoader : _globalStack) { if (typeLoader.handlesFile(file)) { String[] types; if (typeName != null) { types = new String[] {typeName}; } else { types = typeLoader.getTypesForFile(file); } kind = typeLoader.refreshedFile(file, types, kind); if (types != null && types.length != 0) { RefreshRequest refreshRequest = new RefreshRequest(file, types, typeLoader, kind); TypeLoaderAccess.instance().refreshTypes(refreshRequest); } processed = true; } } return processed; }
private boolean refreshFile(IFile file, String typeName, RefreshKind kind) { boolean processed = false; for (ITypeLoader typeLoader : _globalStack) { if (typeLoader.handlesFile(file)) { String[] types; if (typeName != null) { types = new String[] {typeName}; } else { types = typeLoader.getTypesForFile(file); } kind = typeLoader.refreshedFile(file, types, kind); if (types != null && types.length != 0) { RefreshRequest refreshRequest = new RefreshRequest(file, types, typeLoader, kind); TypeLoaderAccess.instance().refreshTypes(refreshRequest); } processed = true; } } return processed; }