Jump to: navigation, search

Handly/Migration07

Migration Guide for Eclipse Handly 0.7

Changes that need to be accommodated by current adopters as part of migrating to Eclipse Handly 0.7 from the previous major release (0.6). Some changes are expected to be less affecting for existing clients than others.

Quick Summary (Most Affecting Changes)

  • Element
    • Element hParent()IElement hParent() (515232)
    • The following methods that were protected are now public (515667):
      • hBuildStructure(IContext, IProgressMonitor)
      • hToStringXXX(StringBuilder, ..)
      • hValidateExistence(IContext)
  • SourceFile
    • Subclasses need to implement hBuildSourceStructure instead of hBuildStructure (515246)

Full List of Changes per Package

org.eclipse.handly.model.impl

  • DefaultWorkingCopyInfo
    • DefaultWorkingCopyInfo(SourceFile, IBuffer)DefaultWorkingCopyInfo(ISourceFileImplSupport, IBuffer) (515667)
  • Element
    • Element(Element, String)Element(IElement, String) (515232)
    • boolean hClose()void hClose() (515099)
    • protected boolean hClose(boolean) has been effectively replaced with public void hClose(IContext) (515099)
    • hElementType() has been removed (515302)
    • Element hParent()IElement hParent() (515232)
    • The following members that were protected are now public (515667):
      • hBody()
      • hBody(IContext, IProgressMonitor)
      • hBuildStructure(IContext, IProgressMonitor)
      • hChildren(Object)
      • hDoesNotExistException()
      • hElementManager()
      • hIsOpenable()
      • hOpenableParent()
      • hGenerateAncestorBodies(IContext, IProgressMonitor)
      • hGenerateBodies(IContext, IProgressMonitor)
      • hRemoving(Object)
      • hToStringAncestors(StringBuilder, IContext)
      • hToStringBody(StringBuilder, Object, IContext)
      • hToStringChildren(StringBuilder, IContext)
      • hToStringName(StringBuilder, IContext)
      • hValidateExistence(IContext)
      • NEW_ELEMENTS
      • NO_BODY
    • New API methods:
      • public boolean hCanEqual(Object) (515302)
      • public void hClose(IContext) (515099)
      • public boolean hDefaultEquals(Object) (517614)
      • public int hDefaultHashCode() (517614)
      • public void hOpen(IContext, IProgressMonitor) (515461)
      • public void hRemove(IContext) (515099)
  • ElementDelta
    • New API methods (514798):
      • protected void hAddResourceDelta(IResourceDelta)
      • protected void hClearAffectedChildren()
      • protected void hInsert(ElementDelta)
      • protected void hSetFlags(long)
      • protected void hSetKind(int)
      • protected void hSetMarkerDeltas(IMarkerDelta[])
      • protected void hSetMovedFromElement(IElement)
      • protected void hSetMovedToElement(IElement)
      • protected void hSetResourceDeltas(IResourceDelta[])
  • ElementDelta.Builder
    • insert(ElementDelta) that was protected is now private; this API has been effectively replaced with ElementDelta.hInsert (514798)
  • ElementDifferencer
    • findContentChange(Object newBody, Object oldBody, IElement)findContentChange(Object oldBody, Object newBody, IElement)
    • IElementDelta getDelta()ElementDelta getDelta()
    • New API methods (514848):
      • public ElementDelta.Builder getDeltaBuilder()
      • protected void recordBody(Object, IElement)
  • ElementManager
    • close(IElement)close(IElement, IContext) (515099)
  • SourceConstruct
    • SourceConstruct(Element, String)SourceConstruct(IElement, String) (515232)
  • SourceElement has been effectively replaced with ISourceElementImplSupport
    • The following methods that were protected are now public (515667):
      • hSourceElementAt(int, ISourceElementInfo)
      • checkInRange(int, ISnapshot, ISourceElementInfo)
  • SourceFile
    • SourceFile(Element, String)SourceFile(IElement, String) (515232)
    • Subclasses need to implement hBuildSourceStructure instead of hBuildStructure (515246)
    • The following members that were protected are now public (515667):
      • hFileBuffer(IContext, IProgressMonitor)
      • hFileExists()
      • hFileSnapshotProvider()
      • hReconcileOperation()
      • hWorkingCopyContext(IContext)
      • hWorkingCopyModeChanged()
      • NotifyingReconcileOperation
      • ReconcileOperation
      • SOURCE_AST
      • SOURCE_CONTENTS
      • SOURCE_SNAPSHOT
    • The following nested classes that were non-static are now static (515667):
      • NotifyingReconcileOperation
      • ReconcileOperation
    • REBUILD_STRUCTURE_IF_FORCEDReconcileOperation.REBUILD_STRUCTURE_IF_FORCED
    • New API methods:
      • public abstract void hBuildSourceStructure(IContext, IProgressMonitor) (515246)
  • WorkingCopyInfo
    • WorkingCopyInfo(SourceFile, IBuffer)WorkingCopyInfo(ISourceFileImplSupport, IBuffer) (515667)
    • SourceFile getSourceFile()ISourceFileImplSupport getSourceFile() (515667)
  • WorkingCopyInfo.Factory
    • newWorkingCopyInfo(SourceFile, IBuffer)newWorkingCopyInfo(ISourceFileImplSupport, IBuffer) (515667)
  • WorkspaceSourceFile
    • WorkspaceSourceFile(Element, IFile)WorkspaceSourceFile(IElement, IFile) (515232)

org.eclipse.handly.util

  • LruCache
    • New API methods:
      • public Enumeration<V> elements() (514958)

org.eclipse.handly.xtext.ui.editor

  • XtextWorkingCopyInfo
    • XtextWorkingCopyInfo(SourceFile, IBuffer)XtextWorkingCopyInfo(ISourceFileImplSupport, IBuffer) (515667)