List of usage examples for org.eclipse.jgit.lfs.errors LfsRepositoryNotFound LfsRepositoryNotFound
public LfsRepositoryNotFound(String name)
Constructor for LfsRepositoryNotFound.
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; }