package com.sequenceiq.cloudbreak.repository; import java.util.Collection; import java.util.List; import java.util.Set; import org.springframework.data.repository.CrudRepository; import org.springframework.data.repository.query.Param; import com.sequenceiq.cloudbreak.api.model.Status; import com.sequenceiq.cloudbreak.domain.Cluster; @EntityType(entityClass = Cluster.class) public interface ClusterRepository extends CrudRepository<Cluster, Long> { Cluster findById(@Param("id") Long id); Set<Cluster> findAllClustersByBlueprint(@Param("id") Long blueprintId); Set<Cluster> findAllClustersBySssdConfig(@Param("id") Long sssdConfigId); Cluster findOneWithLists(@Param("id") Long id); List<Cluster> findByStatuses(@Param("statuses") Collection<Status> statuses); Cluster findByNameInAccount(@Param("name") String name, @Param("account") String account); List<Cluster> findAllClustersForConstraintTemplate(@Param("id") Long id); Set<Cluster> findAllClustersByRDSConfig(@Param("id") Long rdsConfigId); Set<Cluster> findAllClustersByLdapConfig(@Param("id") Long ldapConfigId); }