d1c5d28c44bafe706d36bdfab1df4768a190fd93
[aaf/authz.git] / auth / auth-core / src / main / java / org / onap / aaf / auth / env / NullTrans.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.auth.env;
23
24 import java.util.Date;
25
26 import javax.servlet.http.HttpServletRequest;
27
28 import org.onap.aaf.auth.org.Organization;
29 import org.onap.aaf.cadi.Lur;
30 import org.onap.aaf.cadi.Permission;
31 import org.onap.aaf.cadi.principal.TaggedPrincipal;
32 import org.onap.aaf.misc.env.Decryptor;
33 import org.onap.aaf.misc.env.Encryptor;
34 import org.onap.aaf.misc.env.LogTarget;
35 import org.onap.aaf.misc.env.Slot;
36 import org.onap.aaf.misc.env.StaticSlot;
37 import org.onap.aaf.misc.env.TimeTaken;
38
39 /**
40  * A NULL implementation of AuthzTrans, for use in DirectAAF Taf/Lurs
41  */
42 public class NullTrans implements AuthzTrans {
43     private static final AuthzTrans singleton = new NullTrans();
44     
45     public static final AuthzTrans singleton() {
46         return singleton;
47     }
48
49     private Date now;
50     
51     public void checkpoint(String text) {}
52     public void checkpoint(String text, int additionalFlag) {}
53     public Metric auditTrail(int indent, StringBuilder sb, int... flag) {return null;}
54
55     @Override
56     public Metric auditTrail(LogTarget lt, int indent, StringBuilder sb, int... flag) {
57         return null;
58     }
59
60     public LogTarget fatal() {
61         return LogTarget.NULL;
62     }
63
64     public LogTarget error() {
65         return LogTarget.NULL;
66     }
67
68     public LogTarget audit() {
69         return LogTarget.NULL;
70     }
71
72     /* (non-Javadoc)
73      * @see com.att.env.Env#init()
74      */
75     @Override
76     public LogTarget init() {
77         return LogTarget.NULL;
78     }
79
80     public LogTarget warn() {
81         return LogTarget.NULL;
82     }
83
84     public LogTarget info() {
85         return LogTarget.NULL;
86     }
87
88     public LogTarget debug() {
89         return LogTarget.NULL;
90     }
91
92     public LogTarget trace() {
93         return LogTarget.NULL;
94     }
95
96     public TimeTaken start(String name, int flag) {
97         return new TimeTaken(name,flag) {
98             public void output(StringBuilder sb) {
99                 sb.append(name);
100                 sb.append(' ');
101                 sb.append(millis());
102                 sb.append("ms");
103             }
104         };
105     }
106
107     @Override
108     public String setProperty(String tag, String value) {
109         return value;
110     }
111
112     @Override
113     public String getProperty(String tag) {
114         return tag;
115     }
116
117     @Override
118     public String getProperty(String tag, String deflt) {
119         return deflt;
120     }
121
122     @Override
123     public Decryptor decryptor() {
124         return null;
125     }
126
127     @Override
128     public Encryptor encryptor() {
129         return null;
130     }
131     @Override
132     public AuthzTrans set(HttpServletRequest req) {
133         return null;
134     }
135
136     @Override
137     public String user() {
138         return null;
139     }
140
141     @Override
142     public TaggedPrincipal getUserPrincipal() {
143         return null;
144     }
145
146     @Override
147     public void setUser(TaggedPrincipal p) {
148     }
149     
150     @Override
151     public String ip() {
152         return null;
153     }
154
155     @Override
156     public int port() {
157         return 0;
158     }
159     @Override
160     public String meth() {
161         return null;
162     }
163
164     @Override
165     public String path() {
166         return null;
167     }
168
169     @Override
170     public void put(Slot slot, Object value) {
171     }
172     @Override
173     public <T> T get(Slot slot, T deflt) {
174         return null;
175     }
176     @Override
177     public <T> T get(StaticSlot slot, T dflt) {
178         return null;
179     }
180     @Override
181     public Slot slot(String name) {
182         return null;
183     }
184     @Override
185     public AuthzEnv env() {
186         return null;
187     }
188     @Override
189     public String agent() {
190         return null;
191     }
192
193     @Override
194     public void setLur(Lur lur) {
195     }
196
197     @Override
198     public boolean fish(Permission ... p) {
199         return false;
200     }
201
202     @Override
203     public Organization org() {
204         return Organization.NULL;
205     }
206
207     @Override
208     public void logAuditTrail(LogTarget lt) {
209     }
210
211     /* (non-Javadoc)
212      * @see org.onap.aaf.auth.env.test.AuthzTrans#requested(org.onap.aaf.auth.env.test.AuthzTrans.REQD_TYPE)
213      */
214     @Override
215     public boolean requested(REQD_TYPE requested) {
216         return false;
217     }
218
219     /* (non-Javadoc)
220      * @see org.onap.aaf.auth.env.test.AuthzTrans#requested(org.onap.aaf.auth.env.test.AuthzTrans.REQD_TYPE, boolean)
221      */
222     @Override
223     public void requested(REQD_TYPE requested, boolean b) {
224     }
225
226     @Override
227     public Date now() {
228         if (now==null) {
229             now = new Date();
230         }
231         return now;
232     }
233 }
234