01: // The contents of this file are subject to the Mozilla Public License Version
02: // 1.1
03: //(the "License"); you may not use this file except in compliance with the
04: //License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
05: //
06: //Software distributed under the License is distributed on an "AS IS" basis,
07: //WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
08: //for the specific language governing rights and
09: //limitations under the License.
10: //
11: //The Original Code is "The Columba Project"
12: //
13: //The Initial Developers of the Original Code are Frederik Dietz and Timo
14: // Stich.
15: //Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
16: //
17: //All Rights Reserved.
18: package org.columba.calendar.base;
19:
20: import java.net.InetAddress;
21: import java.net.UnknownHostException;
22: import java.util.Calendar;
23:
24: /**
25: * Create VCalendar UID using a timestamp and the hostname.
26: *
27: * @author fdietz
28: *
29: */
30: public class VCalendarUIDGenerator {
31:
32: public VCalendarUIDGenerator() {
33: super ();
34: }
35:
36: /**
37: * Example uid: "19981116T150000@cal10.host.com"
38: *
39: * @return vcalendar uid
40: */
41: public String newUID() {
42: // TODO: newUID, generate correctly formatted date string
43: String timestamp = Long.toString(Calendar.getInstance()
44: .getTimeInMillis());
45:
46: String hostname = null;
47: try {
48: hostname = InetAddress.getLocalHost().getHostName();
49: } catch (UnknownHostException e) {
50: hostname = "localhost";
51: }
52:
53: StringBuffer result = new StringBuffer();
54:
55: result.append(timestamp);
56: result.append("@");
57: result.append(hostname);
58:
59: return result.toString();
60:
61: }
62:
63: }
|