case class EncryptedHeadedStringTableParser[X, A](encryptedRowPredicate: (String) => Boolean, keyFunction: (String) => String, maybeHeader: Option[Header] = None, forgiving: Boolean = false, headerRowsToRead: Int = 1)(implicit evidence$1: CellParser[X], evidence$2: ClassTag[X], evidence$3: HexEncryption[A]) extends HeadedStringTableParser[X] with Product with Serializable
Case class to define a StringTableParser that assumes a header to be found in the input file. This class attempts to provide as much built-in functionality as possible.
This class assumes that the names of the columns are in the first line. This class implements builder with a HeadedTable object. This class uses StandardRowParser of its rowParser.
- X
the underlying row type for which there must be evidence of a CellParser and ClassTag.
- A
the cipher algorithm (for which there must be evidence of HexEncryption[A]).
- encryptedRowPredicate
a function which takes a String and returns a Boolean.
- keyFunction
a function which takes a String and returns a String (input might be ignored).
- maybeHeader
None => requires that the data source has a header row. Some(h) => specifies that the header is to be taken from h. Defaults to None. NOTE: that the simplest is to specify the header directly from the type X.
- forgiving
if true, exceptions when parsing individual rows will be logged then ignored. if false, any exception will terminate the parsing. Defaults to false.
- headerRowsToRead
the number of header rows expected in the input file defaults to 1.
- Alphabetic
- By Inheritance
- EncryptedHeadedStringTableParser
- Serializable
- Product
- Equals
- HeadedStringTableParser
- CopyableTableParser
- StringTableParser
- AbstractTableParser
- TableParser
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new EncryptedHeadedStringTableParser(encryptedRowPredicate: (String) => Boolean, keyFunction: (String) => String, maybeHeader: Option[Header] = None, forgiving: Boolean = false, headerRowsToRead: Int = 1)(implicit arg0: CellParser[X], arg1: ClassTag[X], arg2: HexEncryption[A])
- encryptedRowPredicate
a function which takes a String and returns a Boolean.
- keyFunction
a function which takes a String and returns a String (input might be ignored).
- maybeHeader
None => requires that the data source has a header row. Some(h) => specifies that the header is to be taken from h. Defaults to None. NOTE: that the simplest is to specify the header directly from the type X.
- forgiving
if true, exceptions when parsing individual rows will be logged then ignored. if false, any exception will terminate the parsing. Defaults to false.
- headerRowsToRead
the number of header rows expected in the input file defaults to 1.
Type Members
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def builder(rows: Iterator[X], header: Header): Table[Row]
- Attributes
- protected
- Definition Classes
- HeadedStringTableParser → TableParser
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- def doParseRows(ts: Iterator[Input], header: Header, f: ((Input, Int)) => Try[Row])(implicit ev: Joinable[Input]): Try[Table[X]]
- Definition Classes
- AbstractTableParser
- val encryptedRowPredicate: (String) => Boolean
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- val forgiving: Boolean
- Definition Classes
- EncryptedHeadedStringTableParser → HeadedStringTableParser → TableParser
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- val headerRowsToRead: Int
- Definition Classes
- EncryptedHeadedStringTableParser → HeadedStringTableParser → TableParser
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- val keyFunction: (String) => String
- val maybeHeader: Option[Header]
- Definition Classes
- EncryptedHeadedStringTableParser → TableParser
- val multiline: Boolean
- Attributes
- protected
- Definition Classes
- TableParser
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def parse(xs: Iterator[String], n: Int): Try[Table[X]]
- Definition Classes
- StringTableParser → AbstractTableParser → TableParser
- def parseIO(xr: Iterator[String], n: Int): IO[Table[X]]
TESTME
TESTME
- xr
the sequence of Inputs, one for each row
- n
the number of lines that should be used as a Header. If n == 0 == maybeHeader.empty then there is a logic error.
- returns
an IO[Table]
- def parseRows(ws: Iterator[String], header: Header): Try[Table[X]]
- Definition Classes
- StringTableParser → AbstractTableParser
- val predicate: (Try[Row]) => Boolean
- Attributes
- protected
- Definition Classes
- TableParser
- def productElementNames: Iterator[String]
- Definition Classes
- Product
- val rowParser: RowParser[X, String]
- Definition Classes
- HeadedStringTableParser → TableParser
- def setForgiving(b: Boolean): TableParser[Table[X]]
Set the value of forgiving for the plaintext TableParser.
Set the value of forgiving for the plaintext TableParser.
- b
true or false. See TableParser.
- returns
a TableParser of Table[X]
- Definition Classes
- EncryptedHeadedStringTableParser → CopyableTableParser
- def setHeader(header: Header): TableParser[Table[X]]
Set the Header for the plaintext TableParser.
Set the Header for the plaintext TableParser.
CONSIDER does this make sense to allow?
- header
the required Header.
- returns
a TableParser of Table[X]
- Definition Classes
- EncryptedHeadedStringTableParser → CopyableTableParser
- def setMultiline(b: Boolean): TableParser[Table[X]]
Set the value of multiline for the plaintext TableParser.
Set the value of multiline for the plaintext TableParser.
- b
value of multiline for the plaintext TableParser. See TableParser.
- returns
a TableParser of Table[X]
- Definition Classes
- EncryptedHeadedStringTableParser → CopyableTableParser
- def setPlaintextPredicate(p: (Try[X]) => Boolean): TableParser[Table[X]]
Set the value of predicate for the plaintext TableParser.
Set the value of predicate for the plaintext TableParser.
- p
predicate for the plaintext TableParser.
- returns
a TableParser of Table[X]
- def setPredicate(predicate: (Try[X]) => Boolean): TableParser[Table[X]]
Set the predicate for the plaintext TableParser.
Set the predicate for the plaintext TableParser.
- predicate
a predicate which will be applied to each X (i.e. AFTER decryption).
- returns
a TableParser of Table[X]
- Definition Classes
- EncryptedHeadedStringTableParser → CopyableTableParser
- def setRowParser(rp: RowParser[X, Input]): TableParser[Table[X]]
Set the value of the row parser for the plaintext TableParser.
Set the value of the row parser for the plaintext TableParser.
- rp
the row parser for the plaintext TableParser.
- returns
a TableParser of Table[X]
- Definition Classes
- EncryptedHeadedStringTableParser → CopyableTableParser
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)