KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > web > spi > webmodule > WebModuleProvider


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.web.spi.webmodule;
21
22 import org.netbeans.modules.web.api.webmodule.WebModule;
23 import org.openide.filesystems.FileObject;
24
25 /**
26  * Provider interface for webmodules.
27  * <p>
28  * The <code>org.netbeans.modules.web.webapi</code> module registers an
29  * implementation of this interface to global lookup which looks for the
30  * project which owns a file (if any) and checks its lookup for this interface,
31  * and if it finds an instance, delegates to it. Therefore it is not normally
32  * necessary for a project type provider to register its own instance just to
33  * define the webmodule for files it owns, assuming it uses projects for
34  * implementation of webmodule.
35  * </p>
36  * <p> If needed a new implementation of this interface can be registered in
37  * global lookup.
38  * </p>
39  * @see WebModule#getWebModule
40  * @author Pavel Buzek
41  */

42 public interface WebModuleProvider {
43     
44     /**
45      * Find a webmodule containing a given file.
46      * @param file a file somewhere
47      * @return a webmodule, or null for no answer
48      * @see WebModuleFactory
49      */

50     WebModule findWebModule(FileObject file);
51     
52 }
53
Popular Tags