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.DELETE;
26 import static org.onap.aaf.auth.rserv.HttpMethods.GET;
27 import static org.onap.aaf.auth.rserv.HttpMethods.POST;
28 import static org.onap.aaf.auth.rserv.HttpMethods.PUT;
30 import javax.servlet.http.HttpServletRequest;
31 import javax.servlet.http.HttpServletResponse;
33 import org.eclipse.jetty.http.HttpStatus;
34 import org.onap.aaf.auth.env.AuthzTrans;
35 import org.onap.aaf.auth.layer.Result;
36 import org.onap.aaf.auth.service.AAF_Service;
37 import org.onap.aaf.auth.service.Code;
38 import org.onap.aaf.auth.service.facade.AuthzFacade;
39 import org.onap.aaf.auth.service.mapper.Mapper.API;
41 public class API_Delegate {
42 public static void init(AAF_Service authzAPI, AuthzFacade facade) throws Exception {
46 authzAPI.route(POST, "/authz/delegate",API.DELG_REQ,new Code(facade,"Add a Delegate", true) {
49 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
50 Result<Void> r = context.createDelegate(trans, req, resp);
53 resp.setStatus(HttpStatus.CREATED_201);
56 context.error(trans,resp,r);
64 authzAPI.route(PUT, "/authz/delegate",API.DELG_REQ,new Code(facade,"Update a Delegate", true) {
67 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
68 Result<Void> r = context.updateDelegate(trans, req, resp);
71 resp.setStatus(HttpStatus.OK_200);
74 context.error(trans,resp,r);
80 * DELETE delegates for a user
82 authzAPI.route(DELETE, "/authz/delegate",API.DELG_REQ,new Code(facade,"Delete delegates for a user", true) {
85 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
86 Result<Void> r = context.deleteDelegate(trans, req, resp);
89 resp.setStatus(HttpStatus.OK_200);
92 context.error(trans,resp,r);
100 authzAPI.route(DELETE, "/authz/delegate/:user_name",API.VOID,new Code(facade,"Delete a Delegate", true) {
103 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
104 Result<Void> r = context.deleteDelegate(trans, pathParam(req, "user_name"));
107 resp.setStatus(HttpStatus.OK_200);
110 context.error(trans,resp,r);
116 * Read who is delegating for User
118 authzAPI.route(GET, "/authz/delegates/user/:user",API.DELGS,new Code(facade,"Get Delegates by User", true) {
121 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
122 Result<Void> r = context.getDelegatesByUser(trans, pathParam(req, "user"), resp);
125 resp.setStatus(HttpStatus.OK_200);
128 context.error(trans,resp,r);
134 * Read for whom the User is delegating
136 authzAPI.route(GET, "/authz/delegates/delegate/:delegate",API.DELGS,new Code(facade,"Get Delegates by Delegate", true) {
139 public void handle(AuthzTrans trans, HttpServletRequest req, HttpServletResponse resp) throws Exception {
140 Result<Void> r = context.getDelegatesByDelegate(trans, pathParam(req, "delegate"), resp);
143 resp.setStatus(HttpStatus.OK_200);
146 context.error(trans,resp,r);