2 * ============LICENSE_START=======================================================
3 * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
4 * ================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
9 * http://www.apache.org/licenses/LICENSE-2.0
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
17 * SPDX-License-Identifier: Apache-2.0
18 * ============LICENSE_END=========================================================
21 package org.onap.policy.pap.main;
23 import org.onap.policy.models.base.PfModelException;
24 import org.onap.policy.models.provider.PolicyModelsProvider;
25 import org.onap.policy.models.provider.PolicyModelsProviderFactory;
26 import org.onap.policy.models.provider.PolicyModelsProviderParameters;
29 * Wraps a {@link PolicyModelsProviderFactoryWrapper}.
31 public class PolicyModelsProviderFactoryWrapper implements AutoCloseable {
32 private final PolicyModelsProviderParameters params;
33 private final PolicyModelsProviderFactory factory;
36 * Constructs the object.
38 * @param params DAO configuration parameters
40 public PolicyModelsProviderFactoryWrapper(PolicyModelsProviderParameters params) {
42 this.factory = new PolicyModelsProviderFactory();
46 public void close() throws Exception {
48 * PolicyModelsProviderFactory should, in theory, implement AutoCloseable so it
49 * can close the entity manager factory and release all data. Since it doesn't
50 * this method does nothing for now.
55 * Creates a provider based on models-pap.
57 * @return a new provider
58 * @throws PfModelException if an error occurs
60 public PolicyModelsProvider create() throws PfModelException {
61 return factory.createPolicyModelsProvider(params);