2 * ============LICENSE_START=======================================================
3 * ONAP : ccsdk features
4 * ================================================================================
5 * Copyright (C) 2020 highstreet technologies GmbH Intellectual Property.
7 * ================================================================================
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 * ============LICENSE_END=========================================================
22 package org.onap.ccsdk.features.sdnr.wt.dataprovider.http.about;
24 import java.util.ArrayList;
25 import java.util.List;
26 import org.json.JSONArray;
27 import org.json.JSONObject;
30 * @author Michael Dürre
33 public class MarkdownTable {
35 private String[] columns;
36 private final List<String[]> rows;
38 public MarkdownTable() {
39 this.rows = new ArrayList<>();
42 public void setHeader(String[] cols) {
46 public void addRow(String[] values) {
47 this.rows.add(values);
50 public String toMarkDown() {
51 StringBuilder sb = new StringBuilder();
53 this.columns != null ? this.columns.length : this.rows.size() > 0 ? this.rows.get(0).length : 0;
56 for (int i = 0; i < cols; i++) {
57 sb.append(String.format(" %s |", this.columns != null ? this.columns[i] : ""));
61 for (int i = 0; i < cols; i++) {
66 for (String[] row : this.rows) {
67 for (int i = 0; i < cols; i++) {
68 sb.append(String.format(" %s |", row[i]));
76 public String toJson() {
77 JSONArray a = new JSONArray();
79 this.columns != null ? this.columns.length : this.rows.size() > 0 ? this.rows.get(0).length : 0;
81 for (String[] row : this.rows) {
82 JSONObject o = new JSONObject();
83 for (int i = 0; i < cols; i++) {
84 o.put(this.columns[i], row[i]);