summaryrefslogtreecommitdiff
path: root/src/main/java/org/zwobble/mammoth/internal/xml/NullXmlElement.java
blob: a3b09210264bcb7de040718e28255cb86773b9ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package org.zwobble.mammoth.internal.xml;

import java.util.List;
import java.util.Optional;

import static org.zwobble.mammoth.internal.util.Lists.list;

public class NullXmlElement implements XmlElementLike {
    public static final XmlElementLike INSTANCE = new NullXmlElement();

    private NullXmlElement() {
    }

    @Override
    public boolean hasChild(String name) {
        return false;
    }

    @Override
    public Optional<XmlElement> findChild(String name) {
        return Optional.empty();
    }

    @Override
    public XmlElementLike findChildOrEmpty(String name) {
        return this;
    }

    @Override
    public Optional<String> getAttributeOrNone(String name) {
        return Optional.empty();
    }

    @Override
    public List<XmlNode> getChildren() {
        return list();
    }
}