Skip to content

Commit

Permalink
[HWKMETRICS-326] Unify metric request models.
Browse files Browse the repository at this point in the history
  • Loading branch information
Stefan Negrea committed Nov 19, 2015
1 parent ae67e04 commit b629553
Show file tree
Hide file tree
Showing 15 changed files with 145 additions and 365 deletions.
164 changes: 84 additions & 80 deletions api/diff.txt

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@
import javax.ws.rs.core.UriInfo;

import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Availability;
import org.hawkular.metrics.api.jaxrs.model.AvailabilityDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Tags;
Expand Down Expand Up @@ -212,9 +212,10 @@ public Response addAvailabilityForMetric(
@POST
@Path("/data")
public Response addAvailabilityData(
List<Availability> availabilities
List<MetricRequest<AvailabilityType, AvailabilityDataPoint>> availabilities
) {
Observable<Metric<AvailabilityType>> metrics = Availability.toObservable(tenantId, availabilities);
Observable<Metric<AvailabilityType>> metrics = MetricRequest.toObservable(tenantId, availabilities,
AVAILABILITY);
try {
metricsService.addDataPoints(AVAILABILITY, metrics).toBlocking().lastOrDefault(null);
return Response.ok().build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@
import javax.ws.rs.core.UriInfo;

import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Counter;
import org.hawkular.metrics.api.jaxrs.model.CounterDataPoint;
import org.hawkular.metrics.api.jaxrs.model.GaugeDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Percentiles;
Expand Down Expand Up @@ -187,8 +187,8 @@ public Response deleteMetricTags(

@POST
@Path("/data")
public Response addData(List<Counter> counters) {
Observable<Metric<Long>> metrics = Counter.toObservable(tenantId, counters);
public Response addData(List<MetricRequest<Long, CounterDataPoint>> counters) {
Observable<Metric<Long>> metrics = MetricRequest.toObservable(tenantId, counters, COUNTER);
try {
metricsService.addDataPoints(COUNTER, metrics).toBlocking().lastOrDefault(null);
return Response.ok().build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,9 @@
import javax.ws.rs.core.UriInfo;

import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Gauge;
import org.hawkular.metrics.api.jaxrs.model.GaugeDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Percentiles;
Expand Down Expand Up @@ -203,9 +203,9 @@ public Response addDataForMetric(
@POST
@Path("/data")
public Response addGaugeData(
List<Gauge> gauges
List<MetricRequest<Double, GaugeDataPoint>> gauges
) {
Observable<Metric<Double>> metrics = Gauge.toObservable(tenantId, gauges);
Observable<Metric<Double>> metrics = MetricRequest.toObservable(tenantId, gauges, GAUGE);
try {
metricsService.addDataPoints(GAUGE, metrics).toBlocking().lastOrDefault(null);
return Response.ok().build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,8 @@
import javax.ws.rs.core.UriInfo;

import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Availability;
import org.hawkular.metrics.api.jaxrs.model.Counter;
import org.hawkular.metrics.api.jaxrs.model.Gauge;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.model.MixedMetricsRequest;
import org.hawkular.metrics.api.jaxrs.param.Tags;
import org.hawkular.metrics.api.jaxrs.util.ApiUtils;
Expand Down Expand Up @@ -138,10 +136,11 @@ public Response addMetricsData(
return emptyPayload();
}

Observable<Metric<Double>> gauges = Gauge.toObservable(tenantId, metricsRequest.getGauges());
Observable<Metric<AvailabilityType>> availabilities = Availability.toObservable(tenantId,
metricsRequest.getAvailabilities());
Observable<Metric<Long>> counters = Counter.toObservable(tenantId, metricsRequest.getCounters());
Observable<Metric<Double>> gauges = MetricRequest.toObservable(tenantId, metricsRequest.getGauges(), GAUGE);
Observable<Metric<AvailabilityType>> availabilities = MetricRequest.toObservable(tenantId,
metricsRequest.getAvailabilities(), AVAILABILITY);
Observable<Metric<Long>> counters = MetricRequest.toObservable(tenantId, metricsRequest.getCounters(),
COUNTER);

try {
metricsService.addDataPoints(GAUGE, gauges)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@
import org.hawkular.metrics.api.jaxrs.handler.observer.MetricCreatedObserver;
import org.hawkular.metrics.api.jaxrs.handler.observer.ResultSetObserver;
import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Availability;
import org.hawkular.metrics.api.jaxrs.model.AvailabilityDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Tags;
Expand All @@ -66,6 +66,8 @@
import org.hawkular.metrics.core.api.MetricType;
import org.hawkular.metrics.core.api.MetricsService;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
Expand Down Expand Up @@ -246,9 +248,11 @@ public void addAvailabilityForMetric(
public void addAvailabilityData(
@Suspended final AsyncResponse asyncResponse,
@ApiParam(value = "List of availability metrics", required = true)
List<Availability> availabilities
@JsonDeserialize()
List<MetricRequest<AvailabilityType, AvailabilityDataPoint>> availabilities
) {
Observable<Metric<AvailabilityType>> metrics = Availability.toObservable(tenantId, availabilities);
Observable<Metric<AvailabilityType>> metrics = MetricRequest.toObservable(tenantId, availabilities,
AVAILABILITY);
Observable<Void> observable = metricsService.addDataPoints(AVAILABILITY, metrics);
observable.subscribe(new ResultSetObserver(asyncResponse));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@
import org.hawkular.metrics.api.jaxrs.handler.observer.MetricCreatedObserver;
import org.hawkular.metrics.api.jaxrs.handler.observer.ResultSetObserver;
import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Counter;
import org.hawkular.metrics.api.jaxrs.model.CounterDataPoint;
import org.hawkular.metrics.api.jaxrs.model.GaugeDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Percentiles;
Expand Down Expand Up @@ -230,9 +230,10 @@ public void deleteMetricTags(
response = ApiError.class)
})
public void addData(@Suspended final AsyncResponse asyncResponse,
@ApiParam(value = "List of metrics", required = true) List<Counter> counters
@ApiParam(value = "List of metrics", required = true)
List<MetricRequest<Long, CounterDataPoint>> counters
) {
Observable<Metric<Long>> metrics = Counter.toObservable(tenantId, counters);
Observable<Metric<Long>> metrics = MetricRequest.toObservable(tenantId, counters, COUNTER);
Observable<Void> observable = metricsService.addDataPoints(COUNTER, metrics);
observable.subscribe(new ResultSetObserver(asyncResponse));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@
import org.hawkular.metrics.api.jaxrs.handler.observer.MetricCreatedObserver;
import org.hawkular.metrics.api.jaxrs.handler.observer.ResultSetObserver;
import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Gauge;
import org.hawkular.metrics.api.jaxrs.model.GaugeDataPoint;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.param.BucketConfig;
import org.hawkular.metrics.api.jaxrs.param.Duration;
import org.hawkular.metrics.api.jaxrs.param.Percentiles;
Expand Down Expand Up @@ -250,9 +250,9 @@ public void addDataForMetric(
})
public void addGaugeData(
@Suspended final AsyncResponse asyncResponse,
@ApiParam(value = "List of metrics", required = true) List<Gauge> gauges
@ApiParam(value = "List of metrics", required = true) List<MetricRequest<Double, GaugeDataPoint>> gauges
) {
Observable<Metric<Double>> metrics = Gauge.toObservable(tenantId, gauges);
Observable<Metric<Double>> metrics = MetricRequest.toObservable(tenantId, gauges, GAUGE);
Observable<Void> observable = metricsService.addDataPoints(GAUGE, metrics);
observable.subscribe(new ResultSetObserver(asyncResponse));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,8 @@

import org.hawkular.metrics.api.jaxrs.handler.observer.MetricCreatedObserver;
import org.hawkular.metrics.api.jaxrs.model.ApiError;
import org.hawkular.metrics.api.jaxrs.model.Availability;
import org.hawkular.metrics.api.jaxrs.model.Counter;
import org.hawkular.metrics.api.jaxrs.model.Gauge;
import org.hawkular.metrics.api.jaxrs.model.MetricDefinition;
import org.hawkular.metrics.api.jaxrs.model.MetricRequest;
import org.hawkular.metrics.api.jaxrs.model.MixedMetricsRequest;
import org.hawkular.metrics.api.jaxrs.param.Tags;
import org.hawkular.metrics.api.jaxrs.util.ApiUtils;
Expand Down Expand Up @@ -171,10 +169,11 @@ public void addMetricsData(
return;
}

Observable<Metric<Double>> gauges = Gauge.toObservable(tenantId, metricsRequest.getGauges());
Observable<Metric<AvailabilityType>> availabilities = Availability.toObservable(tenantId,
metricsRequest.getAvailabilities());
Observable<Metric<Long>> counters = Counter.toObservable(tenantId, metricsRequest.getCounters());
Observable<Metric<Double>> gauges = MetricRequest.toObservable(tenantId, metricsRequest.getGauges(), GAUGE);
Observable<Metric<AvailabilityType>> availabilities = MetricRequest.toObservable(tenantId,
metricsRequest.getAvailabilities(), AVAILABILITY);
Observable<Metric<Long>> counters = MetricRequest.toObservable(tenantId, metricsRequest.getCounters(),
COUNTER);

metricsService.addDataPoints(GAUGE, gauges)
.mergeWith(metricsService.addDataPoints(AVAILABILITY, availabilities))
Expand Down

This file was deleted.

0 comments on commit b629553

Please sign in to comment.