Example usage for org.eclipse.jgit.lfs.errors LfsRepositoryNotFound LfsRepositoryNotFound

List of usage examples for org.eclipse.jgit.lfs.errors LfsRepositoryNotFound LfsRepositoryNotFound

Introduction

In this page you can find the example usage for org.eclipse.jgit.lfs.errors LfsRepositoryNotFound LfsRepositoryNotFound.

Prototype

public LfsRepositoryNotFound(String name) 

Source Link

Document

Constructor for LfsRepositoryNotFound.

Usage

From source file:com.googlesource.gerrit.plugins.lfs.LfsApiServlet.java

License:Apache License

@Override
protected LargeFileRepository getLargeFileRepository(LfsRequest request, String path, String auth)
        throws LfsException {
    String pathInfo = path.startsWith("/") ? path : "/" + path;
    Matcher matcher = URL_PATTERN.matcher(pathInfo);
    if (!matcher.matches()) {
        throw new LfsException("no repository at " + pathInfo);
    }/*from  w w w  .  j a  v  a 2 s .c  o m*/
    String projName = matcher.group(1);
    Project.NameKey project = Project.NameKey.parse(ProjectUtil.stripGitSuffix(projName));
    ProjectState state = projectCache.get(project);
    if (state == null || state.getProject().getState() == HIDDEN) {
        throw new LfsRepositoryNotFound(project.get());
    }
    authorizeUser(userProvider.getUser(auth, projName, request.getOperation()), state, request);

    if (request.isUpload() && state.getProject().getState() == READ_ONLY) {
        throw new LfsRepositoryReadOnly(project.get());
    }

    LfsProjectConfigSection config = lfsConfigFactory.getProjectsConfig().getForProject(project);
    // Only accept requests for projects where LFS is enabled.
    // No config means we default to "not enabled".
    if (config != null && config.isEnabled()) {
        // For uploads, check object sizes against limit if configured
        if (request.isUpload()) {
            if (config.isReadOnly()) {
                throw new LfsRepositoryReadOnly(project.get());
            }

            long maxObjectSize = config.getMaxObjectSize();
            if (maxObjectSize > 0) {
                for (LfsObject object : request.getObjects()) {
                    if (object.getSize() > maxObjectSize) {
                        throw new LfsValidationError(
                                String.format("size of object %s (%d bytes) exceeds limit (%d bytes)",
                                        object.getOid(), object.getSize(), maxObjectSize));
                    }
                }
            }
        }

        return repoResolver.get(project, config.getBackend());
    }

    throw new LfsUnavailable(project.get());
}

From source file:com.googlesource.gerrit.plugins.lfs.LfsRepositoryResolver.java

License:Apache License

public LargeFileRepository get(Project.NameKey project, String backendName) throws LfsRepositoryNotFound {
    LfsBackend backend;/*ww w  .ja  v  a 2  s . c  o m*/
    if (Strings.isNullOrEmpty(backendName)) {
        backend = defaultBackend;
    } else {
        backend = backends.get(backendName);
        if (backend == null) {
            log.atSevere().log("Project %s is configured with not existing backend %s", project, backendName);
            throw new LfsRepositoryNotFound(project.get());
        }
    }

    LargeFileRepository repository = cache.get(backend);
    if (repository != null) {
        return repository;
    }

    // this is unlikely situation as cache is pre-populated from config but...
    log.atSevere().log("Project %s is configured with not existing backend %s of type %s", project,
            backend.name(), backend.type);
    throw new LfsRepositoryNotFound(project.get());
}

From source file:com.googlesource.gerrit.plugins.lfs.locks.LfsLocksAction.java

License:Apache License

protected ProjectState getProject(String name) throws LfsRepositoryNotFound {
    Project.NameKey project = Project.NameKey.parse(ProjectUtil.stripGitSuffix(name));
    ProjectState state = projectCache.get(project);
    if (state == null || state.getProject().getState() == HIDDEN) {
        throw new LfsRepositoryNotFound(project.get());
    }/*from   w  ww .  j  a v a  2s .  c  om*/
    return state;
}