Skip to content

Package: ConfigurationProvider

ConfigurationProvider

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.datastore.internal;
14:
15: import org.eclipse.kapua.model.id.KapuaId;
16: import org.eclipse.kapua.service.datastore.internal.mediator.ConfigurationException;
17: import org.eclipse.kapua.service.datastore.internal.mediator.MessageInfo;
18: import org.eclipse.kapua.service.datastore.internal.mediator.MessageStoreConfiguration;
19:
20: /**
21: * Define a datastore configuration provider.<br>
22: * These service is responsible to get the configuration parameters (profiled by account) such as the data ttl.
23: *
24: * @since 1.0
25: */
26: public interface ConfigurationProvider {
27:
28: /**
29: * Get the configuration for the given scope
30: *
31: * @param scopeId
32: * @return
33: * @throws ConfigurationException
34: */
35: MessageStoreConfiguration getConfiguration(KapuaId scopeId) throws ConfigurationException;
36:
37: /**
38: * Get the message information for the given scope
39: *
40: * @param scopeId
41: * @return
42: * @throws ConfigurationException
43: */
44: MessageInfo getInfo(KapuaId scopeId) throws ConfigurationException;
45: }