KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > columba > mail > folder > command > MoveFolderCommand


1 //The contents of this file are subject to the Mozilla Public License Version 1.1
2
//(the "License"); you may not use this file except in compliance with the
3
//License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
4
//
5
//Software distributed under the License is distributed on an "AS IS" basis,
6
//WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
7
//for the specific language governing rights and
8
//limitations under the License.
9
//
10
//The Original Code is "The Columba Project"
11
//
12
//The Initial Developers of the Original Code are Frederik Dietz and Timo Stich.
13
//Portions created by Frederik Dietz and Timo Stich are Copyright (C) 2003.
14
//
15
//All Rights Reserved.
16
package org.columba.mail.folder.command;
17
18 import org.columba.api.command.ICommandReference;
19 import org.columba.api.command.IWorkerStatusController;
20 import org.columba.core.command.Command;
21 import org.columba.core.folder.api.IFolderCommandReference;
22 import org.columba.mail.folder.IMailFolder;
23
24 /**
25  * A Command for moving a folder to another folder.
26  * <p>
27  * The command reference should be inserted as these:
28  * <ol>
29  * <li> A <code>Folder</code> that is going to be moved.
30  * <li> A <code>FolderTreeNode</code> that the above folder is moved to.
31  * </ol>
32  *
33  * @author redsolo
34  */

35 public class MoveFolderCommand extends Command {
36
37     private IMailFolder destParentFolder;
38
39     /**
40      * @param references
41      * the folder references.
42      */

43     public MoveFolderCommand(ICommandReference reference) {
44         super(reference);
45     }
46
47     /** {@inheritDoc} */
48     /*
49      * public void updateGUI() throws Exception { // update treemodel if
50      * (srcParentFolder != null) {
51      * MailInterface.treeModel.nodesWereRemoved(srcParentFolder,
52      * srcChildIndicies, srcChildObjects); }
53      *
54      * if (destParentFolder != null) {
55      * MailInterface.treeModel.nodesWereInserted(destParentFolder,
56      * destChildIndicies); } }
57      */

58
59     /** {@inheritDoc} */
60     public void execute(IWorkerStatusController worker) throws Exception JavaDoc {
61         // get folder that is going to be moved
62
IMailFolder movedFolder = (IMailFolder) ((IFolderCommandReference) getReference())
63                 .getSourceFolder();
64
65         // get destination folder
66
destParentFolder = (IMailFolder) ((IFolderCommandReference) getReference())
67                 .getDestinationFolder();
68
69         // AbstractFolder.append also automatically removes the folder
70
// from its parent
71
movedFolder.moveTo(destParentFolder);
72
73     }
74 }
75
Popular Tags