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

com.github.vanroy.cloud.dashboard.repository.ApplicationRepository Maven / Gradle / Ivy

The newest version!
package com.github.vanroy.cloud.dashboard.repository;

import com.github.vanroy.cloud.dashboard.model.Application;
import com.github.vanroy.cloud.dashboard.model.Instance;

import java.util.Collection;

/**
 * Application repository interface
 * @author Julien Roy
 */
public interface ApplicationRepository {

    /**
     * @return all Applications registered;
     */
    Collection findAll();

    /**
     * @param name the applications name
     * @return all Applications with the specified name;
     */
    Application findByName(String name);

    /**
     * Return circuit breaker url to application
     * @param name Name of application
     * @return Circuit Breaker Stream
     */
    String getApplicationCircuitBreakerStreamUrl(String name);

    /**
     * Return circuit breaker url to instance
     * @param instanceId Id of instance
     * @return Circuit Breaker Stream
     */
    String getInstanceCircuitBreakerStreamUrl(String instanceId);

    /**
     * @param id the instance by id
     * @return the Instance with the specified id;
     */
    Instance findInstance(String id);

    /**
     * Return management url to service
     * @param id Id of instance
     * @return Management URL
     */
    String getInstanceManagementUrl(String id);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy