|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.eclipse.jdt.internal.core.Buffer
public class Buffer
IBuffer
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.eclipse.jdt.core.IBuffer |
---|
IBuffer.ITextEditCapability |
Method Summary | |
---|---|
void |
addBufferChangedListener(IBufferChangedListener listener)
Adds the given listener for changes to this buffer. |
void |
append(char[] text)
Append the text to the actual content, the gap is moved
to the end of the text . |
void |
append(java.lang.String text)
Append the text to the actual content, the gap is moved
to the end of the text . |
void |
close()
Closes the buffer. |
char |
getChar(int position)
Returns the character at the given position in this buffer. |
char[] |
getCharacters()
Returns the contents of this buffer as a character array, or null if
the buffer has not been initialized. |
java.lang.String |
getContents()
Returns the contents of this buffer as a String . |
int |
getLength()
Returns number of characters stored in this buffer. |
IOpenable |
getOwner()
Returns the Java openable element owning of this buffer. |
java.lang.String |
getText(int offset,
int length)
Returns the given range of text in this buffer. |
IResource |
getUnderlyingResource()
Returns the underlying resource for which this buffer was opened, or null if this buffer was not opened on a resource. |
boolean |
hasUnsavedChanges()
Returns whether this buffer has been modified since it was opened or since it was last saved. |
boolean |
isClosed()
Returns whether this buffer has been closed. |
boolean |
isReadOnly()
Returns whether this buffer is read-only. |
void |
removeBufferChangedListener(IBufferChangedListener listener)
Removes the given listener from this buffer. |
void |
replace(int position,
int length,
char[] text)
Replaces length characters starting from position with text |
void |
replace(int position,
int length,
java.lang.String text)
Replaces length characters starting from position with text |
void |
save(org.eclipse.core.runtime.IProgressMonitor progress,
boolean force)
Saves the contents of this buffer to its underlying resource. |
void |
setContents(char[] newContents)
Sets the contents of this buffer to the given character array. |
void |
setContents(java.lang.String newContents)
Sets the contents of this buffer to the given String . |
java.lang.String |
toString()
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Method Detail |
---|
public void addBufferChangedListener(IBufferChangedListener listener)
IBuffer
addBufferChangedListener
in interface IBuffer
listener
- the listener of buffer changesIBuffer
public void append(char[] text)
text
to the actual content, the gap is moved
to the end of the text
.
append
in interface IBuffer
text
- the given character array to append to contents of the bufferpublic void append(java.lang.String text)
text
to the actual content, the gap is moved
to the end of the text
.
append
in interface IBuffer
text
- the String
to append to the contents of the bufferpublic void close()
IBuffer
Further operations on the buffer are not allowed, except for close. If an attempt is made to close an already closed buffer, the second attempt has no effect.
close
in interface IBuffer
IBuffer
public char getChar(int position)
IBuffer
The returned value is undefined if the buffer is closed.
getChar
in interface IBuffer
position
- a zero-based source offset in this buffer
IBuffer
public char[] getCharacters()
IBuffer
null
if
the buffer has not been initialized.
Callers should make no assumption about whether the returned character array is or is not the genuine article or a copy. In other words, if the client wishes to change this array, they should make a copy. Likewise, if the client wishes to hang on to the array in its current state, they should make a copy.
The returned value is undefined if the buffer is closed.
getCharacters
in interface IBuffer
IBuffer
public java.lang.String getContents()
IBuffer
String
. Like all strings,
the result is an immutable value object., It can also answer null
if
the buffer has not been initialized.
The returned value is undefined if the buffer is closed.
getContents
in interface IBuffer
String
IBuffer
public int getLength()
IBuffer
The returned value is undefined if the buffer is closed.
getLength
in interface IBuffer
IBuffer
public IOpenable getOwner()
IBuffer
getOwner
in interface IBuffer
IBuffer
public java.lang.String getText(int offset, int length)
IBuffer
The returned value is undefined if the buffer is closed.
getText
in interface IBuffer
offset
- the zero-based starting offsetlength
- the number of characters to retrieve
IBuffer
public IResource getUnderlyingResource()
IBuffer
null
if this buffer was not opened on a resource.
getUnderlyingResource
in interface IBuffer
null
if none.IBuffer
public boolean hasUnsavedChanges()
IBuffer
true
.
NOTE: when a buffer does not have unsaved changes, the model may decide to close it to claim some memory back. If the associated element needs to be reopened later on, its buffer factory will be requested to create a new buffer.
hasUnsavedChanges
in interface IBuffer
boolean
indicating presence of unsaved changes (in
the absence of any underlying resource, it will always return true
).IBuffer
public boolean isClosed()
IBuffer
isClosed
in interface IBuffer
boolean
indicating whether this buffer is closed.IBuffer
public boolean isReadOnly()
IBuffer
isReadOnly
in interface IBuffer
boolean
indicating whether this buffer is read-onlyIBuffer
public void removeBufferChangedListener(IBufferChangedListener listener)
IBuffer
removeBufferChangedListener
in interface IBuffer
listener
- the listenerIBuffer
public void replace(int position, int length, char[] text)
length
characters starting from position
with text.
After that operation, the gap is placed at the end of the
inserted text
.
- Specified by:
replace
in interface IBuffer
- Parameters:
position
- the zero-based starting position of the affected text range in this bufferlength
- the length of the affected text range in this buffertext
- the replacing text as a character array
public void replace(int position, int length, java.lang.String text)
length
characters starting from position
with text.
After that operation, the gap is placed at the end of the
inserted text
.
- Specified by:
replace
in interface IBuffer
- Parameters:
position
- the zero-based starting position of the affected text range in this bufferlength
- the length of the affected text range in this buffertext
- the replacing text as a String
public void save(org.eclipse.core.runtime.IProgressMonitor progress, boolean force) throws JavaModelException
IBuffer
The force
parameter controls how this method deals with
cases where the workbench is not completely in sync with the local file system.
If false
is specified, this method will only attempt
to overwrite a corresponding file in the local file system provided
it is in sync with the workbench. This option ensures there is no
unintended data loss; it is the recommended setting.
However, if true
is specified, an attempt will be made
to write a corresponding file in the local file system,
overwriting any existing one if need be.
In either case, if this method succeeds, the resource will be marked
as being local (even if it wasn't before).
Has no effect if this buffer is read-only or if the buffer is closed.
save
in interface IBuffer
progress
- the progress monitor to notifyforce
- a boolean
flag indicating how to deal with resource
inconsistencies.
JavaModelException
- if an error occurs writing the buffer
to the underlying resourceIBuffer
public void setContents(char[] newContents)
IBuffer
Equivalent to replace(0,getLength(),contents)
.
Has no effect if this buffer is read-only or if the buffer is closed.
setContents
in interface IBuffer
newContents
- the new contents of this buffer as a character arrayIBuffer
public void setContents(java.lang.String newContents)
IBuffer
String
.
This buffer will now have unsaved changes.
Any client can set the contents of the buffer, not just the owner of the buffer.
Reports a buffer changed event.
Equivalent to replace(0,getLength(),contents)
.
Has no effect if this buffer is read-only or if the buffer is closed.
setContents
in interface IBuffer
newContents
- the new contents of this buffer as a String
IBuffer
public java.lang.String toString()
toString
in class java.lang.Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |