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

io.deepsense.neptune.clientlibrary.models.NeptuneContext Maven / Gradle / Ivy

There is a newer version: 1.6.1
Show newest version
/**
 * Copyright (c) 2016, CodiLime Inc.
 */

package io.deepsense.neptune.clientlibrary.models;

import java.net.URI;
import java.util.Optional;

/**
 * Main entry point for Neptune functionality.
 * A Context represents a connection to Neptune Server and can be used to:
 * - access Job class to manage its lifecycle, access and modify objects connected to Job,
 * - access JobParameters via params,
 * - access and modify storage_url.
 */
public interface NeptuneContext {
    /**
     * Gets job from the Context.
     *
     * @return Job @see io.deepsense.neptune.clientlibrary.models.Job
     */
    Job getJob();

    /**
     * Gets the location of a directory where the snapshot of job’s source code
     * and configuration is copied when the job is run.
     *
     * @return URI of a location where code snapshot is saved
     */
    URI getStorageUrl();

    /**
     * Gets the parameters of the job.
     * The set of user-defined variables passed to the job’s program.
     *
     * @return JobParameters @see io.deepsense.neptune.clientlibrary.models.JobParameters
     */
    JobParameters getParams();

    /**
     * Gets the optional metric used to compare jobs within an experiment.
     *
     * @return Metric @see io.deepsense.neptune.clientlibrary.models.Metric
     */
    Optional getMetric();

    /**
     * Disposes this Context.
     * Method is responsible for graceful Context disposal.
     */
    void dispose();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy