SubmissionCsvExportInterface.php
1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<?php
use NF_Exports_Interfaces_SubmissionCollectionInterface as SubmissionCollectionInterface;
/**
* Contract defining required methods CSV export
*/
interface NF_Exports_Interfaces_SubmissionCsvExportInterface {
/**
* Generate CSV output and return
*
* @return string
*/
public function handle()/* :string */;
/**
* Provide submissionCollection indices in reverse order
*
* CSV output sorts earliest to current; submissionAggregate returns in reverse order
*
* @return void
*/
public function reverseSubmissionOrder(): array;
/**
* Construct a CSV row for record at given submission aggregate's index
*
* @param mixed $aggregatedKey
* @return array
*/
public function constructRow( $aggregatedKey):array;
/**
* Set submission collection used in generating the CSV
* @param SubmissionCollectionInterface $submissionCollection
*/
public function setSubmissionCollection(/* SubmissionCollectionInterface */ $submissionCollection)/* :NF_Exports_Interfaces_SubmissionCsvExportInterface */;
/**
* Set boolean useAdminLabels
* @param bool $useAdminLabels
* @return NF_Exports_Interfaces_SubmissionCsvExportInterface
*/
public function setUseAdminLabels($useAdminLabels) :NF_Exports_Interfaces_SubmissionCsvExportInterface;
/**
* Return array of labels
*
* @return array
*/
public function getLabels( ): array;
/**
* Set date format
* @param string $dateFormat
*/
public function setDateFormat(/* string */$dateFormat)/* :NF_Exports_Interfaces_SubmissionCsvExportInterface */;
}