Interface RemoteEnquirer

All Known Implementing Classes:
GitHubEnquirer, GitHubOrganizationEnquirer, GitHubRepositoryEnquirer

public interface RemoteEnquirer

Interfaz para desacoplar el mecanismo de obtención de métricas del servidor remoto que se use como fuente de las mismas

Un conjunto de métricas es específico para un tipo de entidad a informar: organización, proyecto, repositorio, desarrollador...

La identidad se refiere al identificador unívoco de la entidad sobre la que se quiere informar en el servidor remoto, la semántica puede depender del tipo de entidad y del remoto

Author:
Isabel Román
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static enum 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    buildReport(String entityId)
    Construye el informe sobre la entidad indicada con las métricas por defecto
    Devuelve las métricas que el objeto RemoteEnquirer concreto puede obtener del servidor remoto
    getMetric(String metricName, String entityId)
    Consulta una métrica específica para una entidad concreta
  • Method Details

    • buildReport

      ReportI buildReport(String entityId)

      Construye el informe sobre la entidad indicada con las métricas por defecto

      Parameters:
      entityId - Identificador unívoco en el remoto de la entidad sobre la que se quiere informar.
      Returns:
      El nuevo informe construido
    • getMetric

      ReportItemI getMetric(String metricName, String entityId) throws MetricException

      Consulta una métrica específica para una entidad concreta

      Parameters:
      metricName - métrica solicitada
      entityId - Identificador unívoco en el remoto de la entidad sobre la que se consulta
      Returns:
      La nueva métrica construida tras la consulta al remoto
      Throws:
      MetricException - Si la métrica no esta definida
    • getAvailableMetrics

      List<String> getAvailableMetrics()

      Devuelve las métricas que el objeto RemoteEnquirer concreto puede obtener del servidor remoto

      Returns:
      El listado de los nombres de métricas definidas