protected function _createSocialUser($data, $options = [])
{
$useEmail = Hash::get($options, 'use_email');
$validateEmail = Hash::get($options, 'validate_email');
$tokenExpiration = Hash::get($options, 'token_expiration');
$existingUser = null;
$email = Hash::get($data, 'email');
if ($useEmail && empty($email)) {
throw new MissingEmailException(__d('CakeDC/Users', 'Email not present'));
} else {
$existingUser = $this->_table->find()->where([$this->_table->alias() . '.email' => $email])->first();
}
$user = $this->_populateUser($data, $existingUser, $useEmail, $validateEmail, $tokenExpiration);
$this->_table->isValidateEmail = $validateEmail;
$result = $this->_table->save($user);
return $result;
}