001: /**
002: * Copyright 2002 Sun Microsystems, Inc. All
003: * rights reserved. Use of this product is subject
004: * to license terms. Federal Acquisitions:
005: * Commercial Software -- Government Users
006: * Subject to Standard License Terms and
007: * Conditions.
008: *
009: * Sun, Sun Microsystems, the Sun logo, and iPlanet
010: * are trademarks or registered trademarks of Sun Microsystems,
011: * Inc. in the United States and other countries.
012: */package com.sun.portal.app.calendarcommon.calendar;
013:
014: import com.sun.comclient.calendar.CalendarStore;
015: import com.sun.portal.app.calendarcommon.common.SharedServicesException;
016: import com.sun.portal.portlet.service.provision.PortletProvisionPreferences;
017: import com.sun.portal.search.demo.SearchDatabase;
018: import java.util.Map;
019: import java.util.Properties;
020: import javax.faces.context.FacesContext;
021: import javax.portlet.PortletPreferences;
022: import javax.portlet.PortletRequest;
023: import javax.servlet.http.HttpServletRequest;
024:
025: /**
026: * Dummy implementation of SharedCalendarUtils for testing.
027: *
028: * @author Nigel Jacobs
029: * @created May 19, 2005
030: *
031: */
032: public class DummySharedCalendarUtilsImpl implements
033: SharedCalendarUtils {
034:
035: public static final String CTY_CAL_PREFIX = "CTY_CAL_";
036:
037: public DummySharedCalendarUtilsImpl() {
038: }
039:
040: public String getCommunityCalendarID(PortletRequest portletRequest)
041: throws SharedServicesException {
042: return null;
043: }
044:
045: /**
046: * Compute the community proxy users calendar id for this community.
047: * e.g. "Friends" => "CTY_CAL_Friends"
048: * @param communityID
049: * @param domainIfHosted the domain if we are in hosted mode, else null
050: * @return Community proxys calendar id
051: */
052: public String getCommunityCalendarID(String communityID,
053: String domainIfHosted) {
054: return null;
055: }
056:
057: public String getProxyUser(String communityID) {
058: return CTY_CAL_PREFIX + communityID;
059: }
060:
061: public String getMemberCalendarID(PortletRequest portletRequest,
062: String memberID) throws SharedServicesException {
063: return null;
064: }
065:
066: /**
067: * Compute the community proxy users calendar id for this community.
068: * e.g. "Friends" => "CTY_CAL_Friends"
069: * @param communityID
070: * @param domainIfHosted the domain if we are in hosted mode, else null
071: * @return Community proxys calendar id
072: *
073: * RETIRED: Not used or useful outside of SharedCalendarUtilsImpl
074: *
075: public String getCommunityCalendarID(String communityID, String domainIfHosted);
076: */
077:
078: /**
079: * Get the user id, and configuration via the request.
080: * Generate the calendar id from the user id.
081: * If the calendar store is cached (indexed by calendar id), return it.
082: * Otherwise connect to calendar server, get the users calendar store, and create the calendar with id,
083: * setting default permissions, but allowing the proxy user update access.
084: * Cache and return the store.
085: * @param portletRequest
086: * @param memberID
087: * @return
088: */
089: public synchronized CalendarStore getMemberCalendarStore(
090: PortletRequest portletRequest, String memberID)
091: throws SharedServicesException {
092: return null;
093: }
094:
095: /**
096: * Get the user id, and configuration via the request.
097: * Generate the calendar id from the user id.
098: * If the calendar store is cached (indexed by calendar id), return it.
099: * Otherwise connect to calendar server, get the users calendar store, and create the calendar with id,
100: * setting default permissions, but allowing the proxy user update access.
101: * Cache and return the store.
102: * @param portletRequest
103: * @param memberID
104: * @return
105: */
106: public CalendarStore getMemberCalendarStore(String communityID,
107: String memberID) throws SharedServicesException {
108: return null;
109: }
110:
111: /**
112: * Get the user id, and configuration via the request.
113: * Generate the calendar id from the user id.
114: * If the calendar store is cached (indexed by calendar id), return it.
115: * Otherwise connect to calendar server, get the users calendar store, and create the calendar with id,
116: * setting default permissions, but allowing the proxy user update access.
117: * Cache and return the store
118: * @param servletRequest
119: * @param preferences The PortletPreferences / PortletProvisionPreferences map.
120: * @param communityID
121: * @param memberID
122: * @return calendar store
123: */
124: public CalendarStore getMemberCalendarStore(
125: HttpServletRequest servletRequest, Map preferences,
126: String communityID, String memberID)
127: throws SharedServicesException {
128: return null;
129: }
130:
131: /**
132: * Get the community id, and the configuration via the request.
133: * Generate the calendar id from the community id.
134: * If the calendar store is cached (indexed by calendar id), return it.
135: * Otherwise connect to calendar server, get the proxys calendar store, and create the calendar with id
136: * Cache and return the store.
137: * @param portletRequest
138: * @return
139: */
140: public synchronized CalendarStore getProxyCalendarStore(
141: PortletRequest portletRequest)
142: throws SharedServicesException {
143: return null;
144: }
145:
146: /**
147: * Generate the calendar id from the community id.
148: * If the calendar store is cached (indexed by calendar id), return it.
149: * Otherwise connect to calendar server, get the proxys calendar store, and create the calendar with id
150: * Cache and return the store.
151: * @param communityID
152: * @return
153: */
154: public CalendarStore getProxyCalendarStore(String communityID)
155: throws SharedServicesException {
156: return null;
157: }
158:
159: /**
160: * Get the community id, and the configuration via the request.
161: * Generate the calendar id from the community id.
162: * If the calendar store is cached (indexed by calendar id), return it.
163: * Otherwise connect to calendar server, get the proxys calendar store, and create the calendar with id
164: * Cache and return the store.
165: * @param portletRequest
166: * @return
167: */
168: public CalendarStore getProxyCalendarStore(
169: PortletProvisionPreferences preferences,
170: HttpServletRequest servletRequest, String communityID)
171: throws SharedServicesException {
172: return null;
173: }
174:
175: /**
176: * Perform any clean up operations: close connections and release resources.
177: */
178: public void destroy() {
179: }
180:
181: /**
182: * Get the Shared Calendar configuration properties for this portlet.
183: * Use the config name stored in the portlet prefs to look up the sso adapter config,
184: * and return contained properties.
185: * @param preferences
186: * @param servletRequest
187: * @return
188: */
189: public Properties getConfigProperties(
190: PortletPreferences preferences,
191: HttpServletRequest servletRequest)
192: throws SharedServicesException {
193: return null;
194: }
195:
196: /**
197: * Get the Shared Calendar configuration properties for this portlet.
198: * Use the config name stored in the portlet prefs to look up the sso adapter config,
199: * and return contained properties.
200: * @param preferences
201: * @param servletRequest
202: * @return
203: */
204: public Properties getConfigProperties(Map preferences,
205: HttpServletRequest servletRequest)
206: throws SharedServicesException {
207: return null;
208: }
209:
210: /**
211: * Get the community id, and the configuration via the request.
212: * Generate the calendar id from the community id.
213: * If the calendar store is cached (indexed by calendar id), return it.
214: * Otherwise connect to calendar server, get the proxys calendar store, and create the calendar with id
215: * Cache and return the store.
216: * @param portletRequest
217: * @return
218: */
219: public CalendarStore getProxyCalendarStore(FacesContext context)
220: throws SharedServicesException {
221: return null;
222: }
223:
224: /**
225: * Compute the community proxy users calendar id for this community.
226: * e.g. "Friends" => "CTY_CAL_Friends"
227: * @param portletRequest Used to retrieve the community id.
228: * @return Community proxys calendar id
229: */
230: public String getCommunityCalendarID(FacesContext context)
231: throws SharedServicesException {
232: return null;
233: }
234:
235: /**
236: * Get the user id, and configuration via the request.
237: * Generate the calendar id from the user id.
238: * If the calendar store is cached (indexed by calendar id), return it.
239: * Otherwise connect to calendar server, get the users calendar store, and create the calendar with id,
240: * setting default permissions, but allowing the proxy user update access.
241: * Cache and return the store
242: * @param portletRequest
243: * @param memberID
244: * @return
245: */
246: public CalendarStore getMemberCalendarStore(FacesContext context,
247: String memberID) throws SharedServicesException {
248: return null;
249: }
250:
251: /**
252: * Compute the community member's universal calendar id (common across communities). Uses
253: * the cached organization param, retrieve from the portlet request.
254: * e.g. "joe" in organization "sun.com" => CTY_CAL_joe@sun.com
255: * @param portletRequest
256: * @param memberID
257: * @return
258: */
259: public String getMemberCalendarID(FacesContext context,
260: String memberID) throws SharedServicesException {
261: return null;
262: }
263:
264: /**
265: * Delete the proxy calendar store
266: */
267: public void deleteProxyCalendarStore(String communityID,
268: Properties configProps) throws SharedServicesException {
269: }
270:
271: /**
272: * Find of create a DelegatedAdministratorHandler for the community.
273: * @param communityID The community ID.
274: * @param configProps The SSO adapter configuration properties for the community.
275: * @return The DelegatedAdministratorHandler for the community.
276: */
277: public DelegatedAdministratorHandler getDAHandler(
278: String communityID, Properties configProps) {
279: return null;
280: }
281:
282: /**
283: * Should events be created in the member's community calendar,
284: * or solely in the proxy community calendar (defined in SSO adapter config param).
285: * @param The faces context.
286: * @return Whether to create events in members community calendar
287: */
288: public boolean createEventsInMembersCalendar(FacesContext context)
289: throws SharedServicesException {
290: return true;
291: }
292:
293: /**
294: * Should events be created in the member's community calendar,
295: * or solely in the proxy community calendar (defined in SSO adapter config param).
296: * @param The portlet request.
297: * @return Whether to create events in members community calendar
298: */
299: public boolean createEventsInMembersCalendar(
300: PortletRequest portletRequest)
301: throws SharedServicesException {
302: return true;
303: }
304:
305: /**
306: * Insert a resource description for the calendar item into the search database.
307: * @param FacesContext The faces context.
308: * @param appType APP_TYPE_SHAREDEVENTS or APP_TYPE_SHAREDTASKS
309: * @param memberID The id of the community member
310: * @param itemID The ID of the event or task
311: * @param title The title of the event (summary)
312: * @param description The one line description of the item
313: * @param displayUrl The url that when selected will display the item.
314: */
315: public void insertItemIntoSearchDatabase(FacesContext context,
316: int appType, String memberID, String itemID, String title,
317: String description, String displayUrl)
318: throws SharedServicesException {
319: return;
320: }
321:
322: /**
323: * Delete a resource description for the calendar item from the search database.
324: * @param appType APP_TYPE_SHAREDEVENTS or APP_TYPE_SHAREDTASKS
325: * @param itemID The ID of the event or task
326: */
327: public void deleteItemFromSearchDatabase(FacesContext context,
328: int appType, String itemID) throws SharedServicesException {
329: return;
330: }
331:
332: /**
333: * Connect to a search database for the community.
334: * @param The faces context.
335: */
336: public SearchDatabase getSearchDatabase(FacesContext context)
337: throws SharedServicesException {
338: return null;
339: }
340:
341: /**
342: * Get the URL of the community search server.
343: *
344: * @param request
345: * @return url String
346: * @throws com.sun.portal.app.SharedServices.common.SharedServicesException
347: */
348: public String getSearchServerURL(PortletRequest request)
349: throws SharedServicesException {
350: return null;
351: }
352:
353: /**
354: * Get the URL of the community search server.
355: *
356: * @param context
357: * @return url String
358: * @throws com.sun.portal.app.SharedServices.common.SharedServicesException
359: */
360: public String getSearchServerURL(
361: javax.faces.context.FacesContext context)
362: throws SharedServicesException {
363: return null;
364: }
365:
366: /**
367: * Get the community search database.
368: *
369: * @param request
370: * @return database name
371: * @throws com.sun.portal.app.SharedServices.common.SharedServicesException
372: */
373: public String getSearchDatabase(PortletRequest request)
374: throws SharedServicesException {
375: return null;
376: }
377:
378: }
|