KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > refactoring > api > SingleCopyRefactoring


1 /*
2  * The contents of this file are subject to the terms of the Common Development
3  * and Distribution License (the License). You may not use this file except in
4  * compliance with the License.
5  *
6  * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
7  * or http://www.netbeans.org/cddl.txt.
8  *
9  * When distributing Covered Code, include this CDDL Header Notice in each file
10  * and include the License file at http://www.netbeans.org/cddl.txt.
11  * If applicable, add the following below the CDDL Header, with the fields
12  * enclosed by brackets [] replaced by your own identifying information:
13  * "Portions Copyrighted [year] [name of copyright owner]"
14  *
15  * The Original Software is NetBeans. The Initial Developer of the Original
16  * Software is Sun Microsystems, Inc. Portions Copyright 1997-2006 Sun
17  * Microsystems, Inc. All Rights Reserved.
18  */

19
20 package org.netbeans.modules.refactoring.api;
21
22 import org.openide.util.Lookup;
23
24 /**
25  * This class is just holder for parameters of Single Copy Refactoring.
26  * Refactoring itself is implemented in plugins
27  * @see org.netbeans.modules.refactoring.spi.RefactoringPlugin
28  * @see org.netbeans.modules.refactoring.spi.RefactoringPluginFactory
29  * @see AbstractRefactoring
30  * @see RefactoringSession
31  * @author Jan Becicka
32  */

33 public final class SingleCopyRefactoring extends AbstractRefactoring {
34
35     private Lookup target;
36     private String JavaDoc newName;
37
38     /**
39      * Creates a new instance of SingleCopyRefactoring.
40      * Single Copy Refactoring implementations currently understand following types:
41      * <table border="1">
42      * <tr><th>Module</th><th>Types the Module Understands</th><th>Implementation</th></tr>
43      * <tr><td>Refactoring API (Default impl.)</td><td>FileObject</td><td>Does file copy</td></tr>
44      * <tr><td>Java Refactoring</td><td><ul>
45      * <li>{@link FileObject}(s) with content type text/x-java (class copy)
46      * </ul>
47      * <td>Updates name, package declaration and import statements</td></tr>
48      * </table>
49      * @param objectToCopy Object to be copied stored into Lookup
50      */

51     public SingleCopyRefactoring (Lookup objectToCopy) {
52         super(objectToCopy);
53     }
54
55     /**
56      * Target for copying.
57      * Single Copy Refactoring implementations currently understand following types:
58      * <table border="1">
59      * <tr><th>Module</th><th>Types the Module Understands</th><th>Implementation</th></tr>
60      * <tr><td>Refactoring API (Default impl.)</td><td>{@link java.net.URL}</td>
61      * <td>Creates directory corresponding to specified URL (if does not
62      * exist) and copies all FileObjects into this folder.</td></tr>
63      * <tr><td>Java Refactoring</td><td>{@link java.net.URL}</td><td>Updates name, package declaration and import statements</td></tr>
64      * </table>
65      * @param target
66      */

67     public void setTarget(Lookup target) {
68         this.target = target;
69     }
70     
71     /**
72      * Target for copying
73      * @see #setTarget
74      * @return target
75      */

76     public Lookup getTarget() {
77         return target;
78     }
79     
80     /**
81      * getter for new name of copied file
82      * @return value String value
83      */

84     public String JavaDoc getNewName() {
85         return newName;
86     }
87     
88     /**
89      * setter for new name of copied file
90      * @param newName new value
91      */

92     public void setNewName(String JavaDoc newName) {
93         this.newName = newName;
94     }
95 }
96
97
Popular Tags