Package org.eclipse.handly.model.impl.support

# Class WorkspaceSourceFile

java.lang.Object
org.eclipse.core.runtime.PlatformObject
org.eclipse.handly.model.impl.support.Element
org.eclipse.handly.model.impl.support.SourceFile
org.eclipse.handly.model.impl.support.WorkspaceSourceFile

All Implemented Interfaces:
  `org.eclipse.core.runtime.IAdaptable`, `IElement`, `IElementImpl`, `IElementImplExtension`, `ISourceElementImpl`, `ISourceFileImpl`, `ISourceFileImplExtension`, `IElementImplSupport`, `IModelManager.Provider`, `ISourceElementImplSupport`, `ISourceFileImplSupport`, `ISourceElement`, `ISourceFile`

public abstract class WorkspaceSourceFile extends SourceFile
Provides a skeletal implementation of `ISourceFileImplExtension` for source files residing in the workspace. Such files always have an underlying `IFile`. This class is just an implementation convenience. Clients might as well implement a workspace source file by extending `SourceFile` or implementing ("mixing in") `ISourceFileImplSupport` directly if extending this class is not possible/desirable for some reason.

See Also:
  - `BaseSourceFile`
  - `FsSourceFile`

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from interface org.eclipse.handly.model.impl.IElementImplExtension

  `IElementImplExtension.CloseHint`

  ## Nested classes/interfaces inherited from interface org.eclipse.handly.model.impl.support.ISourceFileImplSupport

  `ISourceFileImplSupport.NotifyingReconcileOperation, ISourceFileImplSupport.ReconcileOperation`

- ## Field Summary

  ### Fields inherited from interface org.eclipse.handly.model.impl.IElementImplExtension

  `CLOSE_HINT, FORCE_OPEN`

  ### Fields inherited from interface org.eclipse.handly.model.impl.support.IElementImplSupport

  `NEW_ELEMENTS, NO_BODY`

  ### Fields inherited from interface org.eclipse.handly.model.impl.ISourceFileImplExtension

  `WORKING_COPY_BUFFER, WORKING_COPY_CALLBACK, WORKING_COPY_CONTEXT`

  ### Fields inherited from interface org.eclipse.handly.model.impl.support.ISourceFileImplSupport

  `SOURCE_AST, SOURCE_CONTENTS, SOURCE_SNAPSHOT`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `WorkspaceSourceFile(IElement parent, org.eclipse.core.resources.IFile file)`
  Constructs a handle for a source file with the given parent element and the given underlying `IFile`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `final org.eclipse.core.resources.IFile`
  `getFile_()`
  Returns the underlying `IFile`.
  `final Object`
  `getFileObject_()`
  Returns the underlying `IFile`.
  `final org.eclipse.core.resources.IResource`
  `getResource_()`
  Returns the underlying `IFile`.

  ### Methods inherited from class org.eclipse.handly.model.impl.support.Element

  `equals, getName_, getParent_, hashCode, toString`

  ### Methods inherited from class org.eclipse.core.runtime.PlatformObject

  `getAdapter`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.eclipse.handly.model.IElement

  `equals, hashCode`

  ### Methods inherited from interface org.eclipse.handly.model.impl.IElementImpl

  `equalsAndSameParentChain_, fetchChildren_, fetchChildrenOfType_, getChildrenOfType_, getHandleMemento_, getLocationUri_, getName_, getParent_, getRoot_, toDisplayString_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.IElementImplExtension

  `close_, getBody_, getBody_, getChildren_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.support.IElementImplSupport

  `canEqual_, exists_, findBody_, getChildrenFromBody_, getElementManager_, getModel_, isOpenable_, newDoesNotExistException_, open_, peekAtBody_, remove_, removing_, toString_, toStringAncestors_, toStringBody_, toStringChildren_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.support.IModelManager.Provider

  `getModelManager_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.support.ISourceElementImplSupport

  `getSourceElementAt_, getSourceElementAt_, getSourceElementInfo_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.ISourceFileImpl

  `getFileStore_`

  ### Methods inherited from interface org.eclipse.handly.model.impl.support.ISourceFileImplSupport

  `acquireExistingWorkingCopy_, becomeWorkingCopy_, buildSourceStructure_, buildStructure_, close_, defaultEquals_, defaultHashCode_, fileExists_, getBuffer_, getFileBuffer_, getFileSnapshotProvider_, getReconcileOperation_, getWorkingCopyContext_, isWorkingCopy_, needsReconciling_, newWorkingCopyContext_, openParent_, reconcile_, releaseWorkingCopy_, toStringName_, validateExistence_, workingCopyModeChanged_`

- ## Constructor Details

  - ### WorkspaceSourceFile

    public WorkspaceSourceFile(IElement parent, org.eclipse.core.resources.IFile file)
    Constructs a handle for a source file with the given parent element and the given underlying `IFile`.
    Parameters:
      `parent` - the parent of the element, or `null` if the element has no parent
      `file` - the underlying `IFile` (not `null`)

- ## Method Details

  - ### getResource_

    public final org.eclipse.core.resources.IResource getResource_()
    Returns the underlying `IFile`. This is a handle-only method.
    Returns:
      the underlying `IFile` (never `null`)

  - ### getFile_

    public final org.eclipse.core.resources.IFile getFile_()
    Returns the underlying `IFile`. This is a handle-only method.
    Returns:
      the underlying `IFile` (never `null`)

  - ### getFileObject_

    public final Object getFileObject_()
    Returns the underlying `IFile`. This is a handle-only method.
    Returns:
      the underlying `IFile` (never `null`)
    Since:
      1.3
    See Also:
      - `ISourceFileImpl.getFile_()`
      - `ISourceFileImpl.getFileStore_()`