01: /*
02: * The contents of this file are subject to the terms of the Common Development
03: * and Distribution License (the License). You may not use this file except in
04: * compliance with the License.
05: *
06: * You can obtain a copy of the License at http://www.netbeans.org/cddl.html
07: * or http://www.netbeans.org/cddl.txt.
08: *
09: * 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-2007 Sun
17: * Microsystems, Inc. All Rights Reserved.
18: */
19: package org.netbeans.modules.xslt.tmap.model.spi;
20:
21: import org.netbeans.modules.xml.xam.ModelSource;
22: import org.netbeans.modules.xslt.tmap.model.api.TMapModel;
23: import org.openide.util.Lookup;
24:
25: /**
26: *
27: * @author Vitaly Bychkov
28: * @version 1.0
29: */
30: public interface TMapModelFactory {
31:
32: /**
33: * Returns TMapModel instance that correspond to <code>source</code>.
34: * Model will be loaded and instantiated if it doesn't exist yet.
35: * @param source ModelSource class.
36: * @return Instantiated model.
37: */
38: TMapModel getModel(ModelSource source);
39:
40: /**
41: * Default implementation of accessor to TMapModelFactory.
42: *
43: */
44: class TMapModelFactoryAccess {
45:
46: public static TMapModelFactory getFactory() {
47: return Lookup.getDefault().lookup(TMapModelFactory.class);
48: }
49: }
50:
51: }
|