public static function create($permission)
{
if (!$permission) {
throw new \Exception("No permisson defined.");
}
$permissionDefinition = static::getByKey($permission);
if ($permissionDefinition instanceof self) {
Logger::info("Permission {$permission} allready exists. Skipping creation.");
return $permissionDefinition;
} else {
$permissionDefinition = new static();
$permissionDefinition->setKey($permission);
$permissionDefinition->save();
return $permissionDefinition;
}
}