Clean LOCAL Dir based on VERSION
[aaf/authz.git] / cadi / core / src / main / java / org / onap / aaf / cadi / util / CSV.java
index 1d60ae5..35d85b9 100644 (file)
@@ -44,6 +44,7 @@ public class CSV {
        private File csv;
        private Access access;
        private boolean processAll;
+       private char delimiter = ',';
        
        public CSV(Access access, File file) {
                this.access = access;
@@ -57,6 +58,11 @@ public class CSV {
                processAll = false;
        }
        
+       public CSV setDelimiter(char delimiter) {
+               this.delimiter = delimiter;
+               return this;
+       }
+       
        public String name() {
                return csv.getName();
        }
@@ -116,16 +122,25 @@ public class CSV {
                                                                        escape = true;
                                                                }
                                                                break;
-                                                       case ',':
-                                                               if(quotes) {
-                                                                       sb.append(c);
+                                                       case 'n':
+                                                               if(escape) {
+                                                                       sb.append("\\n");
+                                                                       escape=false;
                                                                } else {
-                                                                       row.add(sb.toString());
-                                                                       sb.setLength(0);
+                                                                       sb.append(c);
                                                                }
                                                                break;
                                                        default:
-                                                               sb.append(c);
+                                                               if(delimiter==c) {
+                                                                       if(quotes) {
+                                                                               sb.append(c);
+                                                                       } else {
+                                                                               row.add(sb.toString());
+                                                                               sb.setLength(0);
+                                                                       }
+                                                               } else {
+                                                                       sb.append(c);
+                                                               }
                                                }
                                        }
                                        if(sb.length()>0 || c==',') {
@@ -201,7 +216,7 @@ public class CSV {
                                        if(first) {
                                                first = false;
                                        } else {
-                                               ps.append(',');
+                                               ps.append(delimiter);
                                        }
                                        if(o == null) {
                                        } else if(o instanceof String[]) {
@@ -245,6 +260,7 @@ public class CSV {
                }
                
                public void close() {
+                       flush();
                        ps.close();
                }