Skip to content

Package: KapuaEntityCreator

KapuaEntityCreator

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.model;
14:
15: import org.eclipse.kapua.model.id.KapuaId;
16: import org.eclipse.kapua.model.id.KapuaIdAdapter;
17:
18: import javax.xml.bind.annotation.XmlElement;
19: import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
20:
21: /**
22: * {@link KapuaEntityCreator} definition
23: * <p>
24: * All the {@link KapuaEntityCreator} will be an extension of this.
25: *
26: * @param <E> entity type
27: * @since 1.0.0
28: */
29: public interface KapuaEntityCreator<E extends KapuaEntity> {
30:
31: /**
32: * Gets the scope {@link KapuaId}
33: *
34: * @return the scope {@link KapuaId}
35: * @since 1.0.0
36: */
37: @XmlElement(name = "scopeId")
38: @XmlJavaTypeAdapter(KapuaIdAdapter.class)
39: KapuaId getScopeId();
40:
41: /**
42: * Sets the scope {@link KapuaId}
43: *
44: * @param scopeId the scope {@link KapuaId}
45: * @since 1.0.0
46: */
47: void setScopeId(KapuaId scopeId);
48: }