Module java.desktop
Package javax.swing.text

## Class DocumentFilter.FilterBypass

- java.lang.Object
- - javax.swing.text.DocumentFilter.FilterBypass

Enclosing class:
  DocumentFilter

    public abstract static class DocumentFilter.FilterBypass
    extends Object

Used as a way to circumvent calling back into the Document to change it. Document implementations that wish to support a DocumentFilter must provide an implementation that will not callback into the DocumentFilter when the following methods are invoked from the DocumentFilter.

Since:
  1.4

### Constructor Summary

Constructors
`FilterBypass()`

### Method Summary

All Methods Instance Methods Abstract Methods
`abstract Document` `getDocument()` Returns the Document the mutation is occurring on.
`abstract void` `insertString​(int offset, String string, AttributeSet attr)` Inserts the specified text, bypassing the DocumentFilter.
`abstract void` `remove​(int offset, int length)` Removes the specified region of text, bypassing the DocumentFilter.
`abstract void` `replace​(int offset, int length, String string, AttributeSet attrs)` Deletes the region of text from `offset` to `offset + length`, and replaces it with `text`.

### Methods declared in class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### FilterBypass

    public FilterBypass()

### Method Detail

#### getDocument

    public abstract Document getDocument()

Returns the Document the mutation is occurring on.

Returns:
  Document that remove/insertString will operate on

#### remove

    public abstract void remove​(int offset,
                                int length)
                         throws BadLocationException

Removes the specified region of text, bypassing the DocumentFilter.

Parameters:
  `offset` - the offset from the beginning >= 0
  `length` - the number of characters to remove >= 0
Throws:
  `BadLocationException` - some portion of the removal range was not a valid part of the document. The location in the exception is the first bad position encountered.

#### insertString

    public abstract void insertString​(int offset,
                                      String string,
                                      AttributeSet attr)
                               throws BadLocationException

Inserts the specified text, bypassing the DocumentFilter.

Parameters:
  `offset` - the offset into the document to insert the content >= 0. All positions that track change at or after the given location will move.
  `string` - the string to insert
  `attr` - the attributes to associate with the inserted content. This may be null if there are no attributes.
Throws:
  `BadLocationException` - the given insert position is not a valid position within the document

#### replace

    public abstract void replace​(int offset,
                                 int length,
                                 String string,
                                 AttributeSet attrs)
                          throws BadLocationException

Deletes the region of text from `offset` to `offset + length`, and replaces it with `text`.

Parameters:
  `offset` - Location in Document
  `length` - Length of text to delete
  `string` - Text to insert, null indicates no text to insert
  `attrs` - AttributeSet indicating attributes of inserted text, null is legal.
Throws:
  `BadLocationException` - the given insert is not a valid position within the document