All Downloads are FREE. Search and download functionalities are using the official Maven repository.

ml.comet.experiment.artifact.ArtifactBuilder Maven / Gradle / Ivy

There is a newer version: 1.1.14
Show newest version
package ml.comet.experiment.artifact;

import java.util.List;
import java.util.Map;

/**
 * The factory to properly create initialized {@link Artifact} instances.
 */
public interface ArtifactBuilder {

    /**
     * Allows to attach the provided list of aliases to the {@link Artifact}.
     *
     * @param aliases the list of aliases.
     * @return the builder instance.
     */
    ArtifactBuilder withAliases(List aliases);

    /**
     * Allows linking the metadata with the {@link Artifact} instance.
     *
     * @param metadata the metadata to link with artifact.
     * @return the builder instance.
     */
    ArtifactBuilder withMetadata(Map metadata);

    /**
     * Allows specifying version for the artifact. The version string should follow the semantic versioning rules
     * and be in the form: {@code 1.2.3-beta.4+sha899d8g79f87}
     * 
    *
  • {@code 1} is the major part (required)
  • *
  • {@code 2} is the minor part (required)
  • *
  • {@code 3} is the patch part (required)
  • *
  • {@code beta} and {@code 4} are the version suffixes (optional)
  • *
  • {@code sha899d8g79f87} is the build information (optional)
  • *
* * @param version the version string to be associated with artifact. * @return the builder instance. */ ArtifactBuilder withVersion(String version); /** * Allows specifying list of TAG strings to be associated with artifact version. * * @param tags the list of TAG strings. * @return the builder instance. */ ArtifactBuilder withVersionTags(List tags); /** * Creates properly initialized {@link Artifact} instance. * * @return the properly initialized {@link Artifact} instance. */ Artifact build(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy