Java Doc for Event.java in  » 6.0-JDK-Modules » j2me » com » sun » kvem » midp » pim » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » 6.0 JDK Modules » j2me » com.sun.kvem.midp.pim 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


com.sun.kvem.midp.pim.Event

All known Subclasses:   com.sun.kvem.midp.pim.EventImpl,
Event
public interface Event extends PIMItem(Code)
Represents a single Event entry in a PIM Event database. The fields are a subset of the fields in the vEvent object defined by the vCalendar 1.0 specification from the Internet Mail Consortium (http://www.imc.org). The subset represents those fields necessary to provide the relevant information about an Event entry without compromising platform portability.

A single event may have multiple occurrences; i.e. the event may be a recurring event that is repeated at specified intervals. Each occurrence of an event is determined by using a javax.microedition.pim.RepeatRule to calculate when the event should have additional occurrences, besides the one defined by the Event.START field.

The Event class has many different fields that it can support. However, each individual Event object supports only fields valid for its associated list. Its EventList restricts what fields in a Event are retained. This reflects that some native Event databases do not support all of the fields available in a Event item. The methods AbstractPIMList.isSupportedField and AbstractPIMList.getSupportedFields can be used to determine if a particular Event field is supported by an EventList and therefore persisted when the Event is committed to its list. Attempts to set or get data based on field IDs not supported in the Event's EventList result in a javax.microedition.pim.UnsupportedFieldException .

Data

The following table details the explicitly defined fields that may by in an Event. Implementations may extend the field set using extended fields as defined in PIMItem.

Table: Predefined Fields

Fields Type of Data Associated with Field
LOCATION, NOTE, SUMMARY, UID PIMItem.STRING
END, REVISION, START PIMItem.DATE
ALARM, CLASS PIMItem.INT

Required Field Support

All Event 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 AbstractPIMList.isSupportedField .

Native Event 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 Event by the VM when the Event is persisted.

Examples

Explicit Field Use with Field Checking

This first example shows explicit field access in which each field and type ID is properly checked for support prior to use. This results in code that is more portable across PIM implementations regardless of which specific fields are supported on particular PIM list implementations. If one of the fields is not supported by the list, the field is not set in the Event.
 EventList events = null;
 try {
 events = (EventList) PIM.getInstance().openPIMList(PIM.EVENT_LIST,
 PIM.READ_WRITE);
 } catch (PIMException e) {
 // An error occurred
 return;
 }
 Event event = events.createEvent();
 if (events.isSupportedField(Event.SUMMARY))
 event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, "Meeting with John");
 if (events.isSupportedField(Event.START))
 event.addDate(Event.START, PIMItem.ATTR_NONE, aDate.getTime());
 if (events.isSupportedField(Event.END))
 event.addDate(Event.END, PIMItem.ATTR_NONE, aDate.getTime());
 if (events.isSupportedField(Event.ALARM))
 event.addInt(Event.ALARM, PIMItem.ATTR_NONE, aDate.getTime() - 60000);
 if (events.isSupportedField(Event.NOTE))
 event.addString(Event.NOTE, PIMItem.ATTR_NONE,
 "I phoned on Monday to book this meeting");
 if (events.maxCategories() != 0 && events.isCategory("Work"))
 event.addToCategory("Work");
 }
 try {
 event.commit();
 } catch (PIMException e) {
 // An error occured
 }
 try {
 events.close();
 } catch (PIMException e) {
 }
 

Explicit Field Use with Exception Handling

This second example also shows explicit field access that properly handles optionally supported fields by use of a try catch block with UnsupportedFieldException. In this case, the setting of the whole Event is rejected if any of the fields are not supported in the particular list implementation.
 EventList events = null;
 try {
 events = (EventList) PIM.getInstance().openPIMList(PIM.EVENT_LIST,
 PIM.READ_WRITE);
 } catch (PIMException e) {
 // An error occurred
 return;
 }
 Event event = events.createEvent();
 try {
 Date aDate = new Date();
 event.addString(Event.SUMMARY, PIMItem.ATTR_NONE, "Meeting with John");
 event.addDate(Event.START, PIMItem.ATTR_NONE, aDate.getTime());
 event.addDate(Event.END, PIMItem.ATTR_NONE, aDate.getTime());
 event.addDate(Event.ALARM, PIMItem.ATTR_NONE, aDate.getTime() - 60000);
 event.addString(Event.NOTE, PIMItem.ATTR_NONE,
 "I phoned on Monday to book this meeting");
 event.addToCategory("Work");
 } catch (UnsupportedFieldException e) {
 // In this case, we choose not to save the contact at all if any of the
 // fields are not supported on this platform.
 System.out.println("Event not saved");
 return;
 }
 try {
 event.commit();
 } catch (PIMException e) {
 // An error occured
 }
 try {
 events.close();
 } catch (PIMException e) {
 }
 

See Also:   
See Also:   Internet Mail Consortium PDI

See Also:   EventListImpl
since:
   PIM 1.0


Field Summary
final public static  intALARM
     Field specifying a relative time for an Alarm for this Event.
final public static  intCLASS
     Field specifying the desired access class for this contact.
final public static  intCLASS_CONFIDENTIAL
     Constant indicating this event's class of access is confidential.
final public static  intCLASS_PRIVATE
     Constant indicating this event's class of access is private.
final public static  intCLASS_PUBLIC
     Constant indicating this event's class of access is public.
final public static  intEND
     Field specifying the non-inclusive date and time a single Event ends.
final public static  intLOCATION
     Field identifying the venue for this Event.
final public static  intNOTE
     A String specifying a more complete description than the SUMMARY for this Event.
final public static  intREVISION
     Field specifying the last modification date and time of an Event item.
final public static  intSTART
     Field specifying the inclusive date and time a single Event starts.
final public static  intSUMMARY
     Field specifying the summary or subject for this Event.
final public static  intUID
     Field specifying a unique ID for an Event.



Field Detail
ALARM
final public static int ALARM(Code)
Field specifying a relative time for an Alarm for this Event. Data for this field is expressed with an int data type. The alarm is expressed in seconds and derived by subtracting the alarm value from every date/time occurrence of this Event. For example, if this field has a value of 600, then the alarm first occurs 600 seconds before the date/time value specified by Event.START. For reoccurrences of the event, the alarm is calculated by subtracting the stored value from the date/time of the specific event occurrence.

Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native Event database only support alarm values with granularity in terms of minutes, then the provided alarm value is rounded down to the nearest minute (e.g. 636 seconds would become 600 seconds).




CLASS
final public static int CLASS(Code)
Field specifying the desired access class for this contact. Data associated with this field is of int type, and can be one of the values Event.CLASS_PRIVATE , Event.CLASS_PUBLIC , or Event.CLASS_CONFIDENTIAL .



CLASS_CONFIDENTIAL
final public static int CLASS_CONFIDENTIAL(Code)
Constant indicating this event's class of access is confidential.



CLASS_PRIVATE
final public static int CLASS_PRIVATE(Code)
Constant indicating this event's class of access is private.



CLASS_PUBLIC
final public static int CLASS_PUBLIC(Code)
Constant indicating this event's class of access is public.



END
final public static int END(Code)
Field specifying the non-inclusive date and time a single Event ends. Data for this field is expressed in the same long value format as java.util.Date, which is milliseconds since the epoch (00:00:00 GMT, January 1, 1970).

If START and END are the same this event is an all day event. If END is specified but START is not, the event occurs only at the instance specified by END.

Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native Event database only support event date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.


See Also:   Event.START



LOCATION
final public static int LOCATION(Code)
Field identifying the venue for this Event. Data for this field is a string value. For example:
"Conference Room - F123, Bldg. 002"



NOTE
final public static int NOTE(Code)
A String specifying a more complete description than the SUMMARY for this Event. Data for this field is a string value. For example:
"I phoned John on Friday to book this meeting, he better show"



REVISION
final public static int REVISION(Code)
Field specifying the last modification date and time of an Event item. If the Event has ever been committed to an EventList, then this attribute becomes read only. This field is set automatically on imports and commits of an Event. The data for this field is expressed in the same long value format as java.util.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 Event database only support event date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.




START
final public static int START(Code)
Field specifying the inclusive date and time a single Event starts. The data for this field is expressed in the same long value format as java.util.Date, which is milliseconds since the epoch (00:00:00 GMT, January 1, 1970).

If START and END are the same this event is an all day event. If START is specified but END is not, the event occurs only at the instance specified by START.

Note that the value provided may be rounded-down by an implementation due to platform restrictions. For example, should a native Event database only support event date values with granularity in terms of seconds, then the provided date value is rounded down to a date time with a full second.


See Also:   Event.END



SUMMARY
final public static int SUMMARY(Code)
Field specifying the summary or subject for this Event. Data for this field is a string type. For example:
"Meeting with John"



UID
final public static int UID(Code)
Field specifying a unique ID for an Event. This field can be used to check for identity using String.equals. UID is read only if the Event has been committed to an EventList at least once in its lifetime. The UID is not set if the Event has never been committed to an EventList; countValues(UID) returns 0 before a newly created Event object is committed to its list. The attribute is valid for the persistent life of the Event and may be reused by the platform once this particular Event is deleted. The data for this field is of string type.





www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.