Class CopyOnWriteTextStore.StringTextStore

java.lang.Object
aQute.bnd.properties.CopyOnWriteTextStore.StringTextStore
All Implemented Interfaces:
ITextStore
Enclosing class:
CopyOnWriteTextStore

private static class CopyOnWriteTextStore.StringTextStore extends Object implements ITextStore
An unmodifiable String based text store. It is not possible to modify the content other than using set(java.lang.String). Trying to replace(int, int, java.lang.String) a text range will throw an UnsupportedOperationException.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private String
    Represents the content of this text store.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Create an empty text store.
    Create a text store with initial content.
  • Method Summary

    Modifier and Type
    Method
    Description
    char
    get(int offset)
    Returns the character at the specified offset.
    get(int offset, int length)
    Returns the text of the specified character range.
    int
    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 Details

    • fText

      private String fText
      Represents the content of this text store.
  • Constructor Details

    • StringTextStore

      StringTextStore()
      Create an empty text store.
    • StringTextStore

      StringTextStore(String text)
      Create a text store with initial content.
      Parameters:
      text - the initial content
  • Method Details

    • 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