Skip to content

Package: DeviceQuery

DeviceQuery

Coverage

1: /*******************************************************************************
2: * Copyright (c) 2016, 2022 Eurotech and/or its affiliates and others
3: *
4: * This program and the accompanying materials are made
5: * available under the terms of the Eclipse Public License 2.0
6: * which is available at https://www.eclipse.org/legal/epl-2.0/
7: *
8: * SPDX-License-Identifier: EPL-2.0
9: *
10: * Contributors:
11: * Eurotech - initial API and implementation
12: *******************************************************************************/
13: package org.eclipse.kapua.service.device.registry;
14:
15: import org.eclipse.kapua.model.query.KapuaQuery;
16:
17: import javax.xml.bind.annotation.XmlAccessType;
18: import javax.xml.bind.annotation.XmlAccessorType;
19: import javax.xml.bind.annotation.XmlRootElement;
20: import javax.xml.bind.annotation.XmlType;
21:
22: /**
23: * {@link Device} {@link KapuaQuery} definition.
24: *
25: * @see KapuaQuery
26: * @since 1.0.0
27: */
28: @XmlRootElement(name = "query")
29: @XmlAccessorType(XmlAccessType.PROPERTY)
30: @XmlType(factoryClass = DeviceXmlRegistry.class, factoryMethod = "newQuery")
31: public interface DeviceQuery extends KapuaQuery {
32:
33: /**
34: * Instantiates a new {@link DeviceMatchPredicate}.
35: *
36: * @param matchTerm The term to use to match.
37: * @param <T> The type of the term
38: * @return The newly instantiated {@link DeviceMatchPredicate}.
39: * @since 1.3.0
40: */
41: <T> DeviceMatchPredicate<T> matchPredicate(T matchTerm);
42: }