Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.jface.text
Class CopyOnWriteTextStore


java.lang.Object
  extended by 
org.eclipse.jface.text.CopyOnWriteTextStore
All Implemented Interfaces:
ITextStore

public class CopyOnWriteTextStore
extends Object
implements ITextStore

Copy-on-write ITextStore wrapper.

This implementation uses an unmodifiable text store for the initial content. Upon first modification attempt, the unmodifiable store is replaced with a modifiable instance which must be supplied in the constructor.

This class is not intended to be subclassed.

Since:
3.2
Restriction:
This class is not intended to be subclassed by clients.

Field Summary
protected   ITextStore fTextStore
          The underlying "real" text store
 
Constructor Summary
CopyOnWriteTextStore ( ITextStore modifiableTextStore)
          Creates an empty text store.
 
Method Summary
 char get (int offset)
          Returns the character at the specified offset.
  String get (int offset, int length)
          Returns the text of the specified character range.
 int getLength ()
          Returns number of characters stored in this text store.
 void replace (int offset, int length, String text)
          Replaces the specified character range with the given text.
 void set ( String text)
          Replace the content of the text store with the given text.
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

fTextStore

protected 
ITextStore fTextStore
The underlying "real" text store

Constructor Detail

CopyOnWriteTextStore

public CopyOnWriteTextStore(
ITextStore modifiableTextStore)
Creates an empty text store. The given text store will be used upon first modification attempt.

Parameters:
modifiableTextStore - a modifiable ITextStore instance, may not be null
Method Detail

get

public char get(int offset)
Description copied from interface: ITextStore
Returns the character at the specified offset.

Specified by:
get in interface ITextStore
Parameters:
offset - the offset in this text store
Returns:
the character at this offset

get

public 
String get(int offset,
                  int length)
Description copied from interface: ITextStore
Returns the text of the specified character range.

Specified by:
get in interface ITextStore
Parameters:
offset - the offset of the range
length - the length of the range
Returns:
the text of the range

getLength

public int getLength()
Description copied from interface: ITextStore
Returns number of characters stored in this text store.

Specified by:
getLength in interface ITextStore
Returns:
the number of characters stored in this text store

replace

public void replace(int offset,
                    int length,
                    
String text)
Description copied from interface: ITextStore
Replaces the specified character range with the given text. replace(getLength(), 0, "some text") is a valid call and appends text to the end of the text store.

Specified by:
replace in interface ITextStore
Parameters:
offset - the offset of the range to be replaced
length - the number of characters to be replaced
text - the substitution text

set

public void set(
String text)
Description copied from interface: ITextStore
Replace the content of the text store with the given text. Convenience method for replace(0, getLength(), text.

Specified by:
set in interface ITextStore
Parameters:
text - the new content of the text store

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire