8a44568c740f9e3c4b8e2359178c212d0b395158
[aaf/cadi.git] / core / src / main / java / com / att / cadi / util / SubStandardConsole.java
1 /*******************************************************************************\r
2  * ============LICENSE_START====================================================\r
3  * * org.onap.aaf\r
4  * * ===========================================================================\r
5  * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.\r
6  * * ===========================================================================\r
7  * * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * * you may not use this file except in compliance with the License.\r
9  * * You may obtain a copy of the License at\r
10  * * \r
11  *  *      http://www.apache.org/licenses/LICENSE-2.0\r
12  * * \r
13  *  * Unless required by applicable law or agreed to in writing, software\r
14  * * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * * See the License for the specific language governing permissions and\r
17  * * limitations under the License.\r
18  * * ============LICENSE_END====================================================\r
19  * *\r
20  * * ECOMP is a trademark and service mark of AT&T Intellectual Property.\r
21  * *\r
22  ******************************************************************************/\r
23 package com.att.cadi.util;\r
24 \r
25 import java.io.BufferedReader;\r
26 import java.io.IOException;\r
27 import java.io.InputStreamReader;\r
28 \r
29 // Substandard, because System.in doesn't do Passwords..\r
30 public class SubStandardConsole implements MyConsole {\r
31         BufferedReader br = new BufferedReader(new InputStreamReader(System.in));\r
32         @Override\r
33         public String readLine(String fmt, Object... args) {\r
34                 String rv;\r
35                 try {\r
36                         System.out.printf(fmt,args);\r
37                         rv = br.readLine();\r
38                         if(args.length==1 && rv.length()==0) {\r
39                                 rv = args[0].toString();\r
40                         }\r
41                 } catch (IOException e) {\r
42                         System.err.println("uh oh...");\r
43                         rv = "";\r
44                 }\r
45                 return rv;\r
46         }\r
47 \r
48         @Override\r
49         public char[] readPassword(String fmt, Object... args) {\r
50                 try {\r
51                         System.out.printf(fmt,args);\r
52                         return br.readLine().toCharArray();\r
53                 } catch (IOException e) {\r
54                         System.err.println("uh oh...");\r
55                         return new char[0];\r
56                 }\r
57         }\r
58 \r
59         @Override\r
60         public void printf(String fmt, Object... args) {\r
61                 System.out.printf(fmt, args);\r
62         }\r
63 }\r