Package org.eclipse.m2m.atl.core

## Class ModelFactory

- java.lang.Object
- - org.eclipse.m2m.atl.core.ModelFactory

Direct Known Subclasses:
  `ASMFactory`, `EMFModelFactory`

    public abstract class ModelFactory
    extends java.lang.Object

The ModelFactory abstract class allows to create `IModel` and `IReferenceModel`.

### Constructor Summary

Constructors
`ModelFactory()`

### Method Summary

All Methods Instance Methods Abstract Methods
`abstract IReferenceModel` `getBuiltInResource​(java.lang.String name)` Returns the built-in resource matching the given name.
`abstract java.lang.String` `getDefaultExtractorName()` Returns a default `IExtractor` associated with the current factory.
`abstract java.lang.String` `getDefaultInjectorName()` Returns a default `IInjector` associated with the current factory.
`abstract IReferenceModel` `getMetametamodel()` Returns the Metametamodel.
`abstract IModel` `newModel​(IReferenceModel referenceModel)` Creates a new `IModel` using default options and conforming to the given `IReferenceModel`.
`abstract IModel` `newModel​(IReferenceModel referenceModel, java.util.Map<java.lang.String,​java.lang.Object> options)` Creates a new `IModel` using specified options and conforming to the given `IReferenceModel`.
`abstract IReferenceModel` `newReferenceModel()` Creates a new `IReferenceModel` using default options.
`abstract IReferenceModel` `newReferenceModel​(java.util.Map<java.lang.String,​java.lang.Object> options)` Creates a new `IReferenceModel` using specified options.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### ModelFactory

    public ModelFactory()

### Method Detail

#### getMetametamodel

    public abstract IReferenceModel getMetametamodel()

Returns the Metametamodel.

Returns:
  the Metametamodel

#### getDefaultInjectorName

    public abstract java.lang.String getDefaultInjectorName()

Returns a default `IInjector` associated with the current factory.

Returns:
  the default `IInjector`

#### getDefaultExtractorName

    public abstract java.lang.String getDefaultExtractorName()

Returns a default `IExtractor` associated with the current factory.

Returns:
  the default `IExtractor`

#### newReferenceModel

    public abstract IReferenceModel newReferenceModel()
                                               throws ATLCoreException

Creates a new `IReferenceModel` using default options.

Returns:
  a new `IReferenceModel`
Throws:
  `ATLCoreException`

#### newReferenceModel

    public abstract IReferenceModel newReferenceModel​(java.util.Map<java.lang.String,​java.lang.Object> options)
                                               throws ATLCoreException

Creates a new `IReferenceModel` using specified options.

Parameters:
  `options` - the creation options
Returns:
  a new `IReferenceModel`
Throws:
  `ATLCoreException`

#### newModel

    public abstract IModel newModel​(IReferenceModel referenceModel)
                             throws ATLCoreException

Creates a new `IModel` using default options and conforming to the given `IReferenceModel`.

Parameters:
  `referenceModel` - the `IReferenceModel`
Returns:
  a new `IModel`
Throws:
  `ATLCoreException`

#### newModel

    public abstract IModel newModel​(IReferenceModel referenceModel,
                                    java.util.Map<java.lang.String,​java.lang.Object> options)
                             throws ATLCoreException

Creates a new `IModel` using specified options and conforming to the given `IReferenceModel`.

Parameters:
  `referenceModel` - the `IReferenceModel`
  `options` - the creation options
Returns:
  a new `IModel`
Throws:
  `ATLCoreException`

#### getBuiltInResource

    public abstract IReferenceModel getBuiltInResource​(java.lang.String name)
                                                throws ATLCoreException

Returns the built-in resource matching the given name.

Parameters:
  `name` - the resource name
Returns:
  the built-in resource matching the given name
Throws:
  `ATLCoreException`