@Override protected boolean appliesTo(final Repository repository) { return repository.getFormat().getValue().equals(Maven2Format.NAME); }
@Override @Nullable public URL getIndexSettings(final Repository repository) { checkNotNull(repository); if (format.equals(repository.getFormat())) { return Resources.getResource(getClass(), MAPPING_JSON); } return null; } }
@Override @Guarded(by = ACTIVE) public Asset createAsset(final Bucket bucket, final Format format) { checkNotNull(format); return createAsset(bucket, format.toString()); }
@Override protected boolean appliesTo(final Repository repository) { return repository.getFormat().getValue().equals(Maven2Format.NAME); }
@Override protected boolean appliesTo(final Repository repository) { return maven2Format.equals(repository.getFormat()) && repository.optionalFacet(RemoveSnapshotsFacet.class).isPresent() && repository.facet(MavenFacet.class).getVersionPolicy() != VersionPolicy.RELEASE; }
@Override @Guarded(by = ACTIVE) public Component createComponent(final Bucket bucket, final Format format) { checkNotNull(bucket); checkNotNull(format); Component component = componentFactory.createComponent(); component.bucketId(id(bucket)); component.format(format.toString()); component.attributes(new NestedAttributesMap(P_ATTRIBUTES, new HashMap<>())); return component; }
/** * Find content validator for given repository. If no format-specific validator is configured, the default is used. * * @param repository The repository for content validator is looked up. * @return the repository specific content validator to be used, or the default content validator, never {@code null}. */ @Nonnull public ContentValidator validator(final Repository repository) { checkNotNull(repository); String format = repository.getFormat().getValue(); log.trace("Looking for content validator for format: {}", format); ContentValidator contentValidator = contentValidators.get(format); if (contentValidator == null) { return defaultContentValidator; } return contentValidator; } }
@Override protected boolean appliesTo(final Repository repository) { return maven2Format.equals(repository.getFormat()) && hostedType.equals(repository.getType()); }
@Override public boolean canDeleteAsset(final Repository repository, final Asset asset) { String repositoryFormat = repository.getFormat().toString(); return canDeleteAssetInRepository(repository, repositoryFormat, variableResolverAdapterManager.get(repositoryFormat), asset); }
/** * Find MIME rule source for given repository. If no format-specific source is configured, {@link * MimeRulesSource#NOOP} is returned. * * @param repository The repository for MIME rule source is looked up. * @return the repository specific MIME rule source, or noop rule selector. */ @Nonnull public MimeRulesSource ruleSource(final Repository repository) { checkNotNull(repository); String format = repository.getFormat().getValue(); log.trace("Looking for MIME rule source for format: {}", format); MimeRulesSource mimeRulesSource = mimeRulesSources.get(format); if (mimeRulesSource != null) { return mimeRulesSource; } return MimeRulesSource.NOOP; } }
protected boolean shouldRepairRepository(final Repository repository) { return repository.getFormat().equals(format) && repository.getType().equals(type); }
private UploadHandler getUploadHandler(final Repository repository) { if (!(repository.getType() instanceof HostedType)) { throw new ValidationErrorsException( format("Uploading components to a '%s' type repository is unsupported, must be '%s'", repository.getType().getValue(), HostedType.NAME)); } String repositoryFormat = repository.getFormat().toString(); UploadHandler uploadHandler = uploadHandlers.get(repositoryFormat); if (uploadHandler == null) { throw new ValidationErrorsException( format("Uploading components to '%s' repositories is unsupported", repositoryFormat)); } return uploadHandler; }
private AutoBlockConfiguration getAutoBlockConfiguration() { AutoBlockConfiguration config = this.autoBlockConfiguration.get(getRepository().getFormat().getValue()); if (config == null) { config = autoBlockConfiguration.get(DEFAULT); } return config; }
@Override @Guarded(by = STARTED) public List<Repository> members() { final Repository repository = getRepository(); List<Repository> members = new ArrayList<>(config.memberNames.size()); for (String name : config.memberNames) { Repository member = repositoryManager.get(name); if (member == null) { log.warn("Ignoring missing member repository: {}", name); } else if (!repository.getFormat().equals(member.getFormat())) { log.warn("Group {} includes an incompatible-format member: {} with format {}", repository.getName(), name, member.getFormat()); } else { members.add(member); } } return members; }
@Override public boolean canDeleteComponent(final Repository repository, final Component component) { boolean canDeleteComponent = true; String repositoryFormat = repository.getFormat().toString(); VariableResolverAdapter variableResolverAdapter = variableResolverAdapterManager.get(repositoryFormat); try (StorageTx storageTx = repository.facet(StorageFacet.class).txSupplier().get()) { storageTx.begin(); for (Asset asset : storageTx.browseAssets(component)) { if (!canDeleteAssetInRepository(repository, repositoryFormat, variableResolverAdapter, asset)) { canDeleteComponent = false; break; } } } return canDeleteComponent; }
/** * Returns the repository if it have format of {@link NpmFormat} only, {@code null} otherwise. */ @Nullable private Repository findNpmRepository(final String repositoryName) { final Repository repository = repositoryManager.get(repositoryName); if (repository != null && NpmFormat.NAME.equals(repository.getFormat().getValue())) { return repository; } return null; }
@Override protected boolean appliesTo(final Repository repository) { return maven2Format.equals(repository.getFormat()) && (hostedType.equals(repository.getType()) || groupType.equals(repository.getType())); }
private void updateAssets(final Set<Repository> repositories, final boolean updateAssets) { for (Repository repository : repositories) { if (isCanceled()) { break; } ofNullable(restoreBlobStrategies.get(repository.getFormat().getValue())) .ifPresent(strategy -> strategy.after(updateAssets, repository)); } }
public RepositoryViewPermission(final Repository repository, final String... actions) { this(repository.getFormat().getValue(), repository.getName(), Arrays.asList(actions)); }
/** * Creates the browse nodes used to access a collection of assets and their components (if they have one). * * @param repository storing the assets * @param assets which need to be accessible from the browse nodes * @see BrowseNodeGenerator#computeAssetPath(Asset, Component) for details on the default behavior used to compute the asset path * @see BrowseNodeGenerator#computeComponentPath(Asset, Component) for details on the default behavior used to compute the component path */ public void createFromAssets(final Repository repository, final Iterable<Asset> assets) { checkNotNull(repository); checkNotNull(assets); String repositoryName = repository.getName(); BrowseNodeGenerator generator = pathGenerators.getOrDefault(repository.getFormat().getValue(), defaultGenerator); assets.forEach(asset -> createBrowseNodes(repositoryName, generator, asset)); }