@Override long getID() { return marker.getId(); }
/** * @see IMarker#equals(Object) */ @Override public boolean equals(Object object) { if (!(object instanceof IMarker)) return false; IMarker other = (IMarker) object; return (id == other.getId() && resource.equals(other.getResource())); }
/** * @see IMarker#equals(Object) */ @Override public boolean equals(Object object) { if (!(object instanceof IMarker)) return false; IMarker other = (IMarker) object; return (id == other.getId() && resource.equals(other.getResource())); }
/** * Writes the given marker to the given stream. * * @param marker the marker * @param dataOut the output stream * @exception IOException if there is a problem writing to the stream */ private void writeMarker(IMarker marker, DataOutputStream dataOut) throws IOException { /** * Marker serialization format is as follows: * (String) path of resource for marker * (int) marker ID */ dataOut.writeUTF(marker.getResource().getFullPath().toString()); dataOut.writeLong(marker.getId()); } }
/** * @see IMarker#equals(Object) */ @Override public boolean equals(Object object) { if (!(object instanceof IMarker)) return false; IMarker other = (IMarker) object; return (id == other.getId() && resource.equals(other.getResource())); }
@Override protected boolean encodeElement(Object element, IMemento memento, IPresentationContext context) throws CoreException { if (element instanceof IBreakpoint) { IMarker marker = ((IBreakpoint)element).getMarker(); if (marker != null) { long markerId = marker.getId(); memento.putString(MARKER_ID, Long.toString(markerId)); IPath fullPath = marker.getResource().getFullPath(); String path = fullPath.toString(); memento.putString(RESOURCE_PATH, path); return true; } } return false; }
@Override protected boolean isEqual(Object element, IMemento memento, IPresentationContext context) throws CoreException { if (element instanceof IBreakpoint) { IBreakpoint breakpoint =(IBreakpoint)element; IMarker marker = breakpoint.getMarker(); long markerId = marker.getId(); String mementoMarkerId = memento.getString(MARKER_ID); if (!Long.toString(markerId).equals(mementoMarkerId)) { return false; } IPath fullPath = marker.getResource().getFullPath(); String path = fullPath.toString(); String mementoPath = memento.getString(RESOURCE_PATH); if (!path.equals(mementoPath)) { return false; } return true; } return false; }
@Override public void saveState(IMemento memento) { IMarker marker = fBreakpoint.getMarker(); if (marker != null) { IResource resource = marker.getResource(); IPersistableElement pe = resource.getAdapter(IPersistableElement.class); if (pe != null) { long id = marker.getId(); String longString = Long.toString(id); memento.putString(TAG_MARKER_ID, longString); memento.putString(TAG_RESOURCE_FACTORY_ID, pe.getFactoryId()); pe.saveState(memento); } } }
@Override public void deleteMarkers(IMarker[] markers) throws CoreException { Assert.isNotNull(markers); if (markers.length == 0) return; // clone to avoid outside changes markers = markers.clone(); try { prepareOperation(null, null); beginOperation(true); for (int i = 0; i < markers.length; ++i) if (markers[i] != null && markers[i].getResource() != null) markerManager.removeMarker(markers[i].getResource(), markers[i].getId()); } finally { endOperation(null, false, null); } }
@Override public void deleteMarkers(IMarker[] markers) throws CoreException { Assert.isNotNull(markers); if (markers.length == 0) return; // clone to avoid outside changes markers = markers.clone(); try { prepareOperation(null, null); beginOperation(true); for (int i = 0; i < markers.length; ++i) if (markers[i] != null && markers[i].getResource() != null) markerManager.removeMarker(markers[i].getResource(), markers[i].getId()); } finally { endOperation(null, false, null); } }
@Override public void deleteMarkers(IMarker[] markers) throws CoreException { Assert.isNotNull(markers); if (markers.length == 0) return; // clone to avoid outside changes markers = markers.clone(); try { prepareOperation(null, null); beginOperation(true); for (IMarker marker : markers) if (marker != null && marker.getResource() != null) markerManager.removeMarker(marker.getResource(), marker.getId()); } finally { endOperation(null, false); } }
private static boolean createExtraLocations(IDocument document, Trackable trackable, IMarker marker) { boolean hasExtraLocation = false; for (Flow f : trackable.getFlows()) { ExtraPosition parent = null; List<IssueLocation> locations = new ArrayList<>(f.locations()); Collections.reverse(locations); for (IssueLocation l : locations) { ExtraPosition extraPosition = MarkerUtils.getExtraPosition(document, l.getStartLine(), l.getStartLineOffset(), l.getEndLine(), l.getEndLineOffset(), l.getMessage(), marker.getId(), parent); if (extraPosition != null) { savePosition(document, extraPosition); parent = extraPosition; hasExtraLocation = true; } } } return hasExtraLocation; }
private static void createMarker(IDocument document, ISonarLintIssuable issuable, Trackable trackable, TriggerType triggerType, boolean createExtraLocations) throws CoreException { IMarker marker = issuable.getResource() .createMarker(triggerType.isOnTheFly() ? SonarLintCorePlugin.MARKER_ON_THE_FLY_ID : SonarLintCorePlugin.MARKER_REPORT_ID); if (triggerType.isOnTheFly()) { trackable.setMarkerId(marker.getId()); } // See MarkerViewUtils marker.setAttribute("org.eclipse.ui.views.markers.name", issuable.getResourceNameForMarker()); marker.setAttribute("org.eclipse.ui.views.markers.path", issuable.getResourceContainerForMarker()); updateMarkerAttributes(document, trackable, marker, createExtraLocations); }
@Override public void saveState(IMemento memento) { if (viewer == null) { if (this.memento != null) { memento.putMemento(this.memento); } return; } Scrollable scrollable = (Scrollable) viewer.getControl(); Object markers[] = ((IStructuredSelection) viewer.getSelection()) .toArray(); if (markers.length > 0) { IMemento selectionMem = memento.createChild(TAG_SELECTION); for (int i = 0; i < markers.length; i++) { IMemento elementMem = selectionMem.createChild(TAG_MARKER); IMarker marker = (IMarker) markers[i]; elementMem.putString(TAG_RESOURCE, marker.getResource() .getFullPath().toString()); elementMem.putString(TAG_ID, String.valueOf(marker.getId())); } } //save vertical position ScrollBar bar = scrollable.getVerticalBar(); int position = bar != null ? bar.getSelection() : 0; memento.putString(TAG_VERTICAL_POSITION, String.valueOf(position)); //save horizontal position bar = scrollable.getHorizontalBar(); position = bar != null ? bar.getSelection() : 0; memento.putString(TAG_HORIZONTAL_POSITION, String.valueOf(position)); }
/** * Refresh the properties of this marker from the underlying IMarker instance */ public void refresh() { clearCache(); description = Util.getProperty(IMarker.MESSAGE, marker); resourceName = Util.getResourceName(marker); inFolder = Util.getContainerName(marker); shortFolder = null; line = marker.getAttribute(IMarker.LINE_NUMBER, -1); locationString = marker.getAttribute(IMarker.LOCATION, Util.EMPTY_STRING); try { creationTime = marker.getCreationTime(); } catch (CoreException e) { creationTime = 0; } try { type = marker.getType(); } catch (CoreException e1) { type = Util.EMPTY_STRING; } // store the marker ID locally id = marker.getId(); }
System.out.println("ApiAnalysisBuilder: Created the marker: " + marker.getId() + " - " + marker.getAttributes().entrySet()); //$NON-NLS-1$ //$NON-NLS-2$
elementMem.putString(TAG_RESOURCE, marker.getResource() .getFullPath().toString()); elementMem.putString(TAG_ID, String.valueOf(marker.getId()));