|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface ToDo
Represents a single To Do item in a PIM To Do database. The fields are a
subset of the fields in VTODO defined by the vCalendar
specification from the Internet Mail Consortium (http://www.imc.org). The subset represents
those fields necessary to provide enough information about a
ToDo item without compromising platform portability.
The ToDo class has many different field IDs that it can
support. However, each individual ToDo object supports only
fields valid for its associated list. Its ToDoList restricts
what fields in a ToDo are retained. This reflects that some
native ToDo databases do not support all of the fields available in a ToDo
item. The methods PIMList.isSupportedField(int) and
PIMList.getSupportedFields() can be used to determine if a particular
ToDo field is supported by a ToDoList and
therefore persisted when the ToDo is committed to its list.
Attempts to set or get data based on field IDs not supported in the ToDo's
ToDoList result in an UnsupportedFieldException being
thrown.
| Fields | Type of Data Associated with Field |
|---|---|
NOTE, SUMMARY, UID |
PIMItem.STRING |
CLASS, PRIORITY |
PIMItem.INT |
COMPLETION_DATE, DUE, REVISION |
PIMItem.DATE |
COMPLETED |
PIMItem.BOOLEAN |
All ToDo fields may or may not be supported by a particular list. This is due
to the fact that underlying native databases may not support all of the
fields defined in this API. Support for any of the fields can be determined
by the method PIMList.isSupportedField(int).
Native ToDo databases may require some of the fields to have values assigned to them in order to be persisted. If an application does not provide values for these fields, default values are provided for the ToDo by the VM when the ToDo is persisted.
ToDoList todos = null;
try {
todos = (ToDoList) PIM.getInstance().openPIMList( PIM.TODO_LIST,
PIM.READ_WRITE );
} catch( PIMException e ) {
// An error occurred
return;
}
ToDo todo = todos.createToDo();
if( todos.isSupportedField( ToDo.SUMMARY ) )
todo.addString( ToDo.SUMMARY, PIMItem.ATTR_NONE,
"Buy going away present for Judy" );
if( todos.isSupportedField( ToDo.DUE ) )
todo.addDate( ToDo.DUE, PIMItem.ATTR_NONE, new Date().getTime() );
if( todos.isSupportedField( ToDo.NOTE ) )
todo.addString( ToDo.NOTE, PIMItem.ATTR_NONE,
"Judy really likes stained glass and expensive pens" );
if( todos.isSupportedField( ToDo.PRIORITY ) )
todo.addInt( ToDo.PRIORITY, PIMItem.ATTR_NONE, 2 );
if( todos.maxCategories() != 0 && todos.isCategory( "Work" ) )
todo.addToCategory( "Work" );
try {
todo.commit();
} catch( PIMException e ) {
// An error occured
}
try {
todos.close();
} catch( PIMException e ) {
}
UnsupportedFieldException. In this case, the setting of the
whole ToDo is rejected if any of the fields are not supported in the
particular list implementation.
ToDoList todos = null;
try {
todos = (ToDoList) PIM.getInstance().openPIMList( PIM.TODO_LIST,
PIM.READ_WRITE );
} catch( PIMException e ) {
// An error occurred
return;
}
ToDo todo = todos.createToDo();
try {
todo.addString( ToDo.SUMMARY, PIMItem.ATTR_NONE,
"Buy going away present for Judy" );
todo.addDate( ToDo.DUE, PIMItem.ATTR_NONE, new Date().getTime() );
todo.addString( ToDo.NOTE, PIMItem.ATTR_NONE,
"Judy really likes stained glass and expensive pens" );
todo.addInt( ToDo.PRIORITY, PIMItem.ATTR_NONE, 2 );
todo.addToCategory( "Work" );
} catch( UnsupportedFieldException e ) {
// In this case, we choose not to save the ToDo at all if any of the
// fields are not supported on this platform.
System.out.println( "Todo not saved" );
return;
}
try {
todo.commit();
} catch( PIMException e ) {
// An error occured
}
try {
todos.close();
} catch( PIMException e ) {
}
The RIM extension fields and attributes for Events are all defined in
BlackBerryEvent. Any instance of
Event that is retrieved from a
BlackBerryEventList will be an instance
of BlackBerryEvent and will support all RIM extension fields
and attributes defined therein. Casting such a Event to a
BlackBerryEvent is possible if use of any RIM extension
methods defined therein is desired.
| Fields | Type of Data Associated with Field | Valid Field Values |
|---|---|---|
STATUS (PIMItem.EXTENDED_FIELD_MIN_VALUE + 9) |
PIMItem.INT |
STATUS_NOT_STARTED = 0STATUS_IN_PROGRESS = 1STATUS_COMPLETED = 2STATUS_WAITING = 3STATUS_DEFERRED = 4 |
REMINDER (20000927) |
PIMItem.DATE |
Any date |
ToDoList,
BlackBerryToDo,
Internet Mail Consortium PDI| Field Summary | ||
|---|---|---|
static int |
CLASS
Field specifying the desired access class for this contact. |
|
static int |
CLASS_CONFIDENTIAL
Constant indicating this todo's class of access is confidential. |
|
static int |
CLASS_PRIVATE
Constant indicating this todo's class of access is private. |
|
static int |
CLASS_PUBLIC
Constant indicating this todo's class of access is public. |
|
static int |
COMPLETED
Field ID indicating a ToDo has been completed. |
|
static int |
COMPLETION_DATE
Field ID indicating a ToDo has been completed on the date indicated by this field. |
|
static int |
DUE
Field storing the date a ToDo is due. |
|
static int |
NOTE
Field specifying a more complete description than the SUMMARY for this ToDo. |
|
static int |
PRIORITY
Field specifying the priority of this ToDo. |
|
static int |
REVISION
Field specifying the last modification date and time of a ToDo item. |
|
static int |
SUMMARY
Field specifying the summary or subject for this ToDo. |
|
static int |
UID
Field specifying a unique ID for a ToDo. |
|
| Fields inherited from interface javax.microedition.pim.PIMItem |
|---|
ATTR_NONE, BINARY, BOOLEAN, DATE, EXTENDED_ATTRIBUTE_MIN_VALUE, EXTENDED_FIELD_MIN_VALUE, INT, STRING, STRING_ARRAY |
| Method Summary |
|---|
| Methods inherited from interface javax.microedition.pim.PIMItem |
|---|
addBinary, addBoolean, addDate, addInt, addString, addStringArray, addToCategory, commit, countValues, getAttributes, getBinary, getBoolean, getCategories, getDate, getFields, getInt, getPIMList, getString, getStringArray, isModified, maxCategories, removeFromCategory, removeValue, setBinary, setBoolean, setDate, setInt, setString, setStringArray |
| Field Detail |
|---|
static final int CLASS
INT type, and can be one
of the values ToDo.CLASS_PRIVATE, ToDo.CLASS_PUBLIC, or
ToDo.CLASS_CONFIDENTIAL.
static final int CLASS_CONFIDENTIAL
ToDo.CLASS,
Constant Field Valuesstatic final int CLASS_PRIVATE
ToDo.CLASS,
Constant Field Valuesstatic final int CLASS_PUBLIC
ToDo.CLASS,
Constant Field Valuesstatic final int COMPLETED
BOOLEAN type.
static final int COMPLETION_DATE
Date, which is milliseconds since the epoch
(00:00:00 GMT, January 1, 1970).
Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native ToDo database only support todo date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.
static final int DUE
Date, which
is milliseconds since the epoch (00:00:00 GMT, January 1, 1970).
Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native ToDo database only support todo date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.
static final int NOTE
SUMMARY for this ToDo. Data for this field is of
STRING type. For example: "Judy really likes stained glass
and expensive pens"
static final int PRIORITY
INT type.
RIM Implementation Note: The BlackBerry Tasks application only supports 3 different priorities: Normal, Low, and High. The range of priorities supported by the PRIORITY field has been mapped to these native priorities as identified in the table below. As a result, setting a priority in the range 0-9 will actually set one of only 3 priorities, causing getInt() to potentially return a different value than was specified to addInt() or setInt(); the value returned from getInt() will, however, map to the same native priority as the one specified to addInt()/setInt().
| PRIORITY Specified to setInt()/addInt() | PRIORITY returned from getInt() | PRIORITY in the Tasks Application |
|---|---|---|
| 0, 4, 5, 6 | 5 | Normal |
| 1, 2, 3 | 1 | High |
| 7, 8, 9 | 9 | Low |
If a new ToDo is created with its PRIORITY field unset then the "Normal" priority will be assigned when it is committed.
static final int REVISION
ToDo has ever been committed to a
ToDoList, then this field becomes read only. This field
is set automatically on imports and commits of a ToDo.
Data for this field is expressed in the same long value format as
Date, which is milliseconds since the epoch (00:00:00
GMT, January 1, 1970).
Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native ToDo database only support todo date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.
static final int SUMMARY
STRING type. For example: "Buy going away
present for Judy"
static final int UID
String.equals(Object). UID is read only if
the ToDo has been committed to a ToDoList
at least once in its lifetime. The UID is not set if the
ToDo has never been committed to a ToDoList;
this.countValues(ToDo.UID) returns 0 (zero)
before a newly created ToDo object is committed to its
list. The value is valid for the persistent life of the ToDo
and may be reused by the platform once this particular ToDo
is deleted. Data for this field is of STRING type.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
Copyright 1999-2010 Research In Motion Limited. 295 Phillip Street, Waterloo, Ontario, Canada, N2L 3W8. All Rights Reserved.
Copyright 1993-2003 Sun Microsystems, Inc. 901 San Antonio Road, Palo Alto, California, 94303, U.S.A. All Rights Reserved.
Copyright 2002-2003 Nokia Corporation All Rights Reserved.
Java is a trademark of Sun Microsystems, Inc.