All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.qiniu.service.line.MapToTableFormatter Maven / Gradle / Ivy

There is a newer version: 8.4.8
Show newest version
package com.qiniu.service.line;

import com.qiniu.service.interfaces.IStringFormat;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;

public class MapToTableFormatter implements IStringFormat> {

    private String separator;
    private List rmFields;

    public MapToTableFormatter(String separator, List removeFields) {
        this.separator = separator;
        this.rmFields = removeFields == null ? new ArrayList<>() : removeFields;
    }

    public String toFormatString(Map infoMap) {
        StringBuilder converted = new StringBuilder();
        Set set = infoMap.keySet();
        List keys = new ArrayList(){{
            this.addAll(set);
        }};
        keys.removeAll(rmFields);
        if (keys.contains("key")) {
            converted.append(infoMap.get("key")).append(separator);
            keys.remove("key");
        }
        if (keys.contains("hash")) {
            converted.append(infoMap.get("hash")).append(separator);
            keys.remove("hash");
        }
        if (keys.contains("fsize")) {
            converted.append(infoMap.get("fsize")).append(separator);
            keys.remove("fsize");
        }
        if (keys.contains("putTime")) {
            converted.append(infoMap.get("putTime")).append(separator);
            keys.remove("putTime");
        }
        if (keys.contains("mimeType")) {
            converted.append(infoMap.get("mimeType")).append(separator);
            keys.remove("mimeType");
        }
        if (keys.contains("type")) {
            converted.append(infoMap.get("type")).append(separator);
            keys.remove("type");
        }
        if (keys.contains("status")) {
            converted.append(infoMap.get("status")).append(separator);
            keys.remove("status");
        }
        if (keys.contains("endUser")) {
            converted.append(infoMap.get("endUser")).append(separator);
            keys.remove("endUser");
        }
        for (String key : keys) {
            converted.append(infoMap.get(key)).append(separator);
        }
        return converted.deleteCharAt(converted.length() - 1).toString();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy