-
- All Implemented Interfaces:
-
com.planbase.taint.Taintable
,java.io.Serializable
public final class TaintBuilder implements Serializable, Taintable
Represents a Tainted Builder and is an inherently Mutable class and therefore not thread safe. It works much like StringBuilder, except that TaintedB ignores nulls while StringBuilder appends "null".
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public class
TaintBuilder.Companion
-
Constructor Summary
Constructors Constructor Description TaintBuilder()
Zero-arg constructor TaintBuilder(Taintable s)
TaintBuilder(String s)
TaintBuilder(Number s)
-
Method Summary
Modifier and Type Method Description final TaintBuilder
append(String s)
Taint and append a String. final TaintBuilder
append(Taintable ts)
Append an already TaintedStringable. final TaintBuilder
append(Number l)
Taint and append a String. final TaintBuilder
appendCodePoint(Integer cp)
final TaintBuilder
delete(Integer start, Integer end)
final TaintBuilder
deleteCharAt(Integer index)
final Integer
size()
final TaintBuilder
replace(Integer start, Integer end, String str)
final TaintBuilder
insert(Integer index, Number n)
Unlike StringBuilder, nulls are ignored. final TaintBuilder
insert(Integer index, String s)
Unlike StringBuilder, nulls are ignored. final TaintBuilder
insert(Integer index, Taintable s)
Unlike StringBuilder, nulls are ignored. Integer
length()
{@inheritDoc} final TaintBuilder
reverse()
Tainted
toTaintedS()
Returns an Immutable Tainted representation of the object. final String
quoteAsString()
Turns this into a valid, quoted Kotlin/Java string (good for writing to log files). String
unsafeRaw()
{@inheritDoc} Integer
hashCode()
Boolean
equals(Object other)
String
toString()
DANGEROUS: Using this trusts user input, defeating the purpose of this class. -
-
Method Detail
-
append
final TaintBuilder append(String s)
Taint and append a String. Unlike StringBuilder, nulls are ignored.
-
append
final TaintBuilder append(Taintable ts)
Append an already TaintedStringable.
-
append
final TaintBuilder append(Number l)
Taint and append a String.
-
appendCodePoint
final TaintBuilder appendCodePoint(Integer cp)
-
delete
final TaintBuilder delete(Integer start, Integer end)
-
deleteCharAt
final TaintBuilder deleteCharAt(Integer index)
-
replace
final TaintBuilder replace(Integer start, Integer end, String str)
-
insert
final TaintBuilder insert(Integer index, Number n)
Unlike StringBuilder, nulls are ignored.
-
insert
final TaintBuilder insert(Integer index, String s)
Unlike StringBuilder, nulls are ignored.
-
insert
final TaintBuilder insert(Integer index, Taintable s)
Unlike StringBuilder, nulls are ignored.
-
reverse
final TaintBuilder reverse()
-
toTaintedS
Tainted toTaintedS()
Returns an Immutable Tainted representation of the object.
-
quoteAsString
final String quoteAsString()
Turns this into a valid, quoted Kotlin/Java string (good for writing to log files).
-
toString
@Deprecated(message = "This data should be encoded.", replaceWith = @ReplaceWith(imports = {}, expression = "unsafeRaw()")) String toString()
DANGEROUS: Using this trusts user input, defeating the purpose of this class. This is deprecated to help prevent accidental use, but Java and Kotlin both call this method implicitly.
If failSoftly is true, uses warning signs as delimiters to make errors visible. If failSoftly is false (the default) throws an UnsupportedOperationException.
-
-
-
-