CsvTableEncryptedFileRenderer

com.phasmidsoftware.tableparser.crypto.render.CsvTableEncryptedFileRenderer
case class CsvTableEncryptedFileRenderer[T, A](file: File, keyFunction: String => String)(using evidence$1: CsvRenderer[T], evidence$2: CsvGenerator[T], evidence$3: HasKey[T], evidence$4: HexEncryption[A], csvAttributes: CsvAttributes) extends CsvTableRenderer[T, FileWriter]

Case class to help render a Table to a File in CSV format, with each row encrypted (see WritableCrypt). The header is written in plain text.

Type parameters

A

the cipher algorithm (for which there must be evidence of HexEncryption[A]).

T

the type of object to be rendered, must provide evidence of CsvRenderer[T], CsvGenerator[T] and HasKey[T].

Value parameters

csvAttributes

implicit instance of CsvAttributes.

file

the file to which the table will be written.

keyFunction

a function which takes the key of a row (see HasKey) and returns the encryption key for that row (the same function that EncryptedHeadedStringTableParser uses to decrypt it).

Attributes

Graph
Supertypes
trait Serializable
trait Product
trait Equals
class CsvTableRenderer[T, FileWriter]
trait Renderer[Table[T], Try[FileWriter]]
class Object
trait Matchable
class Any
Show all

Members list

Value members

Inherited methods

def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product
def render(t: Table[T], attrs: Map[String, String]): Try[FileWriter]

Render an instance of T as an O, qualifying the rendering with attributes defined in attrs.

Render an instance of T as an O, qualifying the rendering with attributes defined in attrs.

Value parameters

attrs

a map of attributes for this value of O.

t

the input parameter, i.e., the Table[T] instance to render.

Attributes

Returns

an instance of type O.

Inherited from:
CsvTableRenderer
def render(t: Table[T]): Try[FileWriter]

Render an instance of T as an O, qualifying the rendering with no attributes.

Render an instance of T as an O, qualifying the rendering with no attributes.

Value parameters

t

a T to be rendered.

Attributes

Returns

an instance of type O.

Inherited from:
Renderer