1df2bd3e47ea47aadd9617cba08e7bd16f698b07
[aaf/authz.git] / cadi / core / src / main / java / org / onap / aaf / cadi / principal / OAuth2FormPrincipal.java
1 /**
2  * ============LICENSE_START====================================================
3  * org.onap.aaf
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
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
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====================================================
19  *
20  */
21
22 package org.onap.aaf.cadi.principal;
23
24 public class OAuth2FormPrincipal extends TaggedPrincipal {
25         private final String username;
26         private final String client_id;
27         
28         /*
29          * Note: client_id and username might be the same, if only authenticating the Client_ID
30          */
31         public OAuth2FormPrincipal(final String client_id, final String username) {
32                 this.username = username;
33                 this.client_id = client_id; 
34         }
35         
36         @Override
37         public String getName() {
38                 return username;
39         }
40         
41         public String client_id() {
42                 return client_id;
43         }
44
45         @Override
46         public String tag() {
47                 return "OAuth";
48         }
49
50         @Override
51         public String personalName() {
52                 if(username!=null && username!=client_id) {
53                         StringBuilder sb = new StringBuilder();
54                         sb.append(username);
55                         sb.append('|');
56                         sb.append(client_id);
57                         return sb.toString();
58                 }
59                 return client_id;
60         }
61 }