/** * @see IJavaProject */ @Override public boolean hasBuildState() { return JavaModelManager.getJavaModelManager().getLastBuiltState(this.project, null) != null; }
@Override public Manifest getManifest() { ZipFile jar = null; try { jar = getJar(); ZipEntry mfEntry = jar.getEntry(TypeConstants.META_INF_MANIFEST_MF); if (mfEntry != null) return new Manifest(jar.getInputStream(mfEntry)); } catch (CoreException | IOException e) { // must do without manifest } finally { JavaModelManager.getJavaModelManager().closeZipFile(jar); } return null; }
@Override public ZipFile produce() throws IOException { try { return JavaModelManager.getJavaModelManager().getZipFile(externalAnnotationPath); // use (absolute, but) unresolved path here } catch (CoreException e) { throw new IOException("Failed to read annotation file for "+typeName+" from "+externalAnnotationPath.toString(), e); //$NON-NLS-1$ //$NON-NLS-2$ } }}); } catch (IOException e) {
/** * Sets the underlying kernel project of this Java project, * and fills in its parent and name. * Called by IProject.getNature(). * * @see IProjectNature#setProject(IProject) */ public void setProject(IProject project) { this.project = project; this.parent = JavaModelManager.getJavaModelManager().getJavaModel(); }
@Override public void stop(BundleContext context) throws Exception { try { JavaModelManager.unregisterDebugOptionsListener(); JavaModelManager.getJavaModelManager().shutdown(); } finally { // ensure we call super.stop as the last thing super.stop(context); } }
protected void executeOperation() throws JavaModelException { CompilationUnit workingCopy = getWorkingCopy(); JavaModelManager manager = JavaModelManager.getJavaModelManager(); int useCount = manager.discardPerWorkingCopyInfo(workingCopy); if (useCount == 0) { IJavaProject javaProject = workingCopy.getJavaProject(); if (ExternalJavaProject.EXTERNAL_PROJECT_NAME.equals(javaProject.getElementName())) { manager.removePerProjectInfo((JavaProject) javaProject, true /* remove external jar files indexes and timestamps*/); manager.containerRemove(javaProject);
public void contentTypeChanged(ContentTypeChangeEvent event) { Util.resetJavaLikeExtensions(); // Walk through projects to reset their secondary types cache IJavaProject[] projects; try { projects = JavaModelManager.getJavaModelManager().getJavaModel().getJavaProjects(); } catch (JavaModelException e) { return; } for (int i = 0, length = projects.length; i < length; i++) { IJavaProject project = projects[i]; final PerProjectInfo projectInfo = getPerProjectInfo(project.getProject(), false /* don't create info */); if (projectInfo != null) { projectInfo.secondaryTypes = null; } } }
public void verifyArchiveContent(IPath path) throws CoreException { if (isInvalidArchive(path)) { throw new CoreException(new Status(IStatus.ERROR, JavaCore.PLUGIN_ID, -1, Messages.status_IOException, new ZipException())); } ZipFile file = getZipFile(path); closeZipFile(file); }
@Override protected InputStream getContents(URI uri, IProject project) throws CoreException { // inspired by org.eclipse.jdt.internal.core.JarEntryFile.getContents() JavaModelManager modelManager = JavaModelManager.getJavaModelManager(); ZipFile zipFile = modelManager.getZipFile(zipFilePath); try { ZipEntry zipEntry = zipFile.getEntry(uri.toString()); if (zipEntry != null) { byte[] contents = Util.getZipEntryByteContent(zipEntry, zipFile); return new ByteArrayInputStream(contents); } } catch (IOException e) { throw new CoreException(new Status(IStatus.ERROR, "", e.getMessage(), e)); } finally { modelManager.closeZipFile(zipFile); } return null; }
public static void recreatePersistedContainer(String propertyName, String containerString, boolean addToContainerValues) { int containerPrefixLength = CP_CONTAINER_PREFERENCES_PREFIX.length(); int index = propertyName.indexOf('|', containerPrefixLength); if (containerString != null) containerString = containerString.trim(); if (index > 0) { String projectName = propertyName.substring(containerPrefixLength, index).trim(); IJavaProject project = getJavaModelManager().getJavaModel().getJavaProject(projectName); IPath containerPath = new Path(propertyName.substring(index+1).trim()); recreatePersistedContainer(project, containerPath, containerString, addToContainerValues); } }
private void dumpMemoryIndex(String message) { System.out.println(message + ":\n" + JavaModelManager.getIndexManager().toString()); }
@Override public void start(BundleContext context) throws Exception { super.start(context); JavaModelManager.registerDebugOptionsListener(context); JavaModelManager.getJavaModelManager().startup(); Indexer.getInstance().rescanAll(); } }
@Override public IResource resource(PackageFragmentRoot root) { if (this.resource == null) return this.resource = JavaModelManager.getExternalManager().getFolder(this.externalPath); return super.resource(root); }
private void deleteIndex(IFile folder) { // cleanup index IndexManager im = JavaModelManager.getJavaModelManager().getIndexManager(); IPath folderPath = folder.getFullPath(); IPath indexLocation = JSPSearchSupport.getInstance().computeIndexLocation(folderPath); im.removeIndex(indexLocation); // im.indexLocations.removeKey(folderPath); // im.indexLocations.removeValue(indexLocation); File f = indexLocation.toFile(); f.delete(); }
protected SourceMethod createMethodHandle(JavaElement parent, MethodInfo methodInfo) { String selector = JavaModelManager.getJavaModelManager().intern(new String(methodInfo.name)); String[] parameterTypeSigs = convertTypeNamesToSigs(methodInfo.parameterTypes); return new SourceMethod(parent, selector, parameterTypeSigs); } protected PackageDeclaration createPackageDeclaration(JavaElement parent, String name) {
@Override public Object getElementInfo(IProgressMonitor monitor) throws JavaModelException { JavaModelManager manager = JavaModelManager.getJavaModelManager(); Object info = manager.getInfo(this); if (info != null && info != JavaModelCache.NON_EXISTING_JAR_TYPE_INFO) return info; return openWhenClosed(createElementInfo(), false, monitor); } /*
protected void initializeAnnotationProcessorManager(Compiler newCompiler) { AbstractAnnotationProcessorManager annotationManager = JavaModelManager.getJavaModelManager().createAnnotationProcessorManager(); if (annotationManager != null) { annotationManager.configureFromPlatform(newCompiler, this, this.javaBuilder.javaProject, this.compilationGroup == CompilationGroup.TEST); annotationManager.setErr(new PrintWriter(System.err)); annotationManager.setOut(new PrintWriter(System.out)); } newCompiler.annotationProcessorManager = annotationManager; }
int internalKind() throws JavaModelException { JavaModelManager manager = JavaModelManager.getJavaModelManager(); PackageFragmentRootInfo info = (PackageFragmentRootInfo) manager.peekAtInfo(this); if (info == null) { info = (PackageFragmentRootInfo) openWhenClosed(createElementInfo(), false, null); } return info.getRootKind(); }
public static void createOutputLocation(IJavaProject project, String folderName, IProgressMonitor monitor) throws JavaModelException, CoreException { IFolder folder = createFolder(project, folderName, monitor); IPath path = folder.getFullPath(); JavaModelManager.getJavaModelManager().getPerProjectInfo(project.getProject(), true); project.setRawClasspath(new IClasspathEntry[0], monitor); project.setOutputLocation(path, monitor); }
void closeAndRemoveFromJarTypeCache() throws JavaModelException { super.close(); // triggered when external annotations have changed we need to recreate this class file JavaModelManager.getJavaModelManager().removeFromJarTypeCache(this.binaryType); } @Override