KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > xml > core > EntityDataLoader


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 package org.netbeans.modules.xml.core;
20
21 import java.io.IOException JavaDoc;
22
23 import org.openide.loaders.UniFileLoader;
24 import org.openide.loaders.MultiDataObject;
25 import org.openide.loaders.DataObjectExistsException;
26 import org.openide.loaders.ExtensionList;
27 import org.openide.filesystems.FileObject;
28 import org.openide.actions.*;
29 import org.openide.util.actions.SystemAction;
30
31 import org.netbeans.modules.xml.core.actions.CheckEntityAction;
32
33 /** Data loader which recognizes .ent files - XML Entity documents.
34  * MIME Type - text/xml-external-parsed-entity
35  * (http://www.ietf.org/rfc/rfc3023.txt)
36  *
37  * @author Libor Kramolis
38  * @version 0.1
39  */

40 public final class EntityDataLoader extends UniFileLoader {
41     /** Serial Version UID */
42     private static final long serialVersionUID = -5201160056633250635L;
43     
44     /** */
45     private static final String JavaDoc ENT_EXT = "ent"; // NOI18N
46

47
48     /** Creates new EntityDataLoader */
49     public EntityDataLoader() {
50         super ("org.netbeans.modules.xml.core.EntityDataObject"); // NOI18N
51
}
52
53     /** Does initialization. Initializes display name,
54      * extension list and the actions. */

55     protected void initialize () {
56         super.initialize();
57         
58         ExtensionList ext = getExtensions();
59         ext.addExtension (ENT_EXT);
60         ext.addMimeType (EntityDataObject.MIME_TYPE);
61         ext.addMimeType ("application/xml-external-parsed-entity"); // http://www.ietf.org/rfc/rfc3023.txt // NOI18N
62
setExtensions (ext);
63     }
64     
65     protected String JavaDoc actionsContext() {
66         return "Loaders/text/xml-external-parsed-entity/Actions/";
67     }
68     
69     /**
70      * Lazy init name.
71      */

72     protected String JavaDoc defaultDisplayName () {
73         return Util.THIS.getString ("PROP_EntityLoader_Name");
74     }
75     
76     /** Creates the right primary entry for given primary file.
77      *
78      * @param primaryFile primary file recognized by this loader
79      * @return primary entry for that file
80      */

81     protected MultiDataObject.Entry createPrimaryEntry (MultiDataObject obj, FileObject primaryFile) {
82         return new XMLDataLoader.XMLFileEntry (obj, primaryFile); //adds smart templating
83
}
84
85     /** Creates the right data object for given primary file.
86      * It is guaranteed that the provided file is realy primary file
87      * returned from the method findPrimaryFile.
88      *
89      * @param primaryFile the primary file
90      * @return the data object for this file
91      * @exception DataObjectExistsException if the primary file already has data object
92      */

93     protected MultiDataObject createMultiObject (FileObject primaryFile)
94             throws DataObjectExistsException, java.io.IOException JavaDoc {
95         return new EntityDataObject (primaryFile, this);
96     }
97
98 }
99
Popular Tags