Content resolvers for ad deletion / replacement

Last update: 2023-10-02

You can use multiple content resolvers to handle different timeline operations.

List<ContentResolver> contentResolvers = new ArrayList<ContentResolver>();
MetadataNode metadata = (MetadataNode) resource.getMetadata();
if (metadata != null) {
    if (metadata.containsKey(DefaultMetadataKeys.TIME_RANGES_METADATA_KEY.getValue())) {
        String timeRangeType = metadata.getValue(DefaultMetadataKeys.TIME_RANGES_METADATA_KEY.getValue());
        if (timeRangeType.equals(TimeRangeCollection.TIME_RANGE_TYPE_DELETE)) {
            contentResolvers.add(new DeleteContentResolver());
        } else if (timeRangeType.equals(TimeRangeCollection.TIME_RANGE_TYPE_REPLACE)) {
            contentResolvers.add(new DeleteContentResolver());
        } else if (timeRangeType.equals(TimeRangeCollection.TIME_RANGE_TYPE_MARK)) {
            contentResolvers.add(new CustomAdMarkersContentResolver());
        }
    }
    if (metadata.containsKey(DefaultMetadataKeys.AUDITUDE_METADATA_KEY.getValue())) {
        contentResolvers.add(new AuditudeResolver(context));
    } else if (metadata.containsKey(DefaultMetadataKeys.JSON_METADATA_KEY.getValue())) {
        contentResolvers.add(new MetadataResolver());
    }
}
return contentResolvers;

On this page