# DataPointContainer

Artifact: [androidx.health:health-services-client](https://developer.android.com/jetpack/androidx/releases/health) [View Source](https://cs.android.com/search?q=file:androidx/health/services/client/data/DataPointContainer.kt+class:androidx.health.services.client.data.DataPointContainer) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

*** ** * ** ***


```
public final class DataPointContainer
```

<br />

*** ** * ** ***

Container that provides ease of use methods to access `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint`s in a type safe way.

Example:

```
dataPointContainer.getData(DataType.LOCATION).forEach { location ->
  Log.d(TAG, "location = ${location.latitude}, ${location.longitude}")
}
```

## Summary

| ### Public constructors |
|---|
| `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#DataPointContainer(kotlin.collections.List)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/DataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>> dataPointList )` Constructs a `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer` using a list of `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint`s. |
| `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#DataPointContainer(kotlin.collections.Map)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Map.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/DataType<@https://developer.android.com/reference/androidx/annotation/NonNull ?, @https://developer.android.com/reference/androidx/annotation/NonNull ?>, @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/DataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>>> dataPoints )` |

| ### Public methods |
|---|---|
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/CumulativeDataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>>` | `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getCumulativeDataPoints()()` Returns all `https://developer.android.com/reference/androidx/health/services/client/data/CumulativeDataPoint`s contained in this update. |
| `final D` | `<T extends https://developer.android.com/reference/java/lang/Number.html, D extends https://developer.android.com/reference/androidx/health/services/client/data/DataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull T>> https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.AggregateDataType)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/AggregateDataType<@https://developer.android.com/reference/androidx/annotation/NonNull T, @https://developer.android.com/reference/androidx/annotation/NonNull D> type )` Returns the `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint` object with a matching aggregate `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.AggregateDataType)`, otherwise `null` if exist in this `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull D>` | `<T extends https://developer.android.com/reference/java/lang/Object.html, D extends https://developer.android.com/reference/androidx/health/services/client/data/DataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull T>> https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.DeltaDataType)( @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/DeltaDataType<@https://developer.android.com/reference/androidx/annotation/NonNull T, @https://developer.android.com/reference/androidx/annotation/NonNull D> type )` Returns all `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint` objects with a matching delta `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.DeltaDataType)`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/Set.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/DataType<@https://developer.android.com/reference/androidx/annotation/NonNull ?, @https://developer.android.com/reference/androidx/annotation/NonNull ?>>` | `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getDataTypes()()` Set of `https://developer.android.com/reference/androidx/health/services/client/data/DataType`s contained within this `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer`. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/IntervalDataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>>` | `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getIntervalDataPoints()()` Returns all `https://developer.android.com/reference/androidx/health/services/client/data/IntervalDataPoint`s contained in this update. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/SampleDataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>>` | `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getSampleDataPoints()()` Returns all `https://developer.android.com/reference/androidx/health/services/client/data/SampleDataPoint`s contained in this update. |
| `final @https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/java/util/List.html<@https://developer.android.com/reference/androidx/annotation/NonNull https://developer.android.com/reference/androidx/health/services/client/data/StatisticalDataPoint<@https://developer.android.com/reference/androidx/annotation/NonNull ?>>` | `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getStatisticalDataPoints()()` Returns all `https://developer.android.com/reference/androidx/health/services/client/data/StatisticalDataPoint`s contained in this update. |

## Public constructors

### DataPointContainer

```
public DataPointContainer(
    @NonNull List<@NonNull DataPoint<@NonNull ?>> dataPointList
)
```

Constructs a `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer` using a list of `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint`s.

### DataPointContainer

```
public DataPointContainer(
    @NonNull Map<@NonNull DataType<@NonNull ?, @NonNull ?>, @NonNull List<@NonNull DataPoint<@NonNull ?>>> dataPoints
)
```

## Public methods

### getCumulativeDataPoints

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull List<@NonNull CumulativeDataPoint<@NonNull ?>> getCumulativeDataPoints()
```

Returns all `https://developer.android.com/reference/androidx/health/services/client/data/CumulativeDataPoint`s contained in this update.

### getData

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final D <T extends Number, D extends DataPoint<@NonNull T>> getData(
    @NonNull AggregateDataType<@NonNull T, @NonNull D> type
)
```

Returns the `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint` object with a matching aggregate `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.AggregateDataType)`, otherwise `null` if exist in this `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer`.

### getData

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull List<@NonNull D> <T extends Object, D extends DataPoint<@NonNull T>> getData(
    @NonNull DeltaDataType<@NonNull T, @NonNull D> type
)
```

Returns all `https://developer.android.com/reference/androidx/health/services/client/data/DataPoint` objects with a matching delta `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer#getData(androidx.health.services.client.data.DeltaDataType)`.

### getDataTypes

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull Set<@NonNull DataType<@NonNull ?, @NonNull ?>> getDataTypes()
```

Set of `https://developer.android.com/reference/androidx/health/services/client/data/DataType`s contained within this `https://developer.android.com/reference/androidx/health/services/client/data/DataPointContainer`.

### getIntervalDataPoints

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull List<@NonNull IntervalDataPoint<@NonNull ?>> getIntervalDataPoints()
```

Returns all `https://developer.android.com/reference/androidx/health/services/client/data/IntervalDataPoint`s contained in this update.

### getSampleDataPoints

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull List<@NonNull SampleDataPoint<@NonNull ?>> getSampleDataPoints()
```

Returns all `https://developer.android.com/reference/androidx/health/services/client/data/SampleDataPoint`s contained in this update.

### getStatisticalDataPoints

Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/health#1.0.0)

```
public final @NonNull List<@NonNull StatisticalDataPoint<@NonNull ?>> getStatisticalDataPoints()
```

Returns all `https://developer.android.com/reference/androidx/health/services/client/data/StatisticalDataPoint`s contained in this update.