#
Model Loaders

###### Identifier:

org.eclipse.jet.modelLoaders

###### Since:

1.0

###### Description:

Define how models consumed by JET transformations and the JET <c:load> tag are loaded from the file system.

###### Configuration Markup:

<!ELEMENT extension ((loader | defaultTypeLoader | loadableType))>

<!ATTLIST extension

point CDATA #REQUIRED

id CDATA #IMPLIED

name CDATA #IMPLIED>

<!ELEMENT loader ((type*))>

<!ATTLIST loader

id CDATA #REQUIRED

name CDATA #REQUIRED

class CDATA #REQUIRED

dynamicTypes (true | false) "false">

Defines a model loader, which is a Java class responsible for loading a model into memory given an URL to the model, or given a string representation of the model.

- id - An unique identifier within the declaring plug-in for the loader. This is typically a value that begins with a letter is is followed by a sequence of letters, numbers, hyphens(-) and underscores(_). This value is prefixed with the declaring plug-in id and a period (.) to form a fully qualified identifier for the model loader.
- name - A descriptive name for the model loader.
- class - A class that implements the model loader.
- dynamicTypes - Indicates whether the model loader dynamically determines whether it handles a particular file type. If 'true', then the model loader must implement IModelLoader.canLoad(String). If 'false', then the types supported by the model loader are determined by child <type> elements, and by <loadableType> elements.

<!ELEMENT defaultTypeLoader EMPTY>

<!ATTLIST defaultTypeLoader

fileType CDATA #REQUIRED

id CDATA #REQUIRED>

Defines the default model loader for a given file type.

- fileType - The file type (extension) for which the default loader is being defined.
- id - The fully qualified id of the model loader.

<!ELEMENT loadableType EMPTY>

<!ATTLIST loadableType

fileType CDATA #REQUIRED

id CDATA #REQUIRED>

Extends the types supported a Model Loader. This element may be used by plug-ins other than the plug-in declaring the model loader.

- fileType - The file type that is loadable.
- id - The fully qualified id of the model loader that is capable of loading the type. This is the id of the plug-in defining the model loader, followed by a period (.) and the id of the model loader (from the <loader>) element.

<!ELEMENT type EMPTY>

<!ATTLIST type

fileType CDATA #REQUIRED>

Defines a file type that is understood by the model loader.

- fileType - A file type (file extension).

###### Examples:

[Enter extension point usage example here.]

###### API Information:

The method `org.eclipse.jet.JET2Platform.getModelLoaderManager()` returns an instance of `org.eclipse.jet.runtime.model.ILoaderManager` which provides access to model loaders created with this extension point.

###### Supplied Implementation:

[Enter information about supplied implementation of this extension point.]