class Program : Comparable


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

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

Usage example when inserting a program:

Program program = new Program.Builder()
        .setChannelId(channel.getId())
        .setTitle("Program Title")
        .setDescription("Program Description")
        .setPosterArtUri(Uri.parse("http://example.com/poster_art.png"))
        // Set more attributes...
        .build();
Uri programUri = getContentResolver().insert(Programs.CONTENT_URI, program.toContentValues());

Usage example when retrieving a program:

Program program;
try (Cursor cursor = resolver.query(programUri, null, null, null, null)) {
    if (cursor != null && cursor.getCount() != 0) {
        cursor.moveToNext();
        program = Program.fromCursor(cursor);
    }
}

Usage example when updating an existing program:

Program updatedProgram = new Program.Builder(program)
        .setEndTimeUtcMillis(newProgramEndTime)
        .build();
getContentResolver().update(TvContractCompat.buildProgramUri(updatedProgram.getId()),
        updatedProgram.toContentValues(), null, null);

Usage example when deleting a program:

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

Summary

Nested types

This Builder class simplifies the creation of a Program object.

Public functions

Int
Boolean
equals(other: Any!)
java-static Program!
fromCursor(cursor: Cursor!)

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

Array<String!>!
Long
Long
Int

Returns the value of COLUMN_EVENT_ID for the program.

String?

Returns the value of COLUMN_GLOBAL_CONTENT_ID for the program.

Long
Int
Boolean
ContentValues!
String!

Public functions

compareTo

Added in 1.1.0-alpha02
fun compareTo(other: Program): Int
Parameters
other: Program

The program you're comparing to.

Returns
Int

The chronological order of the programs.

equals

fun equals(other: Any!): Boolean

fromCursor

Added in 1.1.0-alpha02
java-static fun fromCursor(cursor: Cursor!): Program!

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

Parameters
cursor: Cursor!

A row from the TV Input Framework database.

Returns
Program!

A Program with the values taken from the cursor.

getBroadcastGenres

Added in 1.1.0-alpha02
fun getBroadcastGenres(): Array<String!>!
Returns
Array<String!>!

The value of COLUMN_BROADCAST_GENRE for the program.

getChannelId

Added in 1.1.0-alpha02
fun getChannelId(): Long
Returns
Long

The value of COLUMN_CHANNEL_ID for the program.

getEndTimeUtcMillis

Added in 1.1.0-alpha02
fun getEndTimeUtcMillis(): Long
Returns
Long

The value of COLUMN_END_TIME_UTC_MILLIS for the program.

getEventId

Added in 1.1.0-alpha02
fun getEventId(): Int

Returns the value of COLUMN_EVENT_ID for the program.

No-op on devices prior to R.

getGlobalContentId

Added in 1.1.0-alpha02
fun getGlobalContentId(): String?

Returns the value of COLUMN_GLOBAL_CONTENT_ID for the program.

No-op on devices prior to R.

getStartTimeUtcMillis

Added in 1.1.0-alpha02
fun getStartTimeUtcMillis(): Long
Returns
Long

The value of COLUMN_START_TIME_UTC_MILLIS for the program.

hashCode

fun hashCode(): Int

isRecordingProhibited

Added in 1.1.0-alpha02
fun isRecordingProhibited(): Boolean
Returns
Boolean

The value of COLUMN_RECORDING_PROHIBITED for the program.

toContentValues

Added in 1.1.0-alpha02
fun toContentValues(): ContentValues!
Returns
ContentValues!

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

toString

fun toString(): String!