2 * ============LICENSE_START====================================================
4 * ===========================================================================
5 * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
6 * ===========================================================================
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 * ============LICENSE_END====================================================
22 package org.onap.aaf.auth.service.api;
24 import static org.onap.aaf.auth.layer.Result.OK;
25 import static org.onap.aaf.auth.rserv.HttpMethods.GET;
27 import javax.servlet.http.HttpServletRequest;
28 import javax.servlet.http.HttpServletResponse;
30 import org.eclipse.jetty.http.HttpStatus;
31 import org.onap.aaf.auth.env.AuthzTrans;
32 import org.onap.aaf.auth.layer.Result;
33 import org.onap.aaf.auth.service.AAF_Service;
34 import org.onap.aaf.auth.service.Code;
35 import org.onap.aaf.auth.service.facade.AuthzFacade;
36 import org.onap.aaf.auth.service.mapper.Mapper.API;
43 public class API_User {
45 * Normal Init level APIs
51 public static void init(final AAF_Service authzAPI, AuthzFacade facade) throws Exception {
53 * get all Users who have Permission X
55 authzAPI.route(GET,"/authz/users/perm/:type/:instance/:action",API.USERS,new Code(facade,"Get Users By Permission", true) {
57 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
58 // trans.checkpoint(pathParam(req,"type") + " "
59 // + pathParam(req,"instance") + " "
60 // + pathParam(req,"action"));
62 Result<Void> r = context.getUsersByPermission(trans, resp,
63 pathParam(req, ":type"),
64 pathParam(req, ":instance"),
65 pathParam(req, ":action"));
68 resp.setStatus(HttpStatus.OK_200);
71 context.error(trans,resp,r);
78 * get all Users who have Role X
80 authzAPI.route(GET,"/authz/users/role/:role",API.USERS,new Code(facade,"Get Users By Role", true) {
82 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
83 Result<Void> r = context.getUsersByRole(trans, resp, pathParam(req, ":role"));
86 resp.setStatus(HttpStatus.OK_200);
89 context.error(trans,resp,r);
95 * Get User Role if exists
98 authzAPI.route(GET,"/authz/userRole/:user/:role",API.USERS,new Code(facade,"Get if User is In Role", true) {
100 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
101 Result<Void> r = context.getUserInRole(trans, resp, pathParam(req,":user"),pathParam(req,":role"));
104 resp.setStatus(HttpStatus.OK_200);
107 context.error(trans,resp,r);
113 * Get User Role if exists
115 authzAPI.route(GET,"/authz/users/:user/:role",API.USERS,new Code(facade,"Get if User is In Role", true) {
117 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
118 Result<Void> r = context.getUserInRole(trans, resp, pathParam(req,":user"),pathParam(req,":role"));
121 resp.setStatus(HttpStatus.OK_200);
124 context.error(trans,resp,r);