(Icalendar) Compatible Collaborative Calendar-Server (CCS) Web Services

(Icalendar) Compatible Collaborative Calendar-Server (CCS) Web Services

Internet Calendaring and Scheduling Core Object Specification (iCALENDAR) Compatible Collaborative Calendar-Server (CCS) Web Services Ahmet Fatih Mustacoglu 1, 2 , Wenjun Wu 1, and Geoffrey Fox 1, 2 1Community Grids Lab, Indiana University, Bloomington, IN, 47404, USA 2Department of Computer Science, Indiana University {amustaco, wewu, gcf}@indiana.edu ABSTRACT with each other even if they are in the same organization or they are coming from the same commercial vendor. There has been a clear need to have a common format for representing calendar data to solve the To solve interoperability problems, The Internet interoperability issues between different types of Engineering Task Force (IETF) [2] introduced some Calendaring and Scheduling applications. Internet standards by publishing specifications for the calendar Calendaring and Scheduling Core Object Specification data exchange. IETF is an open community of network (iCalendar) defines a common format for calendar data designers, operators, vendors, and researchers for every exchange to progress the level of interoperability possible interested individual. between different calendaring and scheduling applications. In this paper, we describe our approach to We need to implement a calendaring and scheduling resolve interoperability issues by providing module for Global Multimedia Collaboration System implementations of a Collaborative Calendar-Server (GlobalMMCS) Portal [4] of Community Grids Lab at (CCS), a bridge module, and a Global Multimedia Indiana University so that it can both handle its own Collaboration System (GlobalMMCS) Client Module. The calendaring and scheduling needs and also communicate CCS is implemented based on the iCalendar specification with other scheduling applications. To do so, we have as a collection of Web Services. The bridge module allows investigated the possible interoperability problems for the CCS to communicate with different Calendaring and calendaring and scheduling applications that we might Scheduling applications, which are based on the have, and we have decided to handle interoperability iCalendar specification and use http methods for issues by implementing the Collaborative Calendar-Server interactions. GlobalMMCS portal interacts with the CCS (CCS) based on the iCalendar specification [1]. We have to schedule meetings, and to store and to retrieve extended the CCS’s ability to interact with other calendar information through the GlobalMMCS Client calendaring and scheduling applications through the http Module. methods by defining a bridge module, which provides a mechanism to handle coming http requests. Hence, iCalendar based calendaring and scheduling applications can publish and subscribe to a calendar of the CCS. KEYWORDS: iCalendar, Web Services, Calendar Furthermore, GlobalMMCS Portal users can also access Server, Collaborative Calendar, GlobalMMCS Portal. their private calendar and a collaborative calendar of the system, where meeting schedules are made into, by using GlobaMMCS Client module. 1. INTRODUCTION This paper gives the details about the design, the Internet Calendaring and Scheduling Core Object architecture, and the implementation details of our Web Specification (iCalendar) [1] introduces a new format for Service oriented CCS that supports the iCalendar calendaring and scheduling applications. Without a specification. The CCS also has a bridge module that common format, there will be interoperability problems enables other calendaring and scheduling clients to between dissimilar applications that are not supporting the communicate with the CCS such as Mozilla Calendar same format for defining the calendar information. Client [3], which use http methods to call our services. In Different organizations and commercial vendors develop this paper, we will first give some background their own calendaring and scheduling model and information. Then, we will talk about the design and the structures. If the calendar representation format is not architecture of the system. Next, we are going to discuss interoperable, calendar applications can not communicate the CCS’s implementation details, which include elaborate explanation of GlobalMMCS [4] Client Module for the heavily based on the earlier vCalendar [7] industry CCS, implementation of the CCS as Web Services, and specification by the Internet Mail Consortium (IMC) [8]. the bridge module for the CCS. Then we are going to present our test results for the CCS. Finally, we will The CCS has been implemented as Web Services provide the conclusion and future work as a last chapter. using Java programming language. Web Services leverage the level of interoperability between different software 2. BACKGROUND applications that are running on different platforms. Web Services have an interface which is described in a Grid computing is an emerging technology, and it is machine-processable format, and Web Services support the next logical level of distributing computing. Grid is a interoperable machine to machine interaction over a secure, controlled and coordinated resource sharing network. Web Services are defined in a language called among dynamic collections of individuals, institutions, Web Services Description Language (WSDL) [14]. The and resources [17]. Interoperability is the central issue in clients can communicate with a web service by Grid computing. Setting common protocols helps to exchanging messages in SOAP (Simple Object Access increase interoperability, and the iCalendar specifications Protocol) format. tend to solve interoperability problems among different calendar and scheduling applications. Grid architecture SOAP [15] is a platform and language independent identifies fundamental system components, specifies the communication protocol for exchanging information in purpose and function of these components, and indicates distributed environment. SOAP is an XML based how these components interact with one another. The protocol, and consists of three parts: the envelope, the Open Grid Services Architecture (OGSA) [18], developed encoding rules, and the Remote Procedure Call (RPC) by the members of the Global Grid Forum (GGF) [19], convention. SOAP can be used in any combination with defines the grid services and the whole system structure other protocols such as HTTP, FTP etc. In our and services that need to be supported in the grid implementation, the CCS’s Web Services use SOAP over environments. Grid services in OGSA are defined based HTTP. on Web Services Description Languages (WSDL) with minor extensions. Grid specifications are developing over By combining the Web Services technology and the time, and Web Services Resource Framework (WSRF) is iCalendar specification in the CCS, which can be taking the place of Open Grid Services Infrastructure deployed as a Grid service, we are planning to advance (OGSI), described by OGSA [20]. The main purpose of the level of interoperability for different types of WSRF is to keep the grid architecture evolution aligned applications running on different platforms. with the developments in Web Services. WSRF is a collection of Web Services specifications that provide a 3. DESIGN AND ARCHITECTURE way to access stateful resources using Web Services [21]. OVERVIEW The calendaring and scheduling needs have been The CCS has been designed to provide Web-Service increasing rapidly for the last decade. Companies have oriented calendaring and scheduling services over the been trying to implement this technology into their internet. The CCS stores the users’ calendar and a businesses. Unfortunately, there is a lack of Internet collaborative calendar in iCalendar format (with “ics” standards for the message content types that are crucial to extension) as specified in RFC 2445 [1] on the machine calendaring and scheduling applications. As a result of where the Collaborative Calendar-Server is running. Each this trend, the iCalendar specification have been defined user has his/her own iCalendar file for his/her private in RFC2445 [1] and intended to advance the calendar. There is only one iCalendar file for the interoperability among the calendaring and scheduling collaborative calendar shared by all users. Users’ access applications that are not similar. The iCalendar to the collaborative calendar has been synchronized. An specification defines the format for specifying iCalendar overview of the CCS architecture design is depicted in object methods. Figure 1. For the CCS’s services please see the project home site [12]. The iCalendar specification is a result of the work of the Internet Engineering Task Force Calendaring and The bridge module, which has been designed as a Java Scheduling Working Group (chaired by Anik Ganguly of Servlet Technology, provides communication between the Open Text Inc.) [2], and was authored by Frank Dawson CCS and various calendaring and scheduling client of Lotus Development Corporation [5] and Derik applications, which support the iCalendar specification Stenerson of Microsoft Corporation [6]. iCalendar is and use http methods to communicate. The CCS can currently interact and communicate with Mozilla Calendar Private Calendar : It basically calls the associated Client [3]. A user, who is using Mozilla Calendar Client services of the CCS to retrieve the user’s private calendar [3], can subscribe to a calendar of the CCS, or the user file from the server. When the Web Service is called, it can publish events to a calendar stored on the CCS. first checks to see whether or not this user has an iCalendar

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us