Update XACML Tutorial
[policy/parent.git] / docs / xacml / tutorial / app / src / main / java / org / onap / policy / tutorial / tutorial / TutorialApplication.java
1 /*-
2  * ============LICENSE_START=======================================================
3  * Copyright (C) 2020 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
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
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.
16  * ============LICENSE_END=========================================================
17  */
18
19 package org.onap.policy.tutorial.tutorial;
20
21 import java.util.Arrays;
22 import java.util.List;
23 import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicyTypeIdentifier;
24 import org.onap.policy.pdp.xacml.application.common.ToscaPolicyTranslator;
25 import org.onap.policy.pdp.xacml.application.common.std.StdXacmlApplicationServiceProvider;
26
27 public class TutorialApplication extends StdXacmlApplicationServiceProvider {
28
29     private final ToscaPolicyTypeIdentifier supportedPolicyType = new ToscaPolicyTypeIdentifier("onap.policies.Authorization", "1.0.0");
30     private final TutorialTranslator translator = new TutorialTranslator();
31
32     @Override
33     public String applicationName() {
34         return "tutorial";
35     }
36
37     @Override
38     public List<String> actionDecisionsSupported() {
39         return Arrays.asList("authorize");
40     }
41
42     @Override
43     public synchronized List<ToscaPolicyTypeIdentifier> supportedPolicyTypes() {
44         return Arrays.asList(supportedPolicyType);
45     }
46
47     @Override
48     public boolean canSupportPolicyType(ToscaPolicyTypeIdentifier policyTypeId) {
49         return supportedPolicyType.equals(policyTypeId);
50     }
51
52     @Override
53     protected ToscaPolicyTranslator getTranslator(String type) {
54         return translator;
55     }
56
57 }