1 package com
.intellij
.util
.xml
.model
.impl
;
3 import com
.intellij
.util
.xml
.ModelMerger
;
4 import com
.intellij
.util
.xml
.DomFileElement
;
5 import com
.intellij
.util
.xml
.DomManager
;
6 import com
.intellij
.util
.xml
.DomElement
;
7 import com
.intellij
.psi
.xml
.XmlFile
;
8 import org
.jetbrains
.annotations
.NotNull
;
9 import org
.jetbrains
.annotations
.Nullable
;
12 * User: Sergey.Vasiliev
14 public class DomModelFactoryHelper
<T
extends DomElement
> {
15 protected final Class
<T
> myClass
;
16 protected final ModelMerger myModelMerger
;
18 public DomModelFactoryHelper(@NotNull Class
<T
> aClass
, @NotNull ModelMerger modelMerger
) {
20 myModelMerger
= modelMerger
;
24 public T
getDom(@NotNull XmlFile configFile
) {
25 final DomFileElement
<T
> element
= getDomRoot(configFile
);
26 return element
== null ?
null : element
.getRootElement();
30 public DomFileElement
<T
> getDomRoot(@NotNull XmlFile configFile
) {
31 return DomManager
.getDomManager(configFile
.getProject()).getFileElement(configFile
, myClass
);
34 public Class
<T
> getDomModelClass() {
38 public ModelMerger
getModelMerger() {