KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > addressbook > folder > FolderFactory


1 // The contents of this file are subject to the Mozilla Public License Version
2
// 1.1
3
//(the "License"); you may not use this file except in compliance with the
4
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
5
//
6
//Software distributed under the License is distributed on an "AS IS" basis,
7
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
8
//for the specific language governing rights and
9
//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.addressbook.folder;
19
20 import org.columba.addressbook.config.FolderItem;
21 import org.columba.addressbook.model.IGroupModel;
22 import org.columba.core.xml.XmlElement;
23
24 /**
25  * Provides static helper methods for creating new folders.
26  *
27  * @author fdietz
28  *
29  */

30 public final class FolderFactory {
31
32     public static AddressbookFolder createAddressbookFolder(
33             AbstractFolder parent, String JavaDoc name) {
34         XmlElement folder = new XmlElement("folder");
35         folder.addAttribute("uid", (AddressbookTreeNode.generateNextFolderUid())
36                 .toString());
37         folder.addAttribute("type", "AddressbookFolder");
38
39         XmlElement property = new XmlElement("property");
40         folder.addElement(property);
41
42         property.addAttribute("name", name);
43
44         FolderItem item = new FolderItem(folder);
45
46         AddressbookFolder f = new AddressbookFolder(item);
47
48         parent.add(f);
49
50         return f;
51     }
52
53     public static IGroupFolder createGroupFolder(AbstractFolder parent,
54             IGroupModel group) {
55         XmlElement folder = new XmlElement("folder");
56         folder.addAttribute("uid", (AddressbookTreeNode.generateNextFolderUid())
57                 .toString());
58         folder.addAttribute("type", "GroupFolder");
59
60         XmlElement property = new XmlElement("property");
61         folder.addElement(property);
62
63         property.addAttribute("name", group.getName());
64
65         property.addElement(group.getRootElement());
66
67         FolderItem item = new FolderItem(folder);
68
69         GroupFolder f = new GroupFolder(item);
70
71         parent.add(f);
72
73         parent.getFolderItem().getRoot().addElement(folder);
74
75         return f;
76     }
77
78 }
Popular Tags