ApiPlatform\SchemaGenerator\AnnotationGenerator\ConstraintAnnotationGenerator::generateClassAnnotations PHP Method

generateClassAnnotations() public method

public generateClassAnnotations ( $className )
    public function generateClassAnnotations($className)
    {
        if ($this->classes[$className]['isEnum']) {
            return [];
        }
        $annotation = [];
        $uniqueFields = [];
        foreach ($this->classes[$className]['fields'] as $field) {
            if (false === $field['isUnique']) {
                continue;
            }
            $uniqueFields[] = $field['name'];
        }
        if (0 === count($uniqueFields)) {
            return [];
        }
        if (1 === count($uniqueFields)) {
            $annotation[] = sprintf('@UniqueEntity("%s")', $uniqueFields[0]);
        } else {
            $annotation[] = sprintf('@UniqueEntity(fields={"%s"})', implode('","', $uniqueFields));
        }
        return $annotation;
    }