Eclipse JDT
Release 3.1

org.eclipse.jdt.core
Class WorkingCopyOwner

java.lang.Object
  extended byorg.eclipse.jdt.core.WorkingCopyOwner

public abstract class WorkingCopyOwner
extends Object

The owner of an ICompilationUnit handle in working copy mode. An owner is used to identify a working copy and to create its buffer.

Clients should subclass this class to instantiate a working copy owner that is specific to their need and that they can pass in to various APIs (e.g. IType.resolveType(String, WorkingCopyOwner). Clients can also override the default implementation of createBuffer(ICompilationUnit).

Note: even though this class has no abstract method, which means that it provides functional default behavior, it is still an abstract class, as clients are intended to own their owner implementation.

Since:
3.0
See Also:
ICompilationUnit.becomeWorkingCopy(IProblemRequestor, org.eclipse.core.runtime.IProgressMonitor), ICompilationUnit.discardWorkingCopy(), ICompilationUnit.getWorkingCopy(org.eclipse.core.runtime.IProgressMonitor)

Constructor Summary
WorkingCopyOwner()
           
 
Method Summary
 IBuffer createBuffer(ICompilationUnit workingCopy)
          Creates a buffer for the given working copy.
static void setPrimaryBufferProvider(WorkingCopyOwner primaryBufferProvider)
          Sets the buffer provider of the primary working copy owner.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

WorkingCopyOwner

public WorkingCopyOwner()
Method Detail

setPrimaryBufferProvider

public static void setPrimaryBufferProvider(WorkingCopyOwner primaryBufferProvider)
Sets the buffer provider of the primary working copy owner. Note that even if the buffer provider is a working copy owner, only its createBuffer(ICompilationUnit) method is used by the primary working copy owner. It doesn't replace the internal primary working owner.

This method is for internal use by the jdt-related plug-ins. Clients outside of the jdt should not reference this method.

Parameters:
primaryBufferProvider - the primary buffer provider

createBuffer

public IBuffer createBuffer(ICompilationUnit workingCopy)
Creates a buffer for the given working copy. The new buffer will be initialized with the contents of the underlying file if and only if it was not already initialized by the compilation owner (a buffer is uninitialized if its content is null).

Note: This buffer will be associated to the working copy for its entire life-cycle. Another working copy on same unit but owned by a different owner would not share the same buffer unless its owner decided to implement such a sharing behaviour.

Parameters:
workingCopy - the working copy of the buffer
Returns:
IBuffer the created buffer for the given working copy
See Also:
IBuffer

Eclipse JDT
Release 3.1

Copyright (c) IBM Corp. and others 2000, 2005. All Rights Reserved.