org.octopusden.octopus.escrow.resolvers.IBuildToolsResolver Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of component-resolver-api Show documentation
Show all versions of component-resolver-api Show documentation
Octopus module: component-resolver-api
The newest version!
package org.octopusden.octopus.escrow.resolvers;
import org.octopusden.octopus.components.registry.api.build.tools.BuildTool;
import org.octopusden.octopus.components.registry.api.distribution.DistributionEntity;
import org.octopusden.octopus.components.registry.api.enums.ProductTypes;
import org.octopusden.octopus.releng.dto.ComponentVersion;
import java.util.Collection;
import java.util.Map;
import java.util.Optional;
public interface IBuildToolsResolver {
Collection getComponentBuildTools(ComponentVersion component);
Collection getComponentBuildTools(ComponentVersion component, String version);
Collection getComponentBuildTools(ComponentVersion component, String projectVersion, boolean ignoreRequired);
/**
* Get component associated with {@link ProductTypes}.
* @param productType product type
* @return Returns component name
*/
Optional getProductMappedComponent(ProductTypes productType);
/**
* Get mapping components to products.
* @return Returns mapping components to products
*/
Map getComponentProductMapping();
/**
* Get distribution entities for explicitly external components.
* @param component component
* @return Returns collection of distribution entities if component explicit and external, empty collection otherwise
*/
Collection getDistributionEntities(ComponentVersion component);
}