コード例 #1
0
  @Override
  public IDataSource loadMeteringInterface() {
    String path = this.getConfigPath() + File.separator + "standalone";

    // Load the CELAR Manager endpoint address (uri) from the configuration
    EndpointConfig applicationEndpoint =
        new EndpointConfig(path + File.separator + "endpoint.jcatascopia.properties");
    String uri = applicationEndpoint.getUri();
    System.out.println("JCatascopia configured Uri is: " + uri);

    MonitoringData temp = new MonitoringData();
    temp.init(uri);

    // 'Return' the loaded instance
    return temp;
  }
コード例 #2
0
  private void broadcastStatistics() {
    List<URI> monitoringEndpoints = monitoringApp.getMonitoredApps();
    List<MonitoringData> monitoringData =
        monitoringEndpoints
            .stream()
            .map(
                (endpointUri) -> {
                  Response response = client.target(endpointUri).path("monitoring").request().get();
                  MonitoringData data = response.readEntity(MonitoringData.class);
                  data.setNode(endpointUri.getHost() + ":" + endpointUri.getPort());
                  return data;
                })
            .collect(Collectors.toList());

    OutboundEvent event =
        new OutboundEvent.Builder()
            .mediaType(MediaType.APPLICATION_JSON_TYPE)
            .data(monitoringData)
            .build();
    broadcaster.broadcast(event);
  }