Skip to content

Instantly share code, notes, and snippets.

@Mulkave
Created June 8, 2016 20:45
Show Gist options
  • Save Mulkave/8a57bf6998fb7c0b050bbda54b8f1f2e to your computer and use it in GitHub Desktop.
Save Mulkave/8a57bf6998fb7c0b050bbda54b8f1f2e to your computer and use it in GitHub Desktop.
<?php
namespace Directory\Data\Entities\Citizen;
use Directory\Foundation\Entity;
use Directory\Data\Entities\Citizen\Values\SSN;
use Directory\Data\Entities\Citizen\Values\Name;
use Directory\Data\Entities\Citizen\Values\Email;
use Directory\Data\Entities\Citizen\Values\Address;
use Directory\Data\Entities\Citizen\Values\Occupation;
class Citizen extends Entity
{
protected $fillable = [
'name',
'email',
'address',
'ssn',
'occupation',
];
public function register(
Name $name,
Email $email,
SSN $ssn,
Occupation $occupation,
Address $address
) {
return static::create(
[
'ssn' => (int) $ssn->getValue(),
'name' => (string) $name,
'email' => (string) $email,
'address' => (string) $address,
'occupation' => (string) $occupation,
]
);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment