PreviewProgram


public final class PreviewProgram


A convenience class to access PreviewPrograms entries in the system content provider.

This class makes it easy to insert or retrieve a preview program from the system content provider, which is defined in TvContractCompat.

Usage example when inserting a preview program:

PreviewProgram previewProgram = new PreviewProgram.Builder()
        .setChannelId(channel.getId())
        .setType(PreviewPrograms.TYPE_MOVIE)
        .setTitle("Program Title")
        .setDescription("Program Description")
        .setPosterArtUri(Uri.parse("http://example.com/poster_art.png"))
        // Set more attributes...
        .build();
Uri previewProgramUri = getContentResolver().insert(PreviewPrograms.CONTENT_URI,
        previewProgram.toContentValues());

Usage example when retrieving a preview program:

PreviewProgram previewProgram;
try (Cursor cursor = resolver.query(previewProgramUri, null, null, null, null)) {
    if (cursor != null && cursor.getCount() != 0) {
        cursor.moveToNext();
        previewProgram = PreviewProgram.fromCursor(cursor);
    }
}

Usage example when updating an existing preview program:

PreviewProgram updatedProgram = new PreviewProgram.Builder(previewProgram)
        .setWeight(20)
        .build();
getContentResolver().update(TvContractCompat.buildPreviewProgramUri(updatedProgram.getId()),
        updatedProgram.toContentValues(), null, null);

Usage example when deleting a preview program:

getContentResolver().delete(TvContractCompat.buildPreviewProgramUri(existingProgram.getId()),
        null, null);

Summary

Nested types

public final class PreviewProgram.Builder

This Builder class simplifies the creation of a PreviewProgram object.

Constants

static final @NonNull String[]

The projection for a PreviewProgram query.

Public methods

boolean
equals(Object other)
static PreviewProgram

Creates a Program object from a cursor including the fields defined in PreviewPrograms.

long
int
boolean

Indicates whether some other PreviewProgram has any set attribute that is different from this PreviewProgram's respective attributes.

ContentValues
String

Constants

PROJECTION

Added in 1.1.0-beta01
public static final @NonNull String[] PROJECTION

The projection for a PreviewProgram query.

This provides a array of strings containing the columns to be used in the query and in creating a Cursor object, which is used to iterate through the rows in the table.

Public methods

equals

public boolean equals(Object other)

fromCursor

Added in 1.1.0-beta01
public static PreviewProgram fromCursor(Cursor cursor)

Creates a Program object from a cursor including the fields defined in PreviewPrograms.

Parameters
Cursor cursor

A row from the TV Input Framework database.

Returns
PreviewProgram

A Program with the values taken from the cursor.

getChannelId

Added in 1.1.0-beta01
public long getChannelId()
Returns
long

The value of COLUMN_CHANNEL_ID for the program.

getWeight

Added in 1.1.0-beta01
public int getWeight()
Returns
int

The value of COLUMN_WEIGHT for the program.

hasAnyUpdatedValues

Added in 1.1.0-beta01
public boolean hasAnyUpdatedValues(PreviewProgram update)

Indicates whether some other PreviewProgram has any set attribute that is different from this PreviewProgram's respective attributes. An attribute is considered "set" if its key is present in the ContentValues vector.

toContentValues

Added in 1.1.0-beta01
public ContentValues toContentValues()
Returns
ContentValues

The fields of the Program in the ContentValues format to be easily inserted into the TV Input Framework database.

toString

public String toString()