| 1 | <?php  | 
            ||
| 9 | abstract class Record  | 
            ||
| 10 | { | 
            ||
| 11 | /**  | 
            ||
| 12 | * @var string  | 
            ||
| 13 | */  | 
            ||
| 14 | protected $id;  | 
            ||
| 15 | |||
| 16 | /**  | 
            ||
| 17 | * @var \DateTimeImmutable  | 
            ||
| 18 | */  | 
            ||
| 19 | protected $createdOn;  | 
            ||
| 20 | |||
| 21 | /**  | 
            ||
| 22 | * @var Account  | 
            ||
| 23 | */  | 
            ||
| 24 | protected $account;  | 
            ||
| 25 | |||
| 26 | /**  | 
            ||
| 27 | * @var array  | 
            ||
| 28 | */  | 
            ||
| 29 | protected $entries = [];  | 
            ||
| 30 | |||
| 31 | /**  | 
            ||
| 32 | * @param string $id  | 
            ||
| 33 | * @param \DateTimeImmutable $createdOn  | 
            ||
| 34 | * @param Account $account  | 
            ||
| 35 | */  | 
            ||
| 36 | 15 | public function __construct($id, \DateTimeImmutable $createdOn, Account $account)  | 
            |
| 42 | |||
| 43 | /**  | 
            ||
| 44 | * @return string  | 
            ||
| 45 | */  | 
            ||
| 46 | 2 | public function getId()  | 
            |
| 50 | |||
| 51 | /**  | 
            ||
| 52 | * @return \DateTimeImmutable  | 
            ||
| 53 | */  | 
            ||
| 54 | 2 | public function getCreatedOn()  | 
            |
| 58 | |||
| 59 | /**  | 
            ||
| 60 | * @return Account  | 
            ||
| 61 | */  | 
            ||
| 62 | 2 | public function getAccount()  | 
            |
| 66 | |||
| 67 | /**  | 
            ||
| 68 | * @param Entry $entry  | 
            ||
| 69 | */  | 
            ||
| 70 | 13 | public function addEntry(Entry $entry)  | 
            |
| 74 | |||
| 75 | /**  | 
            ||
| 76 | * @return Entry[]  | 
            ||
| 77 | */  | 
            ||
| 78 | 4 | public function getEntries()  | 
            |
| 82 | }  | 
            ||
| 83 |