package com.atlassian.bitbucket.branch.model;

import com.atlassian.bitbucket.repository.Repository;

import javax.annotation.Nonnull;
import javax.annotation.Nullable;

/**
 * Manages {@link BranchModel}s per repository.
 */
public interface BranchModelService {

    /**
     * Get the branch model for a given repository.
     *
     * @param repository repository
     * @return branch model of the {@code repository}, or {@code null}, if no branch model is defined for the
     * {@code repository}.
     */
    @Nullable
    BranchModel getModel(@Nonnull Repository repository);
}
