aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/schema/document/GeoPos.java
blob: 829555d88c6ff427c8009449cabb035119b1bde7 (plain) (blame)
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
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.schema.document;

import com.yahoo.document.DataType;
import com.yahoo.document.PositionDataType;

/**
 * Common utilities for recognizing fields with the built-in "position" datatype,
 * possibly in array form.
 * @author arnej
 */
public class GeoPos {
    static public boolean isPos(DataType type) {
        return PositionDataType.INSTANCE.equals(type);
    }
    static public boolean isPosArray(DataType type) {
        return DataType.getArray(PositionDataType.INSTANCE).equals(type);
    }
    static public boolean isAnyPos(DataType type) {
        return isPos(type) || isPosArray(type);
    }

    static public boolean isPos(ImmutableSDField field)      { return isPos(field.getDataType()); }
    static public boolean isPosArray(ImmutableSDField field) { return isPosArray(field.getDataType()); }
    static public boolean isAnyPos(ImmutableSDField field)   { return isAnyPos(field.getDataType()); }
}